- Introduced explicit typing to variables and functions across multiple scripts for better code clarity. - Specified 'void' as the return type for functions that do not return a value. - Removed redundant code in some scripts.
37 lines
1.2 KiB
GDScript
37 lines
1.2 KiB
GDScript
class_name DirectorDrone extends Drone
|
|
|
|
@onready var edit_cursor : Resource = preload("res://resources/cursors/message_dots_round.png")
|
|
@onready var label : Label = get_node("Label")
|
|
|
|
@export var visit_order : int = 0 :
|
|
get:
|
|
return visit_order
|
|
set(value):
|
|
visit_order = value
|
|
update_label_value()
|
|
|
|
func update_label_value() -> void:
|
|
$Label.text = str(visit_order)
|
|
|
|
func _on_click_detection_mouse_entered() -> void:
|
|
if GameState.placing_drone == false:
|
|
Log.pr("Mouse entered the director drone!")
|
|
label.visible = true
|
|
Input.set_custom_mouse_cursor(edit_cursor, Input.CURSOR_ARROW, Vector2(32, 32))
|
|
|
|
func _on_click_detection_mouse_exited() -> void:
|
|
if GameState.placing_drone == false:
|
|
Log.pr("Mouse exited the director drone!")
|
|
label.visible = false
|
|
#Input.set_custom_mouse_cursor(null)
|
|
GameState.reset_cursor()
|
|
|
|
|
|
func _on_click_detection_input_event(_viewport:Node, event:InputEvent, _shape_idx:int) -> void:
|
|
if GameState.placing_drone == false:
|
|
if (event is InputEventMouseButton && event.button_index == MOUSE_BUTTON_RIGHT && event.pressed):
|
|
#Input.set_custom_mouse_cursor(null)
|
|
GameState.reset_cursor()
|
|
queue_free()
|
|
get_parent().get_parent().update_director_drone_list()
|
|
|