summaryrefslogtreecommitdiff
path: root/src/entities/actors/snake/scripts/normal_state.gd
blob: 11981a390d97a6e2afae87cc84b576a19ec131fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
extends Node

var fsm: StateMachine


func enter():
	if fsm.DEBUG:
		print("Got inside %s." % name)


func exit(next_state):
	fsm.change_to(next_state)


func physics_process(delta: float) -> void:
	fsm.player.velocity = fsm.player.direction * Global.SNAKE_SPEED
	fsm.player.velocity = fsm.player.move_and_slide(fsm.player.velocity)

	fsm.slow_down_on_collisions(Global.SNAKE_SPEED_BACKUP)


func input(event: InputEvent) -> void:
	if fsm.player.can_dash and event.is_action_pressed("dash"):
		exit("DashState")
	if fsm.player.can_slow and event.is_action_pressed("slow"):
		exit("SlowState")
	# if fsm.player.can_jump and event.is_action_pressed("jump"):
	# 	exit("JumpState")