added a max velocity for player and fixed the multiple back inputs in menus

This commit is contained in:
2026-02-06 15:12:36 +01:00
parent 6d967bf2bf
commit 4c1831762b
4 changed files with 15 additions and 13 deletions

View File

@@ -5,7 +5,6 @@ extends OverlaidMenu
@export_file("*.tscn") var main_menu_scene : String
var popup_open : Node
var is_listening_to_inputs = true
func close_popup() -> void:

View File

@@ -13,10 +13,4 @@ extends OverlaidMenu
var _instance = menu_scene.instantiate()
%MenuContainer.add_child(_instance)
func blocking_close() -> void:
get_viewport().set_input_as_handled()
super.close()
func _ready() -> void:
back_action.triggered.connect(blocking_close)

View File

@@ -7,6 +7,7 @@
[ext_resource type="Script" uid="uid://rvttn472ix6v" path="res://addons/guide/inputs/guide_input_joy_button.gd" id="4_q6ncx"]
[ext_resource type="Script" uid="uid://bl8rjl4oaldje" path="res://addons/guide/modifiers/guide_modifier.gd" id="5_vnf02"]
[ext_resource type="Script" uid="uid://x74mnwgr08a7" path="res://addons/guide/triggers/guide_trigger.gd" id="6_c647i"]
[ext_resource type="Script" uid="uid://biiggjw6tv4uq" path="res://addons/guide/triggers/guide_trigger_released.gd" id="7_725x1"]
[ext_resource type="Script" uid="uid://b52rqq28tuqpg" path="res://addons/guide/triggers/guide_trigger_pressed.gd" id="7_m88dc"]
[ext_resource type="Script" uid="uid://cw71o87tvdx3q" path="res://addons/guide/inputs/guide_input_key.gd" id="8_yfqfy"]
[ext_resource type="Resource" uid="uid://ds8quw8a7uh2u" path="res://inputs/menu_mode/select.tres" id="9_dsdj3"]
@@ -21,25 +22,26 @@
script = ExtResource("4_q6ncx")
button = 1
[sub_resource type="Resource" id="Resource_lvbl0"]
script = ExtResource("7_m88dc")
[sub_resource type="Resource" id="Resource_bo8kw"]
script = ExtResource("7_725x1")
[sub_resource type="Resource" id="Resource_2ux44"]
script = ExtResource("3_scydb")
input = SubResource("Resource_tp5dr")
triggers = Array[ExtResource("6_c647i")]([SubResource("Resource_lvbl0")])
triggers = Array[ExtResource("6_c647i")]([SubResource("Resource_bo8kw")])
metadata/_guide_modifiers_collapsed = false
[sub_resource type="Resource" id="Resource_6sfub"]
script = ExtResource("8_yfqfy")
key = 4194305
[sub_resource type="Resource" id="Resource_17mt7"]
script = ExtResource("7_m88dc")
[sub_resource type="Resource" id="Resource_86dd0"]
script = ExtResource("7_725x1")
[sub_resource type="Resource" id="Resource_23hmj"]
script = ExtResource("3_scydb")
input = SubResource("Resource_6sfub")
triggers = Array[ExtResource("6_c647i")]([SubResource("Resource_17mt7")])
triggers = Array[ExtResource("6_c647i")]([SubResource("Resource_86dd0")])
[sub_resource type="Resource" id="Resource_len71"]
script = ExtResource("1_xno0b")

View File

@@ -98,6 +98,9 @@ public partial class PlayerController : CharacterBody3D,
// Movement stuff
[ExportCategory("Movement")]
[ExportGroup("General")]
[Export(PropertyHint.Range, "10,200,0.1,or_greater")]
public float AbsoluteMaxSpeed { get; set; } = 100f;
[ExportGroup("Ground")]
[Export(PropertyHint.Range, "0,20,0.1,or_greater")]
public float WalkSpeed { get; set; } = 7.0f;
@@ -1985,6 +1988,10 @@ public partial class PlayerController : CharacterBody3D,
if (_currentInputBufferFrames > 0) _currentInputBufferFrames -= 1;
// Limit maximum speed
if (Velocity.Length() > AbsoluteMaxSpeed)
Velocity = Velocity.Normalized() * AbsoluteMaxSpeed;
// Manage head and camera movement
LookAround(delta);