extends Node3D
class_name InfoChunk

@export_enum("Bioma", "Binario_Dritto", "Binario_Curva") var tipo_chunk: int = 0

@export_group("Uscite Base (Senza Rotazione)")
# Spunta queste caselle se il chunk ha un sentiero/binario che tocca quel bordo
@export var nord: bool = false
@export var est: bool = false
@export var sud: bool = false
@export var ovest: bool = false

# Calcola dove finiscono le uscite se ruotiamo il blocco
func get_uscite_ruotate(scatti_90_gradi: int) -> Dictionary:
	var uscite_originali = [nord, est, sud, ovest]
	var uscite_calcolate = []
	
	for i in range(4):
		# Sposta le uscite in senso orario
		uscite_calcolate.append(uscite_originali[(i - scatti_90_gradi + 4) % 4]) 
		
	return {
		"nord": uscite_calcolate[0],
		"est": uscite_calcolate[1],
		"sud": uscite_calcolate[2],
		"ovest": uscite_calcolate[3]
	}
