Показать сообщение отдельно
Старый 27.11.2013, 21:54   #5752
MaGoth
A.G.F.C.
  Аватар для MaGoth
 
Регистрация: 04.09.2006
Сообщений: 20
MaGoth вне форума

По умолчанию Re: Gothic 1, 2, 3: Технические вопросы

2Dimus:
Выходит, что GS так декомпилирует скрипты мод-фикса. Кстати, при декомпиляции скрипта DIA_Grd_218_Gardist.d он почему-то выдал 4 предупреждения:
Внимание: В библиотеке (OutputUnits) не найден модуль - )
Возможно, что что-то там не так, как того требует синтаксис Дедала...?

Так и есть - GS игнорирует наличие дополнительных aivar констант и подставляет их номера. В неофициальном обновлении он тоже заменил константу:
aivar[AIV_GETBONUSFOOD]
на её номер: aivar[89]
Ну это понятно, при декомпиляции всем переменным и константам даются свои номера, по мере их встрече в коде. т.к. Сурсеру не известны их оригинальные названия. Ошибок тут нет, можно переименовать обратно ручками в то, что требуется по всему проекту.


2annya:
Главная проблема - Реализация динамики изменения силы
Единственное решение, это отойти от статичных массивов оригинала игры и юзать свои переменные в связке с "триггер - скриптами". Тогда динамика изменения значений будет возможна постоянно по ходу игры, если требуется.

Могу ли я написать свою функцию с произвольным именем и вызвать её?
Func STRENGTH_REAL()
{....};
Так правильно? Или надо "FUNC VOID (или FUNC INT)"?
Можно написать любую в рамках правил. :)
И так и эдак правильно, другое дело, что именно вы хотите писать, для обычных функций Войд, для инициализации Инт, причем, объявление всех функций указывать всегда заранее, до их вызова.
Думаю этот тутор по Дедалу, *будет полезен: http://ge.tt/8riUKB41/v/0?c

Зы, и да, со всеми скриптовыми вопросами, желательно переместится в тему Скриптинг в Готе. ;)
Отправить личное сообщение для Ответить с цитированием