forked from wxm/Fighting_Rthythm_game
Initial commit: Fighting_Rthythm_game project setup
This commit is contained in:
31
scenes/characters/player.gd
Normal file
31
scenes/characters/player.gd
Normal file
@@ -0,0 +1,31 @@
|
||||
class_name Player
|
||||
extends Character
|
||||
|
||||
func handle_input() -> void:
|
||||
if Input.is_action_just_pressed("ui_left"):
|
||||
judge_rhythm_action("left")
|
||||
if can_attack():
|
||||
start_directional_attack(Vector2.LEFT)
|
||||
return
|
||||
if Input.is_action_just_pressed("ui_right"):
|
||||
judge_rhythm_action("right")
|
||||
if can_attack():
|
||||
start_directional_attack(Vector2.RIGHT)
|
||||
return
|
||||
if Input.is_action_just_pressed("jump"):
|
||||
judge_rhythm_action("jump")
|
||||
if can_jump():
|
||||
start_jump()
|
||||
if state == State.IDLE or state == State.WALK:
|
||||
velocity.x = 0.0
|
||||
|
||||
func set_heading() -> void:
|
||||
if velocity.x > 0.0:
|
||||
heading = Vector2.RIGHT
|
||||
elif velocity.x < 0.0:
|
||||
heading = Vector2.LEFT
|
||||
|
||||
func judge_rhythm_action(action_name: String) -> void:
|
||||
var conductor: Node = get_tree().get_first_node_in_group("rhythm_conductor")
|
||||
if conductor != null and conductor.has_method("judge_action"):
|
||||
conductor.call("judge_action", action_name)
|
||||
Reference in New Issue
Block a user