godot-mota/src/stairs/Stairs.gd

30 lines
687 B
GDScript

extends Position2D
class_name Stairs
# 楼梯类型
enum StairsType { Up,Down }
export(StairsType) var stairs_type = StairsType.Up
export var disabled : bool = false
onready var sprite : Sprite = $Sprite
onready var collision_shape : CollisionShape2D = $Area2D/CollisionShape2D
func _on_Area2D_body_entered(body):
if disabled:
return
print("entered")
disabled = true
body.position = position
var levels_manager = $"/root/Main/Level" as LevelsManager
if stairs_type == StairsType.Up:
levels_manager.set_deferred("level",levels_manager.level + 1)
else:
levels_manager.set_deferred("level",levels_manager.level - 1)
func _on_Area2D_body_exited(body):
disabled = false