Сосед - Crucial-Experiment/HelloNeighborGamesRemake GitHub Wiki
Сосед
Основной антагонист игры представлен объектом типа Character
под названием BP_Sosed
. Этот объект отвечает за управление поведением, патрулированием и реакцией на действия игрока, реализуя основные элементы искусственного интеллекта и системы преследования.
Публичные переменные
Current State (Enum)
— определяет состояние соседа. Доступные значения перечислены в разделе Enums and StructuresCatch Type (Enum)
— определяет поведение соседа при поимке игрока. Доступные значения перечислены в разделе Enums and StructuresCatch Items Type (Enum)
— определяет, как сосед обращается с предметами игрока при поимке. Доступные значения перечислены в разделе Enums and StructuresFlashlight (Actor типа BP_Flashlight)
— фонарик, который используется соседом в тёмное время сутокWalk Speed (Float)
— скорость передвижения соседа при ходьбеRun Speed (Float)
— скорость передвижения соседа при бегеStop stalking through? (Float)
— время, через которое сосед прекращает погоню и переходит к поискуSound Attack (Boolean)
— воспроизводить музыку, когда атаки?Sound Attack Music (Sound Cue)
— музыка атакиSound See Pawn (Boolean)
— воспроизводить музыку, когда игрок находится рядом с соседом?
Анимации
Idle / Walk / Run (Blend Space 1D)
— Blend Space 1D для анимации спокойствия, ходьбы и бегаCatch (Anim Sequence)
— анимация поимки игрокаCatch Cutscenes (Массив: BP_Cutscene_Manager)
— анимации катсцен после поимки игрока, срабатывают один разLook Around (Anim Sequence)
— анимация осмотраTrap Reload (Anim Sequence)
— анимация перезарядки капканаHitted (Anim Sequence)
— анимация, когда соседа ударили предметомTraining Anims (Массив: Anim Sequence)
— анимации тренировкиAttack Anims (Массив: Anim Sequence)
— анимации, которые разрешено проигрывать в состоянииAttack
Sight Anims (Массив: Anim Sequence)
— анимации, которые проигрываются вBP_AnimSosed
для корректной работы системы зренияTake (Anim Sequence)
— анимация взятия предмета
Порождающий класс
Trap Class (BP_Trap)
— класс капканаBucket Class (BP_Bucket_2)
— класс ведра с водойCamera Class (BP_Camera)
— класс камерыCamera Hold Class (BP_Camera_Hold)
— класс держателя камерыGlue Class (BP_Glue)
— класс клеяTomato Class (BP_Tomato)
— класс помидора
Задача
Current Task State (Enum)
— определяет состояние задачи. Доступные значения перечислены в разделе Enums and Structures. В будущем может быть переделан или удален.Training (Boolean)
— может ли сосед тренироватьсяDriving (Boolean)
— может ли сосед водить машинуRandom Hunt To Idle (Boolean)
— рандомный переход из состояния Hunt в состояние Idle
Бросать
Throwing objects (Boolean)
— может ли сосед бросаться предметами в игрока?
Время игры
Changing Time of Day (Boolean)
— следует ли изменить время игры после поимки игрока?
Отладка
Debug Info (Boolean)
— показывать информацию об ИИ и о том, что он собирается делать?Debug Path (Boolean)
— показывать, куда движется искусственный интеллект?
Функции
Set State
— обновляет состояние соседа. Принимает значение типаSosed_Stage_Enum
(см. раздел Enums and Structures)Set Task State
— меняет состояние Task, которое может отключить некоторые функции соседа, такие как зрение и способность ловить игрока при приближении. Принимает значение типаSosed_State_Enum
(см. раздел Enums and Structures)Play Animation
— играет указанную анимацию. Если состояние соседа —Attack
, то для воспроизведения анимации она должна быть указана в массивеAttack Anims
Set Game Time
— изменяет время суток на следующееCheck Flashlight
— обновляет состояние фонарика. Принимает значение типаTime_Enum
(см. раздел Enums and Structures)Look To Object
— заставляет соседа смотреть на объектDraw Debug Path
— создаёт линию от начала и до конца пути соседа. Принимает значение типаVector
New Transform
— перемещает и вращает соседа по новым координатам. При этомLocation Z
остаётся неизменной
События
State Mode Change
— состояниеCurrent State
сменилось на новое. ВозвращаетSosed_Stage_Enum
On Player Catch
— игрок был пойманOn Player Hid
— игрок спрятался, например, в шкафу или под кроватью. ВозвращаетActor
, который вызвал событие, иPlayer Is Here?
, указывающий, находится ли игрок в этом объектеHand Actor Taken
— сосед взял в руки предмет. ВозвращаетBP_Object
Hand Actor Already Have
— у соседа уже есть что-то в руках. ВозвращаетBP_Object
Hand Actor Dropped
— сосед выбросил из руки предмет. ВозвращаетBP_Object