Так в том то - и дело, что если уничтожить у Аштара, то когтя нет, и Saturas_KlaueInsMeer==false ( потому что не он в море утопил ). 0 ИЛИ 0 = 0, насколько я помню=) И сколько раз диалог не вызывай после этого, эти переменные не изменятся. В оригинале, после прохождения Ярика как минимум одна из них была 1, а с введением Аштара появляется возможность, что обе 0 ( как у меня, и у других ). Я правда не знаю, что означают _15_03 и т.д., однако из приведенного фрагмента видно, что дело до func void DIA_Addon_Xardas_AddonSuccess_Info () не доходит.
И тут ты на 100% прав:
Условие такое же, как и в оригинале Г2а
Именно! Но в Г2а, func int DIA_Addon_Xardas_AddonSuccess_Condition () фактически была функцией проверки прошел герой Ярик или нет, если хотя бы одно из значений 1 - прошел. По другому быть там не могло. А с введением Аштара получается доступной ситуация, когда обе переменные равны 0, что для игры означает - Яркендар не пройден, о чем нам Ксардас и сообщает "Возвращайся когда узнаешь больше".
Update: тут подумалось. В оригинале, теоритически, можно было оставить меч себе и потом выкинуть, интересно, к чему тогда приводила такая ситуация? Либо другая возможность - C_SCHasBeliarsWeapon() определяет не наличие меча как такового, а ответ Сатурасу:"Я оставлю меч себе"( этого я не знаю ). Тогда, здесь, можно сначала сказать Сатурасу что меч себе берем, а потом уже уничтожать его у Аштара... Но тогда это получается серьезная недоработка. Опять таки - тех сейвов давно нет, чтобы проверить.
Update: А куда кстати, Сатурас делся? Сдал Фернандо я, потом в Ярик снова пошел, ( чтобы Брендика найти ), а Сатураса - то и нет уже.