Показать сообщение отдельно
Старый 28.09.2007, 01:44   #1083
HikeR

AGFC
Гость
 
Сообщений: n/a

По умолчанию Re: М:Декомпилятор скриптов Готики

все цитаты от Vam:
здесь надо быть осторожным, некоторые такие функции вызываются только экзешником и удалять их нельзя.
PS: Проверил, эта функция вызывается только екзешником, поэтому ее удалять нельзя
Функция Spell_ProcessMana вызывается только экзешником.
многие функции скриптов вызываются только экзешником Готик, да ещё и по маскам.
так до сих пор и нет полного списка ф-ий, которые вызываются из gothic.exe?

Добавление от 09/27/07, в 05:56:01
нашел небольшую траблу с компилированием _work\data\Scripts\content\AI\AI_Intern\C_Function s.d. убирая предупреждения "ф-ия должна....." заменил все встреченные конструкции вида:
Cпойлер(щелкните, чтобы прочесть):
func int C_NpcIsOrc(var C_Npc slf)
{
* * *PrintDebugNpc (PD_ZS_DETAIL, "C_NpcIsOrc");
* * *if (slf.guild > GIL_SEPERATOR_ORC)
* * *{
* * * * * *PrintDebugNpc (PD_ZS_DETAIL, "...true");
* * * * * *return TRUE;
* * *};
* * *//else
* * *//{

* * * * * *PrintDebugNpc (PD_ZS_DETAIL, "...false");
* * * * * *return FALSE;
* * *//};
};

предупреждения пропали, однако появилась ошибка "... Аргумент 2: Нельзя преобразовать тип string в func". вот сама ф-ия (красным - строка с ошибкой, жирным - аргумент):
Cпойлер(щелкните, чтобы прочесть):
func int C_BodyStateContains(var C_Npc slf,var int bodystate)
{
* * *PrintDebugNpc (PD_ZS_DETAIL, "C_BodyStateContains()");
* * *PrintDebugInt (PD_ZS_DETAIL, "bodystate: ", bodystate);
* * *PrintDebugInt (PD_ZS_DETAIL, "bodystate&(BS_MAX|BS_FLAG_INTERRUPTABLE|BS_FLAG_F REEHANDS): ", bodystate & (BS_MAX | BS_FLAG_INTERRUPTABLE | BS_FLAG_FREEHANDS));
* * *PrintDebugInt (PD_ZS_DETAIL, "Npc_GetBodyState(slf): ", Npc_GetBodyState (slf));
* * *PrintDebugInt (PD_ZS_DETAIL, "Npc_GetBodyState(slf)&(BS_MAX|BS_FLAG_INTERRUPTAB LE|BS_FLAG_FREEHAN
DS): "
, Npc_GetBodyState (slf) & (BS_MAX | BS_FLAG_INTERRUPTABLE | BS_FLAG_FREEHANDS));

* * *if ((Npc_GetBodyState (slf) & (BS_MAX | BS_FLAG_INTERRUPTABLE | BS_FLAG_FREEHANDS)) == (bodystate & (BS_MAX | BS_FLAG_INTERRUPTABLE | BS_FLAG_FREEHANDS)))
* * *{
* * * * * *PrintDebugNpc (PD_ZS_DETAIL, "...true");
* * * * * *return TRUE;
* * *};
* * *//else
* * *//{
* * * * * *PrintDebugNpc (PD_ZS_DETAIL, "...false");
* * * * * *return FALSE;
* * *//};
};

"проверка скрипта на ошибки" не проходит, однако если запустить полную компиляци - то она заканчивается успешно. что это можеть быть?

Добавление от 09/27/07, в 05:56:45
пока что просто закоментировал эту строку, все равно отладочная.

Добавление от 09/28/07, в 02:04:39
и скажите наконец, здесь принимаются вопросы по работе декомпилятора, или уже нет?

если принимаются, то достаточно сказать, вот мол такая-то непонятка встретилась, или желательно привести пример для повторения этой непонятки?

если нет, то так как сам я удалить посты не могу, то не буду возражать от их удаления .
Ответить с цитированием