Уважаемые гости и новички, приветствуем Вас на нашем форуме
Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».
Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Приветствую всех. Вопрос по скриптам неоф. обновления для Г2 НВ:
Подскажите, пожалуйста, как и в каком именно файле можно прописать дополнительные условия для смены оверлея боевых анимаций?
Я имею в виду, например, чтобы след-й уровень анимаций владения одноручником запускался НЕ только при достижении уровня соответствующего навыка в 30%/60%, но и при наличии у ГГ достаточных перманентных (т.е. без учёта "снимаемых" бонусов от колец и т.п.) значений силы и ловкости.
Подозреваю, это нужно править в данном файле:
Не совсем понял. В B_RaiseAttribute прописано то, что растёт с повышением атрибутов, насколько я могу судить, и ни слова о талантах, кроме акробатики. И UpdateOverlay фигурирует только в B_NewTalentSystem.
Прошу составить пример кода, скажем, для 1Р, при 30%, чтобы смена осуществлялась только при наличии у ГГ 20 ед. перманентных силы и ловкости?
вряд ли, за силу и ловкость отвечают по одному параметру.
т.е. если одеть кольцо ловкости - то +5 к ловкости, движок будет думать, что это так же будет перманентно
вряд ли, за силу и ловкость отвечают по одному параметру.
т.е. если одеть кольцо ловкости - то +5 к ловкости, движок будет думать, что это так же будет перманентно
if (C_NpcIsHero(npc) == false) // нпс не герой
|| (C_NpcIsHero(npc) && (ATR_sPerm_KirTheSeeker >= 120)) // герой настоящий джигит
|| (C_NpcIsHero(npc) && (oldSkill == 0) && ATR_sPerm_KirTheSeeker >= 40) // герой вылазит из под нар
{
Npc_SetTalentSkill(npc,talent,newSkill);
UpdateOverlay(npc,oldSkill,newSkill,"humans_1hST1.MDS","humans_1hST2.MDS");
};
Это просто атрибуты, которые ГГ прокачал всеми возможными способами (тренировки/зелья/еда), и теперь их значение постоянно. Т.е. это сила/ловкость БЕЗ учёта снимаемых бонусов от колец/поясов и т.п.
вот ты выбегаешь и говоришь это вот так. вот тебе MEG@VOLT совершенно справедливо поясняет, а в игре оно вот так. выбегаю я из угла и докидываю, что у Доси оно вот так для героя. и заметь что "героя" я выделяю жирным. то есть на выходе у тебя получается что уже есть герой и не герой и их как то надо по разному считать. имея на руках какие то переменные которые есть в скриптах.. а ты всё равно продолжаешь оперировать понятия "кольца и чего то там", а не переменными. ну вот кольца и чего то там наверное(я предполагаю) в коде Доси это массив ATR_TempBonus и это то, что в данный момент наверное надето на герое. именно на герое. то есть и использовать тогда это можно для проверок относительно героя. а что с другими НПС? функция то у Доси общая и работает как с героем так и не с героем На других твои правила "перманентных" атрибутов распространяются? а другие нпс носят обвесы? у них вообще может быть атрибут "неперманентный"?
эти все вопросы я ставлю не с целью получить на них ответы, а с целью направить рассуждения по логической цепочке. и описать это всё в целом ;-)
Пост автоматически объединён:
***
может быть тогда так:
в начале кода вводятся понятия "перманентные параметры" и назначаются для НПС с доп проверкой на героя. если НПС герой, то вычитается обвес.
Daedalus:
var int sPerm_STR_KTS;
var int sPerm_DEX_KTS;
sPerm_STR_KTS = npc.attribute[ATR_STRENGTH]
sPerm_DEX_KTS = npc.attribute[ATR_DEXTERITY]
if (C_NpcIsHero(npc) == TRUE)
{
sPerm_STR_KTS -= ATR_TempBonus[ATR_STRENGTH];
sPerm_DEX_KTS -= ATR_TempBonus[ATR_DEXTERITY];
};
в самом коде перед сменой таланта и оверлеев идёт доп проверка на значение текущего таланта и "перманентных параметров"
Daedalus:
if ((sPerm_STR_KTS >= 60) && (sPerm_DEX_KTS >= 60)) // нпс настоящий джигит
|| ((oldSkill == 0) && (sPerm_STR_KTS >= 30) && (sPerm_DEX_KTS >= 30)) // нпс вылазит из под нар
{
Npc_SetTalentSkill(npc,talent,newSkill);
UpdateOverlay(npc,oldSkill,newSkill,"humans_1hST1.MDS","humans_1hST2.MDS");
};
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.