Представляет собой набор добавлений, расширяющих возможности движка для скриптёров, а также, в ряде случаев, меняющих поведение игры. Изменения реализованы в виде бинарного патча библиотек двигателя игры. Авторы: Kolmogor, Malandrinus Адрес проекта на Google Code
Список изменений на данный момент (список далеко не полный, остался с самых первых ревизий):
можно кататься в ЗП на машинках
добавлены консольные команды: fov - угол обзора игрока ph_timefactor - скорость течения времени при просчете физики
в ПДА можно добавлять свои разделы. ГГ будет получать инфопорцию при выборе нового раздела.
разблокировано выкидывание из ящиков с помощью функций drop_item и drop_item_and_teleport
убран вылет "cannot find rank for ..." при выкидывании оружия, не прописанного в mp_ranks
добавлены глобальные функции log1(string) - нормальный вывод текста в консоль вместо нерабочей log flush1() - запись выведенного в консоль текста на диск, вместо нерабочей flush
в пространство имён level добавлены функции: level.get_target_dist() - возвращает float - расстояние до точки, на которую смотрит камера. Это то число, которое высвечивается под прицелом. level.get_target_obj() - возвращает game_object - объект, на который смотрит камера. Если ни на кого, то возвращает nil.
в класс CUIStatic возвращена возможность вращать текстуру. Для этого добавлен метод: SetHeading(Frect) - угол вращения в радианах передаётся в поле x объекта-аргумента.
для актора добавлена возможность устанавливать колбек на получение хита
Примечание: Не забывайте делать резервные копии!
Сообщение отредактировал _Призрак_ - Понедельник, 19.03.2012, 19:15
Работает только для ЗП (т.к. в ТЧ и так инфопоршни выдаются). Теперь если создать новую кнопку в верхнем CUITabControl через которые передаются вкладки то ГГ получит инфопоршень. Какой именно не помню, нужно посмотреть. Через этот механизм можно сделать справку в ПДА.
_Призрак_, а попроще можно? А то не понятно. Движок пропатчил, потом что? Создавать скрипт какой-то или конфиг? Можешь пример привести, как сделать кнопку и энциклопедию? Шаблон эдакий. А то ведь без инструкции в этом разберётся только тот кто делал.
Earthworm-Jim Тут нужно знание скриптов, шаблоны тут не помогут. Алгоритм такой: 1. В pda.xml в секции создаем еще одну кнопку и прописываем ей свой id и hint (hint - это то какой текст будет высвечиваться при наведении на кнопку) 2. В bind_stalker:on_info() отлавливаем когда ГГ получит инфопоршень с id созданой нашей кнопки. 3. При помощи CUIListBox():GetMainInputReceiver() получаем обьект ПДА 4. Потом аттачим нужные нам статики и кнопочки в обьекту, который мы получили при помощи функции CUIListBox():GetMainInputReceiver()
Earthworm-Jim, Призрак немного ошибся, отлавливать в биндере "info_callback()" Ситуация аналогична колбекам, инфопоршень получаем в переменную info_id, которую потом и сравниваем. Если устраивает - рисуем GUI раздела.
Добавлено (11.06.2012, 22:59) --------------------------------------------- Скрипт - это GUI кнопки в PDA. Ясно. Вот только как его правильно написать?