From 28d9e81329c12fc0c5cf3cec17fc22a5d54b90d9 Mon Sep 17 00:00:00 2001 From: t-amitai Date: Mon, 28 Jul 2025 21:14:49 -0600 Subject: [PATCH 1/5] adds armor pack with no functionality --- assets/collectables/armor-pack.png | Bin 0 -> 15814 bytes assets/collectables/armor-pack.png.import | 34 ++++++++++++++++++++++ scenes/collectables/armor_pack.tscn | 24 +++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 assets/collectables/armor-pack.png create mode 100644 assets/collectables/armor-pack.png.import create mode 100644 scenes/collectables/armor_pack.tscn diff --git a/assets/collectables/armor-pack.png b/assets/collectables/armor-pack.png new file mode 100644 index 0000000000000000000000000000000000000000..f7ccc5ad4bc29e8f7a9008512eb8b1adf7d4ecf6 GIT binary patch literal 15814 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 WMN$TIy!+RP4JgT}$yP|42me14sRLsG literal 0 HcmV?d00001 diff --git a/assets/collectables/armor-pack.png.import b/assets/collectables/armor-pack.png.import new file mode 100644 index 0000000..fbafd09 --- /dev/null +++ b/assets/collectables/armor-pack.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bdk54kv51ny4c" +path="res://.godot/imported/armor-pack.png-8dc79f18c20314a344821163c0faf35d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/collectables/armor-pack.png" +dest_files=["res://.godot/imported/armor-pack.png-8dc79f18c20314a344821163c0faf35d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/scenes/collectables/armor_pack.tscn b/scenes/collectables/armor_pack.tscn new file mode 100644 index 0000000..376a511 --- /dev/null +++ b/scenes/collectables/armor_pack.tscn @@ -0,0 +1,24 @@ +[gd_scene load_steps=4 format=3 uid="uid://dk0fef5g4cr4k"] + +[ext_resource type="Script" uid="uid://d4aqsx366je2g" path="res://scenes/collectables/collectable.gd" id="1_g0v23"] +[ext_resource type="Texture2D" uid="uid://bdk54kv51ny4c" path="res://assets/collectables/armor-pack.png" id="2_wdav1"] + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_pbrkj"] +size = Vector2(61, 33) + +[node name="ArmorPack" type="Node2D"] +script = ExtResource("1_g0v23") +type = "armor" + +[node name="Sprite2D" type="Sprite2D" parent="."] +z_index = 5 +scale = Vector2(0.5, 0.5) +texture = ExtResource("2_wdav1") + +[node name="Area2D" type="Area2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +position = Vector2(-0.5, 0.5) +shape = SubResource("RectangleShape2D_pbrkj") + +[connection signal="body_entered" from="Area2D" to="." method="_on_area_2d_body_entered"] From 650fe0d12bd642a8b94ada1dd2f2d66b64aac30e Mon Sep 17 00:00:00 2001 From: t-amitai Date: Tue, 29 Jul 2025 17:43:06 -0600 Subject: [PATCH 2/5] adds new armor-pack png --- assets/collectables/armor-pack.png | Bin 15814 -> 22308 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/collectables/armor-pack.png b/assets/collectables/armor-pack.png index f7ccc5ad4bc29e8f7a9008512eb8b1adf7d4ecf6..47b903acda6edcc462c6f3dc2d7be229bf4c6ddd 100644 GIT binary patch literal 22308 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 literal 15814 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 WMN$TIy!+RP4JgT}$yP|42me14sRLsG From 3d285ad2bc0fce43f7d11b0a3bcc75fd651fb475 Mon Sep 17 00:00:00 2001 From: t-amitai Date: Tue, 29 Jul 2025 18:34:59 -0600 Subject: [PATCH 3/5] adds uniform melee damage of 1/s to all enemies --- scenes/enemies/acid_slug.tscn | 3 +++ scenes/enemies/enemy.gd | 19 ++++++++++++++++++- scenes/enemies/ice_beetle.tscn | 3 +++ scenes/enemies/lava_ant.tscn | 3 +++ 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/scenes/enemies/acid_slug.tscn b/scenes/enemies/acid_slug.tscn index 90521ad..82c59ac 100644 --- a/scenes/enemies/acid_slug.tscn +++ b/scenes/enemies/acid_slug.tscn @@ -46,5 +46,8 @@ avoidance_mask = 3 wait_time = 0.5 autostart = true +[node name="RayCast2D" type="RayCast2D" parent="." index="7"] +rotation = 1.5708 + [connection signal="velocity_computed" from="NavigationAgent2D" to="." method="_on_navigation_agent_2d_velocity_computed"] [connection signal="timeout" from="AcidTimer" to="." method="_on_acid_timer_timeout"] diff --git a/scenes/enemies/enemy.gd b/scenes/enemies/enemy.gd index 32a4f31..e1d26ee 100644 --- a/scenes/enemies/enemy.gd +++ b/scenes/enemies/enemy.gd @@ -19,6 +19,10 @@ var player_near: bool = false var navigating: bool var home_pos: Vector2 var rng: RandomNumberGenerator = RandomNumberGenerator.new() +var attacking: bool = false +var melee_damage: int = 1 + +@onready var ray: RayCast2D = $RayCast2D enum { IDLE, @@ -58,6 +62,7 @@ func _process(_delta): navigation_agent_2d.target_position = target.position navigating = true +var melee_count = 0 func _physics_process(_delta: float) -> void: if navigating: var next_path_position = navigation_agent_2d.get_next_path_position() @@ -71,9 +76,21 @@ func _physics_process(_delta: float) -> void: animated_sprite_2d.frame = 0 elif direction.y <= -0.25: animated_sprite_2d.frame = 1 - velocity = direction * speed move_and_slide() + + if not attacking: + if ray.is_colliding(): + var collider = ray.get_collider() + if collider is Hero: + attacking = true + collider.hit(melee_damage) + if attacking and melee_count < 60: + melee_count += 1 + else: + attacking = false + melee_count = 0 + func _on_attack_area_2d_body_entered(body): if body.name == "Hero": diff --git a/scenes/enemies/ice_beetle.tscn b/scenes/enemies/ice_beetle.tscn index 835484f..6fa65b8 100644 --- a/scenes/enemies/ice_beetle.tscn +++ b/scenes/enemies/ice_beetle.tscn @@ -163,6 +163,9 @@ texture = ExtResource("6_shxcu") [node name="NozzleOffset" type="Marker2D" parent="Weapon"] position = Vector2(-17, 31) +[node name="RayCast2D" type="RayCast2D" parent="."] +rotation = 1.5708 + [connection signal="body_entered" from="AttackArea2D" to="." method="_on_attack_area_2d_body_entered"] [connection signal="body_exited" from="AttackArea2D" to="." method="_on_attack_area_2d_body_exited"] [connection signal="animation_finished" from="AnimatedSprite2D" to="." method="_on_animated_sprite_2d_animation_finished"] diff --git a/scenes/enemies/lava_ant.tscn b/scenes/enemies/lava_ant.tscn index 5dc913d..77416fa 100644 --- a/scenes/enemies/lava_ant.tscn +++ b/scenes/enemies/lava_ant.tscn @@ -182,6 +182,9 @@ position = Vector2(9, -12) scale = Vector2(0.2, 0.2) texture = ExtResource("9_ckxfm") +[node name="RayCast2D" type="RayCast2D" parent="."] +rotation = 1.5708 + [connection signal="body_entered" from="AttackArea2D" to="." method="_on_attack_area_2d_body_entered"] [connection signal="body_exited" from="AttackArea2D" to="." method="_on_attack_area_2d_body_exited"] [connection signal="animation_finished" from="AnimatedSprite2D" to="." method="_on_animated_sprite_2d_animation_finished"] From ddc0763304a07ad76d024eedcb5bf79b002f4623 Mon Sep 17 00:00:00 2001 From: t-amitai Date: Tue, 29 Jul 2025 18:36:05 -0600 Subject: [PATCH 4/5] adds armor damage to hero.hit() and adds die() catch to all aoe damage methods --- scenes/hero.gd | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/scenes/hero.gd b/scenes/hero.gd index 85c461e..37913cd 100644 --- a/scenes/hero.gd +++ b/scenes/hero.gd @@ -6,7 +6,6 @@ class_name Hero var can_shoot: bool = true var can_melee: bool = true var currently_in_lava: bool = false -var alive: bool = true var crystals_collected: int = 0 var teleporting: bool = false @@ -57,19 +56,24 @@ func _on_collectable_collected(type: String): crystals_collected += 1 #print("num collected: ", crystals_collected) $Hud/HBoxContainer/CrystalLabel.text = str(crystals_collected) + if type == "armor": + Globals.player_armor = Globals.player_max_armor func die(): - if alive: - #print("Player died.") - alive=false + get_tree().change_scene_to_file("res://scenes/utility/title.tscn") func hit(damage: int): if Globals.player_health<=damage: die() else: animation_player.play("hit") - Globals.player_health -= damage - #print("Player has "+str(Globals.player_health)+" health.") + var cur_armor = Globals.player_armor + if cur_armor > damage: + Globals.player_armor -= damage + else: + var remainder = damage - cur_armor + Globals.player_armor = 0 + Globals.player_health -= damage func teleport_in(): teleporting = true @@ -119,6 +123,9 @@ func burn(input:call_state): burn(call_state.Hold) call_state.Hold: if is_in_lava: + if Globals.player_health <= 1: + die() + return Globals.player_health -= 1 animation_player.play("burning") await get_tree().create_timer(1.0).timeout @@ -139,6 +146,9 @@ func acidify(input: call_state): acidify(call_state.Hold) call_state.Hold: if is_in_acid: + if Globals.player_health <= 2: + die() + return Globals.player_health -= 2 animation_player.play("acidic") await get_tree().create_timer(1.0).timeout @@ -150,6 +160,9 @@ func acidify(input: call_state): func damage_over_time(damage: int, num_hits: int, wait_time: float, effect: String): $Label.text = effect for i in num_hits: + if Globals.player_health <= damage: + die() + return Globals.player_health -= damage if effect == "Burning": animation_player.play("burning") From 86086830b6b9ac10fccf7019cf60914ba1e99943 Mon Sep 17 00:00:00 2001 From: t-amitai Date: Tue, 29 Jul 2025 18:36:25 -0600 Subject: [PATCH 5/5] adds armor pack to level 1 --- scenes/levels/level1.tscn | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scenes/levels/level1.tscn b/scenes/levels/level1.tscn index b56bdcf..d081d01 100644 --- a/scenes/levels/level1.tscn +++ b/scenes/levels/level1.tscn @@ -1,7 +1,11 @@ -[gd_scene load_steps=2 format=3 uid="uid://b4u4kyf0gc6ly"] +[gd_scene load_steps=3 format=3 uid="uid://b4u4kyf0gc6ly"] [ext_resource type="PackedScene" uid="uid://drmiw8rcswdmk" path="res://scenes/levels/level.tscn" id="1_x6ivy"] +[ext_resource type="PackedScene" uid="uid://dk0fef5g4cr4k" path="res://scenes/collectables/armor_pack.tscn" id="2_4tcl0"] [node name="Level1" instance=ExtResource("1_x6ivy")] current_level = 1 jungle_ground = true + +[node name="ArmorPack" parent="." index="6" instance=ExtResource("2_4tcl0")] +position = Vector2(529, 586)