blob: e2e94151907841010d6488e5d923ca9388fa6372 (
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
29
30
31
32
|
extends Plate
export(int) var cardinal setget set_cardinal
onready var mesh : MeshInstance = $Mesh
onready var is_ready : bool = true
var is_active : bool
func _ready():
set_cardinal(cardinal)
func activate(entity : Entity, dungeon):
if is_active:
return
var direction : Vector2
is_active = true
match cardinal:
0: direction = Vector2(0, +1)
1: direction = Vector2(-1, 0)
2: direction = Vector2(0, -1)
3: direction = Vector2(+1, 0)
dungeon.move_entity(entity, direction)
is_active = false
func set_cardinal(value : int):
if is_ready:
mesh.transform.basis = Basis(Vector3.UP, value * PI / 2)
cardinal = value
|