Перейти к контенту

Справочник по функциям и классам


Рекомендуемые сообщения

А кто-нибудь знает как определить, что актор бежит?

 

пока нашел способ определения по значению accuracy() но приходится подгонять его под каждое оружие

метод сравнения координат актора "до" и "после" почему-то выдает резкие скачки значений, потому не подходит

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Поделиться этим сообщением


Ссылка на сообщение

malandrinus, я сделал полностью динамический ХУД и скрываю его во время бега

при резких скачках он начинает "моргать" (значения резко скачут), что приводит к падению ФПС

 

можешь привести код проверки по трем точкам? (я делал код проверки по x z + усреднение значений по двум точкам во времени)

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Поделиться этим сообщением


Ссылка на сообщение

Замеченные мной отличия скриптов ЗП от ТЧ (предлагаю развивать тему):

Скрытый текст

- все операции над текстом теперь вынесены в подкласс TextControl(), который вызывается от класса окна-родителя

- отсутствует функция setTextureOffset() - теперь координаты текстуры задаются только через XML

- отсутствует функции setColor(), setTextColor(), getColor(), setHeading(), setTextX(), SetHighlightColor(), GetTextY(), GetClipperState(), SetClipperState, SetOriginalRect() - продолжать список можно долго

- изменился init() окна, судя по-всему окна теперь инициализируются как-то самостоятельно - вызов окна через ShowDialog(true)

- аргументы функций, связанных с размерами и положением окна теперь задаются через vector_set() и Frect_set() - судя по всему скриптер у ПЫСов сунул нос в скрипты иностранных игрушек

- почему-то не получается через скрипты запустить нормальную работу CuiListItem - контрол выдает ошибку при работе методами ТЧ

 

Скрытый текст

- в bind_stalker появился колбэк на юзание предмета + теперь у любого "съедобного" предмета строка в меню ПКМ называется "использовать" вместо "съесть" и "выпить" как в ТЧ

- исправлена ошибка в g.script, из-за которой РГ-6 не считался оружием у НПС, хотя когда я его заспавнил я ужаснулся - стрелять теперь из него можно только метров на 10 и то никто не станет вам врагом, даже если вы будете бить в упор :lol:

- появилась интересная функция string.find(command_line(), "-key") - вернет true если в команой строке запустить сталкера с ключом "-key" (если запускать игру с ключом "-designer" то функция апдейта bind_stalker перестанет выполняться)

 

Изменено пользователем Kirgudu

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Поделиться этим сообщением


Ссылка на сообщение

Один из основных скриптов, грузится движком

все функции из него считаются глобальными

 

function load_scheme(filename, scheme, stype)

загружает схему поведения НПС из файла скрипта

подробнее можно поглядеть в modules.scriot

 

function action(obj,...)

Задает объекту некоторое действие или несколько действий

 

function round (value)

округляет число value до целого

также в lua есть глобальная функция math.ceil(value) - округляет число, до нижнего значения т.е. math.ceil(2.9342) = 2

 

function distance_between(obj1, obj2)

возвращает дистанцию между объектами, судя по всему в "метрах"

 

function distance_between_safe(obj1, obj2)

аналогична предыдущей функции, НО! не вылетает, если один из объектов = nil

 

function has_alife_info(info_id)

Проверка на инфопоршны, даже если игрока не существует

info_id - строка, имя инфопоршена

 

function reset_action (npc, script_name)

Отменяет выполнение схемы у НПС

 

function GiveInfoViaPda(obj_receiver, obj_sender, info_number)

Скидывает на ПДА кому-угодно сообщение от кого-угодно (судя по всему осталось от 1935-го билда, где можно было общаться через ПДА)

obj_receiver - npc получатель

obj_sender - npc отправитель

info_number - айдишник инфопоршена

 

function interrupt_action(npc, script_name)

Если в данный момент у НПС выполняется какое-то действие, прерывает его и отключает скриптовый режим

 

function random_choice(...)

случайно возвращает одно из введенных значений

 

function new_action(...)

так и не понял, что она делает - используется толь в скрипте copy of a1.script

 

function set_current_time (hour, min, sec)

Задает игровое время

 

function str_split (str)

разбивает строку на 4 части, ориентируясь по разделителю "_"

(судя по всему из ранних билдов, ибо сейчас нигде не используется)

 

function random_number (min_value, max_value)

Возвращает случайное число в диапазоне от min_value до max_value

 

function day_time()

Возвращает время в миллисекундах

 

function local_hours()

Возвращает время в часах

 

function parse_names( s )

разбивает строку S на таблицу из имен чего-либо, возвращает таблицу

 

function parse_nums( s )

разбивает строку S на таблицу из чисел, возвращает таблицу

 

function is_object_online(obj_id)

Возвращает является ли объект в онлайне

 

function get_clsid(npc)

Возвращает id класса объекта

 

function isWeapon(object)

Возвращает является ли объект оружием

благодаря этой функции НПС просят актора убрать оружие

 

function yaw( v1, v2 )

Возвращает какое-то значение поворота для этих точек

 

function vector_rotate_y (v, angle)

Вращает вектор вокруг оси y против часовой стрелки

возвращает вектор

 

function clear_table (t)

Функция очищает таблицу t

 

function stop_play_sound(obj)

прерывает звук от объекта

 

function object_type(obj)

возвращает строку-название типа объекта , например "stalker" "monster"

 

function is_object_monster(obj)

Возвращает является ли оbj монстром

 

function switch_online (id)

function switch_offline (npc)

переводят объект в оффдайн и онлайн

 

function get_actor_id()

Возвращает id актора

 

function IsMonster (object, class_id)

Возвращает является ли объект монстром

 

function IsStalker (object, class_id)

Возвращает является ли объект сталкером (актору тоже выдает true)

 

function level_object_by_sid( sid )

Возвращает объект по его story_id

 

function id_by_sid( sid )

возвращает id объекта по его story_id

 

function set_postprocess(name_ini_file)

function remove_postprocess()

задает/снимает постпроцесс имя файла указывается с расширением .PPE

 

function set_inactivate_input_time(delta)

отключает управление актором на время delta в секундах

 

function set_sleep_relocate(point, look, timeout)

Задает актору позицию положения, позицию куда смотреть, время сна в минутах.

Это все в силе, если раскомментировать часть функции

 

function odd( x )

Проверяет целую часть числа x на нечётность

 

function on_actor_critical_power()

function on_actor_critical_max_power()

function on_actor_bleeding()

function on_actor_satiety()

function on_actor_radiation()

function on_actor_weapon_jammed()

function on_actor_cant_walk_weight()

function on_actor_psy()

Функции, которые выполняются при кровотечении, истощении, голоде и т.п. - редактируются тольок в самом _g.script

 

function set_actor_rank(rank)

задает актору кол-во очков опыта, равное rank ("novice" "stalker" "veteran" "master")

 

function get_texture_info(id_name, id_default)

Возвращает имя файла текстуры по ее id

Также возвращает x2 - ширину текстуры y2 - высоту тестуры

 

Часть функций была опущена из-за того, что они являются служебными для объектов, описанных в _g.script

 

 

 

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
  • Куратор(ы) темы:

×
×
  • Создать...