Merge pull request 'Player Movment' (#2) from sam's_puzzle_expirement into main

Reviewed-on: #2
Reviewed-by: matt <matt@mattstone.io>
This commit was merged in pull request #2.
This commit is contained in:
sam committed 2026-10-02 20:44:24 -05:00
commit 2315add8ec
4 files changed
+109 -10

No files matched your search

+53
View File
@@ -20,6 +20,59 @@ config/icon="res://icon.svg"
window/stretch/mode="canvas_items"
window/stretch/aspect="expand"
[input]
left={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
right={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
jump={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
dash={
"deadzone": 0.2,
"events": [null, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
up={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
down={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
roll={
"deadzone": 0.2,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
latch={
"deadzone": 0.2,
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
]
}
twirl={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194329,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
run={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
[physics]
3d/physics_engine="Jolt Physics"
+20
View File
@@ -0,0 +1,20 @@
[gd_scene format=3 uid="uid://cmtdq6tedv1mm"]
[ext_resource type="Script" uid="uid://2ig5okof0vaa" path="res://scripts/UltimatePlatformerController.gd" id="1_3vyb7"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_d2by0"]
size = Vector2(111, 105)
[node name="player" type="CharacterBody2D" unique_id=1596338883]
collision_mask = 2
script = ExtResource("1_3vyb7")
[node name="ColorRect" type="ColorRect" parent="." unique_id=42689460]
offset_right = 111.0
offset_bottom = 105.0
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=440932344]
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1496788104]
position = Vector2(55.5, 52.5)
shape = SubResource("RectangleShape2D_d2by0")
+26
View File
@@ -0,0 +1,26 @@
[gd_scene format=3 uid="uid://d1xirc54wud0s"]
[ext_resource type="PackedScene" uid="uid://cmtdq6tedv1mm" path="res://scenes/player.tscn" id="1_g7g4h"]
[ext_resource type="Script" uid="uid://87oh2y0i2muf" path="res://scenes/rigid_body_2d.gd" id="2_nd71p"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_aqe1g"]
size = Vector2(1116.25, 73)
[node name="test_scene" type="Node2D" unique_id=1970054744]
[node name="ColorRect" type="ColorRect" parent="." unique_id=1255479846]
offset_left = 2.0
offset_top = 530.0
offset_right = 1121.0
offset_bottom = 606.0
[node name="player" parent="." unique_id=1596338883 instance=ExtResource("1_g7g4h")]
position = Vector2(64, 386)
[node name="floor" type="StaticBody2D" parent="." unique_id=866269158]
collision_layer = 2
script = ExtResource("2_nd71p")
[node name="CollisionShape2D" type="CollisionShape2D" parent="floor" unique_id=1146724072]
position = Vector2(561.125, 569)
shape = SubResource("RectangleShape2D_aqe1g")
+10 -10
View File
@@ -10,15 +10,15 @@ class_name PlatformerController2D
#2. Animations are very primitive. To make full use of your custom art, you may want to slightly change the code for the animations
@export_category("Necesary Child Nodes")
@export var PlayerSprite: AnimatedSprite2D
@export var PlayerCollider: CollisionShape2D
@onready var PlayerSprite = $AnimatedSprite2D
@onready var PlayerCollider = $CollisionShape2D
#INFO HORIZONTAL MOVEMENT
@export_category("L/R Movement")
##The max speed your player will move
@export_range(50, 500) var maxSpeed: float = 200.0
@export_range(50, 500) var maxSpeed: float = 500
##How fast your player will reach max speed from rest (in seconds)
@export_range(0, 4) var timeToReachMaxSpeed: float = 0.2
@export_range(0, 4) var timeToReachMaxSpeed: float = 0
##How fast your player will reach zero speed from max speed (in seconds)
@export_range(0, 4) var timeToReachZeroSpeed: float = 0.2
##If true, player will instantly move and switch directions. Overrides the "timeToReach" variables, setting them to 0.
@@ -29,15 +29,15 @@ class_name PlatformerController2D
#INFO JUMPING
@export_category("Jumping and Gravity")
##The peak height of your player's jump
@export_range(0, 20) var jumpHeight: float = 2.0
@export_range(0, 20) var jumpHeight: float = 4
##How many jumps your character can do before needing to touch the ground again. Giving more than 1 jump disables jump buffering and coyote time.
@export_range(0, 4) var jumps: int = 1
@export_range(0, 4) var jumps: int = 2
##The strength at which your character will be pulled to the ground.
@export_range(0, 100) var gravityScale: float = 20.0
@export_range(0, 100) var gravityScale: float = 30
##The fastest your player can fall
@export_range(0, 1000) var terminalVelocity: float = 500.0
@export_range(0, 1000) var terminalVelocity: float = 700
##Your player will move this amount faster when falling providing a less floaty jump curve.
@export_range(0.5, 3) var descendingGravityFactor: float = 1.3
@export_range(0.5, 3) var descendingGravityFactor: float = 2
##Enabling this toggle makes it so that when the player releases the jump key while still ascending, their vertical velocity will cut by the height cut, providing variable jump height.
@export var shortHopAkaVariableJumpHeight: bool = true
##How much the jump height is cut by.
@@ -159,7 +159,7 @@ var wasLatched
var crouching
var groundPounding
var anim
var anim = PlayerSprite
var col
var animScaleLock : Vector2