summaryrefslogtreecommitdiff
path: root/Scenes/PlateBounce.gd
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