]> Untitled Git - frog-ninja.git/blob - player/moves/Move.gd
Added landing states
[frog-ninja.git] / player / moves / Move.gd
1 extends Node
2 class_name Move
3
4 ###
5 # flags and variables here
6 var player: Player
7 var camera: Camera3D
8
9 # enums are prioritized by order of list
10 static var moves_priority: Dictionary = {
11         "idle": 0,
12         "walk": 1,
13         "slash": 2,
14         "shoot": 3,
15         "dash": 50,
16         "fall": 100,
17         "fallToLanding": 101,
18         "fallToRoll": 102,
19 }
20
21 static func moves_priority_sort(a: String, b: String):
22         return moves_priority[a] > moves_priority[b]
23
24 ###
25
26 func should_enter(input: InputPacket) -> String:
27         if not player.is_on_floor():
28                 input.actions.append("fall")
29         input.actions.sort_custom(moves_priority_sort)
30         return input.actions[0]
31
32
33 func update(_input: InputPacket, _delta: float):
34         pass
35
36
37 func on_enter_state():
38         pass
39
40
41 func on_exit_state():
42         pass