diff options
Diffstat (limited to 'Reusable Scenes/2')
-rw-r--r-- | Reusable Scenes/2/enemy_bow.tscn | 100 | ||||
-rw-r--r-- | Reusable Scenes/2/enemy_club.tscn | 301 |
2 files changed, 401 insertions, 0 deletions
diff --git a/Reusable Scenes/2/enemy_bow.tscn b/Reusable Scenes/2/enemy_bow.tscn new file mode 100644 index 0000000..b4b3a0a --- /dev/null +++ b/Reusable Scenes/2/enemy_bow.tscn @@ -0,0 +1,100 @@ +[gd_scene load_steps=10 format=3 uid="uid://kqrot8twq6bc"] + +[ext_resource type="Script" uid="uid://c5warxls18mds" path="res://Scripts/Entity.gd" id="1_q82xt"] +[ext_resource type="Script" uid="uid://cahhmhibcdjcd" path="res://Scripts/Enemy AI/JungleAI.gd" id="2_ty7ky"] +[ext_resource type="Texture2D" uid="uid://d3plfj75jmmyu" path="res://Assets/Visuals/isostri.png" id="3_2n5mq"] +[ext_resource type="Texture2D" uid="uid://ddxbrkfa7i5n" path="res://Assets/Visuals/hexagon.png" id="4_1vai4"] +[ext_resource type="PackedScene" uid="uid://cnyxp6p68vtv7" path="res://Reusable Scenes/Masks/spirit_mask.tscn" id="5_g0tc6"] +[ext_resource type="PackedScene" uid="uid://bxax2unw3ay8d" path="res://Reusable Scenes/Weapons/weapon_bow.tscn" id="6_g0tc6"] +[ext_resource type="PackedScene" uid="uid://bqma5drxh7smh" path="res://Reusable Scenes/Projectiles/projectile_arrow_enemy.tscn" id="7_g57nf"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_twxkf"] +radius = 722.224 + +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_h27ao"] +radius = 13.0 +height = 80.0 + +[node name="EnemyBow" type="RigidBody2D"] +collision_layer = 49152 +collision_mask = 49153 +lock_rotation = true +script = ExtResource("1_q82xt") +max_health = 15 + +[node name="EnemyJungleAI" type="Node" parent="." node_paths=PackedStringArray("weapon", "pivot", "sprite")] +script = ExtResource("2_ty7ky") +weapon = NodePath("../HandPivot/Node2D/weapon_bow") +pivot = NodePath("../HandPivot") +sprite = NodePath("../SpriteGroup") + +[node name="AttackCooldown" type="Timer" parent="EnemyJungleAI"] +wait_time = 3.0 + +[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="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2(0, -9.44) +shape = SubResource("CapsuleShape2D_h27ao") + +[node name="SpriteGroup" type="Node2D" parent="."] + +[node name="Foot" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.45, 0.291, 0.2115, 1) +position = Vector2(-11, 25) +rotation = 3.14159 +scale = Vector2(0.0160481, -0.0110911) +texture = ExtResource("3_2n5mq") + +[node name="Foot2" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.45, 0.291, 0.2115, 1) +position = Vector2(11, 25) +rotation = 3.14159 +scale = Vector2(0.0160481, -0.0110911) +texture = ExtResource("3_2n5mq") + +[node name="Sprite2D" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.919515, 0.481937, 1.92523e-07, 1) +position = Vector2(0, -1) +scale = Vector2(0.0406463, -0.0390693) +texture = ExtResource("3_2n5mq") + +[node name="Sprite2D2" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.278431, 0.54902, 0.976471, 1) +position = Vector2(0, -41.776) +rotation = 3.14159 +scale = Vector2(0.0277332, 0.0277332) +texture = ExtResource("4_1vai4") + +[node name="SpiritMask" parent="SpriteGroup" instance=ExtResource("5_g0tc6")] +process_mode = 4 +position = Vector2(4, -40) +scale = Vector2(0.861963, 0.861963) + +[node name="HandPivot" type="Node2D" parent="."] +position = Vector2(6, -20) +rotation = -1.27211 + +[node name="Node2D" type="Node2D" parent="HandPivot"] +position = Vector2(0, 21.618) + +[node name="weapon_bow" parent="HandPivot/Node2D" instance=ExtResource("6_g0tc6")] +position = Vector2(1.25521, 6.24639) +scale = Vector2(0.999572, 0.999572) +arrow = ExtResource("7_g57nf") + +[node name="Sprite2D2" type="Sprite2D" parent="HandPivot"] +modulate = Color(0.278431, 0.54902, 0.976471, 1) +position = Vector2(0.525334, 42.9968) +rotation = 3.14159 +scale = Vector2(0.011008, 0.0118146) +texture = ExtResource("4_1vai4") + +[connection signal="timeout" from="EnemyJungleAI/AttackCooldown" to="EnemyJungleAI" method="_on_attack_cooldown_timeout"] +[connection signal="body_entered" from="DetectArea" to="EnemyJungleAI" method="_on_detect_area_body_entered"] diff --git a/Reusable Scenes/2/enemy_club.tscn b/Reusable Scenes/2/enemy_club.tscn new file mode 100644 index 0000000..761b04e --- /dev/null +++ b/Reusable Scenes/2/enemy_club.tscn @@ -0,0 +1,301 @@ +[gd_scene load_steps=21 format=3 uid="uid://b8x6g2np2nf8j"] + +[ext_resource type="Script" uid="uid://c5warxls18mds" path="res://Scripts/Entity.gd" id="1_14gxe"] +[ext_resource type="Script" uid="uid://n2vodoxhopnr" path="res://Scripts/Enemy AI/ShoreAI.gd" id="2_161nh"] +[ext_resource type="Texture2D" uid="uid://d3plfj75jmmyu" path="res://Assets/Visuals/isostri.png" id="3_k4axu"] +[ext_resource type="Texture2D" uid="uid://ddxbrkfa7i5n" path="res://Assets/Visuals/hexagon.png" id="4_bn6nu"] +[ext_resource type="PackedScene" uid="uid://cnyxp6p68vtv7" path="res://Reusable Scenes/Masks/spirit_mask.tscn" id="6_srfke"] +[ext_resource type="Script" uid="uid://ckd00ra2lp1xo" path="res://Scripts/Weapons/Melee.gd" id="6_tuc36"] +[ext_resource type="Texture2D" uid="uid://dch6veuf65i6h" path="res://Assets/Visuals/club.svg" id="7_tuc36"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_twxkf"] +radius = 722.224 + +[sub_resource type="CircleShape2D" id="CircleShape2D_lrpdk"] +radius = 43.0116 + +[sub_resource type="Gradient" id="Gradient_srfke"] +offsets = PackedFloat32Array(1) +colors = PackedColorArray(1, 1, 1, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_tuc36"] +gradient = SubResource("Gradient_srfke") + +[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") +} + +[sub_resource type="Animation" id="Animation_6amt5"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Area2D:monitoring") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} + +[sub_resource type="Animation" id="Animation_x1mjv"] +resource_name = "swing" +length = 0.3 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.133333, 0.166667), +"transitions": PackedFloat32Array(0.189465, 0.189465, 5.27803), +"update": 0, +"values": [0.0, 1.95477, 0.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Area2D:monitoring") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 0.166667), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} + +[sub_resource type="Animation" id="Animation_4lcuo"] +resource_name = "swing_flip" +length = 0.3 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.133333, 0.166667), +"transitions": PackedFloat32Array(0.189465, 0.189465, 5.27803), +"update": 0, +"values": [0.0, -1.95477, 0.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Area2D:monitoring") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 0.173523), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_4lcuo"] +_data = { +&"RESET": SubResource("Animation_6amt5"), +&"swing": SubResource("Animation_x1mjv"), +&"swing_flip": SubResource("Animation_4lcuo") +} + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_x1mjv"] +size = Vector2(16.567, 67.304) + +[node name="EnemyClub" type="RigidBody2D"] +collision_layer = 32768 +lock_rotation = true +script = ExtResource("1_14gxe") +max_health = 15 + +[node name="EnemyShoreAI" type="Node" parent="." node_paths=PackedStringArray("weapon", "sprite", "animator")] +script = ExtResource("2_161nh") +weapon = NodePath("../weapon_club") +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.45, 0.291, 0.2115, 1) +position = Vector2(-9, 27) +rotation = 3.14159 +scale = Vector2(0.0160481, -0.009) +texture = ExtResource("3_k4axu") + +[node name="Foot2" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.45, 0.291, 0.2115, 1) +position = Vector2(9, 27) +rotation = 3.14159 +scale = Vector2(0.0160481, -0.009) +texture = ExtResource("3_k4axu") + +[node name="Sprite2D3" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.733805, 0.379615, 1.92523e-07, 1) +position = Vector2(-2, 1) +scale = Vector2(0.0700947, -36.2594) +skew = 0.148353 +texture = SubResource("GradientTexture1D_tuc36") + +[node name="Sprite2D" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.919515, 0.481937, 1.92523e-07, 1) +position = Vector2(0, -1) +scale = Vector2(0.074875, -33.474) +texture = SubResource("GradientTexture1D_tuc36") + +[node name="Sprite2D2" type="Sprite2D" parent="SpriteGroup"] +modulate = Color(0.278431, 0.54902, 0.976471, 1) +position = Vector2(0, -41.776) +rotation = 3.14159 +scale = Vector2(0.0277332, 0.0277332) +texture = ExtResource("4_bn6nu") + +[node name="SpiritMask" parent="SpriteGroup" instance=ExtResource("6_srfke")] +process_mode = 4 +position = Vector2(4, -40) +scale = Vector2(0.861963, 0.861963) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2(0, -9.44) +shape = SubResource("CapsuleShape2D_h27ao") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +&"": SubResource("AnimationLibrary_twxkf") +} + +[node name="weapon_club" type="Node2D" parent="." node_paths=PackedStringArray("animator", "area")] +position = Vector2(22, -12) +scale = Vector2(0.648004, 0.648004) +script = ExtResource("6_tuc36") +animator = NodePath("AnimationPlayer") +atk = 1 +area = NodePath("Area2D") +mask = 2 +disable_aft_atk = true + +[node name="AnimationPlayer" type="AnimationPlayer" parent="weapon_club"] +libraries = { +&"": SubResource("AnimationLibrary_4lcuo") +} + +[node name="Machette" type="Sprite2D" parent="weapon_club"] +position = Vector2(5, -14) +rotation = 0.322494 +scale = Vector2(0.0442815, 0.0599862) +texture = ExtResource("7_tuc36") +flip_h = true + +[node name="Area2D" type="Area2D" parent="weapon_club"] +collision_mask = 32769 +monitoring = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="weapon_club/Area2D"] +position = Vector2(8, -25) +rotation = 0.327302 +scale = Vector2(1.03252, 1.07461) +shape = SubResource("RectangleShape2D_x1mjv") + +[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"] +[connection signal="body_entered" from="weapon_club/Area2D" to="weapon_club" method="_on_area_2d_body_entered"] |