[gd_scene load_steps=9 format=3] [ext_resource type="Script" path="res://scenes/ui/CafeCompanionRecruitmentPanel.gd" id="1_script"] [sub_resource type="StyleBoxFlat" id="Style_Panel"] bg_color = Color(0.96, 0.975, 0.982, 0.98) border_width_left = 1 border_width_top = 1 border_width_right = 1 border_width_bottom = 1 border_color = Color(0.46, 0.62, 0.70, 0.28) corner_radius_top_left = 12 corner_radius_top_right = 12 corner_radius_bottom_right = 12 corner_radius_bottom_left = 12 shadow_color = Color(0.06, 0.09, 0.12, 0.22) shadow_size = 12 shadow_offset = Vector2(0, 5) [sub_resource type="StyleBoxFlat" id="Style_Input"] bg_color = Color(1, 1, 1, 0.96) border_width_left = 1 border_width_top = 1 border_width_right = 1 border_width_bottom = 1 border_color = Color(0.55, 0.68, 0.76, 0.36) corner_radius_top_left = 8 corner_radius_top_right = 8 corner_radius_bottom_right = 8 corner_radius_bottom_left = 8 content_margin_left = 12 content_margin_top = 6 content_margin_right = 12 content_margin_bottom = 6 [sub_resource type="StyleBoxEmpty" id="Style_InputLine"] [sub_resource type="StyleBoxFlat" id="Style_ButtonNormal"] bg_color = Color(0.22, 0.56, 0.78, 1) corner_radius_top_left = 8 corner_radius_top_right = 8 corner_radius_bottom_right = 8 corner_radius_bottom_left = 8 [sub_resource type="StyleBoxFlat" id="Style_ButtonHover"] bg_color = Color(0.29, 0.64, 0.84, 1) corner_radius_top_left = 8 corner_radius_top_right = 8 corner_radius_bottom_right = 8 corner_radius_bottom_left = 8 [sub_resource type="StyleBoxFlat" id="Style_ButtonPressed"] bg_color = Color(0.16, 0.45, 0.66, 1) corner_radius_top_left = 8 corner_radius_top_right = 8 corner_radius_bottom_right = 8 corner_radius_bottom_left = 8 [sub_resource type="StyleBoxFlat" id="Style_Close"] bg_color = Color(0.86, 0.91, 0.94, 0.85) corner_radius_top_left = 8 corner_radius_top_right = 8 corner_radius_bottom_right = 8 corner_radius_bottom_left = 8 [sub_resource type="StyleBoxEmpty" id="Style_Empty"] [node name="CafeCompanionRecruitmentPanel" type="Control"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 mouse_filter = 2 script = ExtResource("1_script") [node name="CafeRecruitmentFrame" type="PanelContainer" parent="."] unique_name_in_owner = true visible = false layout_mode = 1 anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 offset_left = -320.0 offset_top = -360.0 offset_right = 320.0 offset_bottom = 360.0 grow_horizontal = 2 grow_vertical = 2 mouse_filter = 0 theme_override_styles/panel = SubResource("Style_Panel") [node name="PanelMargin" type="MarginContainer" parent="CafeRecruitmentFrame"] layout_mode = 2 theme_override_constants/margin_left = 20 theme_override_constants/margin_top = 14 theme_override_constants/margin_right = 20 theme_override_constants/margin_bottom = 14 [node name="ContentVBox" type="VBoxContainer" parent="CafeRecruitmentFrame/PanelMargin"] layout_mode = 2 theme_override_constants/separation = 6 [node name="HeaderRow" type="HBoxContainer" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_constants/separation = 10 [node name="TitleStack" type="VBoxContainer" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/HeaderRow"] layout_mode = 2 size_flags_horizontal = 3 theme_override_constants/separation = 2 [node name="TitleLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/HeaderRow/TitleStack"] unique_name_in_owner = true layout_mode = 2 theme_override_colors/font_color = Color(0.13, 0.21, 0.27, 1) theme_override_font_sizes/font_size = 20 text = "咖啡店陪伴招聘" text_overrun_behavior = 3 [node name="SubtitleLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/HeaderRow/TitleStack"] unique_name_in_owner = true layout_mode = 2 theme_override_colors/font_color = Color(0.40, 0.50, 0.57, 1) theme_override_font_sizes/font_size = 13 text = "鲸鱼咖啡馆 · 吧台招聘终端" text_overrun_behavior = 3 [node name="CloseButton" type="Button" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/HeaderRow"] unique_name_in_owner = true custom_minimum_size = Vector2(34, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_colors/font_color = Color(0.20, 0.30, 0.36, 1) theme_override_font_sizes/font_size = 18 theme_override_styles/normal = SubResource("Style_Close") theme_override_styles/hover = SubResource("Style_Close") theme_override_styles/pressed = SubResource("Style_Close") theme_override_styles/focus = SubResource("Style_Empty") text = "x" [node name="ServicePointLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "陪伴位" [node name="ServicePointOption" type="OptionButton" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_font_sizes/font_size = 15 [node name="EmploymentDurationLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "打工时间" [node name="EmploymentDurationOption" type="OptionButton" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_font_sizes/font_size = 15 [node name="PersonaNameLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "人设名称" [node name="PersonaNameInput" type="LineEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 placeholder_text = "例如:蓝莓摩卡" caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="ProtocolLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "协议" [node name="ProtocolOption" type="OptionButton" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_font_sizes/font_size = 15 [node name="BaseUrlLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "OpenAI-compatible URL" [node name="BaseUrlInput" type="LineEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 placeholder_text = "https://api.example.com/v1" caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="TokenLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "Token" [node name="TokenInput" type="LineEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 placeholder_text = "只提交给后端保存" secret = true caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="ModelLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "模型" [node name="ModelRow" type="HBoxContainer" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_constants/separation = 8 [node name="ModelInput" type="LineEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/ModelRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 size_flags_horizontal = 3 text = "gpt-4o-mini" placeholder_text = "gpt-4o-mini" caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="FetchModelsButton" type="Button" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox/ModelRow"] unique_name_in_owner = true custom_minimum_size = Vector2(104, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_colors/font_color = Color(1, 1, 1, 1) theme_override_font_sizes/font_size = 14 theme_override_styles/normal = SubResource("Style_ButtonNormal") theme_override_styles/hover = SubResource("Style_ButtonHover") theme_override_styles/pressed = SubResource("Style_ButtonPressed") theme_override_styles/focus = SubResource("Style_Empty") text = "获取模型" [node name="ModelOption" type="OptionButton" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true visible = false custom_minimum_size = Vector2(0, 34) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_font_sizes/font_size = 14 [node name="PersonaPromptLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "人设指令" [node name="PersonaPromptInput" type="TextEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 76) layout_mode = 2 size_flags_vertical = 3 placeholder_text = "写清楚角色性格、语气、边界和陪伴方式" wrap_mode = 1 caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="WelcomeMessageLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] layout_mode = 2 theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 13 text = "欢迎语" [node name="WelcomeMessageInput" type="LineEdit" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 34) layout_mode = 2 placeholder_text = "可选" caret_blink = true theme_override_colors/font_color = Color(0.16, 0.21, 0.27, 1) theme_override_colors/font_placeholder_color = Color(0.48, 0.56, 0.62, 0.78) theme_override_font_sizes/font_size = 15 theme_override_styles/normal = SubResource("Style_Input") theme_override_styles/focus = SubResource("Style_Input") [node name="EnabledCheckBox" type="CheckBox" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true layout_mode = 2 button_pressed = true theme_override_colors/font_color = Color(0.18, 0.26, 0.32, 1) theme_override_font_sizes/font_size = 14 text = "立即开始接待" [node name="SubmitButton" type="Button" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 38) layout_mode = 2 focus_mode = 0 mouse_default_cursor_shape = 2 theme_override_colors/font_color = Color(1, 1, 1, 1) theme_override_font_sizes/font_size = 16 theme_override_styles/normal = SubResource("Style_ButtonNormal") theme_override_styles/hover = SubResource("Style_ButtonHover") theme_override_styles/pressed = SubResource("Style_ButtonPressed") theme_override_styles/focus = SubResource("Style_Empty") text = "提交雇佣登记" [node name="StatusLabel" type="Label" parent="CafeRecruitmentFrame/PanelMargin/ContentVBox"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 18) layout_mode = 2 theme_override_colors/font_color = Color(0.32, 0.42, 0.48, 1) theme_override_font_sizes/font_size = 13 text = "" text_overrun_behavior = 3