31 lines
508 B
GDScript
31 lines
508 B
GDScript
class_name AbstractActivatableObject
|
|
extends Node2D
|
|
|
|
|
|
@onready var hover_tip : Node2D = $HoverTip
|
|
|
|
|
|
var _player_in_range := false
|
|
|
|
|
|
func _ready() -> void:
|
|
hover_tip.hide()
|
|
|
|
|
|
func _on_body_entered(body: Node2D) -> void:
|
|
if body is Player:
|
|
hover_tip.show()
|
|
_player_in_range = true
|
|
body.interacted.connect(_activate)
|
|
|
|
|
|
func _on_body_exited(body: Node2D) -> void:
|
|
if body is Player:
|
|
hover_tip.hide()
|
|
_player_in_range = false
|
|
body.interacted.disconnect(_activate)
|
|
|
|
|
|
func _activate() -> void:
|
|
pass
|