retrace/Characters/Meldewesen/Meldewesen.gd
karl 93f59ec131 Add NPC class which Meldewesen now inherits from
This is in preparation for being able to more finely control the NPC,
both from the specific NPC implementation and the PathNavigator (which
was renamed accordingly)
2019-11-11 10:24:29 +01:00

33 lines
816 B
GDScript

extends NPC
export(NodePath) var _visibility_path: NodePath
var _visibility: Area
func _ready():
Logger.set_logger_level(Logger.LOG_LEVEL_FINE)
_visibility = get_node(_visibility_path) as Area
if _visibility:
_visibility.connect("body_entered", self, "_on_body_entered_visibility")
_visibility.connect("body_exited", self, "_on_body_exited_visibility")
func _on_body_entered_visibility(body: Node):
Logger.trace("Meldewesen seeing %s" % [body])
if body.is_in_group("Player"):
Logger.info("Seeing player!")
# TODO: Check if the Player is in an area where they shouldn't be
# TODO: Follow the Player
func _on_body_exited_visibility(body: Node):
if body.is_in_group("Player"):
print("Stopped seeing player!")
Logger.info("Stopped seeing player!")
# TODO: Stop following the Player