18 lines
547 B
GDScript
18 lines
547 B
GDScript
extends Area2D
|
|
|
|
@export var max_fall_speed = 20
|
|
@export var tap_strength = -5
|
|
@export var gravity_strength = 10
|
|
@export var rotate_tap_speed = .1
|
|
@export var rotate_falling_speed = 2
|
|
|
|
var speedy = 0
|
|
|
|
func _input(event: InputEvent) -> void:
|
|
if event.is_action_pressed("tap"):
|
|
speedy = tap_strength
|
|
|
|
func _process(delta: float) -> void:
|
|
speedy = clamp(speedy + delta * gravity_strength, tap_strength, max_fall_speed)
|
|
position.y += speedy
|
|
rotate(abs(clamp(speedy * rotate_tap_speed, speedy * rotate_tap_speed, rotate_falling_speed * delta)))
|