23 lines
1.1 KiB
GDScript3
23 lines
1.1 KiB
GDScript3
|
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 в данном случае)
|