testproject/world.gd

23 lines
1.1 KiB
GDScript3
Raw Normal View History

extends Node2D
# Переменная для хранения ссылки на TileMap
@onready var tilemap: TileMapLayer = $TileMapLayer
var is_drawing: bool = false # Флаг для отслеживания зажатия кнопки мыши
func _ready():
pass
func _input(event):
if event is InputEventMouseButton:
# Проверяем нажатие или отпускание левой кнопки мыши
if event.button_index == MOUSE_BUTTON_LEFT:
is_drawing = event.pressed # Устанавливаем флаг, если кнопка нажата
if event is InputEventMouseMotion and is_drawing:
# Получаем позицию мыши в мировых координатах
var current_tile:Vector2 = tilemap.local_to_map(get_global_mouse_position()-tilemap.global_position)
var tile_pos = tilemap.map_to_local(current_tile)
tilemap.set_cells_terrain_connect([current_tile], 0, 2, true)
# Преобразуем в координаты тайлов
# Устанавливаем тайл (tile_id = 1 в данном случае)