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

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

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

2HikeR:

Глянул тему, Декомпилятора, в которой ты все же неудержался наскриптить, (а насколько было бы удобно сразу цитировать из ЭТОЙ темы) и собственно думаю, что такой метод "ухода от ретурна" может привести к ошибкам в игре, т.к. функция ЯВНО возвращает ТОЛЬКО "return TRUE;", другого варианта НЕТ вообще.

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;
    //};
};

ИМХО, более правильный метод исправления был бы таким:

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;
    };
 return FALSE;
};

Т.к. все же ЯВНО возвращает "return FALSE;", в случае ОТРИЦАТЕЛЬНОЙ проверки УСЛОВИЯ. Собственно я уже показывал подобный пример в ЭТОЙ теме (Ответ #1780)
Ответить с цитированием