From 2c3a911fc9861a9cb26ef9a4f7ce06e5565fe594 Mon Sep 17 00:00:00 2001 From: Booklordofthedings Date: Fri, 16 Aug 2024 22:49:25 +0200 Subject: [PATCH] refactored movement script --- gmtk_2024/levels/TestingRoom.tscn | 2 +- gmtk_2024/player.tscn | 1 - gmtk_2024/scripts/player_movement.gd | 30 +++++++++++++++------------- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/gmtk_2024/levels/TestingRoom.tscn b/gmtk_2024/levels/TestingRoom.tscn index 66f3c74..bc63495 100644 --- a/gmtk_2024/levels/TestingRoom.tscn +++ b/gmtk_2024/levels/TestingRoom.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=6 format=3 uid="uid://o8wdfgnlp0ud"] -[ext_resource type="PackedScene" path="res://player.tscn" id="1_nvifn"] +[ext_resource type="PackedScene" uid="uid://cfnmiqovwwhry" path="res://player.tscn" id="1_nvifn"] [ext_resource type="PackedScene" uid="uid://cxbalfjqtp06t" path="res://canvas_layer.tscn" id="2_1gnwx"] [ext_resource type="Texture2D" uid="uid://cyealb63c8uqg" path="res://temp_assets/background_commision.png" id="2_qherw"] [ext_resource type="Texture2D" uid="uid://bsu1bvlb0s8dp" path="res://temp_assets/Screenshot (1).png" id="3_es5ys"] diff --git a/gmtk_2024/player.tscn b/gmtk_2024/player.tscn index c71f26b..3e4c180 100644 --- a/gmtk_2024/player.tscn +++ b/gmtk_2024/player.tscn @@ -11,7 +11,6 @@ height = 32.0 [node name="CharacterBody2D" type="CharacterBody2D" parent="."] script = ExtResource("1_otvu6") -speed = 340 [node name="Sprite2D" type="Sprite2D" parent="CharacterBody2D"] texture = ExtResource("2_d4ig1") diff --git a/gmtk_2024/scripts/player_movement.gd b/gmtk_2024/scripts/player_movement.gd index 470e2eb..b0eb9dd 100644 --- a/gmtk_2024/scripts/player_movement.gd +++ b/gmtk_2024/scripts/player_movement.gd @@ -1,17 +1,18 @@ extends CharacterBody2D -@export var speed = 50 -@export var gravity = 50 -@export var jump = 700 +@export var speed = 340; +@export var gravity = 50; +@export var jump_count = 2; +@export var jump_strength = 700; -var max_jumps = 2; -var jumpcount = 2; - -var input_direction = 0 +var jump_count_current = 2; +var input_direction = 0 #To keep track of which direction we where moving in last frame func get_input(): + var left = Input.is_action_pressed("player_left") var right = Input.is_action_pressed("player_right") + if left and right: input_direction = input_direction elif left: @@ -21,17 +22,18 @@ func get_input(): else : input_direction = 0 - velocity.x = input_direction * speed - if Input.is_action_just_pressed("player_jump") and jumpcount > 0: - velocity.y = -1 *jump - jumpcount = jumpcount-1 - elif Input.is_action_pressed("player_jump"): + + if Input.is_action_just_pressed("player_jump") and jump_count_current > 0: + velocity.y = -1 * jump_strength + jump_count_current = jump_count_current-1 + elif Input.is_action_pressed("player_jump"): #Fall less fast if we keep holding the button velocity.y += -1 * 20 + + if is_on_floor(): + jump_count_current = jump_count func _physics_process(delta): - if is_on_floor(): - jumpcount = max_jumps get_input() velocity.y += gravity move_and_slide()