diff --git a/addons/maaacks_game_template/base/scenes/menus/main_menu/main_menu.gd b/addons/maaacks_game_template/base/scenes/menus/main_menu/main_menu.gd index 97a61b0f..482e9436 100644 --- a/addons/maaacks_game_template/base/scenes/menus/main_menu/main_menu.gd +++ b/addons/maaacks_game_template/base/scenes/menus/main_menu/main_menu.gd @@ -41,8 +41,8 @@ func _input(event : InputEvent) -> void: if event.is_action_released("ui_cancel"): if sub_menu: _close_sub_menu() - else: - get_tree().quit() +# else: +# get_tree().quit() if event.is_action_released("ui_accept") and get_viewport().gui_get_focus_owner() == null: %MenuButtonsBoxContainer.focus_first() diff --git a/maps/levels/3 - tuto_enemies.tscn b/maps/levels/3 - tuto_enemies.tscn index 48b7557e..950e1c19 100644 --- a/maps/levels/3 - tuto_enemies.tscn +++ b/maps/levels/3 - tuto_enemies.tscn @@ -112,5 +112,5 @@ tuto_text = "Try to survive!" transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.625, -1.875) shape = SubResource("BoxShape3D_lthgu") -[node name="Player" parent="." index="15" unique_id=1309399929] +[node name="Player" parent="." index="16" unique_id=1309399929] transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 3, 0, 0) diff --git a/scenes/player_controller/PlayerController.tscn b/scenes/player_controller/PlayerController.tscn index 76a19891..40c8eff4 100644 --- a/scenes/player_controller/PlayerController.tscn +++ b/scenes/player_controller/PlayerController.tscn @@ -77,7 +77,7 @@ metadata/_custom_type_script = "uid://jitubgv6judn" [sub_resource type="Resource" id="Resource_abfq8"] script = ExtResource("3_cb2lu") -Modifier = 20.0 +Modifier = 5.0 metadata/_custom_type_script = "uid://b44cse62qru7j" [sub_resource type="Resource" id="Resource_ue7xq"] diff --git a/scenes/player_controller/scripts/PlayerController.cs b/scenes/player_controller/scripts/PlayerController.cs index 0b8c7fe4..7a2d8d5b 100644 --- a/scenes/player_controller/scripts/PlayerController.cs +++ b/scenes/player_controller/scripts/PlayerController.cs @@ -1933,6 +1933,8 @@ public partial class PlayerController : CharacterBody3D, /////////////////////////// // Slam Management /////// /////////////////////////// + + private Vector3 _slamStartPosition = Vector3.Zero; public void OnInputSlamPressed() { _playerState.SendEvent("slam"); @@ -1940,6 +1942,7 @@ public partial class PlayerController : CharacterBody3D, public void SlamStarted() { + _slamStartPosition = GlobalPosition; SetHorizontalVelocity(Vector2.Zero); SetVerticalVelocity(-SlamSpeed); _audioStream.SwitchToClipByName("dash"); @@ -1950,11 +1953,16 @@ public partial class PlayerController : CharacterBody3D, } public void SlamEnded() { + var distanceTraveled = GlobalPosition.DistanceTo(_slamStartPosition); HeadSystem.OnGetHit(); _audioStream.SwitchToClipByName("slam"); if (Explosion.Instantiate() is not Explosion explosion) return; - explosion.Radius = 10f; + + // Basic distance traveled explosion manipulation + explosion.Radius = distanceTraveled; + explosion.RDamage.DamageDealt = distanceTraveled; + GetTree().GetRoot().AddChild(explosion); explosion.GlobalPosition = GlobalPosition; }