Описание класса game object. Часть IV. — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
K.D. (обсуждение | вклад) |
K.D. (обсуждение | вклад) |
||
Строка 58: | Строка 58: | ||
возвращает положение тела в виде константы перечисления enum MonsterSpace::EBodyState. В lua это перечисление экспортировано как константы класса move: | возвращает положение тела в виде константы перечисления enum MonsterSpace::EBodyState. В lua это перечисление экспортировано как константы класса move: | ||
<cpp>const crouch = 0; | <cpp>const crouch = 0; | ||
− | const standing = 1;</cpp | + | const standing = 1;</cpp><br /></div></div> |
function target_body_state() const; | function target_body_state() const; | ||
Строка 125: | Строка 125: | ||
<cpp>const danger = 0; | <cpp>const danger = 0; | ||
const free = 1; | const free = 1; | ||
− | const panic = 2;</cpp | + | const panic = 2;</cpp><br /></div></div> |
function target_mental_state() const; | function target_mental_state() const; | ||
Строка 140: | Строка 140: | ||
<cpp>const walk = 0; | <cpp>const walk = 0; | ||
const run = 1; | const run = 1; | ||
− | const stand = 2; </cpp | + | const stand = 2; </cpp><br /></div></div> |
function target_movement_type() const; | function target_movement_type() const; | ||
Строка 157: | Строка 157: | ||
const patrol_path = 2; | const patrol_path = 2; | ||
const no_path = 3; | const no_path = 3; | ||
− | const dummy = -1;</cpp | + | const dummy = -1;</cpp><br /></div></div> |
<div class="NavFrame collapsed"> | <div class="NavFrame collapsed"> | ||
Строка 170: | Строка 170: | ||
<cpp>const line = 0; | <cpp>const line = 0; | ||
const dodge = 1; | const dodge = 1; | ||
− | const criteria = 2;</cpp | + | const criteria = 2;</cpp><br /></div></div> |
<div class="NavFrame collapsed"> | <div class="NavFrame collapsed"> |
Версия 19:57, 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, материалам форума АМК и собственным изысканиям.