[gd_scene load_steps=14 format=3 uid="uid://cdti0hnbs3e63"] [ext_resource type="Script" uid="uid://cble6kwcr7cvi" path="res://Scripts/Enemy.cs" id="1_4rcmp"] [ext_resource type="Texture2D" uid="uid://b7kwstavr73pe" path="res://Sprites/Actors/Robot2.png" id="2_rwx7o"] [ext_resource type="Script" uid="uid://c4qmuxjhheahr" path="res://Scripts/Components/ProximityPlayerDetection.cs" id="3_4nrws"] [ext_resource type="PackedScene" uid="uid://crry0rgk7a8sm" path="res://Scenes/Weapons/BaseWeapon.tscn" id="4_8r0yt"] [ext_resource type="Resource" uid="uid://cdfmedtgp2rcn" path="res://Resources/Weapons/EnemyWeapon.tres" id="5_02uj1"] [ext_resource type="PackedScene" uid="uid://cuixq5ex0j40h" path="res://Scenes/enemyBullet.tscn" id="6_fphoq"] [sub_resource type="AtlasTexture" id="AtlasTexture_s1iwv"] atlas = ExtResource("2_rwx7o") region = Rect2(0, 0, 16, 32) [sub_resource type="AtlasTexture" id="AtlasTexture_dan4u"] atlas = ExtResource("2_rwx7o") region = Rect2(16, 0, 16, 32) [sub_resource type="SpriteFrames" id="SpriteFrames_q3w3x"] animations = [{ "frames": [{ "duration": 1.0, "texture": SubResource("AtlasTexture_s1iwv") }, { "duration": 1.0, "texture": SubResource("AtlasTexture_dan4u") }], "loop": true, "name": &"default", "speed": 5.0 }] [sub_resource type="CircleShape2D" id="CircleShape2D_8gtts"] radius = 7.0 [sub_resource type="CircleShape2D" id="CircleShape2D_cacb5"] radius = 4.0 [sub_resource type="CircleShape2D" id="CircleShape2D_v711r"] radius = 85.0529 [sub_resource type="RectangleShape2D" id="RectangleShape2D_m1rsg"] size = Vector2(8, 12) [node name="Enemy" type="CharacterBody2D" node_paths=PackedStringArray("EquippedWeapon", "_playerDetection") groups=["Destroyable"]] collision_layer = 16 collision_mask = 9 script = ExtResource("1_4rcmp") Health = 8.0 WalkSpeed = 1000.0 AlarmReactRange = 50.0 EquippedWeapon = NodePath("Weapon") _playerDetection = NodePath("PlayerDetection") _navigationEnabled = true metadata/_edit_group_ = true [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_q3w3x") [node name="Damage_HitBox" type="CollisionShape2D" parent="."] visible = false shape = SubResource("CircleShape2D_8gtts") [node name="RigidBody2D" type="RigidBody2D" parent="."] collision_layer = 16 [node name="CollisionShape2D" type="CollisionShape2D" parent="RigidBody2D"] visible = false position = Vector2(0, 5) shape = SubResource("CircleShape2D_cacb5") [node name="PlayerDetection" type="Area2D" parent="."] visible = false collision_layer = 16 collision_mask = 2 script = ExtResource("3_4nrws") [node name="PlayerDetectionArea" type="CollisionShape2D" parent="PlayerDetection"] shape = SubResource("CircleShape2D_v711r") [node name="ShootTimer" type="Timer" parent="."] wait_time = 0.4 one_shot = true [node name="Weapon" parent="." instance=ExtResource("4_8r0yt")] WeaponData = ExtResource("5_02uj1") BulletScene = ExtResource("6_fphoq") [node name="NavigationAgent2D" type="NavigationAgent2D" parent="."] target_desired_distance = 64.0 path_max_distance = 800.0 path_postprocessing = 1 avoidance_enabled = true debug_path_custom_color = Color(1, 0, 0, 1) [node name="DamageHitbox" type="Area2D" parent="."] collision_layer = 16 collision_mask = 9 [node name="CollisionShape2D" type="CollisionShape2D" parent="DamageHitbox"] shape = SubResource("RectangleShape2D_m1rsg") [connection signal="area_entered" from="PlayerDetection" to="PlayerDetection" method="_on_area_entered"] [connection signal="area_exited" from="PlayerDetection" to="PlayerDetection" method="_on_area_exited"] [connection signal="velocity_computed" from="NavigationAgent2D" to="." method="_on_navigation_agent_2d_velocity_computed"] [connection signal="area_entered" from="DamageHitbox" to="." method="_on_damage_hitbox_area_entered"]