class_name Curseur
extends Object
## Gere l'aspec du curseur

const curseur_main: Texture = preload("res://composants/interface/curseur/hand_point.png")
const curseur_triangle: Texture = preload("res://composants/interface/curseur/pointer_c.png")
const curseur_voyage: Texture = preload("res://composants/interface/curseur/arrow_nw.png")
const curseur_viseur: Texture = preload("res://composants/interface/curseur/target_round_b.png")
const centre_curseur_viseur := Vector2(16.0, 16.0)


## A appeler une fois dans le programme pour configurer les apparences de base
static func configure_aspects_par_defaut() -> void:
	Input.set_custom_mouse_cursor(curseur_voyage, Input.CURSOR_MOVE)
	Input.set_custom_mouse_cursor(curseur_main, Input.CURSOR_POINTING_HAND)


## A appeler pour afficher des boutons de menu
static func affiche_aspect_menu() -> void:
	Input.set_custom_mouse_cursor(curseur_triangle, Input.CURSOR_ARROW)


## A appeler pour afficher les curseurs d'action
static func affiche_aspect_combat() -> void:
	Input.set_custom_mouse_cursor(curseur_viseur, Input.CURSOR_ARROW, centre_curseur_viseur)