Files
spellforge/addons/game_designer/designer_panel.gd
T
2026-07-20 10:56:52 +08:00

27 lines
1.3 KiB
GDScript

## 游戏设计器主面板 — TabContainer 整合 法术/敌人/波次/Core/平衡 五个编辑器
@tool
extends Control
func _init() -> void:
custom_minimum_size = Vector2(0, 320)
var tabs := TabContainer.new()
tabs.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
add_child(tabs)
# 法术(复用现有法术编辑器停靠脚本)
_add_tab(tabs, "✨ 法术", preload("res://addons/spell_editor/spell_dock.gd").new())
_add_tab(tabs, "👾 敌人", preload("res://addons/game_designer/enemy_tab.gd").new())
_add_tab(tabs, "🌊 波次", preload("res://addons/game_designer/wave_tab.gd").new())
_add_tab(tabs, "🪄 Core", preload("res://addons/game_designer/core_tab.gd").new())
_add_tab(tabs, "🔮 共鸣", preload("res://addons/game_designer/resonance_tab.gd").new())
_add_tab(tabs, "🔥 状态", preload("res://addons/game_designer/status_tab.gd").new())
_add_tab(tabs, "⚖ 平衡", preload("res://addons/game_designer/balance_tab.gd").new())
func _add_tab(tabs: TabContainer, title: String, content: Control) -> void:
var scroll := ScrollContainer.new()
scroll.name = title
scroll.horizontal_scroll_mode = ScrollContainer.SCROLL_MODE_DISABLED
content.size_flags_horizontal = Control.SIZE_EXPAND_FILL
scroll.add_child(content)
tabs.add_child(scroll)