Сосед - 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)— анимации, которые разрешено проигрывать в состоянииAttackSight 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 AnimsSet Game Time— изменяет время суток на следующееCheck Flashlight— обновляет состояние фонарика. Принимает значение типаTime_Enum(см. раздел Enums and Structures)Look To Object— заставляет соседа смотреть на объектDraw Debug Path— создаёт линию от начала и до конца пути соседа. Принимает значение типаVectorNew Transform— перемещает и вращает соседа по новым координатам. При этомLocation Zостаётся неизменной
События
State Mode Change— состояниеCurrent Stateсменилось на новое. ВозвращаетSosed_Stage_EnumOn Player Catch— игрок был пойманOn Player Hid— игрок спрятался, например, в шкафу или под кроватью. ВозвращаетActor, который вызвал событие, иPlayer Is Here?, указывающий, находится ли игрок в этом объектеHand Actor Taken— сосед взял в руки предмет. ВозвращаетBP_ObjectHand Actor Already Have— у соседа уже есть что-то в руках. ВозвращаетBP_ObjectHand Actor Dropped— сосед выбросил из руки предмет. ВозвращаетBP_Object