class_name Level extends Node3D const player_controller = preload("res://templates/singleplayer_pc.tscn") @onready var floor_layer : GridMap = %Floor @onready var marker_layer : GridMap = %Markers func detect_square(crd : Vector3i, mark : bool) -> bool: var cell = floor_layer.get_cell_item(crd) if cell == GridMap.INVALID_CELL_ITEM: return false marker_layer.set_cell_item(crd, 0 if mark else GridMap.INVALID_CELL_ITEM) return true func _ready() -> void: Game.level = self var player = player_controller.instantiate() var traps : Array[PlayerData.TrapData] = [ PlayerData.TrapData.new(Game.TrapType.BOMB, 3, 3), PlayerData.TrapData.new(Game.TrapType.SWITCH, 3, 3), PlayerData.TrapData.new(Game.TrapType.MINE, 3, 3) ] add_child(player) player.setup(traps)