diff --git a/DungeonShooting_Godot/prefab/ui/Encyclopedia.tscn b/DungeonShooting_Godot/prefab/ui/Encyclopedia.tscn index 11f9821..c638dc8 100644 --- a/DungeonShooting_Godot/prefab/ui/Encyclopedia.tscn +++ b/DungeonShooting_Godot/prefab/ui/Encyclopedia.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=10 format=3 uid="uid://b2xq02i3vxct"] +[gd_scene load_steps=11 format=3 uid="uid://b2xq02i3vxct"] [ext_resource type="Script" path="res://src/game/ui/encyclopedia/EncyclopediaPanel.cs" id="1_hd86y"] [ext_resource type="Texture2D" uid="uid://c0st2iiql8igg" path="res://resource/sprite/ui/encyclopedia/TitleBg.png" id="3_gdtik"] [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="3_o1xl7"] [ext_resource type="Texture2D" uid="uid://dahib4qcevboo" path="res://resource/sprite/ui/encyclopedia/Panel2.png" id="4_21546"] +[ext_resource type="Texture2D" uid="uid://jb73i5q1dv2a" path="res://resource/sprite/ui/encyclopedia/Tab.png" id="4_nm64b"] [ext_resource type="Texture2D" uid="uid://brevrlfdtllmk" path="res://resource/sprite/ui/encyclopedia/Select.png" id="5_f0anf"] [ext_resource type="Texture2D" uid="uid://cu5y32wfai4pn" path="res://resource/sprite/ui/encyclopedia/Item.png" id="5_niceh"] [ext_resource type="Texture2D" uid="uid://conjg6fw6670x" path="res://resource/sprite/ui/encyclopedia/Panel.png" id="7_hfdat"] @@ -103,6 +104,59 @@ layout_mode = 2 size_flags_horizontal = 3 size_flags_stretch_ratio = 3.0 +theme_override_constants/separation = 0 + +[node name="Control" type="Control" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2"] +custom_minimum_size = Vector2(2.08165e-12, 48) +layout_mode = 2 + +[node name="TabButton" type="TextureButton" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2/Control"] +layout_mode = 1 +anchors_preset = 2 +anchor_top = 1.0 +anchor_bottom = 1.0 +offset_left = 16.0 +offset_top = -52.0 +offset_right = 80.0 +offset_bottom = 4.0 +grow_vertical = 0 +texture_normal = ExtResource("4_nm64b") + +[node name="TabButton2" type="TextureButton" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2/Control"] +layout_mode = 1 +anchors_preset = 2 +anchor_top = 1.0 +anchor_bottom = 1.0 +offset_left = 80.0 +offset_top = -52.0 +offset_right = 144.0 +offset_bottom = 4.0 +grow_vertical = 0 +texture_normal = ExtResource("4_nm64b") + +[node name="TabButton3" type="TextureButton" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2/Control"] +layout_mode = 1 +anchors_preset = 2 +anchor_top = 1.0 +anchor_bottom = 1.0 +offset_left = 144.0 +offset_top = -52.0 +offset_right = 208.0 +offset_bottom = 4.0 +grow_vertical = 0 +texture_normal = ExtResource("4_nm64b") + +[node name="TabButton4" type="TextureButton" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2/Control"] +layout_mode = 1 +anchors_preset = 2 +anchor_top = 1.0 +anchor_bottom = 1.0 +offset_left = 208.0 +offset_top = -52.0 +offset_right = 272.0 +offset_bottom = 4.0 +grow_vertical = 0 +texture_normal = ExtResource("4_nm64b") [node name="NinePatchRect" type="NinePatchRect" parent="NinePatchRect/MarginContainer/HBoxContainer/VBoxContainer2"] layout_mode = 2 diff --git a/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png b/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png new file mode 100644 index 0000000..26e6fd4 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png.import b/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png.import new file mode 100644 index 0000000..ea23bba --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/ui/encyclopedia/Tab.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://jb73i5q1dv2a" +path="res://.godot/imported/Tab.png-6caaacadacb5a595ff3de32a94dcc375.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resource/sprite/ui/encyclopedia/Tab.png" +dest_files=["res://.godot/imported/Tab.png-6caaacadacb5a595ff3de32a94dcc375.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/DungeonShooting_Godot/src/game/ui/encyclopedia/Encyclopedia.cs b/DungeonShooting_Godot/src/game/ui/encyclopedia/Encyclopedia.cs index 4234b5a..208e2c8 100644 --- a/DungeonShooting_Godot/src/game/ui/encyclopedia/Encyclopedia.cs +++ b/DungeonShooting_Godot/src/game/ui/encyclopedia/Encyclopedia.cs @@ -82,6 +82,103 @@ } /// + /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton + /// + public class TabButton : UiNode + { + public TabButton(EncyclopediaPanel uiPanel, Godot.TextureButton node) : base(uiPanel, node) { } + public override TabButton Clone() => new (UiPanel, (Godot.TextureButton)Instance.Duplicate()); + } + + /// + /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton2 + /// + public class TabButton2 : UiNode + { + public TabButton2(EncyclopediaPanel uiPanel, Godot.TextureButton node) : base(uiPanel, node) { } + public override TabButton2 Clone() => new (UiPanel, (Godot.TextureButton)Instance.Duplicate()); + } + + /// + /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton3 + /// + public class TabButton3 : UiNode + { + public TabButton3(EncyclopediaPanel uiPanel, Godot.TextureButton node) : base(uiPanel, node) { } + public override TabButton3 Clone() => new (UiPanel, (Godot.TextureButton)Instance.Duplicate()); + } + + /// + /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton4 + /// + public class TabButton4 : UiNode + { + public TabButton4(EncyclopediaPanel uiPanel, Godot.TextureButton node) : base(uiPanel, node) { } + public override TabButton4 Clone() => new (UiPanel, (Godot.TextureButton)Instance.Duplicate()); + } + + /// + /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control + /// + public class Control : UiNode + { + /// + /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.TabButton + /// + public TabButton L_TabButton + { + get + { + if (_L_TabButton == null) _L_TabButton = new TabButton(UiPanel, Instance.GetNode("TabButton")); + return _L_TabButton; + } + } + private TabButton _L_TabButton; + + /// + /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.TabButton2 + /// + public TabButton2 L_TabButton2 + { + get + { + if (_L_TabButton2 == null) _L_TabButton2 = new TabButton2(UiPanel, Instance.GetNode("TabButton2")); + return _L_TabButton2; + } + } + private TabButton2 _L_TabButton2; + + /// + /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.TabButton3 + /// + public TabButton3 L_TabButton3 + { + get + { + if (_L_TabButton3 == null) _L_TabButton3 = new TabButton3(UiPanel, Instance.GetNode("TabButton3")); + return _L_TabButton3; + } + } + private TabButton3 _L_TabButton3; + + /// + /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.TabButton4 + /// + public TabButton4 L_TabButton4 + { + get + { + if (_L_TabButton4 == null) _L_TabButton4 = new TabButton4(UiPanel, Instance.GetNode("TabButton4")); + return _L_TabButton4; + } + } + private TabButton4 _L_TabButton4; + + public Control(EncyclopediaPanel uiPanel, Godot.Control node) : base(uiPanel, node) { } + public override Control Clone() => new (UiPanel, (Godot.Control)Instance.Duplicate()); + } + + /// /// 类型: , 路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.NinePatchRect.ScrollContainer.ObjectButton.Bg /// public class Bg : UiNode @@ -206,6 +303,19 @@ public class VBoxContainer2 : UiNode { /// + /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.Control + /// + public Control L_Control + { + get + { + if (_L_Control == null) _L_Control = new Control(UiPanel, Instance.GetNode("Control")); + return _L_Control; + } + } + private Control _L_Control; + + /// /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.NinePatchRect /// public NinePatchRect_1 L_NinePatchRect @@ -472,6 +582,31 @@ public TextureRect S_TextureRect => L_NinePatchRect.L_TextureRect; /// + /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton + /// + public TabButton S_TabButton => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_Control.L_TabButton; + + /// + /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton2 + /// + public TabButton2 S_TabButton2 => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_Control.L_TabButton2; + + /// + /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton3 + /// + public TabButton3 S_TabButton3 => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_Control.L_TabButton3; + + /// + /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control.TabButton4 + /// + public TabButton4 S_TabButton4 => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_Control.L_TabButton4; + + /// + /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.Control + /// + public Control S_Control => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_Control; + + /// /// 场景中唯一名称的节点, 节点类型: , 节点路径: Encyclopedia.NinePatchRect.MarginContainer.HBoxContainer.VBoxContainer2.NinePatchRect.ScrollContainer.ObjectButton.Bg /// public Bg S_Bg => L_NinePatchRect.L_MarginContainer.L_HBoxContainer.L_VBoxContainer2.L_NinePatchRect.L_ScrollContainer.L_ObjectButton.L_Bg;