Files
Ecosystem-Project/scenes/main/grid.gd

33 lines
769 B
GDScript

class_name Grid
extends Node2D
@export var width: int = 12
@export var height: int = 12
@export var cell_size: int = 128
@export var show_debug: bool = false
var grid: Dictionary = {}
func generateGrid():
for x in width:
for y in height:
grid[Vector2(x,y)] = null
if show_debug:
var rect = ReferenceRect.new()
rect.position = gridToWorld(Vector2(x,y))
rect.size = Vector2(cell_size, cell_size)
rect.editor_only = false
$Debug.add_child(rect)
var label = Label.new()
label.position = gridToWorld(Vector2(x,y))
label.text = str(Vector2(x,y))
$Debug.add_child(label)
func gridToWorld(_pos: Vector2) -> Vector2:
return _pos * cell_size
func worldToGrid(_pos: Vector2) -> Vector2:
return floor(_pos / cell_size)