Описание класса game object. Часть IV. — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
K.D. (обсуждение | вклад) |
|||
(не показаны 8 промежуточные версии 2 участников) | |||
Строка 25: | Строка 25: | ||
возвращает ранг непися. Дублирует character_rank(). Аргументов не принимает.<br /><br /></div></div> | возвращает ранг непися. Дублирует character_rank(). Аргументов не принимает.<br /><br /></div></div> | ||
− | add_animation(string, boolean) | + | function add_animation(string, boolean)<br /> |
− | add_animation(string); | + | function add_animation(string); |
<div class="NavFrame collapsed"> | <div class="NavFrame collapsed"> | ||
<div class="NavHead">'''function clear_animations()''' </div> | <div class="NavHead">'''function clear_animations()''' </div> | ||
Строка 46: | Строка 46: | ||
*min_enemy_distance - минимальная дистанция от укрытия до врага | *min_enemy_distance - минимальная дистанция от укрытия до врага | ||
*max_enemy_distance - максимальня дистанция от укрытия до врага<br /><br /></div></div> | *max_enemy_distance - максимальня дистанция от укрытия до врага<br /><br /></div></div> | ||
− | |||
function safe_cover(const vector&, number, number); | function safe_cover(const vector&, number, number); | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function best_weapon()''' </div> | ||
+ | <div class="NavContent"><cpp>game_object* best_weapon()</cpp> | ||
+ | возвращает объект лучшего оружия сталкера. Аргументов не принимает.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function body_state()''' </div> | ||
+ | <div class="NavContent"><cpp>MonsterSpace::EBodyState body_state()</cpp> | ||
+ | возвращает положение тела в виде константы перечисления enum MonsterSpace::EBodyState. В lua это перечисление экспортировано как константы класса move: | ||
+ | <cpp>const crouch = 0; | ||
+ | const standing = 1;</cpp><br /></div></div> | ||
+ | |||
+ | function target_body_state() const; | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_body_state(enum MonsterSpace::EBodyState)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_body_state(enum MonsterSpace::EBodyState)</cpp> | ||
+ | устанавливает положение тела объекта. См. body_state().</cpp><br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function get_actor_relation_flags()''' </div> | ||
+ | <div class="NavContent"><cpp>flags32 get_actor_relation_flags() const</cpp> | ||
+ | возвращает флаги отношения к актору. Данные флажки по идее должны служить как-бы дополнительной памятью сталкеров в отношении ГГ. В них запоминается то, что актор делал сталкеру. Вроде бы внутри движка эти флажки не используются (кроме того, что устанавливаются). | ||
+ | А это было написано в документации от GSC: | ||
+ | возможные флажки:<br /> | ||
+ | game_object.relation_attack<br /> | ||
+ | game_object.relation_fight_help_monster<br /> | ||
+ | game_object.relation_fight_help_human<br /> | ||
+ | game_object.relation_kill<br /> | ||
+ | Т.е. предполагается работать следующим образом: Смотрим, когда есть такая возможность и актер рядом, что флажки не пустые. В соответствии с поднятым флагом выполняем какое-то действие (устанавливаем диалог, играем звук/анимацию), а потом сбрасываем флаг.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_actor_relation_flags(flags32)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_actor_relation_flags(flags32 flag)</cpp> | ||
+ | устанавливает флаги отношения к актору.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function head_orientation() const''' </div> | ||
+ | <div class="NavContent"><cpp>vector head_orientation() const</cpp> | ||
+ | возвращает значение поворота головы. Хоть вроде выходит вектор, у меня какое-то значение имеет только x.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function ignore_monster_threshold() const''' </div> | ||
+ | <div class="NavContent"><cpp>float ignore_monster_threshold() const</cpp> | ||
+ | возвращает ignore_monster_threshold.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function restore_ignore_monster_threshold()''' </div> | ||
+ | <div class="NavContent"><cpp>void restore_ignore_monster_threshold()</cpp> | ||
+ | воостановить из конфигов ignore_monster_threshold.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function make_object_visible_somewhen(game_object*)''' </div> | ||
+ | <div class="NavContent"><cpp>void make_object_visible_somewhen(game_object* object)</cpp> | ||
+ | добавляет объект в массив видимых объектов. То есть, тот, для кого вызвали метод, будет думать, что видел его, со всеми вытекающими - например, непись будет знать его координаты. Используется в ЗП для дозорного. Когда дозорный видит актора, для неписей сквада в засаде вызывается этот метод и они начинают знать, где актор.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function max_ignore_monster_distance() const''' </div> | ||
+ | <div class="NavContent"><cpp>float max_ignore_monster_distance() const</cpp> | ||
+ | возвращает max_ignore_monster_distance.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function restore_max_ignore_monster_distance()''' </div> | ||
+ | <div class="NavContent"><cpp>void restore_max_ignore_monster_distance()</cpp> | ||
+ | воостановить из конфигов max_ignore_monster_distance.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function max_ignore_monster_distance()''' </div> | ||
+ | <div class="NavContent"><cpp>void max_ignore_monster_distance()</cpp> | ||
+ | устанавливает max_ignore_monster_distance.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function mental_state()''' </div> | ||
+ | <div class="NavContent"><cpp>MonsterSpace::EMentalState mental_state()</cpp> | ||
+ | возвращает ментальное состояние в виде константы перечисления enum MonsterSpace::EMentalState. В lua это перечисление экспортировано как константы класса move: | ||
+ | <cpp>const danger = 0; | ||
+ | const free = 1; | ||
+ | const panic = 2;</cpp><br /></div></div> | ||
+ | |||
+ | function target_mental_state() const; | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_mental_state(enum MonsterSpace::EMentalState)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_mental_state(enum MonsterSpace::EMentalState)</cpp> | ||
+ | устанавливает состояние объекта. См. mental_state().</cpp><br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function movement_type()''' </div> | ||
+ | <div class="NavContent"><cpp>MonsterSpace::EMovementType movement_type()</cpp> | ||
+ | возвращает тип перемещения в виде константы перечисления enum MonsterSpace::EMovementType. В lua это перечисление экспортировано как константы класса move: | ||
+ | <cpp>const walk = 0; | ||
+ | const run = 1; | ||
+ | const stand = 2; </cpp><br /></div></div> | ||
+ | |||
+ | function target_movement_type() const; | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_movement_type(enum MonsterSpace::EMovementType)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_movement_type(enum MonsterSpace::EMovementType)</cpp> | ||
+ | устанавливает тип перемещения объекта. См. movement_type().</cpp><br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function path_type()''' </div> | ||
+ | <div class="NavContent"><cpp>MonsterSpace::EPathType path_type()</cpp> | ||
+ | возвращает тип пути в виде константы перечисления enum MonsterSpace::EPathType. В lua это перечисление экспортировано как константы класса move: | ||
+ | <cpp>const game_path = 0; | ||
+ | const level_path = 1; | ||
+ | const patrol_path = 2; | ||
+ | const no_path = 3; | ||
+ | const dummy = -1;</cpp><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_path_type(enum MonsterSpace::EPathType)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_path_type(enum MonsterSpace::EPathType)</cpp> | ||
+ | устанавливает тип пути объекта. См. path_type().</cpp><br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function detail_path_type()''' </div> | ||
+ | <div class="NavContent"><cpp>DetailPathManager::EDetailPathType detail_path_type()</cpp> | ||
+ | возвращает тип перемещения по пути в виде константы перечисления DetailPathManager::EDetailPathType. В lua это перечисление экспортировано как константы класса move: | ||
+ | <cpp>const line = 0; | ||
+ | const dodge = 1; | ||
+ | const criteria = 2;</cpp><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_detail_path_type(enum DetailPathManager::EDetailPathType)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_detail_path_type(enum DetailPathManager::EDetailPathType detail_path_type)</cpp> | ||
+ | устанавливает тип перемещения по пути объекта. См. detail_path_type().</cpp><br /><br /></div></div> | ||
+ | |||
+ | function set_patrol_path(string, enum PatrolPathManager::EPatrolStartType, enum PatrolPathManager::EPatrolRouteType, bool); | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_desired_direction(const vector*)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_desired_direction(const vector* desired_direction)</cpp> | ||
+ | устанавливает направление в следующем состоянии.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_desired_direction()''' </div> | ||
+ | <div class="NavContent"><cpp>void set_desired_direction()</cpp> | ||
+ | обнуляет направление в следующем состоянии. Аргументов не принимает.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_desired_position(const vector*)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_desired_position(const vector* desired_position)</cpp> | ||
+ | устанавливает координаты в следующем состоянии.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_desired_position()''' </div> | ||
+ | <div class="NavContent"><cpp>void set_desired_position()</cpp> | ||
+ | обнуляет координаты в следующем состоянии. Аргументов не принимает.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_dest_level_vertex_id(number)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_dest_level_vertex_id(int level_vertex_id)</cpp> | ||
+ | установить вертекс уровня, куда надо идти.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_item(enum MonsterSpace::EObjectAction, game_object*, number, number)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object, int queue_size, int queue_interval)</cpp> | ||
+ | установка предмета, который непись держит в руках. Предмет должен быть оружием, вроде как. Аргументы: | ||
+ | *object_action - тип экшена, константа перечисления MonsterSpace::EObjectAction. В lua оно экспортировано как набор констант класса object | ||
+ | <cpp>const switch1 = 0; | ||
+ | const switch2 = 1; | ||
+ | const reload1 = 2; | ||
+ | const reload2 = 3; | ||
+ | const aim1 = 4; | ||
+ | const aim2 = 5; | ||
+ | const fire1 = 6; | ||
+ | const fire2 = 7; | ||
+ | const idle = 8; | ||
+ | const strap = 9; | ||
+ | const drop = 10; | ||
+ | const activate = 15; | ||
+ | const deactivate = 16; | ||
+ | const use = 17; | ||
+ | const turn_on = 18; | ||
+ | const turn_off = 19; | ||
+ | const show = 20; | ||
+ | const hide = 21; | ||
+ | const take = 22; | ||
+ | const dummy = -1</cpp> | ||
+ | Также есть неэкспортированные константы:<cpp>eObjectActionAimReady1 = 11, | ||
+ | eObjectActionAimReady2 = 12, | ||
+ | eObjectActionAimForceFull1 = 13, | ||
+ | eObjectActionAimForceFull2 = 14, | ||
+ | eObjectActionMisfire1 = 23, | ||
+ | eObjectActionEmpty1 = 24, | ||
+ | eObjectActionNoItems = 65535</cpp> | ||
+ | *lua_game_object - оружие в инвентаре у непися. | ||
+ | *queue_size - длина экшенов | ||
+ | *queue_interval - интервал между экшенами<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_item(enum MonsterSpace::EObjectAction, game_object*, number)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object, int queue_size)</cpp> | ||
+ | см. set_item(enum MonsterSpace::EObjectAction, game_object*, number, number). queue_interval по умолчанию 300.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_item(enum MonsterSpace::EObjectAction, game_object*)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object)</cpp> | ||
+ | см. set_item(enum MonsterSpace::EObjectAction, game_object*, number). queue_size по умолчанию 0xFFFFFFFF.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_item(enum MonsterSpace::EObjectAction)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_item(enum MonsterSpace::EObjectAction object_action)</cpp> | ||
+ | см. set_item(enum MonsterSpace::EObjectAction, game_object*). Объект по умолчанию nil (убирает итем из рук, иначе не имеет смысла).<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function sight_params()''' </div> | ||
+ | <div class="NavContent"><cpp>CSightParams* sight_params()</cpp> | ||
+ | возвращает объект CSightParams, характеризующий объект, на который смотрит непись, для которого вызываем метод. | ||
+ | <cpp>class CSightParams { | ||
+ | const eSightTypeCurrentDirection = 0; | ||
+ | const eSightTypePathDirection = 1; | ||
+ | const eSightTypeDirection = 2; | ||
+ | const eSightTypePosition = 3; | ||
+ | const eSightTypeObject = 4; | ||
+ | const eSightTypeCover = 5; | ||
+ | const eSightTypeSearch = 6; | ||
+ | const eSightTypeLookOver = 7; | ||
+ | const eSightTypeCoverLookOver = 8; | ||
+ | const eSightTypeFireObject = 9; | ||
+ | const eSightTypeFirePosition = 10; | ||
+ | const eSightTypeDummy = -1; | ||
+ | |||
+ | property m_object; //клиентский объект, на который смотрим | ||
+ | property m_sight_type; //тип взгляда (см. константы выше) | ||
+ | property m_vector; //направление взгляда | ||
+ | |||
+ | CSightParams (); | ||
+ | |||
+ | };</cpp><br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function weapon_strapped() const''' </div> | ||
+ | <div class="NavContent"><cpp>bool weapon_strapped() const</cpp> | ||
+ | возвращает true, если оружие за спиной. Аргументов не принимает.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function weapon_unstrapped() const''' </div> | ||
+ | <div class="NavContent"><cpp>bool weapon_unstrapped() const</cpp> | ||
+ | возвращает true, если оружие в руках. Аргументов не принимает.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function wounded(boolean)''' </div> | ||
+ | <div class="NavContent"><cpp>void wounded(bool value)</cpp> | ||
+ | меняет состояние ранености. Если аргумент равен true, то объект помрёт с первого попадания, независимо от здоровья.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function wounded()''' </div> | ||
+ | <div class="NavContent"><cpp>bool wounded()</cpp> | ||
+ | возвращает состояние ранености.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_sight(game_object*, boolean, boolean, boolean)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_sight(game_object* object_to_look, bool torso_look, bool fire_object, bool no_pitch)</cpp> | ||
+ | Устанавливает взгляд непися. Аргументы: | ||
+ | *object_to_look - объект, на который смотрим | ||
+ | *torso_look - игнорировать координату y. | ||
+ | *fire_object - если true, тип взгляда установится в CSightParams.eSightTypeFireObject, false - CSightParams.eSightTypeObject | ||
+ | *no_pitch - ???<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_sight(game_object*, boolean, boolean)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_sight(game_object* object_to_look, bool torso_look, bool fire_object)</cpp> | ||
+ | см. set_sight(game_object*, boolean, boolean, boolean). по умолчанию no_pitch = false.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_sight(game_object*, boolean)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_sight(game_object* object_to_look, bool torso_look)</cpp> | ||
+ | см. set_sight(game_object*, boolean, boolean). по умолчанию fire_object = false.<br /><br /></div></div> | ||
+ | |||
+ | <div class="NavFrame collapsed"> | ||
+ | <div class="NavHead">'''function set_sight(game_object*)''' </div> | ||
+ | <div class="NavContent"><cpp>void set_sight(game_object* object_to_look)</cpp> | ||
+ | см. set_sight(game_object*, boolean). по умолчанию torso_look = false.<br /><br /></div></div> | ||
+ | |||
+ | function set_sight(enum SightManager::ESightType sight_type, const vector& vector3d, bool);<br /> | ||
+ | function set_sight(enum SightManager::ESightType sight_type, const vector* vector3d);<br /> | ||
+ | function set_sight(enum SightManager::ESightType sight_type, const vector* vector3d, int dwLookOverDelay);<br /> | ||
+ | function set_sight(enum SightManager::ESightType sight_type, bool torso_look, bool path); | ||
---- | ---- | ||
Написано [[Участник:K.D.|K.D.]] 18:13, 18 декабря 2011 (UTC) по материалам malandrinus, материалам [http://www.amk-team.ru/forum/index.php?showtopic=7450 форума АМК] и собственным изысканиям. | Написано [[Участник:K.D.|K.D.]] 18:13, 18 декабря 2011 (UTC) по материалам malandrinus, материалам [http://www.amk-team.ru/forum/index.php?showtopic=7450 форума АМК] и собственным изысканиям. | ||
[[Категория:Скрипты]] | [[Категория:Скрипты]] |
Текущая версия на 06:32, 12 ноября 2012
Навигация |
---|
Описание класса game object. Часть I. |
Содержание
CAI_Stalker
Эти методы можно применять только для сталкеров.
string patrol()возвращает имя патрульного пути. Аргументов не принимает.
int rank()возвращает ранг непися. Дублирует character_rank(). Аргументов не принимает.
function add_animation(string, boolean)
function add_animation(string);
void clear_animations()очистка активных анимаций. Аргументов не принимает.
int animation_count() constвозвращает количество активных анимаций у объекта. Аргументов не принимает.
cover_point* best_cover(const vector& position, const vector& enemy_position, float radius, float min_enemy_distance, float max_enemy_distance)
возвращает лучшее укрытие от врага. Аргументы:
- position - позиция сталкера
- enemy_position - позиция врага
- radius - радиус поиска
- min_enemy_distance - минимальная дистанция от укрытия до врага
- max_enemy_distance - максимальня дистанция от укрытия до врага
function safe_cover(const vector&, number, number);
game_object* best_weapon()возвращает объект лучшего оружия сталкера. Аргументов не принимает.
MonsterSpace::EBodyState body_state()
возвращает положение тела в виде константы перечисления enum MonsterSpace::EBodyState. В lua это перечисление экспортировано как константы класса move:
const crouch = 0; const standing = 1;
function target_body_state() const;
void set_body_state(enum MonsterSpace::EBodyState)устанавливает положение тела объекта. См. body_state().</cpp>
flags32 get_actor_relation_flags() const
возвращает флаги отношения к актору. Данные флажки по идее должны служить как-бы дополнительной памятью сталкеров в отношении ГГ. В них запоминается то, что актор делал сталкеру. Вроде бы внутри движка эти флажки не используются (кроме того, что устанавливаются).
А это было написано в документации от GSC:
возможные флажки:
game_object.relation_attack
game_object.relation_fight_help_monster
game_object.relation_fight_help_human
game_object.relation_kill
void set_actor_relation_flags(flags32 flag)устанавливает флаги отношения к актору.
vector head_orientation() constвозвращает значение поворота головы. Хоть вроде выходит вектор, у меня какое-то значение имеет только x.
float ignore_monster_threshold() constвозвращает ignore_monster_threshold.
void restore_ignore_monster_threshold()воостановить из конфигов ignore_monster_threshold.
void make_object_visible_somewhen(game_object* object)добавляет объект в массив видимых объектов. То есть, тот, для кого вызвали метод, будет думать, что видел его, со всеми вытекающими - например, непись будет знать его координаты. Используется в ЗП для дозорного. Когда дозорный видит актора, для неписей сквада в засаде вызывается этот метод и они начинают знать, где актор.
float max_ignore_monster_distance() constвозвращает max_ignore_monster_distance.
void restore_max_ignore_monster_distance()воостановить из конфигов max_ignore_monster_distance.
void max_ignore_monster_distance()устанавливает max_ignore_monster_distance.
MonsterSpace::EMentalState mental_state()
возвращает ментальное состояние в виде константы перечисления enum MonsterSpace::EMentalState. В lua это перечисление экспортировано как константы класса move:
const danger = 0; const free = 1; const panic = 2;
function target_mental_state() const;
void set_mental_state(enum MonsterSpace::EMentalState)устанавливает состояние объекта. См. mental_state().</cpp>
MonsterSpace::EMovementType movement_type()
возвращает тип перемещения в виде константы перечисления enum MonsterSpace::EMovementType. В lua это перечисление экспортировано как константы класса move:
const walk = 0; const run = 1; const stand = 2;
function target_movement_type() const;
void set_movement_type(enum MonsterSpace::EMovementType)устанавливает тип перемещения объекта. См. movement_type().</cpp>
MonsterSpace::EPathType path_type()
возвращает тип пути в виде константы перечисления enum MonsterSpace::EPathType. В lua это перечисление экспортировано как константы класса move:
const game_path = 0; const level_path = 1; const patrol_path = 2; const no_path = 3; const dummy = -1;
void set_path_type(enum MonsterSpace::EPathType)устанавливает тип пути объекта. См. path_type().</cpp>
DetailPathManager::EDetailPathType detail_path_type()
возвращает тип перемещения по пути в виде константы перечисления DetailPathManager::EDetailPathType. В lua это перечисление экспортировано как константы класса move:
const line = 0; const dodge = 1; const criteria = 2;
void set_detail_path_type(enum DetailPathManager::EDetailPathType detail_path_type)устанавливает тип перемещения по пути объекта. См. detail_path_type().</cpp>
function set_patrol_path(string, enum PatrolPathManager::EPatrolStartType, enum PatrolPathManager::EPatrolRouteType, bool);
void set_desired_direction(const vector* desired_direction)устанавливает направление в следующем состоянии.
void set_desired_direction()обнуляет направление в следующем состоянии. Аргументов не принимает.
void set_desired_position(const vector* desired_position)устанавливает координаты в следующем состоянии.
void set_desired_position()обнуляет координаты в следующем состоянии. Аргументов не принимает.
void set_dest_level_vertex_id(int level_vertex_id)установить вертекс уровня, куда надо идти.
void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object, int queue_size, int queue_interval)
установка предмета, который непись держит в руках. Предмет должен быть оружием, вроде как. Аргументы:
- object_action - тип экшена, константа перечисления MonsterSpace::EObjectAction. В lua оно экспортировано как набор констант класса object
const switch1 = 0; const switch2 = 1; const reload1 = 2; const reload2 = 3; const aim1 = 4; const aim2 = 5; const fire1 = 6; const fire2 = 7; const idle = 8; const strap = 9; const drop = 10; const activate = 15; const deactivate = 16; const use = 17; const turn_on = 18; const turn_off = 19; const show = 20; const hide = 21; const take = 22; const dummy = -1Также есть неэкспортированные константы:
eObjectActionAimReady1 = 11, eObjectActionAimReady2 = 12, eObjectActionAimForceFull1 = 13, eObjectActionAimForceFull2 = 14, eObjectActionMisfire1 = 23, eObjectActionEmpty1 = 24, eObjectActionNoItems = 65535
- lua_game_object - оружие в инвентаре у непися.
- queue_size - длина экшенов
- queue_interval - интервал между экшенами
void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object, int queue_size)см. set_item(enum MonsterSpace::EObjectAction, game_object*, number, number). queue_interval по умолчанию 300.
void set_item(enum MonsterSpace::EObjectAction object_action, game_object* lua_game_object)см. set_item(enum MonsterSpace::EObjectAction, game_object*, number). queue_size по умолчанию 0xFFFFFFFF.
void set_item(enum MonsterSpace::EObjectAction object_action)см. set_item(enum MonsterSpace::EObjectAction, game_object*). Объект по умолчанию nil (убирает итем из рук, иначе не имеет смысла).
CSightParams* sight_params()
возвращает объект CSightParams, характеризующий объект, на который смотрит непись, для которого вызываем метод.
class CSightParams { const eSightTypeCurrentDirection = 0; const eSightTypePathDirection = 1; const eSightTypeDirection = 2; const eSightTypePosition = 3; const eSightTypeObject = 4; const eSightTypeCover = 5; const eSightTypeSearch = 6; const eSightTypeLookOver = 7; const eSightTypeCoverLookOver = 8; const eSightTypeFireObject = 9; const eSightTypeFirePosition = 10; const eSightTypeDummy = -1; property m_object; //клиентский объект, на который смотрим property m_sight_type; //тип взгляда (см. константы выше) property m_vector; //направление взгляда CSightParams (); };
bool weapon_strapped() constвозвращает true, если оружие за спиной. Аргументов не принимает.
bool weapon_unstrapped() constвозвращает true, если оружие в руках. Аргументов не принимает.
void wounded(bool value)меняет состояние ранености. Если аргумент равен true, то объект помрёт с первого попадания, независимо от здоровья.
bool wounded()возвращает состояние ранености.
void set_sight(game_object* object_to_look, bool torso_look, bool fire_object, bool no_pitch)
Устанавливает взгляд непися. Аргументы:
- object_to_look - объект, на который смотрим
- torso_look - игнорировать координату y.
- fire_object - если true, тип взгляда установится в CSightParams.eSightTypeFireObject, false - CSightParams.eSightTypeObject
- no_pitch - ???
void set_sight(game_object* object_to_look, bool torso_look, bool fire_object)см. set_sight(game_object*, boolean, boolean, boolean). по умолчанию no_pitch = false.
void set_sight(game_object* object_to_look, bool torso_look)см. set_sight(game_object*, boolean, boolean). по умолчанию fire_object = false.
void set_sight(game_object* object_to_look)см. set_sight(game_object*, boolean). по умолчанию torso_look = false.
function set_sight(enum SightManager::ESightType sight_type, const vector& vector3d, bool);
function set_sight(enum SightManager::ESightType sight_type, const vector* vector3d);
function set_sight(enum SightManager::ESightType sight_type, const vector* vector3d, int dwLookOverDelay);
function set_sight(enum SightManager::ESightType sight_type, bool torso_look, bool path);
Написано K.D. 18:13, 18 декабря 2011 (UTC) по материалам malandrinus, материалам форума АМК и собственным изысканиям.