管理界面改为动态创建页签并注册各页面板
This commit is contained in:
@@ -1,6 +1,131 @@
|
|||||||
extends Control
|
extends Control
|
||||||
|
|
||||||
|
var test_disciple_table : Array[Dictionary] = [] # 弟子
|
||||||
|
var test_field_table : Array[Dictionary] = [] # 建筑
|
||||||
|
var test_order_table : Array[Dictionary] = [] # 订单
|
||||||
|
var test_alchemy_table : Array[Dictionary] = [] # 炼丹配方
|
||||||
|
|
||||||
|
var test_inventory : Array[Dictionary] = [] # 库存
|
||||||
|
var test_sub_inventory1 : Array[Dictionary] = [] # 库存
|
||||||
|
var test_sub_inventory2 : Array[Dictionary] = [] # 库存
|
||||||
|
var test_sub_inventory3 : Array[Dictionary] = [] # 库存
|
||||||
|
|
||||||
|
var sect_resources : Dictionary;
|
||||||
|
|
||||||
|
var disciple_info_scene := preload("res://src/UI/Panels/Manager/DisciplePanel/DiscipleInformationPanel.tscn")
|
||||||
|
var field_info_scene := preload("res://src/UI/Panels/Manager/FieldPanel/FieldInformationPanel.tscn")
|
||||||
|
var order_info_scene := preload("res://src/UI/Panels/Manager/OrderPanel/OrderInformationPanel.tscn")
|
||||||
|
var alchemy_info_scene := preload("res://src/UI/Panels/Manager/AlchemyPanel/AlchemyPanel.tscn")
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
init_test_data();
|
||||||
|
var manager_panel_scene := load("res://src/UI/Panels/Manager/ManagerPanel.tscn") as PackedScene
|
||||||
|
var inventory_panel_scene := load("res://src/UI/Panels/Manager/InventoryPanel/InventoryPanel.tscn") as PackedScene
|
||||||
|
|
||||||
|
|
||||||
|
sect_resources["弟子"] = manager_panel_scene.instantiate();
|
||||||
|
sect_resources["弟子"].name = "弟子";
|
||||||
|
$TabContainer.add_child(sect_resources["弟子"]);
|
||||||
|
|
||||||
|
sect_resources["建筑"] = manager_panel_scene.instantiate();
|
||||||
|
sect_resources["建筑"].name = "建筑";
|
||||||
|
$TabContainer.add_child(sect_resources["建筑"]);
|
||||||
|
|
||||||
|
sect_resources["订单"] = manager_panel_scene.instantiate();
|
||||||
|
sect_resources["订单"].name = "订单";
|
||||||
|
$TabContainer.add_child(sect_resources["订单"]);
|
||||||
|
|
||||||
|
sect_resources["炼丹"] = manager_panel_scene.instantiate();
|
||||||
|
sect_resources["炼丹"].name = "炼丹";
|
||||||
|
$TabContainer.add_child(sect_resources["炼丹"]);
|
||||||
|
|
||||||
|
sect_resources["库房"] = inventory_panel_scene.instantiate();
|
||||||
|
sect_resources["库房"].name = "库房";
|
||||||
|
$TabContainer.add_child(sect_resources["库房"]);
|
||||||
|
|
||||||
|
for e in test_disciple_table:
|
||||||
|
var d := disciple_info_scene.instantiate()
|
||||||
|
d.set_info(e)
|
||||||
|
sect_resources["弟子"].add_info_card(d)
|
||||||
|
pass
|
||||||
|
|
||||||
|
for e in test_field_table:
|
||||||
|
var d := field_info_scene.instantiate()
|
||||||
|
d.set_field_info(e)
|
||||||
|
sect_resources["建筑"].add_info_card(d)
|
||||||
|
pass
|
||||||
|
|
||||||
|
for e in test_order_table:
|
||||||
|
var d := order_info_scene.instantiate()
|
||||||
|
d.set_order_info(e)
|
||||||
|
sect_resources['订单'].add_info_card(d)
|
||||||
|
pass
|
||||||
|
|
||||||
|
for e in test_alchemy_table:
|
||||||
|
var d := alchemy_info_scene.instantiate()
|
||||||
|
d.set_alchemy_info(e)
|
||||||
|
sect_resources['炼丹'].add_info_card(d)
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func init_test_data() -> void:
|
||||||
|
|
||||||
|
test_disciple_table.append_array([
|
||||||
|
{"name": "赵一", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "钱二", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "孙三", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "李四", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "周五", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "吴六", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15},
|
||||||
|
{"name": "郑七", "gender": "男", "level": "练气一层", "metal": 0.5, "wood": 0.9, "water": 0.1, "fire": 0.2, "earth": 0.15}
|
||||||
|
])
|
||||||
|
|
||||||
|
test_field_table.append_array([
|
||||||
|
{"name": "灵田", "弟子": 0},
|
||||||
|
{"name": "灵田", "弟子": 1},
|
||||||
|
{"name": "灵药园", "弟子": 2},
|
||||||
|
{"name": "灵药园", "弟子": 3},
|
||||||
|
{"name": "灵药园", "弟子": 4},
|
||||||
|
{"name": "炼丹房", "弟子": 0}
|
||||||
|
])
|
||||||
|
test_order_table.append_array([
|
||||||
|
{"title": "炼制灵丹", "type": "炼丹", "level": 1, "reward": 100, "time": 10, "status": 0},
|
||||||
|
{"title": "炼制灵丹", "type": "炼丹", "level": 2, "reward": 200, "time": 20, "status": 0},
|
||||||
|
{"title": "炼制灵丹", "type": "炼丹", "level": 3, "reward": 300, "time": 30, "status": 0},
|
||||||
|
{"title": "炼制灵丹", "type": "炼丹", "level": 4, "reward": 400, "time": 40, "status": 0},
|
||||||
|
{"title": "炼制灵丹", "type": "炼丹", "level": 5, "reward": 500, "time": 50, "status": 0}
|
||||||
|
])
|
||||||
|
|
||||||
|
test_alchemy_table.append_array([
|
||||||
|
{"name": "灵丹", "herb_1": 0, "herb_2": 0, "herb_3": 0, "herb_4": 0, "herb_5": 0, "herb_6": 0, "herb_7": 0, "herb_8": 0, "herb_9": 0},
|
||||||
|
{"name": "灵丹", "herb_1": 0, "herb_2": 0, "herb_3": 0, "herb_4": 0, "herb_5": 0, "herb_6": 0, "herb_7": 0, "herb_8": 0, "herb_9": 0},
|
||||||
|
{"name": "灵丹", "herb_1": 0, "herb_2": 0, "herb_3": 0, "herb_4": 0, "herb_5": 0, "herb_6": 0, "herb_7": 0, "herb_8": 0, "herb_9": 0},
|
||||||
|
{"name": "灵丹", "herb_1": 0, "herb_2": 0, "herb_3": 0, "herb_4": 0, "herb_5": 0, "herb_6": 0, "herb_7": 0, "herb_8": 0, "herb_9": 0},
|
||||||
|
{"name": "灵丹", "herb_1": 0, "herb_2": 0, "herb_3": 0, "herb_4": 0, "herb_5": 0, "herb_6": 0, "herb_7": 0, "herb_8": 0, "herb_9": 0}
|
||||||
|
])
|
||||||
|
|
||||||
|
test_sub_inventory1.append_array([
|
||||||
|
{"name": "A", "type": "草药", "quantity": 10},
|
||||||
|
{"name": "B", "type": "草药", "quantity": 20},
|
||||||
|
{"name": "C", "type": "草药", "quantity": 30},
|
||||||
|
{"name": "D", "type": "草药", "quantity": 40},
|
||||||
|
{"name": "E", "type": "草药", "quantity": 50}
|
||||||
|
])
|
||||||
|
|
||||||
|
test_sub_inventory2.append_array([
|
||||||
|
{"name": "米", "type": "粮食", "quantity": 10},
|
||||||
|
{"name": "蔬菜", "type": "粮食", "quantity": 20},
|
||||||
|
])
|
||||||
|
|
||||||
|
test_sub_inventory3.append_array([
|
||||||
|
{"name": "聚气丹", "type": "丹药", "quantity": 10},
|
||||||
|
{"name": "筑基丹", "type": "丹药", "quantity": 20},
|
||||||
|
])
|
||||||
|
|
||||||
|
test_inventory.append_array([{"草药": test_sub_inventory1}, {"粮食": test_sub_inventory2}, {"丹药": test_sub_inventory3}]);
|
||||||
pass
|
pass
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
[gd_scene format=3 uid="uid://d1mbwdtarjqof"]
|
[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="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]
|
[node name="Manager" type="Control" unique_id=360636457]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
@@ -22,28 +20,4 @@ anchor_right = 1.0
|
|||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
current_tab = 4
|
tab_focus_mode = 1
|
||||||
|
|
||||||
[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
|
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
extends Control
|
||||||
|
|
||||||
|
func add_info_card(card : Control) -> bool:
|
||||||
|
$ScrollContainer/HFlowContainer.add_child(card)
|
||||||
|
return true;
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://beiiusgimt3s1
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
[gd_scene format=3 uid="uid://cbqydw1lerumr"]
|
[gd_scene format=3 uid="uid://cbqydw1lerumr"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://beiiusgimt3s1" path="res://src/UI/Panels/Manager/ManagerPanel.gd" id="1_1bkxy"]
|
||||||
|
|
||||||
[node name="ManagerPanel" type="Control" unique_id=1475562434]
|
[node name="ManagerPanel" type="Control" unique_id=1475562434]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
@@ -7,6 +9,7 @@ anchor_right = 1.0
|
|||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
script = ExtResource("1_1bkxy")
|
||||||
|
|
||||||
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=129376527]
|
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=129376527]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
@@ -18,4 +21,6 @@ grow_vertical = 2
|
|||||||
|
|
||||||
[node name="HFlowContainer" type="HFlowContainer" parent="ScrollContainer" unique_id=836450693]
|
[node name="HFlowContainer" type="HFlowContainer" parent="ScrollContainer" unique_id=836450693]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
alignment = 1
|
alignment = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user