extends Node2D class_name Taquin tool export var rows: int = 4 export var columns: int = 4 export var width: int = 512 export var height: int = 512 var pieces: Array = [] var missing_piece: Vector2 func _draw() -> void: draw_rect(Rect2(0, 0, width, height), Color.blue) func _ready() -> void: for c in range(columns): var pieces_row: Array = [] for r in range(rows): var piece = Piece.new() var padding_w = (width - (piece.size * columns)) / (columns + 1) var padding_h = (height - (piece.size * rows)) / (rows + 1) var initial_position = Vector2(padding_w + c * (piece.size + padding_w), padding_h + r * (piece.size + padding_h)) piece.translate(initial_position) if r == rows - 1 && c == columns - 1: piece.visible = false missing_piece.x = c missing_piece.y = r add_child(piece) pieces_row.append(piece) pieces.append(pieces_row)