Описание класса game object. Часть IV. — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
K.D. (обсуждение | вклад) |
K.D. (обсуждение | вклад) |
||
Строка 47: | Строка 47: | ||
*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 /><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: | ||
+ | возможные флажки: | ||
+ | game_object.relation_attack | ||
+ | game_object.relation_fight_help_monster | ||
+ | game_object.relation_fight_help_human | ||
+ | game_object.relation_kill | ||
+ | Т.е. предполагается работать следующим образом: Смотрим, когда есть такая возможность и актер рядом, что флажки не пустые. В соответствии с поднятым флагом выполняем какое-то действие (устанавливаем диалог, играем звук/анимацию), а потом сбрасываем флаг.<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 /><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 /><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 /><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 /><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); | ||
+ | |||
---- | ---- | ||
Написано [[Участник: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 форума АМК] и собственным изысканиям. | ||
[[Категория:Скрипты]] | [[Категория:Скрипты]] |
Версия 19:55, 18 декабря 2011
Навигация |
---|
Описание класса 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);
Написано K.D. 18:13, 18 декабря 2011 (UTC) по материалам malandrinus, материалам форума АМК и собственным изысканиям.