[gd_scene format=3 uid="uid://bx0luh4vdob3q"] [ext_resource type="Script" uid="uid://but5aeh7y1s0f" path="res://game/characters/enemies/abstract_cultist.gd" id="1_2wrno"] [ext_resource type="PackedScene" uid="uid://dtxiercm8dsfm" path="res://game/characters/enemies/cultist_sprite.tscn" id="2_tjvyk"] [ext_resource type="PackedScene" uid="uid://dike8xgbqdut2" path="res://game/killing_area.tscn" id="3_tjvyk"] [ext_resource type="PackedScene" uid="uid://bg7k6ovbk1xgm" path="res://game/characters/enemies/state_machine/cultist_state_machine.tscn" id="4_yu28k"] [ext_resource type="PackedScene" uid="uid://bq1v55jv4c6qe" path="res://game/characters/enemies/state_machine/cultist_state.tscn" id="5_tu2pi"] [ext_resource type="Script" uid="uid://bqnq6m0s4etqh" path="res://game/characters/enemies/state_machine/fall_state.gd" id="7_7tkj8"] [ext_resource type="Script" uid="uid://b8o0lvuy6a5q1" path="res://game/characters/enemies/state_machine/fall_left_state.gd" id="8_2opx4"] [ext_resource type="Script" uid="uid://cxg54u14yb6go" path="res://game/characters/enemies/state_machine/fall_right_state.gd" id="9_lu83c"] [ext_resource type="Script" uid="uid://bfp8gywqqkju7" path="res://game/characters/enemies/state_machine/look_around_state.gd" id="10_lu83c"] [ext_resource type="Script" uid="uid://hgn4yll571hp" path="res://game/characters/enemies/state_machine/walk_left_state.gd" id="11_lh753"] [ext_resource type="Script" uid="uid://bwwhmjxhg2adp" path="res://game/characters/enemies/state_machine/walk_right_state.gd" id="12_lh753"] [ext_resource type="Script" uid="uid://cn2lfl4kuxvjk" path="res://game/characters/enemies/state_machine/chase_left_state.gd" id="13_42ivi"] [ext_resource type="Script" uid="uid://cqlym4lqahsd3" path="res://game/characters/enemies/state_machine/cultist_jump_left_state.gd" id="14_42ivi"] [ext_resource type="Script" uid="uid://3kl84tu1vwiv" path="res://game/characters/enemies/state_machine/chase_right_state.gd" id="14_cqp7f"] [ext_resource type="Script" uid="uid://cf52bjcpasft1" path="res://game/characters/enemies/state_machine/cultist_jump_right_state.gd" id="15_cqp7f"] [sub_resource type="ViewportTexture" id="ViewportTexture_cqp7f"] viewport_path = NodePath("SubViewport") [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_mocsw"] radius = 4.0 height = 28.0 [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_tjvyk"] radius = 4.0 height = 28.0 [node name="AbstractCultist" type="CharacterBody2D" unique_id=1676614852] collision_layer = 0 script = ExtResource("1_2wrno") [node name="CultistSprite" type="Sprite2D" parent="." unique_id=797412888] texture = SubResource("ViewportTexture_cqp7f") [node name="SubViewport" type="SubViewport" parent="." unique_id=903152885] transparent_bg = true canvas_item_default_texture_filter = 0 size = Vector2i(16, 32) [node name="CultistSprite" parent="SubViewport" unique_id=1997264413 instance=ExtResource("2_tjvyk")] material = null position = Vector2(8, 16) [node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=185651284] position = Vector2(0, 2) shape = SubResource("CapsuleShape2D_mocsw") [node name="WallCheckHigh" type="Node2D" parent="." unique_id=1697845810] position = Vector2(0, -8) [node name="LeftWallRay" type="RayCast2D" parent="WallCheckHigh" unique_id=1026693538] target_position = Vector2(-16, 0) [node name="RightWallRay" type="RayCast2D" parent="WallCheckHigh" unique_id=1129233918] target_position = Vector2(16, 0) [node name="WallCheckLow" type="Node2D" parent="." unique_id=782156094] position = Vector2(0, 9) [node name="LeftWallRay" type="RayCast2D" parent="WallCheckLow" unique_id=521416854] target_position = Vector2(-16, 0) [node name="RightWallRay" type="RayCast2D" parent="WallCheckLow" unique_id=1457669135] target_position = Vector2(16, 0) [node name="PlayerCloseCheck" type="Node2D" parent="." unique_id=1593775088] position = Vector2(0, -8) [node name="LeftPlayerCloseRay" type="RayCast2D" parent="PlayerCloseCheck" unique_id=947570027] unique_name_in_owner = true target_position = Vector2(-48, 0) collision_mask = 0 [node name="RightPlayerCloseRay" type="RayCast2D" parent="PlayerCloseCheck" unique_id=1559118218] unique_name_in_owner = true target_position = Vector2(48, 0) collision_mask = 0 [node name="PlayerDistantCheck" type="Node2D" parent="." unique_id=1597489123] position = Vector2(0, -8) [node name="LeftPlayerDistantRay" type="RayCast2D" parent="PlayerDistantCheck" unique_id=1491085518] unique_name_in_owner = true target_position = Vector2(-320, 0) collision_mask = 0 [node name="RightPlayerDistantRay" type="RayCast2D" parent="PlayerDistantCheck" unique_id=1377654831] unique_name_in_owner = true target_position = Vector2(320, 0) collision_mask = 0 [node name="KillingArea" parent="." unique_id=1891922549 instance=ExtResource("3_tjvyk")] collision_mask = 0 [node name="CollisionShape2D" type="CollisionShape2D" parent="KillingArea" unique_id=1710758452] position = Vector2(0, 2) shape = SubResource("CapsuleShape2D_tjvyk") [node name="CultistStateMachine" parent="." unique_id=633169960 node_paths=PackedStringArray("cultist", "initial_state") instance=ExtResource("4_yu28k")] cultist = NodePath("..") initial_state = NodePath("WalkLeftState") [node name="FallState" parent="CultistStateMachine" unique_id=1764777802 node_paths=PackedStringArray("look_around_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("7_7tkj8") look_around_state = NodePath("../LookAroundState") cultist = NodePath("../..") [node name="FallLeftState" parent="CultistStateMachine" unique_id=1011952297 node_paths=PackedStringArray("fall_state", "look_around_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("8_2opx4") fall_state = NodePath("../FallState") look_around_state = NodePath("../LookAroundState") cultist = NodePath("../..") [node name="FallRightState" parent="CultistStateMachine" unique_id=1932915544 node_paths=PackedStringArray("fall_state", "look_around_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("9_lu83c") fall_state = NodePath("../FallState") look_around_state = NodePath("../LookAroundState") cultist = NodePath("../..") [node name="LookAroundState" parent="CultistStateMachine" unique_id=2025927882 node_paths=PackedStringArray("fall_state", "walk_left_state", "walk_right_state", "chase_left_state", "chase_right_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("10_lu83c") fall_state = NodePath("../FallState") walk_left_state = NodePath("../WalkLeftState") walk_right_state = NodePath("../WalkRightState") chase_left_state = NodePath("../ChaseLeftState") chase_right_state = NodePath("../ChaseRightState") cultist = NodePath("../..") [node name="WalkLeftState" parent="CultistStateMachine" unique_id=276543931 node_paths=PackedStringArray("chase_state", "another_direction_walk_state", "fall_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("11_lh753") chase_state = NodePath("../ChaseLeftState") another_direction_walk_state = NodePath("../WalkRightState") fall_state = NodePath("../FallLeftState") cultist = NodePath("../..") [node name="WalkRightState" parent="CultistStateMachine" unique_id=1671686910 node_paths=PackedStringArray("chase_state", "another_direction_walk_state", "fall_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("12_lh753") chase_state = NodePath("../ChaseRightState") another_direction_walk_state = NodePath("../WalkLeftState") fall_state = NodePath("../FallRightState") cultist = NodePath("../..") [node name="ChaseLeftState" parent="CultistStateMachine" unique_id=209480830 node_paths=PackedStringArray("look_around_state", "jump_state", "fall_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("13_42ivi") look_around_state = NodePath("../LookAroundState") jump_state = NodePath("../JumpLeftState") fall_state = NodePath("../FallState") cultist = NodePath("../..") [node name="ChaseRightState" parent="CultistStateMachine" unique_id=383038915 node_paths=PackedStringArray("look_around_state", "jump_state", "fall_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("14_cqp7f") look_around_state = NodePath("../LookAroundState") jump_state = NodePath("../JumpRightState") fall_state = NodePath("../FallState") cultist = NodePath("../..") [node name="JumpLeftState" parent="CultistStateMachine" unique_id=739226464 node_paths=PackedStringArray("chase_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("14_42ivi") chase_state = NodePath("../ChaseLeftState") cultist = NodePath("../..") [node name="JumpRightState" parent="CultistStateMachine" unique_id=756126836 node_paths=PackedStringArray("chase_state", "cultist") instance=ExtResource("5_tu2pi")] script = ExtResource("15_cqp7f") chase_state = NodePath("../ChaseRightState") cultist = NodePath("../..")