extends "res://src/ui/panels/editor_panel.gd" ## Objekt-Werkzeuge (aus main.gd ausgezogen, Karte t_eaccbfed U1 — Logik ## unverändert): „Alles auf den Boden setzen" + Raster-Snap-Schalter. Vor U1 ## wohnten diese beiden Widgets in der linken Spalte unter der Bibliothek; ## sie sind als eigener Registry-Bereich (Gruppe "unten") erhalten geblieben, ## damit nichts verschwindet. var snap_btn: Button var grid_check: CheckButton static func spec() -> Dictionary: return {"titel": "Objekt-Werkzeuge", "gruppe": "unten", "order": 20} func panel_title() -> String: return "Objekt-Werkzeuge" func build() -> void: snap_btn = Button.new() snap_btn.text = "⚡ Alles auf den Boden setzen" snap_btn.custom_minimum_size = UIScale.v2(0, 44) snap_btn.tooltip_text = "Setzt ALLE Objekte auf die Terrain-Höhe — z. B. nach dem Terrain-Formen, wenn etwas in der Luft hängt" snap_btn.pressed.connect(func() -> void: main.call("_on_snap_to_ground")) add_child(snap_btn) grid_check = CheckButton.new() grid_check.text = "Raster-Snap (1 m)" grid_check.custom_minimum_size = UIScale.v2(0, 40) grid_check.tooltip_text = "Neue und verschobene Objekte rasten auf ein 1-Meter-Raster ein" grid_check.toggled.connect(func(pressed: bool) -> void: main.call("_on_grid_snap_changed", pressed)) add_child(grid_check)