Compare commits

...
5 Commits
Author SHA1 Message Date
Admin 830aaa5a03 Merge branch 'dev' of ssh://git.devquest.cn:2222/chentianya/ImmortalSect into dev 2026-09-06 14:13:10 +08:00
Admin dd461f6f88 Merge branch 'dev_UI' into dev 2026-09-06 14:13:05 +08:00
Admin 38319d6478 重构管理界面为通用标签面板
- 移除 DisciplePanel,改用可复用的 ManagerPanel 占位标签(×4)
- 新增 InventoryPanel 并接入管理页第 5 个标签
- 新增炼丹、外务、订单等子面板占位场景与资源样式
- 样式资源重命名:disciple_info_* 改为 manager_info_*
2026-09-06 14:12:55 +08:00
Admin e1ed233f20 弟子面板与信息面板初步搭建,新增管理面板样式
- 新增 DisciplePanel/DiscipleInformationPanel 场景(src/UI/Panels/Manager/ 下)
- MainGame.tscn 接入管理面板入口
- 新增 manager_style_box_flat 样式资源
2026-09-06 10:13:44 +08:00
Admin 266a5cc7a9 添加弟子管理UI界面 2026-09-03 23:54:45 +08:00
16 changed files with 669 additions and 36 deletions
+105
View File
@@ -0,0 +1,105 @@
# UI 界面清单
本文档按"前端只管显示,数据从后端 Manager 获取"原则(见 `doc/P1模块拆分.md`)整理全部界面规划。已有界面标注现状,规划界面按 P1 与中后期分列。
## 1. 目录结构约定
```
src/UI/
├── HUD/ 顶栏/底部条状 HUD(常驻)
│ ├── MainSceneHud.tscn
│ └── MainGameButtomHud.tscn
└── Panels/ 全屏/大面积面板(弹层式)
├── MainMenu/ 主菜单(已有)
├── Management/ 管理主操作面板(P1 新增)
│ ├── DisciplePanel/ 弟子面板
│ ├── FieldPanel/ 建筑/灵田面板
│ ├── AlchemyPanel/ 炼丹面板
│ ├── OrderPanel/ 订单面板
│ └── InventoryPanel/ 库存面板
└── SavePannel.tscn 存档面板(已有,+SaveGroup/SaveSlot
```
约定:HUD 放常驻条状 UI;面板一律进 `Panels/`,同组面板建子文件夹(参照 MainMenu 先例)。弹窗类(事件/确认/通知)后续放 `Panels/` 下或单独 `Popups/`
## 2. 已有界面(现状)
| 界面 | 文件 | 状态 |
| --- | --- | --- |
| 主菜单 | `src/UI/Panels/MainMenu/MainMenu.tscn` | 已有:新游戏/读档 |
| 存档面板 | `src/UI/Panels/SavePannel.tscn`+ SaveGroup/SaveSlot | 已有:两级存档列表 |
| 顶栏 HUD | `src/UI/HUD/MainSceneHud.tscn` | 已有:时间/灵石/声望/灵气 + 管理/保存/返回/下一回合按钮 |
| 底部 HUD | `src/UI/HUD/MainGameButtomHud.tscn` | 已有但**未接入 MainGame 场景**(仅"继续"按钮) |
## 3. 主场景布局结构
```
MainGame(场景)
├── 顶栏 HUD(全局信息 + 入口按钮)
│ ├── 时间 / 灵石 / 声望 / 灵气
│ ├── 管理按钮(打开主操作面板) [灵田/炼丹/弟子/订单/库存 入口]
│ └── 保存 / 返回
├── 主操作区(当前主面板,全屏覆盖) ← 弹层式切换
└── 弹窗层(事件/确认/通知,最高层)
```
原则:一次只显示一个主操作面板,面板间通过顶栏"管理"按钮切换;弹窗层供事件、确认框、提示用。
## 4. P1 界面清单(对应各 Manager
| 界面 | 数据源(后端) | 内容 | 操作 |
| --- | --- | --- | --- |
| 弟子面板 | DiscipleManager | 弟子列表:姓名/境界/技艺/忠诚/修为进度;详情区 | 查看;分配劳作类型(种田/炼丹/空闲) |
| 灵田面板 | FieldManager | 内外田地块网格:作物/生长进度/品质 | 种植(选作物+分配弟子)、收获 |
| 炼丹面板 | AlchemyManager | 丹方列表(材料需求/技艺要求)+ 可选炼丹弟子 | 炼制(扣材料→入库存) |
| 订单面板 | OrderManager | 当前订单:客户/物品/数量/品质要求/期限/奖励 | 交货(校验库存→加灵石) |
| 库存面板 | InventoryManager | 物品列表:灵药/丹药/凡粮 数量与品质 | 只读展示(可并入其他面板) |
| 顶栏灵石/口粮 | EconomyManager / FoodManager | 灵石余额、口粮结余 | 只读 |
P1 简化:库存并入炼丹/订单面板分栏显示,不单开面板;弟子劳作分配暂只影响生产(对应弟子技艺),不做单独"空闲/忙碌"状态 UI。
## 5. 中后期界面规划(P2~P5
### P2 经营深度
| 界面 | 数据源 | 内容 |
| --- | --- | --- |
| 收徒面板 | DiscipleManager(工厂) | 可收弟子候选:资质/拜师礼 |
| 委托面板 | 委托系统 | 随机委托列表:奖励/风险,派遣弟子执行 |
| 忠诚度视图 | DiscipleManager | 弟子忠诚/满意度,抽成政策调节(并入弟子面板) |
| 香火/供奉 | 声望系统 | 村庄供奉信息 |
### P3 外交层
| 界面 | 数据源 | 内容 |
| --- | --- | --- |
| 外交面板 | 客户/宗门关系系统 | 大宗门列表:好感/附庸等级/订单偏好 |
| 附庸管理 | 附庸系统 | 当前附庸等级、义务、宗主裁决记录 |
### P4 秘境事件
| 界面 | 数据源 | 内容 |
| --- | --- | --- |
| 勘探/发掘面板 | 秘境系统 | 后山勘探按钮、秘境层进度、功法获取 |
| 警戒/封锁 | 走漏系统 | 消息封锁操作、泄露风险提示 |
| 战报 | 冲突系统 | 小规模冲突事件、战斗自动结算结果 |
### P5 终局
| 界面 | 数据源 | 内容 |
| --- | --- | --- |
| 宗门史记/结算 | 评分系统 | 传奇度评分、结局文本、自由沙盒入口 |
| 天灾面板 | 天灾系统 | 天灾进度、各方势力动态 |
## 6. UI 与后端绑定规则
1. 每个面板对应一个 Manager 或一组 Manager 的只读视图 + 操作方法。
2. 面板 `_ready()` 时调 Manager getter 拉全量数据渲染,再连接信号增量刷新(观察者)。
3. 玩家操作 → 调 Manager 方法 → Manager 发信号 → 面板刷新(UI 不写数据)。
4. 弹窗(事件/确认)由事件系统驱动,可复用通用弹窗场景(标题/正文/按钮组)。
## 7. 待补充
- 通用弹窗场景、面板切换容器(P1 起步时实现)
- 具体面板视觉风格(沿用现有 theme 体系:`resources/` 下按钮/Label theme
- 中后期面板在各自里程碑实现时细化(本文档只列清单)
+88
View File
@@ -0,0 +1,88 @@
# 主世界与建筑模块设计
本文档定义主世界(hex 地块)、建筑与弟子派工的关系。背景见 `doc/WorldDesign.md``doc/P1模块拆分.md`
## 1. 主世界方案(已定)
**正六边形单元格地图**,玩家在单元格上建设建筑/灵田(类似文明的领地经营 + 模拟经营的指派产出)。
### 1.1 设计咬合点(为什么用 hex)
- **灵石矿是地块资源**:哪块地有灵脉 → 占矿/买矿成为位置决策
- **秘境"在后山"是空间概念**:勘探发掘做成地图行为
- **后期地盘争夺需要地图**:从 P1 引入空间维度,后期不返工
- **成长可视化**"从小宗门到大宗门"= 地图从一小块山头扩大的过程
### 1.2 落地节奏(已定:坐标预留,渲染后置)
| 阶段 | 数据层 | UI 层 |
| --- | --- | --- |
| P1 | 建筑数据带 hex 坐标(axial) | 卡片/列表渲染,不做地图 |
| P2/P3 | 不变(存档天然带位置) | hex 主世界渲染(tile 美术 + 放置交互) |
前端后端分离下,UI 切换只影响显示层,后端零返工。
### 1.3 hex 成立的前提
1. **格子有位置价值**——灵脉格/水源格/肥沃地/岩石地,不同地块加成不同(纯装饰的格子不做)。
2. **地图随机生成**——每局资源分布不同,防止最优布局模板一劳永逸,保证复玩性。
3. **面积跟随成长**——开局只有山头几格,扩张需买地/开荒,地图与宗门成长绑定。
### 1.4 弟子与建筑的绑定深度(已定:派工单式)
- 弟子**指派**给建筑,月底结算产出,弟子不在地图上行走。
- 位置只影响加成(如灵田靠近水源产量+)。
- 明确不做实体行走式(寻路/队列/行程),与月回合结算节奏冲突,成本高。
## 2. 建筑实体模型
建筑(含灵田)是 hex 上的实体,**必须有弟子指派才有产出**:
```gdscript
## BuildingData.gdRefCounted,纯数据)
var id: int
var cell: Vector2i # hex axial 坐标(q, r
var building_type: int # 建筑类型枚举
var assigned_disciple_id: int = -1 # 指派弟子,-1 = 无
var progress: float = 0.0 # 生产/生长进度
var level: int = 1 # 建筑等级(预留)
```
## 3. 建筑类型
| 建筑 | 产出 | 指派要求 | 备注 |
| --- | --- | --- | --- |
| 外田(凡粮) | 灵稻 | 种植技艺 | 口粮来源 |
| 内田(灵药) | 聚气草/凝神花 | 种植技艺 | 炼丹原料 |
| 丹房 | 聚气丹/凝神丹 | 炼丹技艺 | 消耗灵药原料 |
| 仓库(预留) | — | — | 存粮/存料上限,后期 |
| 洞府/居所(预留) | — | — | 弟子数量上限,后期 |
P1 只做前三种(对应原 FieldManager + AlchemyManager 的职责,统一进建筑框架)。
## 4. 数据模型演进
`FieldData`(灵田)泛化为 `BuildingData`(建筑),灵田是建筑类型之一:
- 原 FieldManager → 建筑管理:地块放置、指派弟子、月度结算(生长/产出入库存)
- 种植类建筑带"作物"字段(作物类型/生长月数/品质),收获式产出
- 丹房是"即时加工"类建筑:有原料时弟子炼制入库存(也可保留 AlchemyManager 独立接口,两者皆可)
## 5. 月度结算信号流(不变)
```
settle_month()
→ 每个有弟子指派的建筑结算产出
→ 收获/成品入 InventoryManager
→ inventory_changed
```
## 6. 简化决策
| 完整愿景 | P1 取舍 | 后续 |
| --- | --- | --- |
| hex 地图渲染 | 不做,卡片/列表 | P2/P3 |
| 地图随机生成 | 固定初始地图(几块田+一丹房) | P3 |
| 地块地形差异 | 初始全默认,无加成 | P3 引入水源/灵脉 |
| 建筑多类型 | 只做外田/内田/丹房 | 逐里程碑加 |
| 弟子行走 | 不做(派工单式) | 不评估升级 |
@@ -0,0 +1,10 @@
[gd_resource type="LabelSettings" format=3 uid="uid://dur4uye3m0ffd"]
[ext_resource type="FontFile" uid="uid://duxymf2xy66em" path="res://assets/fonts/lxgw-wenkai-v1.522/LXGWWenKai-Regular.ttf" id="1_ks1xp"]
[resource]
line_spacing = 5.0
paragraph_spacing = 1.0
font = ExtResource("1_ks1xp")
font_size = 24
font_color = Color(0, 0, 0, 1)
@@ -0,0 +1,9 @@
[gd_resource type="StyleBoxFlat" format=3 uid="uid://kxc0y8146vlk"]
[resource]
bg_color = Color(0.70980394, 0.91764706, 0.84313726, 1)
border_width_left = 10
border_width_top = 10
border_width_right = 10
border_width_bottom = 10
border_color = Color(0.763118, 0.67405456, 0.91787714, 1)
+9
View File
@@ -0,0 +1,9 @@
[gd_resource type="StyleBoxFlat" format=3 uid="uid://e86yw57h4v2s"]
[resource]
bg_color = Color(0.34372595, 0.630709, 0.8494593, 1)
border_width_left = 80
border_width_top = 40
border_width_right = 80
border_width_bottom = 40
border_color = Color(0.8, 0.8, 0.8, 0)
+13
View File
@@ -2,6 +2,8 @@
[ext_resource type="Script" uid="uid://cr4by5k8vgkcq" path="res://src/Core/MainGame.gd" id="1_8bu23"]
[ext_resource type="PackedScene" uid="uid://d3njijtx7ws1m" path="res://src/UI/HUD/MainSceneHud.tscn" id="2_8bu23"]
[ext_resource type="StyleBox" uid="uid://e86yw57h4v2s" path="res://resources/manager_style_box_flat.tres" id="3_dl5bp"]
[ext_resource type="PackedScene" uid="uid://d1mbwdtarjqof" path="res://src/UI/Panels/Manager/Manager.tscn" id="4_58g0x"]
[node name="MainGame" type="Node" unique_id=42551660]
script = ExtResource("1_8bu23")
@@ -10,4 +12,15 @@ script = ExtResource("1_8bu23")
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1678471853]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = ExtResource("3_dl5bp")
[node name="Manager" parent="PanelContainer" unique_id=360636457 instance=ExtResource("4_58g0x")]
layout_mode = 2
[connection signal="sign_return_mainmenu" from="MainHud" to="." method="_on_top_bar_hud_sign_return_mainmenu"]
-36
View File
@@ -1,36 +0,0 @@
[gd_scene format=3 uid="uid://xecv3j1wfxmv"]
[ext_resource type="Theme" uid="uid://bse6imt1ab1rx" path="res://resources/top_bar_hud_theme.tres" id="1_o3gra"]
[node name="MainGameButtomHud" type="Control" unique_id=12078477]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=1423942750]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer" unique_id=1433002269]
layout_mode = 2
size_flags_vertical = 10
[node name="Spacer" type="Control" parent="VBoxContainer/HBoxContainer" unique_id=990599719]
layout_mode = 2
size_flags_horizontal = 3
size_flags_stretch_ratio = 8.0
[node name="Button" type="Button" parent="VBoxContainer/HBoxContainer" unique_id=1159144698]
layout_mode = 2
size_flags_horizontal = 3
theme = ExtResource("1_o3gra")
text = "继续"
@@ -0,0 +1,99 @@
[gd_scene format=3 uid="uid://c856oxmhhj5m2"]
[ext_resource type="StyleBox" uid="uid://kxc0y8146vlk" path="res://resources/manager_info_style_box_flat.tres" id="1_62fqa"]
[ext_resource type="LabelSettings" uid="uid://dur4uye3m0ffd" path="res://resources/manager_info_label_settings.tres" id="1_j02a5"]
[node name="AlchemyPanel" type="Control" unique_id=729180406]
custom_minimum_size = Vector2(180, 240)
custom_maximum_size = Vector2(200, 240)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1524260599]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = ExtResource("1_62fqa")
[node name="HBoxContainer" type="VBoxContainer" parent="PanelContainer" unique_id=786291684]
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer/HBoxContainer" unique_id=199601169]
layout_mode = 2
size_flags_vertical = 3
[node name="Label" type="Label" parent="PanelContainer/HBoxContainer/HBoxContainer" unique_id=748051878]
layout_mode = 2
size_flags_vertical = 1
text = "配方:"
label_settings = ExtResource("1_j02a5")
horizontal_alignment = 1
vertical_alignment = 1
[node name="Name" type="Label" parent="PanelContainer/HBoxContainer/HBoxContainer" unique_id=785682846]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
label_settings = ExtResource("1_j02a5")
horizontal_alignment = 1
vertical_alignment = 1
[node name="GridContainer" type="GridContainer" parent="PanelContainer/HBoxContainer" unique_id=1708801949]
custom_minimum_size = Vector2(173, 173)
custom_maximum_size = Vector2(173, 173)
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
columns = 3
[node name="Panel" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1131761795]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel2" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=2037909469]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel3" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=2146602649]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel4" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1937789898]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel5" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1747365489]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel6" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=835591152]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel7" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1977341162]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel8" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1254657901]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Panel9" type="Panel" parent="PanelContainer/HBoxContainer/GridContainer" unique_id=1465325187]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
@@ -0,0 +1,159 @@
[gd_scene format=3 uid="uid://swa7gtddn6fj"]
[ext_resource type="LabelSettings" uid="uid://dur4uye3m0ffd" path="res://resources/manager_info_label_settings.tres" id="1_abpqa"]
[ext_resource type="StyleBox" uid="uid://kxc0y8146vlk" path="res://resources/manager_info_style_box_flat.tres" id="1_po3i5"]
[node name="DiscipleInformationPanel" type="PanelContainer" unique_id=2024414593]
custom_minimum_size = Vector2(180, 240)
custom_maximum_size = Vector2(180, 240)
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_styles/panel = ExtResource("1_po3i5")
[node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=1066350214]
layout_mode = 2
size_flags_vertical = 3
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer" unique_id=528093249]
layout_mode = 2
size_flags_vertical = 3
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer" unique_id=2078348112]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "姓名"
label_settings = ExtResource("1_abpqa")
horizontal_alignment = 1
vertical_alignment = 1
[node name="Name" type="Label" parent="VBoxContainer/HBoxContainer" unique_id=1124761822]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
label_settings = ExtResource("1_abpqa")
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer" unique_id=1255356167]
layout_mode = 2
size_flags_vertical = 3
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer2" unique_id=233829191]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "境界"
label_settings = ExtResource("1_abpqa")
horizontal_alignment = 1
vertical_alignment = 1
[node name="Level" type="Label" parent="VBoxContainer/HBoxContainer2" unique_id=913472455]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
label_settings = ExtResource("1_abpqa")
[node name="HBoxContainer3" type="HBoxContainer" parent="VBoxContainer" unique_id=1358402714]
layout_mode = 2
size_flags_vertical = 3
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3" unique_id=1781987484]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
text = "属性"
label_settings = ExtResource("1_abpqa")
horizontal_alignment = 1
vertical_alignment = 1
[node name="VBoxContainer2" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3" unique_id=251442021]
layout_mode = 2
size_flags_horizontal = 3
[node name="Metal" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer2" unique_id=395220991]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "金"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Wood" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer2" unique_id=1852801128]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "木"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Water" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer2" unique_id=1864946709]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "水"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Fire" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer2" unique_id=1916838020]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "火"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Earth" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer2" unique_id=2106256122]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "土"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3" unique_id=565242402]
layout_mode = 2
size_flags_horizontal = 3
[node name="Metal" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer" unique_id=334471189]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "1"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Wood" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer" unique_id=1099683329]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "1"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Water" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer" unique_id=1520779703]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "1"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Fire" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer" unique_id=66098798]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "1"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
[node name="Earth" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer" unique_id=170833691]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "1"
label_settings = ExtResource("1_abpqa")
vertical_alignment = 1
@@ -0,0 +1,43 @@
[gd_scene format=3 uid="uid://bk5w5of88aysu"]
[ext_resource type="StyleBox" uid="uid://kxc0y8146vlk" path="res://resources/manager_info_style_box_flat.tres" id="1_rap8l"]
[ext_resource type="LabelSettings" uid="uid://dur4uye3m0ffd" path="res://resources/manager_info_label_settings.tres" id="2_p6bv6"]
[node name="FieldInformationPanel" type="Control" unique_id=844204855]
custom_minimum_size = Vector2(180, 240)
custom_maximum_size = Vector2(180, 240)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=900478219]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = ExtResource("1_rap8l")
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer" unique_id=241079176]
layout_mode = 2
[node name="Name" type="Label" parent="PanelContainer/VBoxContainer" unique_id=909840161]
layout_mode = 2
text = "AAA"
label_settings = ExtResource("2_p6bv6")
horizontal_alignment = 1
vertical_alignment = 1
[node name="Info" type="Label" parent="PanelContainer/VBoxContainer" unique_id=1950109494]
layout_mode = 2
text = "BBB"
label_settings = ExtResource("2_p6bv6")
[node name="GridContainer" type="GridContainer" parent="PanelContainer/VBoxContainer" unique_id=1107543260]
layout_mode = 2
size_flags_vertical = 3
columns = 4
@@ -0,0 +1,23 @@
[gd_scene format=3 uid="uid://dxij6vexu5m1q"]
[node name="InventoryPanel" type="Control" unique_id=735363118]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=887058553]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Tree" type="Tree" parent="ScrollContainer" unique_id=1018260768]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
columns = 5
+6
View File
@@ -0,0 +1,6 @@
extends Control
func _ready() -> void:
pass
+1
View File
@@ -0,0 +1 @@
uid://qjqb0jaqxuu2
+49
View File
@@ -0,0 +1,49 @@
[gd_scene format=3 uid="uid://d1mbwdtarjqof"]
[ext_resource type="Script" uid="uid://qjqb0jaqxuu2" path="res://src/UI/Panels/Manager/Manager.gd" id="1_qdh6a"]
[ext_resource type="PackedScene" uid="uid://cbqydw1lerumr" path="res://src/UI/Panels/Manager/ManagerPanel.tscn" id="2_ieenf"]
[ext_resource type="PackedScene" uid="uid://dxij6vexu5m1q" path="res://src/UI/Panels/Manager/InventoryPanel/InventoryPanel.tscn" id="3_k3wlu"]
[node name="Manager" type="Control" unique_id=360636457]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
script = ExtResource("1_qdh6a")
[node name="TabContainer" type="TabContainer" parent="." unique_id=915058536]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
current_tab = 4
[node name="ManagerPanel" parent="TabContainer" unique_id=1475562434 instance=ExtResource("2_ieenf")]
visible = false
layout_mode = 2
metadata/_tab_index = 0
[node name="ManagerPanel2" parent="TabContainer" unique_id=393118788 instance=ExtResource("2_ieenf")]
visible = false
layout_mode = 2
metadata/_tab_index = 1
[node name="ManagerPanel3" parent="TabContainer" unique_id=609733971 instance=ExtResource("2_ieenf")]
visible = false
layout_mode = 2
metadata/_tab_index = 2
[node name="ManagerPanel4" parent="TabContainer" unique_id=780944038 instance=ExtResource("2_ieenf")]
visible = false
layout_mode = 2
metadata/_tab_index = 3
[node name="InventoryPanel" parent="TabContainer" unique_id=735363118 instance=ExtResource("3_k3wlu")]
layout_mode = 2
metadata/_tab_index = 4
+21
View File
@@ -0,0 +1,21 @@
[gd_scene format=3 uid="uid://cbqydw1lerumr"]
[node name="ManagerPanel" type="Control" unique_id=1475562434]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=129376527]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="HFlowContainer" type="HFlowContainer" parent="ScrollContainer" unique_id=836450693]
layout_mode = 2
alignment = 1
@@ -0,0 +1,34 @@
[gd_scene format=3 uid="uid://6ui4v8yhobr4"]
[ext_resource type="StyleBox" uid="uid://kxc0y8146vlk" path="res://resources/manager_info_style_box_flat.tres" id="1_87463"]
[ext_resource type="LabelSettings" uid="uid://dur4uye3m0ffd" path="res://resources/manager_info_label_settings.tres" id="2_sotk8"]
[node name="OrderPanel" type="Control" unique_id=1777280890]
custom_minimum_size = Vector2(180, 240)
custom_maximum_size = Vector2(180, 240)
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1940446491]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = ExtResource("1_87463")
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer" unique_id=1857403555]
layout_mode = 2
[node name="Title" type="Label" parent="PanelContainer/VBoxContainer" unique_id=174596326]
layout_mode = 2
label_settings = ExtResource("2_sotk8")
[node name="Reward" type="Label" parent="PanelContainer/VBoxContainer" unique_id=835372898]
layout_mode = 2
label_settings = ExtResource("2_sotk8")