1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-27 22:41:56 +08:00

feat: 添加游戏启动界面和着色器效果

- 新增启动界面背景和logo
- 实现顶部和底部阴影着色器
- 添加难度选择滑块和角色名输入框
- 优化多人游戏按钮交互
- 修复编译提示面板的动画效果
- 更新UI主题样式
This commit is contained in:
2026-05-03 11:09:12 +08:00
parent 9966fd0b58
commit 44699d4302
28 changed files with 841 additions and 191 deletions
@@ -1,26 +1,140 @@
[gd_scene load_steps=5 format=3 uid="uid://dxs5j0km0n2n4"]
[gd_scene format=3 uid="uid://dxs5j0km0n2n4"]
[ext_resource type="PackedScene" uid="uid://d3qojeqa3difn" path="res://components/Abstracts/FullscreenPanelBase.tscn" id="1_vd4qa"]
[ext_resource type="Script" uid="uid://dubab2jnii6et" path="res://scripts/Contents/Panels/CompilingTip.gd" id="2_3guax"]
[ext_resource type="Texture2D" uid="uid://bgrjcmcsg1okc" path="res://resources/comics/start.svg" id="2_64ee7"]
[ext_resource type="Texture2D" uid="uid://b224jte54e12a" path="res://resources/comics/building.png" id="3_3guax"]
[ext_resource type="Shader" uid="uid://csx5am14p4ai0" path="res://scripts/BottomShadow.gdshader" id="3_4yjva"]
[ext_resource type="Texture2D" uid="uid://bvg17q1dhperq" path="res://resources/comics/vs.png" id="5_d7ld8"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_64ee7"]
content_margin_top = 60.0
content_margin_bottom = 60.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d7ld8"]
shader = ExtResource("3_4yjva")
shader_parameter/prog = 0.5000000074506
[node name="CompilingTip" instance=ExtResource("1_vd4qa")]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_4yjva"]
content_margin_bottom = 50.0
[sub_resource type="LabelSettings" id="LabelSettings_d7ld8"]
font_size = 40
[sub_resource type="Animation" id="Animation_d7ld8"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
[sub_resource type="Animation" id="Animation_lyv8o"]
resource_name = "show"
length = 0.5
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 100, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
[sub_resource type="Animation" id="Animation_vyjm7"]
resource_name = "show"
length = 0.5
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(-500, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ms4bw"]
_data = {
&"RESET": SubResource("Animation_d7ld8"),
&"hide": SubResource("Animation_lyv8o"),
&"show": SubResource("Animation_vyjm7")
}
[node name="CompilingTip" unique_id=2114082839 instance=ExtResource("1_vd4qa")]
offset_top = 0.0
offset_bottom = 0.0
script = ExtResource("2_3guax")
[node name="container" type="PanelContainer" parent="content/wrapper" index="0"]
layout_mode = 2
size_flags_vertical = 3
theme_override_styles/panel = SubResource("StyleBoxEmpty_64ee7")
[node name="background" parent="content" index="0"]
color = Color(0, 0, 0, 1)
[node name="comic" type="TextureRect" parent="content/wrapper/container" index="0"]
[node name="back" type="TextureRect" parent="content" index="1" unique_id=467487910]
material = SubResource("ShaderMaterial_d7ld8")
layout_mode = 2
size_flags_vertical = 3
texture = ExtResource("2_64ee7")
expand_mode = 1
texture = ExtResource("3_3guax")
expand_mode = 2
stretch_mode = 5
[node name="wrapper" parent="content" index="2"]
theme_override_constants/separation = 60
alignment = 2
[node name="sword" type="TextureRect" parent="content/wrapper" index="0" unique_id=486975914]
layout_mode = 2
texture = ExtResource("5_d7ld8")
stretch_mode = 5
[node name="wrapper" type="PanelContainer" parent="content/wrapper" index="1" unique_id=265878383]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxEmpty_4yjva")
[node name="tip" type="Label" parent="content/wrapper/wrapper" index="0" unique_id=1334624287]
layout_mode = 2
size_flags_horizontal = 4
text = "正在编译着色器......剑已出鞘。"
label_settings = SubResource("LabelSettings_d7ld8")
[node name="animator" parent="." index="1"]
libraries/ = SubResource("AnimationLibrary_ms4bw")
@@ -1,9 +1,12 @@
[gd_scene load_steps=3 format=3 uid="uid://db6srdvtd8gfx"]
[gd_scene format=3 uid="uid://db6srdvtd8gfx"]
[ext_resource type="PackedScene" uid="uid://d3qojeqa3difn" path="res://components/Abstracts/FullscreenPanelBase.tscn" id="1_xc345"]
[ext_resource type="Script" uid="uid://d02nijqx4oagh" path="res://scripts/Contents/Panels/SelectIntialFeed.gd" id="2_eugsq"]
[node name="SelectInitialFeed" instance=ExtResource("1_xc345")]
[sub_resource type="LabelSettings" id="LabelSettings_eugsq"]
font_size = 20
[node name="SelectInitialFeed" unique_id=245861480 instance=ExtResource("1_xc345")]
offset_top = 0.0
offset_bottom = 0.0
script = ExtResource("2_eugsq")
@@ -11,38 +14,45 @@ script = ExtResource("2_eugsq")
[node name="wrapper" parent="content" index="1"]
theme_override_constants/separation = 40
[node name="container" type="ScrollContainer" parent="content/wrapper" index="0"]
layout_mode = 2
follow_focus = true
vertical_scroll_mode = 0
[node name="wrapper" type="VBoxContainer" parent="content/wrapper/container" index="0"]
[node name="wrapper" type="VBoxContainer" parent="content/wrapper" index="0" unique_id=905123993]
layout_mode = 2
size_flags_horizontal = 3
theme_override_constants/separation = 10
alignment = 1
[node name="title1" type="Label" parent="content/wrapper/container/wrapper" index="0"]
[node name="title1" type="Label" parent="content/wrapper/wrapper" index="0" unique_id=637422722]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 0
size_flags_horizontal = 4
text = "在游戏开始前,你可以选择一项初始增益。"
label_settings = SubResource("LabelSettings_eugsq")
[node name="initialFeedSelection" type="HBoxContainer" parent="content/wrapper/container/wrapper" index="1"]
[node name="container" type="ScrollContainer" parent="content/wrapper/wrapper" index="1" unique_id=465067132]
layout_mode = 2
follow_focus = true
vertical_scroll_mode = 0
[node name="initialFeedSelection" type="HBoxContainer" parent="content/wrapper/wrapper/container" index="0" unique_id=1363721283]
unique_name_in_owner = true
layout_mode = 2
[node name="title2" type="Label" parent="content/wrapper/container/wrapper" index="2"]
[node name="title2" type="Label" parent="content/wrapper/wrapper" index="2" unique_id=398646662]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 0
size_flags_horizontal = 4
text = "在游戏开始前,你可以选择一个初始武器。"
label_settings = SubResource("LabelSettings_eugsq")
[node name="initialWeaponSelection" type="HBoxContainer" parent="content/wrapper/container/wrapper" index="3"]
[node name="container2" type="ScrollContainer" parent="content/wrapper/wrapper" index="3" unique_id=474299205]
layout_mode = 2
follow_focus = true
vertical_scroll_mode = 0
[node name="initialWeaponSelection" type="HBoxContainer" parent="content/wrapper/wrapper/container2" index="0" unique_id=1933174501]
unique_name_in_owner = true
layout_mode = 2
[node name="startBtn" type="Button" parent="content/wrapper" index="1"]
[node name="startBtn" type="Button" parent="content/wrapper" index="1" unique_id=298849731]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
+214 -49
View File
@@ -1,14 +1,34 @@
[gd_scene load_steps=10 format=3 uid="uid://c0r1i5tdbwljj"]
[gd_scene format=3 uid="uid://c0r1i5tdbwljj"]
[ext_resource type="PackedScene" uid="uid://d3qojeqa3difn" path="res://components/Abstracts/FullscreenPanelBase.tscn" id="1_o0yse"]
[ext_resource type="Script" uid="uid://codlmfbuyis33" path="res://scripts/Contents/Panels/Starter.gd" id="2_ic0aq"]
[ext_resource type="FontFile" uid="uid://v3frxpuvtj5o" path="res://resources/fonts/syht-bold.ttf" id="3_sopoi"]
[ext_resource type="Shader" uid="uid://c2kaj6mt3dj45" path="res://shaders/TopShadow.gdshader" id="3_i7qv0"]
[ext_resource type="Texture2D" uid="uid://dtw7ljiir0ug6" path="res://resources/comics/starterBack.png" id="3_sdsu8"]
[ext_resource type="Theme" uid="uid://dhvs6urgf6jr5" path="res://themes/main.tres" id="4_lfxcn"]
[ext_resource type="Texture2D" uid="uid://bgi4bx6bsjv48" path="res://resources/icons/logo.png" id="5_i7qv0"]
[sub_resource type="LabelSettings" id="LabelSettings_ch0dv"]
font = ExtResource("3_sopoi")
font_size = 45
outline_size = 2
[sub_resource type="ShaderMaterial" id="ShaderMaterial_i7qv0"]
shader = ExtResource("3_i7qv0")
shader_parameter/prog = 0.5000000074506
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_sdsu8"]
content_margin_right = 60.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_i7qv0"]
content_margin_left = 20.0
content_margin_top = 20.0
content_margin_right = 20.0
content_margin_bottom = 20.0
bg_color = Color(0, 0, 0, 0.70000005)
border_width_left = 10
border_width_right = 10
border_color = Color(1, 1, 1, 1)
border_blend = true
corner_radius_top_left = 15
corner_radius_top_right = 15
corner_radius_bottom_right = 15
corner_radius_bottom_left = 15
corner_detail = 1
[sub_resource type="LabelSettings" id="LabelSettings_lfxcn"]
font_size = 20
@@ -24,92 +44,234 @@ outline_size = 1
[sub_resource type="LabelSettings" id="LabelSettings_i7qv0"]
font_size = 13
[node name="Starter" instance=ExtResource("1_o0yse")]
[sub_resource type="Animation" id="Animation_sdsu8"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
[sub_resource type="Animation" id="Animation_i7qv0"]
resource_name = "show"
length = 0.5
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 100, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
[sub_resource type="Animation" id="Animation_kl3ko"]
resource_name = "loop"
length = 3.0
loop_mode = 1
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("content/anchor/logo:offset_bottom")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(-50, 0, 0, 1.5, -50, -50, -1.5, 50, 0, 0),
"times": PackedFloat32Array(0, 3)
}
[sub_resource type="Animation" id="Animation_4ekdw"]
resource_name = "show"
length = 0.5
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:modulate:a")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:position:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(-500, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.5)
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_oirqs"]
_data = {
&"RESET": SubResource("Animation_sdsu8"),
&"hide": SubResource("Animation_i7qv0"),
&"loop": SubResource("Animation_kl3ko"),
&"show": SubResource("Animation_4ekdw")
}
[node name="Starter" unique_id=195097455 instance=ExtResource("1_o0yse")]
offset_top = 0.0
offset_bottom = 0.0
script = ExtResource("2_ic0aq")
[node name="wrapper" parent="content" index="1"]
[node name="background" parent="content" index="0"]
color = Color(0, 0, 0, 1)
[node name="back" type="TextureRect" parent="content" index="1" unique_id=286391646]
material = SubResource("ShaderMaterial_i7qv0")
layout_mode = 2
texture = ExtResource("3_sdsu8")
expand_mode = 2
[node name="anchor" type="Control" parent="content" index="2" unique_id=241813381]
layout_mode = 2
[node name="logo" type="TextureRect" parent="content/anchor" index="0" unique_id=879286455]
layout_mode = 1
anchors_preset = -1
offset_left = 50.0
offset_top = 50.0
offset_right = 850.0
offset_bottom = 145.0
grow_vertical = 0
texture = ExtResource("5_i7qv0")
stretch_mode = 5
[node name="wrapper" parent="content" index="3"]
theme_override_constants/separation = 30
[node name="title" type="Label" parent="content/wrapper" index="0"]
[node name="wrapper" type="PanelContainer" parent="content/wrapper" index="0" unique_id=756923034]
layout_mode = 2
size_flags_horizontal = 4
text = "公鸡大战狗熊"
label_settings = SubResource("LabelSettings_ch0dv")
size_flags_horizontal = 8
theme_override_styles/panel = SubResource("StyleBoxEmpty_sdsu8")
[node name="starter" type="VBoxContainer" parent="content/wrapper" index="1"]
[node name="start" type="PanelContainer" parent="content/wrapper/wrapper" index="0" unique_id=1232082966]
layout_mode = 2
size_flags_horizontal = 8
theme_override_styles/panel = SubResource("StyleBoxFlat_i7qv0")
[node name="starter" type="VBoxContainer" parent="content/wrapper/wrapper/start" index="0" unique_id=2056064159]
layout_mode = 2
theme_override_constants/separation = 30
[node name="singleplayer" type="VBoxContainer" parent="content/wrapper/starter" index="0"]
[node name="singleplayer" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter" index="0" unique_id=1117567773]
layout_mode = 2
theme_override_constants/separation = 20
[node name="diffs" type="HBoxContainer" parent="content/wrapper/starter/singleplayer" index="0"]
[node name="diffs" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/singleplayer" index="0" unique_id=526058063]
layout_mode = 2
alignment = 1
[node name="tip" type="Label" parent="content/wrapper/starter/singleplayer/diffs" index="0"]
[node name="tip" type="Label" parent="content/wrapper/wrapper/start/starter/singleplayer/diffs" index="0" unique_id=1507689450]
layout_mode = 2
text = "选择难度:"
[node name="diffEdit" type="HSlider" parent="content/wrapper/starter/singleplayer/diffs" index="1"]
[node name="diffEdit" type="HSlider" parent="content/wrapper/wrapper/start/starter/singleplayer/diffs" index="1" unique_id=1308866785]
unique_name_in_owner = true
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
size_flags_vertical = 4
max_value = 0.0
[node name="levelShow" type="Label" parent="content/wrapper/starter/singleplayer/diffs" index="2"]
[node name="levelShow" type="Label" parent="content/wrapper/wrapper/start/starter/singleplayer/diffs" index="2" unique_id=1102279314]
unique_name_in_owner = true
layout_mode = 2
text = "0 ∈ [0, 0]"
[node name="start" type="HBoxContainer" parent="content/wrapper/starter/singleplayer" index="1"]
[node name="start" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter/singleplayer" index="1" unique_id=1119283819]
layout_mode = 2
theme_override_constants/separation = 10
alignment = 1
[node name="playerNameInput" type="LineEdit" parent="content/wrapper/starter/singleplayer/start" index="0"]
[node name="player" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/singleplayer/start" index="0" unique_id=656225175]
layout_mode = 2
[node name="tip" type="Label" parent="content/wrapper/wrapper/start/starter/singleplayer/start/player" index="0" unique_id=1899542373]
layout_mode = 2
text = "角色名:"
[node name="playerNameInput" type="LineEdit" parent="content/wrapper/wrapper/start/starter/singleplayer/start/player" index="1" unique_id=1401004968]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 4
theme = ExtResource("4_lfxcn")
text = "公鸡"
placeholder_text = "角色名"
alignment = 1
expand_to_text_length = true
virtual_keyboard_type = 7
select_all_on_focus = true
virtual_keyboard_type = 7
[node name="startSingleplayerBtn" type="Button" parent="content/wrapper/starter/singleplayer/start" index="1"]
[node name="startSingleplayerBtn" type="Button" parent="content/wrapper/wrapper/start/starter/singleplayer/start" index="1" unique_id=935895475]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
theme = ExtResource("4_lfxcn")
text = "单人游戏"
[node name="startMultiplayerBtn" type="Button" parent="content/wrapper/starter/singleplayer/start" index="2"]
[node name="startMultiplayerBtn" type="Button" parent="content/wrapper/wrapper/start/starter/singleplayer/start" index="2" unique_id=1874616219]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
theme = ExtResource("4_lfxcn")
disabled = true
text = "多人游戏"
[node name="multiplayer" type="VBoxContainer" parent="content/wrapper/starter" index="1"]
[node name="multiplayer" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter" index="1" unique_id=2010516457]
visible = false
layout_mode = 2
theme_override_constants/separation = 15
alignment = 1
[node name="main" type="VBoxContainer" parent="content/wrapper/starter/multiplayer" index="0"]
[node name="main" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer" index="0" unique_id=255202573]
layout_mode = 2
[node name="title" type="Label" parent="content/wrapper/starter/multiplayer/main" index="0"]
[node name="title" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/main" index="0" unique_id=504003020]
layout_mode = 2
size_flags_horizontal = 4
text = "多人游戏"
label_settings = SubResource("LabelSettings_lfxcn")
[node name="connectionState" type="Label" parent="content/wrapper/starter/multiplayer/main" index="1"]
[node name="connectionState" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/main" index="1" unique_id=1479839873]
unique_name_in_owner = true
modulate = Color(1, 0, 0, 1)
layout_mode = 2
@@ -117,16 +279,16 @@ size_flags_horizontal = 4
text = "状态:未连接到服务器。"
label_settings = SubResource("LabelSettings_kl3ko")
[node name="host" type="HBoxContainer" parent="content/wrapper/starter/multiplayer/main" index="2"]
[node name="host" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/main" index="2" unique_id=105458555]
layout_mode = 2
alignment = 1
[node name="tip" type="Label" parent="content/wrapper/starter/multiplayer/main/host" index="0"]
[node name="tip" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/main/host" index="0" unique_id=871253279]
layout_mode = 2
text = "地址"
label_settings = SubResource("LabelSettings_sdsu8")
[node name="hostInput" type="LineEdit" parent="content/wrapper/starter/multiplayer/main/host" index="1"]
[node name="hostInput" type="LineEdit" parent="content/wrapper/wrapper/start/starter/multiplayer/main/host" index="1" unique_id=1534443919]
unique_name_in_owner = true
layout_mode = 2
theme = ExtResource("4_lfxcn")
@@ -134,15 +296,15 @@ text = "127.0.0.1"
placeholder_text = "主机"
expand_to_text_length = true
emoji_menu_enabled = false
virtual_keyboard_type = 7
clear_button_enabled = true
select_all_on_focus = true
virtual_keyboard_type = 7
[node name="separator" type="Label" parent="content/wrapper/starter/multiplayer/main/host" index="2"]
[node name="separator" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/main/host" index="2" unique_id=1728951883]
layout_mode = 2
text = ":"
[node name="portInput" type="LineEdit" parent="content/wrapper/starter/multiplayer/main/host" index="3"]
[node name="portInput" type="LineEdit" parent="content/wrapper/wrapper/start/starter/multiplayer/main/host" index="3" unique_id=476929474]
unique_name_in_owner = true
layout_mode = 2
theme = ExtResource("4_lfxcn")
@@ -150,58 +312,58 @@ text = "1145"
placeholder_text = "端口"
expand_to_text_length = true
emoji_menu_enabled = false
virtual_keyboard_type = 2
select_all_on_focus = true
virtual_keyboard_type = 2
[node name="operation" type="HBoxContainer" parent="content/wrapper/starter/multiplayer/main" index="3"]
[node name="operation" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/main" index="3" unique_id=720531196]
layout_mode = 2
alignment = 1
[node name="launchBtn" type="Button" parent="content/wrapper/starter/multiplayer/main/operation" index="0"]
[node name="launchBtn" type="Button" parent="content/wrapper/wrapper/start/starter/multiplayer/main/operation" index="0" unique_id=480209339]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
text = "启动服务器"
[node name="connectBtn" type="Button" parent="content/wrapper/starter/multiplayer/main/operation" index="1"]
[node name="connectBtn" type="Button" parent="content/wrapper/wrapper/start/starter/multiplayer/main/operation" index="1" unique_id=921875653]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
text = "连接服务器"
[node name="disconnectBtn" type="Button" parent="content/wrapper/starter/multiplayer/main/operation" index="2"]
[node name="disconnectBtn" type="Button" parent="content/wrapper/wrapper/start/starter/multiplayer/main/operation" index="2" unique_id=1179706084]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
disabled = true
text = "断开连接"
[node name="configs" type="HBoxContainer" parent="content/wrapper/starter/multiplayer" index="1"]
[node name="configs" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer" index="1" unique_id=332744115]
layout_mode = 2
theme_override_constants/separation = 30
alignment = 1
[node name="serverConfig" type="VBoxContainer" parent="content/wrapper/starter/multiplayer/configs" index="0"]
[node name="serverConfig" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/configs" index="0" unique_id=586906646]
unique_name_in_owner = true
visible = false
layout_mode = 2
[node name="title" type="Label" parent="content/wrapper/starter/multiplayer/configs/serverConfig" index="0"]
[node name="title" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/serverConfig" index="0" unique_id=838895828]
layout_mode = 2
size_flags_horizontal = 4
text = "服务器配置"
[node name="maxPlayer" type="HBoxContainer" parent="content/wrapper/starter/multiplayer/configs/serverConfig" index="1"]
[node name="maxPlayer" type="HBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/serverConfig" index="1" unique_id=233504210]
layout_mode = 2
alignment = 1
[node name="title" type="Label" parent="content/wrapper/starter/multiplayer/configs/serverConfig/maxPlayer" index="0"]
[node name="title" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/serverConfig/maxPlayer" index="0" unique_id=665443104]
layout_mode = 2
size_flags_horizontal = 4
text = "最大玩家数"
label_settings = SubResource("LabelSettings_i7qv0")
[node name="maxPlayerInput" type="LineEdit" parent="content/wrapper/starter/multiplayer/configs/serverConfig/maxPlayer" index="1"]
[node name="maxPlayerInput" type="LineEdit" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/serverConfig/maxPlayer" index="1" unique_id=237311490]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
@@ -209,20 +371,23 @@ theme = ExtResource("4_lfxcn")
text = "10"
expand_to_text_length = true
emoji_menu_enabled = false
virtual_keyboard_type = 2
select_all_on_focus = true
virtual_keyboard_type = 2
[node name="players" type="VBoxContainer" parent="content/wrapper/starter/multiplayer/configs" index="1"]
[node name="players" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/configs" index="1" unique_id=798597277]
unique_name_in_owner = true
visible = false
layout_mode = 2
[node name="title" type="Label" parent="content/wrapper/starter/multiplayer/configs/players" index="0"]
[node name="title" type="Label" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/players" index="0" unique_id=1095446629]
layout_mode = 2
size_flags_horizontal = 4
text = "玩家管理"
[node name="list" type="VBoxContainer" parent="content/wrapper/starter/multiplayer/configs/players" index="1"]
[node name="list" type="VBoxContainer" parent="content/wrapper/wrapper/start/starter/multiplayer/configs/players" index="1" unique_id=1550608733]
unique_name_in_owner = true
layout_mode = 2
alignment = 1
[node name="animator" parent="." index="1"]
libraries/ = SubResource("AnimationLibrary_oirqs")
+36 -37
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=19 format=3 uid="uid://dfwg750a47ggx"]
[gd_scene format=3 uid="uid://dfwg750a47ggx"]
[ext_resource type="PackedScene" uid="uid://ofpg5s3j7esv" path="res://components/UI/BossBar.tscn" id="1_2pe58"]
[ext_resource type="Script" uid="uid://bph6blsdbiklk" path="res://scripts/Statemachine/UIState.gd" id="1_f00a6"]
@@ -115,11 +115,11 @@ _data = {
&"show": SubResource("Animation_2xajo")
}
[node name="UI" type="CanvasLayer"]
[node name="UI" type="CanvasLayer" unique_id=2081331418]
process_mode = 3
script = ExtResource("1_f00a6")
[node name="root" type="Control" parent="."]
[node name="root" type="Control" parent="." unique_id=2083830697]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
@@ -127,12 +127,12 @@ anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="bossbar" parent="root" instance=ExtResource("1_2pe58")]
[node name="bossbar" parent="root" unique_id=1188147012 instance=ExtResource("1_2pe58")]
unique_name_in_owner = true
layout_mode = 1
metadata/_edit_lock_ = true
[node name="items" type="PanelContainer" parent="root"]
[node name="items" type="PanelContainer" parent="root" unique_id=889148256]
z_index = 1
z_as_relative = false
layout_mode = 1
@@ -147,36 +147,36 @@ grow_horizontal = 2
theme_override_styles/panel = ExtResource("3_kep0k")
metadata/_edit_lock_ = true
[node name="items" type="HBoxContainer" parent="root/items"]
[node name="items" type="HBoxContainer" parent="root/items" unique_id=1102895760]
unique_name_in_owner = true
layout_mode = 2
alignment = 1
[node name="baseball" parent="root/items/items" instance=ExtResource("3_o2oi4")]
[node name="baseball" parent="root/items/items" unique_id=222901100 instance=ExtResource("3_o2oi4")]
unique_name_in_owner = true
layout_mode = 2
[node name="basketball" parent="root/items/items" instance=ExtResource("3_o2oi4")]
[node name="basketball" parent="root/items/items" unique_id=1586914104 instance=ExtResource("3_o2oi4")]
unique_name_in_owner = true
layout_mode = 2
type = 1
[node name="apple" parent="root/items/items" instance=ExtResource("3_o2oi4")]
[node name="apple" parent="root/items/items" unique_id=895524937 instance=ExtResource("3_o2oi4")]
unique_name_in_owner = true
layout_mode = 2
type = 2
[node name="beachball" parent="root/items/items" instance=ExtResource("3_o2oi4")]
[node name="beachball" parent="root/items/items" unique_id=23220525 instance=ExtResource("3_o2oi4")]
unique_name_in_owner = true
layout_mode = 2
type = 3
[node name="soul" parent="root/items/items" instance=ExtResource("3_o2oi4")]
[node name="soul" parent="root/items/items" unique_id=1287636941 instance=ExtResource("3_o2oi4")]
unique_name_in_owner = true
layout_mode = 2
type = 4
[node name="energy" type="PanelContainer" parent="root"]
[node name="energy" type="PanelContainer" parent="root" unique_id=1886165069]
z_index = 1
z_as_relative = false
layout_mode = 1
@@ -193,29 +193,29 @@ grow_horizontal = 0
grow_vertical = 2
theme_override_styles/panel = ExtResource("5_3hym1")
[node name="wrapper" type="HBoxContainer" parent="root/energy"]
[node name="wrapper" type="HBoxContainer" parent="root/energy" unique_id=2143098490]
layout_mode = 2
theme_override_constants/separation = 10
[node name="skills" type="PanelContainer" parent="root/energy/wrapper"]
[node name="skills" type="PanelContainer" parent="root/energy/wrapper" unique_id=1694782078]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxEmpty_12otr")
[node name="skillContainer" type="VBoxContainer" parent="root/energy/wrapper/skills"]
[node name="skillContainer" type="VBoxContainer" parent="root/energy/wrapper/skills" unique_id=939257941]
unique_name_in_owner = true
layout_mode = 2
alignment = 1
[node name="container" type="VBoxContainer" parent="root/energy/wrapper"]
[node name="container" type="VBoxContainer" parent="root/energy/wrapper" unique_id=1760772344]
layout_mode = 2
theme_override_constants/separation = 10
alignment = 1
[node name="energy" type="HBoxContainer" parent="root/energy/wrapper/container"]
[node name="energy" type="HBoxContainer" parent="root/energy/wrapper/container" unique_id=1568060205]
layout_mode = 2
alignment = 1
[node name="icon" type="TextureRect" parent="root/energy/wrapper/container/energy"]
[node name="icon" type="TextureRect" parent="root/energy/wrapper/container/energy" unique_id=920175670]
custom_minimum_size = Vector2(16, 16)
layout_mode = 2
size_flags_horizontal = 4
@@ -223,7 +223,7 @@ size_flags_vertical = 4
texture = ExtResource("7_2om12")
expand_mode = 1
[node name="percent" parent="root/energy/wrapper/container" instance=ExtResource("8_f4j2b")]
[node name="percent" parent="root/energy/wrapper/container" unique_id=936708847 instance=ExtResource("8_f4j2b")]
unique_name_in_owner = true
layout_mode = 2
size_flags_vertical = 3
@@ -232,7 +232,7 @@ middleBox1 = SubResource("StyleBoxFlat_kgnwf")
middleBox2 = SubResource("StyleBoxFlat_egr4c")
frontBox = SubResource("StyleBoxFlat_1xshu")
[node name="fields" type="PanelContainer" parent="root"]
[node name="fields" type="PanelContainer" parent="root" unique_id=1795021225]
modulate = Color(1, 1, 1, 0)
z_index = 1
z_as_relative = false
@@ -247,22 +247,20 @@ offset_bottom = 82.5
grow_vertical = 2
theme_override_styles/panel = ExtResource("11_67ghp")
[node name="wrapper" type="PanelContainer" parent="root/fields"]
[node name="wrapper" type="PanelContainer" parent="root/fields" unique_id=1194361689]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxEmpty_ri8gw")
[node name="fields" type="VBoxContainer" parent="root/fields/wrapper"]
[node name="fields" type="VBoxContainer" parent="root/fields/wrapper" unique_id=638665162]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/separation = 1
[node name="fieldsAnimator" type="AnimationPlayer" parent="root/fields"]
[node name="fieldsAnimator" type="AnimationPlayer" parent="root/fields" unique_id=1711980469]
unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_37e4s")
}
libraries/ = SubResource("AnimationLibrary_37e4s")
[node name="itemCollect" type="VBoxContainer" parent="root"]
[node name="itemCollect" type="VBoxContainer" parent="root" unique_id=2025298998]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = -1
@@ -277,16 +275,7 @@ offset_bottom = 0.400024
grow_vertical = 0
theme_override_constants/separation = 10
[node name="tips" type="VBoxContainer" parent="root"]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = -1
anchor_top = 1.0
anchor_bottom = 1.0
offset_bottom = -100.0
grow_vertical = 0
[node name="panels" type="Control" parent="root"]
[node name="panels" type="Control" parent="root" unique_id=968120967]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 15
@@ -295,3 +284,13 @@ anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
metadata/_edit_lock_ = true
[node name="tips" type="VBoxContainer" parent="root" unique_id=778055256]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = -1
anchor_top = 1.0
anchor_bottom = 1.0
offset_top = -100.0
offset_bottom = -100.0
grow_vertical = 0
-4
View File
@@ -29,10 +29,6 @@ window/size/viewport_width=1280
window/size/viewport_height=720
window/size/mode=2
[dotnet]
project/assembly_name="ChickenVSBear"
[gui]
theme/custom="res://themes/main.tres"
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 MiB

+40
View File
@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b224jte54e12a"
path="res://.godot/imported/building.png-083da3c7d2720819cc70c67bd04a2eca.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/comics/building.png"
dest_files=["res://.godot/imported/building.png-083da3c7d2720819cc70c67bd04a2eca.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 MiB

+40
View File
@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dtw7ljiir0ug6"
path="res://.godot/imported/starterBack.png-8b4179c9151beb502757675bea6adc1f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/comics/starterBack.png"
dest_files=["res://.godot/imported/starterBack.png-8b4179c9151beb502757675bea6adc1f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

+40
View File
@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bvg17q1dhperq"
path="res://.godot/imported/vs.png-fb565d5710d6735ac5670cc7c2ae786d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/comics/vs.png"
dest_files=["res://.godot/imported/vs.png-fb565d5710d6735ac5670cc7c2ae786d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

+40
View File
@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bgi4bx6bsjv48"
path="res://.godot/imported/logo.png-bae9d0761b7209df1dbe9681b9f99a65.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/icons/logo.png"
dest_files=["res://.godot/imported/logo.png-bae9d0761b7209df1dbe9681b9f99a65.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
+1
View File
@@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="19.25048" height="19.25048" viewBox="0,0,19.25048,19.25048"><g transform="translate(-230.37476,-170.37476)"><g stroke-miterlimit="10"><path d="M230.37476,180l9.62524,-9.62524l9.62524,9.62524l-9.62524,9.62524z" fill="#666666" stroke="none" stroke-width="0" stroke-linecap="butt"/><g fill="none" stroke="#ffffff" stroke-width="0.5" stroke-linecap="round"><path d="M242.64475,177.35525l-5.2895,5.2895"/><path d="M242.64475,182.64475l-5.2895,-5.2895"/></g></g></g></svg><!--rotationCenter:9.625243333333344:9.625243333333316-->

After

Width:  |  Height:  |  Size: 627 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cj85aq2jsrt1w"
path="res://.godot/imported/slider-disabled.svg-085ad7017391eedc83cb9234c07f85a9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/ui/slider-disabled.svg"
dest_files=["res://.godot/imported/slider-disabled.svg-085ad7017391eedc83cb9234c07f85a9.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+1
View File
@@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="19.25048" height="19.25048" viewBox="0,0,19.25048,19.25048"><g transform="translate(-230.37476,-170.37476)"><g stroke-miterlimit="10"><path d="M230.37476,180l9.62524,-9.62524l9.62524,9.62524l-9.62524,9.62524z" fill="#b3b3b3" stroke="none" stroke-width="0" stroke-linecap="butt"/><path d="M235.11756,180l4.88244,-4.88244l4.88244,4.88244l-4.88244,4.88244z" fill="#ffffff" stroke="none" stroke-width="0" stroke-linecap="butt"/><g fill="none" stroke="#737373" stroke-width="0.5" stroke-linecap="round"><path d="M240,173.99309v12.01381"/><path d="M246.00691,180h-12.01381"/></g></g></g></svg><!--rotationCenter:9.625243333333344:9.625243333333316-->

After

Width:  |  Height:  |  Size: 748 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c06cwuh1mclpn"
path="res://.godot/imported/slider-hover.svg-453a3951ee32df8877db10b1934e01c6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/ui/slider-hover.svg"
dest_files=["res://.godot/imported/slider-hover.svg-453a3951ee32df8877db10b1934e01c6.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+1
View File
@@ -0,0 +1 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="19.25049" height="19.25049" viewBox="0,0,19.25049,19.25049"><g transform="translate(-230.37476,-170.37476)"><g stroke-miterlimit="10"><path d="M230.37476,180l9.62524,-9.62524l9.62524,9.62524l-9.62524,9.62524z" fill="#b3b3b3" stroke="none" stroke-width="0" stroke-linecap="butt"/><path d="M233.61756,180l6.38244,-6.38244l6.38244,6.38244l-6.38244,6.38244z" fill="#ffffff" stroke="none" stroke-width="0" stroke-linecap="butt"/><path d="M240,176.25976v7.48048" fill="none" stroke="#737373" stroke-width="0.5" stroke-linecap="round"/><path d="M243.74024,180h-7.48048" fill="none" stroke="#737373" stroke-width="0.5" stroke-linecap="round"/></g></g></svg><!--rotationCenter:9.625243333333344:9.625243333333316-->

After

Width:  |  Height:  |  Size: 810 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bn3tjs2rqk5s2"
path="res://.godot/imported/slider.svg-750b0b0811af4cbdc9e3061a71d6ad7a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://resources/ui/slider.svg"
dest_files=["res://.godot/imported/slider.svg-750b0b0811af4cbdc9e3061a71d6ad7a.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+5
View File
@@ -0,0 +1,5 @@
shader_type canvas_item;
uniform float prog:hint_range(0.0, 1.0, 0.1)=0;
void fragment() {
COLOR.a*=(1.0-UV.y)/prog;
}
+1
View File
@@ -0,0 +1 @@
uid://csx5am14p4ai0
+2 -1
View File
@@ -4,10 +4,11 @@ extends FullscreenPanelBase
func afterOpen(_args: Array = []):
if WorldManager.isRelease():
for key in ComponentManager.effects:
var effect = EffectController.create(ComponentManager.getEffect(key), Vector2.ZERO, self)
var effect = EffectController.create(ComponentManager.getEffect(key), Vector2.ZERO, self )
effect.modulate.a = 0.01
(effect.sounds.get_node("spawn") as AudioStreamPlayer2D).volume_db = - INF
effect.shot()
await TickTool.millseconds(3000)
await TickTool.frame()
UIState.setPanel("SelectInitialFeed")
StarterPanel.buildingShader = false
+8 -4
View File
@@ -1,5 +1,6 @@
@tool
extends FullscreenPanelBase
class_name StarterPanel
@onready var diffEdit: HSlider = $"%diffEdit"
@onready var startSingleplayerBtn: Button = $"%startSingleplayerBtn"
@@ -18,6 +19,8 @@ var historyStack
@onready var players: VBoxContainer = $"%players"
@onready var playersList: VBoxContainer = $"%list"
static var buildingShader: bool = true
@rpc("any_peer")
func mutexPlayer(player: String):
if multiplayer.is_server():
@@ -63,7 +66,7 @@ func startMultiplayerGame():
func startSingleplayerGame():
MultiplayerState.isMultiplayer = false
MultiplayerState.playerName = playerNameInput.text
EntityBase.generatePlayer(playerNameInput.text)
UIState.player = EntityBase.generatePlayer(playerNameInput.text)
WorldManager.rootNode.spawnWave(Vector2.ZERO)
UIState.setPanel("CompilingTip")
@@ -87,8 +90,9 @@ func _ready():
)
startMultiplayerBtn.pressed.connect(
func():
startMultiplayerGame.rpc()
startMultiplayerGame()
# startMultiplayerGame.rpc()
# startMultiplayerGame()
UIState.showTip("敬请期待!", TipBox.MessageType.ERROR)
)
maxPlayerInput.text_changed.connect(
func(text):
@@ -127,7 +131,7 @@ func setState(state: MultiplayerState.ConnectionState):
connectionState.text = "状态:%s" % MultiplayerState.stateTextMap[state]
connectionState.modulate = MultiplayerState.stateColorMap[state]
disconnectBtn.disabled = not MultiplayerState.isConnected()
startMultiplayerBtn.disabled = not MultiplayerState.isConnected() || !multiplayer.is_server()
# startMultiplayerBtn.disabled = not MultiplayerState.isConnected() || !multiplayer.is_server()
serverConfig.visible = MultiplayerState.state == MultiplayerState.ConnectionState.CONNECTED_HOST
players.visible = MultiplayerState.isConnected()
func addPlayerName(playerName: String):
+1 -1
View File
@@ -2,7 +2,7 @@
extends Control
class_name FullscreenPanelBase
@onready var animator = $"%animator"
@onready var animator: AnimationPlayer = $"%animator"
func hidePanel():
beforeClose()
+1
View File
@@ -19,6 +19,7 @@ func _physics_process(_delta):
offset += ((get_global_mouse_position() - UIState.player.position).clampf(-100, 100) - offset) * 0.15
static func shake(millseconds: float, intensity: float = 10, steper: Callable = func(currentValue, _totalValue, _restPercent): return currentValue):
if StarterPanel.buildingShader: return
var startTime = WorldManager.getTime()
instance.shakeIntensity = intensity
await TickTool.until(
+5
View File
@@ -0,0 +1,5 @@
shader_type canvas_item;
uniform float prog:hint_range(0.0, 1.0, 0.1)=0;
void fragment() {
COLOR.a*=UV.y/prog;
}
+1
View File
@@ -0,0 +1 @@
uid://c2kaj6mt3dj45
+122 -66
View File
@@ -1,82 +1,116 @@
[gd_resource type="Theme" format=3 uid="uid://dhvs6urgf6jr5"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_2jby4"]
content_margin_left = 5.0
[ext_resource type="Texture2D" uid="uid://bn3tjs2rqk5s2" path="res://resources/ui/slider.svg" id="1_0avsd"]
[ext_resource type="Texture2D" uid="uid://cj85aq2jsrt1w" path="res://resources/ui/slider-disabled.svg" id="2_wykhr"]
[ext_resource type="Texture2D" uid="uid://c06cwuh1mclpn" path="res://resources/ui/slider-hover.svg" id="3_78ekx"]
[ext_resource type="FontFile" uid="uid://cidql48uspujd" path="res://resources/fonts/syht.otf" id="4_wc0q8"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_78ekx"]
content_margin_left = 20.0
content_margin_top = 5.0
content_margin_right = 5.0
content_margin_right = 20.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 0.5)
border_color = Color(0, 0, 0, 0.5)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
border_color = Color(1, 1, 1, 1)
border_blend = true
corner_radius_top_left = 1000
corner_radius_top_right = 1000
corner_radius_bottom_right = 1000
corner_radius_bottom_left = 1000
corner_detail = 1
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_bpyjs"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4j7ii"]
content_margin_left = 5.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1id7b"]
content_margin_left = 20.0
content_margin_top = 5.0
content_margin_right = 5.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 0.3)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.5)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mt3v0"]
content_margin_left = 5.0
content_margin_top = 5.0
content_margin_right = 5.0
content_margin_right = 20.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 0.5)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.3)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
border_width_left = 6
border_width_top = 5
border_width_right = 6
border_width_bottom = 5
border_color = Color(1, 1, 1, 1)
border_blend = true
corner_radius_top_left = 1000
corner_radius_top_right = 1000
corner_radius_bottom_right = 1000
corner_radius_bottom_left = 1000
corner_detail = 1
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_3nqwh"]
content_margin_left = 5.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wykhr"]
content_margin_left = 20.0
content_margin_top = 5.0
content_margin_right = 5.0
content_margin_right = 20.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 0.5)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.3)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
border_width_left = 10
border_width_right = 10
border_color = Color(1, 1, 1, 1)
border_blend = true
corner_radius_top_left = 1000
corner_radius_top_right = 1000
corner_radius_bottom_right = 1000
corner_radius_bottom_left = 1000
corner_detail = 1
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_iekfp"]
content_margin_left = 5.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0avsd"]
content_margin_left = 20.0
content_margin_top = 5.0
content_margin_right = 5.0
content_margin_right = 20.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 0.5)
bg_color = Color(0, 0, 0, 0.70000005)
border_width_left = 3
border_width_top = 3
border_width_top = 2
border_width_right = 3
border_width_bottom = 2
border_color = Color(1, 1, 1, 1)
corner_radius_top_left = 1000
corner_radius_top_right = 1000
corner_radius_bottom_right = 1000
corner_radius_bottom_left = 1000
corner_detail = 1
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wc0q8"]
bg_color = Color(1, 1, 1, 0.5)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_7d6gw"]
bg_color = Color(1, 1, 1, 0.70000005)
[sub_resource type="StyleBoxLine" id="StyleBoxLine_k5u3e"]
color = Color(0, 0, 0, 0.70000005)
grow_begin = 0.0
grow_end = 0.0
thickness = 10
[sub_resource type="DPITexture" id="DPITexture_7d6gw"]
_source = "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\"><path fill=\"#fff\" fill-opacity=\".75\" d=\"m1 3 2-2 5 5 5-5 2 2-5 5 5 5-2 2-5-5-5 5-2-2 5-5z\"/></svg>
"
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wc0q8"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_kx4sy"]
content_margin_left = 10.0
content_margin_top = 2.0
content_margin_right = 10.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 1)
skew = Vector2(0.4, 0)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.3)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
border_color = Color(1, 1, 1, 1)
corner_detail = 1
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_k5u3e"]
content_margin_left = 10.0
content_margin_top = 2.0
content_margin_right = 10.0
content_margin_bottom = 5.0
bg_color = Color(0, 0, 0, 1)
skew = Vector2(0.4, 0)
border_color = Color(1, 1, 1, 1)
corner_detail = 1
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_a507o"]
content_margin_top = 5.0
@@ -96,12 +130,34 @@ corner_radius_bottom_left = 5
[resource]
Button/font_sizes/font_size = 14
Button/styles/disabled = SubResource("StyleBoxFlat_2jby4")
Button/styles/focus = SubResource("StyleBoxEmpty_bpyjs")
Button/styles/hover = SubResource("StyleBoxFlat_4j7ii")
Button/styles/hover_pressed = SubResource("StyleBoxFlat_mt3v0")
Button/styles/normal = SubResource("StyleBoxFlat_3nqwh")
Button/styles/pressed = SubResource("StyleBoxFlat_iekfp")
Button/styles/disabled = SubResource("StyleBoxFlat_78ekx")
Button/styles/hover = SubResource("StyleBoxFlat_1id7b")
Button/styles/hover_pressed = SubResource("StyleBoxFlat_wykhr")
Button/styles/normal = SubResource("StyleBoxFlat_0avsd")
Button/styles/pressed = SubResource("StyleBoxFlat_wykhr")
HSlider/icons/grabber = ExtResource("1_0avsd")
HSlider/icons/grabber_disabled = ExtResource("2_wykhr")
HSlider/icons/grabber_highlight = ExtResource("3_78ekx")
HSlider/styles/grabber_area = SubResource("StyleBoxFlat_wc0q8")
HSlider/styles/grabber_area_highlight = SubResource("StyleBoxFlat_7d6gw")
HSlider/styles/slider = SubResource("StyleBoxLine_k5u3e")
LineEdit/colors/caret_color = Color(0.95, 0.95, 0.95, 1)
LineEdit/colors/clear_button_color = Color(0.875, 0.875, 0.875, 1)
LineEdit/colors/clear_button_color_pressed = Color(1, 1, 1, 1)
LineEdit/colors/font_color = Color(0.875, 0.875, 0.875, 1)
LineEdit/colors/font_outline_color = Color(0, 0, 0, 1)
LineEdit/colors/font_placeholder_color = Color(0.875, 0.875, 0.875, 0.6)
LineEdit/colors/font_selected_color = Color(1, 1, 1, 1)
LineEdit/colors/font_uneditable_color = Color(0.875, 0.875, 0.875, 0.5)
LineEdit/colors/selection_color = Color(0.5, 0.5, 0.5, 1)
LineEdit/constants/caret_width = 1
LineEdit/constants/minimum_character_width = 4
LineEdit/constants/outline_size = 0
LineEdit/font_sizes/font_size = 12
LineEdit/fonts/font = ExtResource("4_wc0q8")
LineEdit/icons/clear = SubResource("DPITexture_7d6gw")
LineEdit/styles/focus = SubResource("StyleBoxEmpty_wc0q8")
LineEdit/styles/normal = SubResource("StyleBoxFlat_kx4sy")
LineEdit/styles/read_only = SubResource("StyleBoxFlat_k5u3e")
ProgressBar/styles/background = SubResource("StyleBoxFlat_a507o")
ProgressBar/styles/fill = SubResource("StyleBoxFlat_ef7vq")