[gd_scene load_steps=18 format=3 uid="uid://dqw3tqg5374ui"] [ext_resource type="Script" uid="uid://c5warxls18mds" path="res://Scripts/Entity.gd" id="1_uu6qt"] [ext_resource type="Texture2D" uid="uid://d3plfj75jmmyu" path="res://Assets/Visuals/isostri.png" id="2_lxnsa"] [ext_resource type="Script" uid="uid://n2vodoxhopnr" path="res://Scripts/Enemy AI/ShoreAI.gd" id="2_twxkf"] [ext_resource type="Texture2D" uid="uid://yfecq14wfrpc" path="res://Assets/Visuals/righttri.png" id="3_t7yj4"] [ext_resource type="Texture2D" uid="uid://ddxbrkfa7i5n" path="res://Assets/Visuals/hexagon.png" id="3_uu6qt"] [ext_resource type="PackedScene" uid="uid://bdws5hhfuef84" path="res://Reusable Scenes/Masks/speed_mask.tscn" id="4_lxnsa"] [ext_resource type="PackedScene" uid="uid://c3nbowvq6g4ah" path="res://Reusable Scenes/Weapons/weapon_machette.tscn" id="6_h27ao"] [sub_resource type="CircleShape2D" id="CircleShape2D_twxkf"] radius = 722.224 [sub_resource type="CircleShape2D" id="CircleShape2D_lrpdk"] radius = 73.0616 [sub_resource type="Gradient" id="Gradient_twxkf"] offsets = PackedFloat32Array(1) colors = PackedColorArray(0.3074, 0.53, 0.33708, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_lrpdk"] gradient = SubResource("Gradient_twxkf") width = 26 [sub_resource type="Gradient" id="Gradient_lxnsa"] offsets = PackedFloat32Array(1) colors = PackedColorArray(0.299315, 0.19351, 0.158235, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_uu6qt"] gradient = SubResource("Gradient_lxnsa") width = 26 [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_h27ao"] radius = 13.0 height = 80.0 [sub_resource type="Animation" id="Animation_h27ao"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("SpriteGroup/Foot:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(-9, 27)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("SpriteGroup/Foot2:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(9, 27)] } [sub_resource type="Animation" id="Animation_uu6qt"] resource_name = "walk" length = 0.8 loop_mode = 1 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("SpriteGroup/Foot:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.0666667, 0.166667, 0.233333, 0.333333, 0.4, 0.8), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector2(-9, 27), Vector2(-6, 25), Vector2(-3, 24), Vector2(2, 24), Vector2(6, 26), Vector2(9, 27), Vector2(-9, 27)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("SpriteGroup/Foot2:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.400847, 0.4759, 0.560019, 0.626686, 0.726686, 0.8), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector2(9, 27), Vector2(-9, 27), Vector2(-6, 25), Vector2(-3, 24), Vector2(2, 24), Vector2(6, 26), Vector2(9, 27)] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_twxkf"] _data = { &"RESET": SubResource("Animation_h27ao"), &"walk": SubResource("Animation_uu6qt") } [node name="EnemyShore" type="RigidBody2D"] collision_layer = 32768 lock_rotation = true script = ExtResource("1_uu6qt") max_health = 20 [node name="EnemyShoreAI" type="Node" parent="." node_paths=PackedStringArray("weapon", "sprite", "animator")] script = ExtResource("2_twxkf") weapon = NodePath("../weapon_machette") sprite = NodePath("../SpriteGroup") animator = NodePath("../AnimationPlayer") [node name="AttackCooldown" type="Timer" parent="EnemyShoreAI"] wait_time = 1.5 [node name="DetectArea" type="Area2D" parent="."] collision_layer = 3 collision_mask = 3 collision_priority = 2.0 [node name="CollisionShape2D" type="CollisionShape2D" parent="DetectArea"] shape = SubResource("CircleShape2D_twxkf") [node name="AttackArea" type="Area2D" parent="."] collision_layer = 3 collision_mask = 3 collision_priority = 2.0 [node name="CollisionShape2D" type="CollisionShape2D" parent="AttackArea"] shape = SubResource("CircleShape2D_lrpdk") debug_color = Color(0.937978, 1.20327e-05, 0.625666, 0.42) [node name="SpriteGroup" type="Node2D" parent="."] [node name="Foot" type="Sprite2D" parent="SpriteGroup"] modulate = Color(0.219311, 0.47227, 8.66354e-07, 1) position = Vector2(-9, 27) rotation = 3.14159 scale = Vector2(0.015, -0.00680612) texture = ExtResource("2_lxnsa") [node name="Foot2" type="Sprite2D" parent="SpriteGroup"] modulate = Color(0.219311, 0.47227, 8.66354e-07, 1) position = Vector2(9, 27) rotation = 3.14159 scale = Vector2(0.015, -0.00680612) texture = ExtResource("2_lxnsa") [node name="Sprite2D" type="Sprite2D" parent="SpriteGroup"] position = Vector2(0, 3) scale = Vector2(1, 36.43) texture = SubResource("GradientTexture1D_lrpdk") [node name="Sprite2D3" type="Sprite2D" parent="SpriteGroup"] position = Vector2(0, 14.6075) scale = Vector2(1, 13.215) texture = SubResource("GradientTexture1D_uu6qt") [node name="Sprite2D2" type="Sprite2D" parent="SpriteGroup"] modulate = Color(0.46, 0.3611, 0.322, 1) position = Vector2(0, -35) rotation = 3.14159 scale = Vector2(0.0277332, 0.0277332) texture = ExtResource("3_uu6qt") [node name="Righttri" type="Sprite2D" parent="SpriteGroup"] modulate = Color(0.458824, 0.360784, 0.317647, 1) position = Vector2(-7.87, -8.115) scale = Vector2(0.01, 0.0138965) texture = ExtResource("3_t7yj4") [node name="SpeedMask" parent="SpriteGroup" instance=ExtResource("4_lxnsa")] process_mode = 4 position = Vector2(6, -34) [node name="CollisionShape2D" type="CollisionShape2D" parent="."] visible = false position = Vector2(0, -9.44) shape = SubResource("CapsuleShape2D_h27ao") [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { &"": SubResource("AnimationLibrary_twxkf") } [node name="weapon_machette" parent="." instance=ExtResource("6_h27ao")] position = Vector2(23, -4) scale = Vector2(1, 1) mask = 2 disable_aft_atk = true [connection signal="timeout" from="EnemyShoreAI/AttackCooldown" to="EnemyShoreAI" method="_on_attack_cooldown_timeout"] [connection signal="body_entered" from="DetectArea" to="EnemyShoreAI" method="_on_area_2d_body_entered"] [connection signal="body_entered" from="AttackArea" to="EnemyShoreAI" method="_on_attack_area_body_entered"] [connection signal="body_exited" from="AttackArea" to="EnemyShoreAI" method="_on_attack_area_body_exited"]