3 Commits
ovo ... big

Author SHA1 Message Date
c70c8a9b2f update movement, and added fixed camera follow
mouse and player
2023-10-18 13:27:22 -03:00
24cb58ca58 update jump 2023-10-17 17:51:10 -03:00
e323fb8e24 update 2023-10-17 17:39:33 -03:00
3 changed files with 31 additions and 15 deletions

View File

@@ -0,0 +1,11 @@
extends Camera2D
const DEAD_ZONE = 160
func _input(event: InputEvent) -> void:
if event is InputEventMouseMotion:
var _target = event.position - get_viewport().size * 0.5
if _target.length() < DEAD_ZONE:
self.position = Vector2(0,0)
else:
self.position = _target.normalized() * (_target.length() - DEAD_ZONE) * 0.5

View File

@@ -1,19 +1,22 @@
extends CharacterBody2D
const speed = 400
const jump_power = -1400.0
const acc = 25
const friction = 70
const grav = 100
const max_jumps = 2
@export var jump_height : float = 225
@export var jump_time_to_peak : float = 0.5
@export var jump_time_to_descent : float = 0.3
var current_jumps = 1
@onready var jump_velocity : float = ((2.0 * jump_height) / jump_time_to_peak) * -1.0
@onready var jump_gravity : float = ((-2.0 * jump_height) / (jump_time_to_peak * jump_time_to_peak)) * -1.0
@onready var fall_gravity : float = ((-2.0 * jump_height) / (jump_time_to_descent * jump_time_to_descent)) * -1.0
func _physics_process(delta):
var input_dir: Vector2 = input()
if input_dir != Vector2.ZERO:
@@ -24,7 +27,7 @@ func _physics_process(delta):
#play_animation()
jump()
jump(delta)
player_moviment()
func input() -> Vector2:
@@ -43,13 +46,11 @@ func add_friction():
func player_moviment():
move_and_slide()
func jump():
if Input.is_action_just_pressed("ui_up"):
if current_jumps < max_jumps:
velocity.y = jump_power
current_jumps += 1
else:
velocity.y += grav
func jump(delta):
velocity.y += get_grav() * delta
if is_on_floor():
current_jumps = 1
if Input.is_action_just_pressed("ui_up") and is_on_floor():
velocity.y = jump_velocity
func get_grav() -> float:
return jump_gravity if velocity.y < 0.0 else fall_gravity

View File

@@ -1,7 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://dp4nln7877kq3"]
[gd_scene load_steps=5 format=3 uid="uid://dp4nln7877kq3"]
[ext_resource type="Script" path="res://src/Actors/Player.gd" id="1_qe2a3"]
[ext_resource type="Texture2D" uid="uid://bglwfp5ngk8xr" path="res://assests/placeholder.png" id="2_ctbi8"]
[ext_resource type="Script" path="res://src/Actors/Camera2D.gd" id="3_0ej4p"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_xv46f"]
size = Vector2(121, 149.5)
@@ -19,3 +20,6 @@ texture = ExtResource("2_ctbi8")
position = Vector2(0, -37.375)
scale = Vector2(0.5, 0.5)
shape = SubResource("RectangleShape2D_xv46f")
[node name="Camera2D" type="Camera2D" parent="."]
script = ExtResource("3_0ej4p")