Показать сообщение отдельно
Старый 29.09.2007, 09:58   #1818
Vam

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

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

2HikeR:
она всегда возвращает одно и тоже значение. в таком виде она и в русской и в немецкой версиях, а также в скриптах из MDK. вероятно ее можно сократить до вида
Во-первых: Данная функция объявлена с типом void, следовательно ничего возвращать она не может.
Во-вторых: Приведенное тобой сокращение в корне неверно, т.к. в твоём случае функия B_MM_AssessEnemy(); будет вызываться всегда, а в оригинале она не будет вызвана при условии - если self лежит и расстояние от self до other >= 200 метрам.
Если хочешь оптимизировать эту функцию, то можно записать так:
[pre]func void B_MM_AssessEnemy_Sleep()
{
* PrintDebugNpc (PD_MST_FRAME, "B_MM_AssessEnemy_Sleep");
* if(!C_BodyStateContains(self, BS_LIE) || (Npc_GetDistToNpc(self, other) < 200))
* {
* * *B_MM_AssessEnemy();
* };
};[/pre]
попробовал в главном меню использовать ф-ии
В модуле Menu можно использовать только функции, которые указаны в файле Int_FuncMenu_*.d программы GS v3.14, другие функции движок не поддерживает.

можно ли ещё как-то вывести текстовую строку в главном меню?
Можно, создав item элемент меню и вставив его в нужное место.

то последним сурсером получается второй вариант.
а вот как это выглядит в оригинале:
Оригинал и строки, созданные декомпилятором версии 3.14 логически не отличаются друг от друга, и следовательно - работать будут одинаково.
Ответить с цитированием