diff --git a/Modules/ButtonItem.gd b/Modules/ButtonItem.gd index 628ce89..e757026 100644 --- a/Modules/ButtonItem.gd +++ b/Modules/ButtonItem.gd @@ -1,4 +1,4 @@ -extends BaseControl +extends Button @export var TextureNormal:Texture2D @@ -15,5 +15,11 @@ var is_select:bool=false: $TextureRect.texture=TextureNormal is_select=value func _ready() -> void: - super._ready() self.focus_mode=Control.FOCUS_NONE + self.button_down.connect(_button_down) + self.button_up.connect(_button_up) +func _button_down(): + is_select=true + +func _button_up(): + is_select=false diff --git a/Modules/StateChangeButtonItem.gd b/Modules/StateChangeButtonItem.gd new file mode 100644 index 0000000..0f751a3 --- /dev/null +++ b/Modules/StateChangeButtonItem.gd @@ -0,0 +1,41 @@ +extends Button + + +@export var TextureNormal:Texture2D +@export var TextureNormalHigh:Texture2D +@export var TextureSelected:Texture2D +@export var TextureSelectedHigh:Texture2D + +signal self_click(is_selected:bool) + +var is_select:bool=false: + set(value): + if value: + $TextureRect.texture=TextureSelected + else: + $TextureRect.texture=TextureNormal + is_select=value +func _ready() -> void: + self.focus_mode=Control.FOCUS_NONE + self.button_down.connect(_button_down) + self.button_up.connect(_button_up) + +func _button_down(): + if is_select: + $TextureRect.texture=TextureSelectedHigh + else: + $TextureRect.texture=TextureNormalHigh + +func _button_up(): + if is_select: + $TextureRect.texture=TextureSelected + else: + $TextureRect.texture=TextureNormal + + + pass + +func _pressed(): + is_select=!is_select + self_click.emit(is_select) + pass diff --git a/Modules/language_button.gd b/Modules/language_button.gd index 9e204d3..2c89702 100644 --- a/Modules/language_button.gd +++ b/Modules/language_button.gd @@ -1,5 +1,5 @@ extends Button - +class_name LanguageButton @export var BackTextureNormal:Texture2D @export var BackTextureSelected:Texture2D @@ -46,8 +46,6 @@ func _ready() -> void: func _pressed() -> void: click.emit(self) - - is_selected=not is_selected diff --git a/Modules/language_panel.gd b/Modules/language_panel.gd new file mode 100644 index 0000000..8ad16ac --- /dev/null +++ b/Modules/language_panel.gd @@ -0,0 +1,27 @@ +extends Control + +@export var button_arr:Array[LanguageButton] +@export var close_button:TextureButton +signal click(index:int) + +signal close_requeset() +func _ready() -> void: + for i in button_arr: + i.click.connect( + func(node): + for j in button_arr: + j.is_selected=false + node.is_selected=true + click.emit(button_arr.find(node)) + ) + close_button.pressed.connect( + func(): + close_requeset.emit() + ) + + pass + +func set_select(ind:int): + for j in button_arr: + j.is_selected=false + button_arr[ind].is_selected=true diff --git a/Modules/language_panel_horizontal.tscn b/Modules/language_panel_horizontal.tscn index cfe83f4..ed0f89f 100644 --- a/Modules/language_panel_horizontal.tscn +++ b/Modules/language_panel_horizontal.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=9 format=3 uid="uid://b1v18ra6fsxt5"] +[gd_scene load_steps=10 format=3 uid="uid://b1v18ra6fsxt5"] [ext_resource type="Texture2D" uid="uid://odtdv6uuxul6" path="res://res/mask/overlay_ad_mask_semi_transparent.png" id="1_5ld7q"] +[ext_resource type="Script" path="res://Modules/language_panel.gd" id="1_ne44a"] [ext_resource type="PackedScene" uid="uid://bb8i20x4xutp5" path="res://Modules/LanguageButton.tscn" id="2_vy48t"] [ext_resource type="Texture2D" uid="uid://drcukx1rmjs77" path="res://res/icon/icon_English_default.png" id="3_e76dh"] [ext_resource type="Texture2D" uid="uid://dfktl3007ojxk" path="res://res/icon/icon_English_hover.png" id="4_smhi3"] @@ -9,13 +10,16 @@ [ext_resource type="Texture2D" uid="uid://xr6duvavyfg8" path="res://res/icon/icon_language_close_default.png" id="7_dpc12"] [ext_resource type="Texture2D" uid="uid://bqnjclc8biqve" path="res://res/icon/icon_language_close_hover.png" id="8_to5hf"] -[node name="LanguagePanelHorizontal" type="Control"] +[node name="LanguagePanelHorizontal" type="Control" node_paths=PackedStringArray("button_arr", "close_button")] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +script = ExtResource("1_ne44a") +button_arr = [NodePath("HBoxContainer2/Button"), NodePath("HBoxContainer2/Button2"), NodePath("HBoxContainer2/Button3")] +close_button = NodePath("CloseButton") [node name="mask2" type="TextureRect" parent="."] layout_mode = 1 diff --git a/Modules/language_panel_vertical.tscn b/Modules/language_panel_vertical.tscn index 5b29b5e..fd41f65 100644 --- a/Modules/language_panel_vertical.tscn +++ b/Modules/language_panel_vertical.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=9 format=3 uid="uid://bk6628qw2j15m"] +[gd_scene load_steps=10 format=3 uid="uid://bk6628qw2j15m"] [ext_resource type="Texture2D" uid="uid://odtdv6uuxul6" path="res://res/mask/overlay_ad_mask_semi_transparent.png" id="1_5cktv"] +[ext_resource type="Script" path="res://Modules/language_panel.gd" id="1_y0e1v"] [ext_resource type="PackedScene" uid="uid://bb8i20x4xutp5" path="res://Modules/LanguageButton.tscn" id="2_wisce"] [ext_resource type="Texture2D" uid="uid://drcukx1rmjs77" path="res://res/icon/icon_English_default.png" id="3_4hfoc"] [ext_resource type="Texture2D" uid="uid://dfktl3007ojxk" path="res://res/icon/icon_English_hover.png" id="4_dchfe"] @@ -9,13 +10,16 @@ [ext_resource type="Texture2D" uid="uid://xr6duvavyfg8" path="res://res/icon/icon_language_close_default.png" id="7_serui"] [ext_resource type="Texture2D" uid="uid://bqnjclc8biqve" path="res://res/icon/icon_language_close_hover.png" id="8_7tp56"] -[node name="LanguageVertical" type="Control"] +[node name="LanguageVertical" type="Control" node_paths=PackedStringArray("button_arr", "close_button")] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +script = ExtResource("1_y0e1v") +button_arr = [NodePath("VBoxContainer2/Button"), NodePath("VBoxContainer2/Button2"), NodePath("VBoxContainer2/Button3")] +close_button = NodePath("CloseButton") [node name="mask2" type="TextureRect" parent="."] layout_mode = 1 diff --git a/Modules/scroll_label.gd b/Modules/scroll_label.gd index e427387..d09a7c8 100644 --- a/Modules/scroll_label.gd +++ b/Modules/scroll_label.gd @@ -72,8 +72,15 @@ func _ready() -> void: func _process(delta: float) -> void: if is_scroll: - scroll_value+=(scroll_speed*delta) - + if text.length()>view_font_num_not_scroll: + scroll_value+=(scroll_speed*delta) + %tab_left.show() + %tab_right.show() + else: + scroll_value=0 + %tab_left.hide() + %tab_right.hide() + func get_text_not_scroll(str:String)->String: if str.length()<=view_font_num_not_scroll: diff --git a/Modules/scroll_label.tscn b/Modules/scroll_label.tscn index 7ee8ae2..9b39176 100644 --- a/Modules/scroll_label.tscn +++ b/Modules/scroll_label.tscn @@ -27,8 +27,7 @@ unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 -theme_override_font_sizes/font_size = 100 -text = "测试文本111111111111ssssssssssssssssssssssssssssssssssssssssssssssssssss到底啦" +theme_override_font_sizes/font_size = 0 vertical_alignment = 1 [node name="tab_right" type="Control" parent="scroll"] diff --git a/Modules/station_view.gd b/Modules/station_view.gd index 467056c..4712e56 100644 --- a/Modules/station_view.gd +++ b/Modules/station_view.gd @@ -1,5 +1,4 @@ extends TextureRect - var station_array:Array[String]=["测试站点1","测试站点2","测试站点3","测试站点4","测试站点5","测试站点6"] @export var scroll_text_tscn:PackedScene diff --git a/Modules/station_view_new.gd b/Modules/station_view_new.gd new file mode 100644 index 0000000..dad2d8f --- /dev/null +++ b/Modules/station_view_new.gd @@ -0,0 +1,49 @@ +extends TextureRect + + +func start_flashing(): + %AnimationPlayer.play("flashing") + + +func stop_flashing(): + %AnimationPlayer.play("RESET") + +func _ready() -> void: + set_station("1111") +func set_station(station_0:String,station_1=null,station_2=null,station_3=null): + var tween=%station_0.create_tween() + tween.tween_property(%station_0,"modulate:a",0,0.5) + tween.tween_callback(%station_0.set.bind("text",station_0)) + tween.tween_property(%station_0,"modulate:a",1,0.5) + + var next_tween=%station_1.create_tween() + next_tween.tween_property(%station_1,"modulate:a",0,0.5) + if station_1 is String: + next_tween.tween_callback(%station_1.set.bind("text",station_1)) + next_tween.tween_property(%station_1,"modulate:a",1,0.5) + + next_tween=%station_2.create_tween() + next_tween.tween_property(%station_2,"modulate:a",0,0.5) + if station_2 is String: + next_tween.tween_callback(%station_2.set.bind("text",station_2)) + next_tween.tween_property(%station_2,"modulate:a",1,0.5) + + next_tween=%station_3.create_tween() + next_tween.tween_property(%station_3,"modulate:a",0,0.5) + if station_3 is String: + next_tween.tween_callback(%station_3.set.bind("text",station_3)) + next_tween.tween_property(%station_3,"modulate:a",1,0.5) + pass + + +func _on_button_pressed() -> void: + if %AnimationPlayer.is_playing(): + stop_flashing() + else: + start_flashing() + pass # Replace with function body. + + +func _on_button_2_pressed() -> void: + set_station(str(randf()),str(randf()),str(randf()),str(randf())) + pass # Replace with function body. diff --git a/Modules/station_view_new.tscn b/Modules/station_view_new.tscn new file mode 100644 index 0000000..e5ed496 --- /dev/null +++ b/Modules/station_view_new.tscn @@ -0,0 +1,189 @@ +[gd_scene load_steps=12 format=3 uid="uid://dh23at8cqmfe8"] + +[ext_resource type="Texture2D" uid="uid://cbmjjcfmyc8wt" path="res://res/bg/bg_station_path_gradient.png" id="1_vsfh7"] +[ext_resource type="Script" path="res://Modules/station_view_new.gd" id="2_2cgbx"] +[ext_resource type="Texture2D" uid="uid://bmv5quilkypgr" path="res://res/preview/chinese.png" id="2_2jmfb"] +[ext_resource type="Texture2D" uid="uid://dlpmgixgugrfl" path="res://res/icon/icon_station_indicator_large_flashing_next.png" id="3_tyf5v"] +[ext_resource type="Texture2D" uid="uid://bjon7vqmvibkd" path="res://res/icon/icon_station_indicator_medium_next_2.png" id="4_3irkx"] +[ext_resource type="Texture2D" uid="uid://c3keowm76ccmy" path="res://res/icon/icon_station_indicator_small_next_3.png" id="5_waf85"] +[ext_resource type="Texture2D" uid="uid://ccas8lmykaojh" path="res://res/icon/icon_station_indicator_tiny_next_4.png" id="6_k6ck3"] +[ext_resource type="PackedScene" uid="uid://cjb0kd8p16kas" path="res://Modules/scroll_label.tscn" id="7_rdib7"] + +[sub_resource type="Animation" id="Animation_avk84"] +resource_name = "flashing" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("next1:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.5, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} + +[sub_resource type="Animation" id="Animation_awt3t"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("next1:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_m8pvp"] +_data = { +"RESET": SubResource("Animation_awt3t"), +"flashing": SubResource("Animation_avk84") +} + +[node name="TextureRect" type="TextureRect"] +offset_right = 40.0 +offset_bottom = 40.0 +texture = ExtResource("1_vsfh7") +script = ExtResource("2_2cgbx") + +[node name="preview" type="TextureRect" parent="."] +visible = false +self_modulate = Color(1, 1, 1, 0.403922) +layout_mode = 0 +offset_left = -88.0 +offset_top = -146.0 +offset_right = 3752.0 +offset_bottom = 934.0 +texture = ExtResource("2_2jmfb") + +[node name="next1" type="TextureRect" parent="."] +layout_mode = 0 +anchor_left = 0.025066 +anchor_top = 0.873918 +anchor_right = 0.147757 +anchor_bottom = 0.988875 +texture = ExtResource("3_tyf5v") +metadata/_edit_use_anchors_ = true + +[node name="next2" type="TextureRect" parent="."] +layout_mode = 0 +anchor_left = 0.0791557 +anchor_top = 0.505562 +anchor_right = 0.183377 +anchor_bottom = 0.603214 +texture = ExtResource("4_3irkx") +metadata/_edit_use_anchors_ = true + +[node name="next3" type="TextureRect" parent="."] +layout_mode = 0 +anchor_left = 0.197889 +anchor_top = 0.229913 +anchor_right = 0.277045 +anchor_bottom = 0.302843 +offset_bottom = 1.52588e-05 +texture = ExtResource("5_waf85") +metadata/_edit_use_anchors_ = true + +[node name="next4" type="TextureRect" parent="."] +layout_mode = 0 +anchor_left = 0.33905 +anchor_top = 0.0346106 +anchor_right = 0.395778 +anchor_bottom = 0.0877627 +texture = ExtResource("6_k6ck3") +metadata/_edit_use_anchors_ = true + +[node name="station_0" parent="." instance=ExtResource("7_rdib7")] +unique_name_in_owner = true +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.241425 +anchor_top = 0.855377 +anchor_right = 0.895778 +anchor_bottom = 1.0 +offset_left = 0.0 +offset_top = 0.0 +offset_right = 0.0 +offset_bottom = 0.0 +text = "阳光生态城1" +margin_left = 600.0 +margin_right = 600.0 +font_size = 60 +is_scroll = true +metadata/_edit_use_anchors_ = true + +[node name="station_1" parent="." instance=ExtResource("7_rdib7")] +unique_name_in_owner = true +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.310026 +anchor_top = 0.517923 +anchor_right = 0.895778 +anchor_bottom = 0.613103 +offset_left = 0.0 +offset_top = 0.0 +offset_right = 0.0 +offset_bottom = -3.05176e-05 +text = "国际博览中心" +font_size = 50 +metadata/_edit_use_anchors_ = true + +[node name="station_2" parent="." instance=ExtResource("7_rdib7")] +unique_name_in_owner = true +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.422164 +anchor_top = 0.229913 +anchor_right = 0.895778 +anchor_bottom = 0.315204 +offset_left = 0.0 +offset_top = 0.0 +offset_right = 0.0 +offset_bottom = 0.0 +text = "枫桥" +font_size = 50 +metadata/_edit_use_anchors_ = true + +[node name="station_3" parent="." instance=ExtResource("7_rdib7")] +unique_name_in_owner = true +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.519789 +anchor_top = 0.0346106 +anchor_right = 0.895778 +anchor_bottom = 0.119901 +offset_left = 0.0 +offset_top = 1.90735e-06 +offset_right = 0.0 +offset_bottom = 0.0 +text = "翠湖111111" +font_size = 50 +metadata/_edit_use_anchors_ = true + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +unique_name_in_owner = true +libraries = { +"": SubResource("AnimationLibrary_m8pvp") +} + +[node name="Button" type="Button" parent="."] +layout_mode = 0 +offset_right = 183.0 +offset_bottom = 71.0 +text = "闪烁测试" + +[node name="Button2" type="Button" parent="."] +layout_mode = 0 +offset_left = 394.0 +offset_right = 564.0 +offset_bottom = 71.0 +text = "换站测试" + +[connection signal="pressed" from="Button" to="." method="_on_button_pressed"] +[connection signal="pressed" from="Button2" to="." method="_on_button_2_pressed"] diff --git a/Modules/terminal_search_button.gd b/Modules/terminal_search_button.gd new file mode 100644 index 0000000..1528d2d --- /dev/null +++ b/Modules/terminal_search_button.gd @@ -0,0 +1,21 @@ +extends TextureButton + + +@export var TextureNormal:Texture2D + +@export var TextureDown:Texture2D + + + + +func _ready() -> void: + self.focus_mode=Control.FOCUS_NONE + button_down.connect(_button_down) + button_up.connect(_button_up) + + +func _button_down(): + $TextureRect.texture=TextureDown + +func _button_up(): + $TextureRect.texture=TextureNormal diff --git a/Modules/tunnel_panel.gd b/Modules/tunnel_panel.gd new file mode 100644 index 0000000..b018c07 --- /dev/null +++ b/Modules/tunnel_panel.gd @@ -0,0 +1,16 @@ +extends Control + +signal search_click(str:String) +signal request_hide() +func get_input()->String: + return $TextureRect2/TextureRext/LineEdit.text + + +func _on_terminal_search_button_pressed() -> void: + search_click.emit(get_input()) + pass # Replace with function body. + + +func _on_tunnel_close_pressed() -> void: + request_hide.emit() + pass # Replace with function body. diff --git a/Modules/tunnel_panel.tscn b/Modules/tunnel_panel.tscn new file mode 100644 index 0000000..7157323 --- /dev/null +++ b/Modules/tunnel_panel.tscn @@ -0,0 +1,138 @@ +[gd_scene load_steps=12 format=3 uid="uid://dwjj0vio2iyaf"] + +[ext_resource type="Texture2D" uid="uid://odtdv6uuxul6" path="res://res/mask/overlay_ad_mask_semi_transparent.png" id="1_n5cpy"] +[ext_resource type="Script" path="res://Modules/tunnel_panel.gd" id="1_p8w8i"] +[ext_resource type="Texture2D" uid="uid://dyi0k6f82o11s" path="res://res/bg/window_terminal_search_default.png" id="2_ij6sv"] +[ext_resource type="Texture2D" uid="uid://dqlcxpum4jq7l" path="res://res/icon/icon_terminal_search_close_default.png" id="3_wrwk6"] +[ext_resource type="Texture2D" uid="uid://ck6dl6bhb1uai" path="res://res/icon/icon_terminal_search_close_hover.png" id="4_nhrp0"] +[ext_resource type="Texture2D" uid="uid://hb4ca8supnca" path="res://res/bar/bar_terminal_search_default.png" id="5_frxxh"] +[ext_resource type="Texture2D" uid="uid://c4bsmbn2tshod" path="res://res/button/button_terminal_search_default.png" id="6_1jtsn"] +[ext_resource type="Script" path="res://Modules/terminal_search_button.gd" id="7_ckw5i"] +[ext_resource type="Texture2D" uid="uid://dqaaqibdo0erj" path="res://res/icon/icon_terminal_search_default.png" id="8_ab7h2"] +[ext_resource type="Texture2D" uid="uid://b8vrr2xwd3g7c" path="res://res/icon/icon_terminal_search_hover.png" id="9_y4086"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_gnfni"] + +[node name="TunnelPanel" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_p8w8i") + +[node name="mask3" type="TextureRect" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("1_n5cpy") +expand_mode = 1 + +[node name="TextureRect2" type="TextureRect" parent="."] +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -20.0 +offset_top = -20.0 +offset_right = 20.0 +offset_bottom = 20.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("2_ij6sv") + +[node name="TunnelClose" type="TextureButton" parent="TextureRect2"] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -22.0 +offset_top = -26.5 +offset_right = 25.0 +offset_bottom = 20.5 +grow_horizontal = 0 +focus_mode = 0 +texture_normal = ExtResource("3_wrwk6") +texture_pressed = ExtResource("4_nhrp0") + +[node name="Label" type="Label" parent="TextureRect2"] +layout_mode = 0 +anchor_left = 0.00420757 +anchor_top = 0.287532 +anchor_right = 0.995792 +anchor_bottom = 0.402036 +theme_override_colors/font_color = Color(0.145098, 0.133333, 0.133333, 1) +theme_override_font_sizes/font_size = 32 +text = "终端编号" +horizontal_alignment = 1 +metadata/_edit_use_anchors_ = true + +[node name="TextureRext" type="TextureRect" parent="TextureRect2"] +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.1669 +anchor_top = 0.517812 +anchor_right = 0.840112 +anchor_bottom = 0.652672 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("5_frxxh") +metadata/_edit_use_anchors_ = true + +[node name="LineEdit" type="LineEdit" parent="TextureRect2/TextureRext"] +layout_mode = 1 +anchors_preset = -1 +anchor_left = 0.0208333 +anchor_right = 0.766667 +anchor_bottom = 1.0 +theme_override_colors/caret_color = Color(0, 0, 0, 1) +theme_override_colors/font_color = Color(0, 0, 0, 1) +theme_override_styles/focus = SubResource("StyleBoxEmpty_gnfni") +alignment = 1 +flat = true +metadata/_edit_use_anchors_ = true + +[node name="TerminalSearchButton" type="TextureButton" parent="TextureRect2/TextureRext"] +layout_mode = 1 +anchors_preset = 6 +anchor_left = 1.0 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +offset_left = -112.0 +offset_top = -26.5 +offset_bottom = 26.5 +grow_horizontal = 0 +grow_vertical = 2 +texture_normal = ExtResource("6_1jtsn") +texture_pressed = ExtResource("6_1jtsn") +texture_hover = ExtResource("6_1jtsn") +texture_disabled = ExtResource("6_1jtsn") +texture_focused = ExtResource("6_1jtsn") +script = ExtResource("7_ckw5i") +TextureNormal = ExtResource("8_ab7h2") +TextureDown = ExtResource("9_y4086") + +[node name="TextureRect" type="TextureRect" parent="TextureRect2/TextureRext/TerminalSearchButton"] +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -23.0 +offset_top = -8.5 +offset_right = 23.0 +offset_bottom = 8.5 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("8_ab7h2") + +[connection signal="pressed" from="TextureRect2/TunnelClose" to="." method="_on_tunnel_close_pressed"] +[connection signal="pressed" from="TextureRect2/TextureRext/TerminalSearchButton" to="." method="_on_terminal_search_button_pressed"] diff --git a/main.gd b/main.gd index a284f98..d2c29b6 100644 --- a/main.gd +++ b/main.gd @@ -2,6 +2,63 @@ extends Control func _on_more_option_pressed() -> void: - %MoreOption.is_select=not %MoreOption.is_select - %MoreOptionPanel.visibility_layer=%MoreOption.is_select + %MoreOptionPanel.visibility_layer=not %MoreOptionPanel.visibility_layer + pass # Replace with function body. + + +func _on_ad_view_self_click(is_selected: bool) -> void: + %ADPanel.visible=not is_selected + if not is_selected: + %ADTab.hide() + %StateTab.hide() + pass # Replace with function body. + + +func _on_tunnel_panel_request_hide() -> void: + %ADTab.hide() + %StateTab.hide() + pass # Replace with function body. + + +func _on_tunnel_panel_search_click(str: String) -> void: + + pass # Replace with function body. + + +func _on_language_pressed() -> void: + if %ADView.is_select: + %StateTab.set_current_tab(0) + %StateTab.show() + else: + %ADTab.set_current_tab(0) + %ADTab.show() + + pass # Replace with function body. + + +func _on_tunnel_pressed() -> void: + if %ADView.is_select: + + %StateTab.set_current_tab(1) + %StateTab.show() + else: + %ADTab.set_current_tab(1) + %ADTab.show() + + pass # Replace with function body. + + +func _on_language_panel_horizontal_click(index: int) -> void: + %LanguageVertical.set_select(index) + pass # Replace with function body. + + +func _on_language_vertical_click(index: int) -> void: + %LanguagePanelHorizontal.set_select(index) + pass # Replace with function body. + + +func _on_language_close_requeset() -> void: + %ADTab.hide() + %StateTab.hide() pass # Replace with function body. diff --git a/main.tscn b/main.tscn index de7e19f..ad5c70c 100644 --- a/main.tscn +++ b/main.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=19 format=3 uid="uid://dwv63mpx0y857"] +[gd_scene load_steps=23 format=3 uid="uid://dwv63mpx0y857"] [ext_resource type="Script" path="res://main.gd" id="1_7mntx"] [ext_resource type="Texture2D" uid="uid://ctqyt5yh6uy78" path="res://res/bg/bg_dropdown_menu_active.png" id="1_rrn5x"] @@ -12,12 +12,16 @@ [ext_resource type="Texture2D" uid="uid://cvv784xu4xhoe" path="res://res/icon/icon_terminal_hover.png" id="6_vioyi"] [ext_resource type="Texture2D" uid="uid://c4jhgcdnltalm" path="res://res/icon/icon_more_option_hover.png" id="8_5t1lf"] [ext_resource type="Texture2D" uid="uid://uaj4hq8l4sfr" path="res://res/icon/icon_hide_video_hover.png" id="8_ahwag"] +[ext_resource type="Script" path="res://Modules/StateChangeButtonItem.gd" id="8_xyn63"] +[ext_resource type="Texture2D" uid="uid://sbsycy5byl8k" path="res://res/icon/icon_show_video_default.png" id="11_nx1mp"] [ext_resource type="Texture2D" uid="uid://dnpguw2kxiycr" path="res://res/bg/bg_info_panel_time_default.png" id="12_bp84h"] [ext_resource type="PackedScene" uid="uid://b1v18ra6fsxt5" path="res://Modules/language_panel_horizontal.tscn" id="12_g3kjd"] -[ext_resource type="PackedScene" uid="uid://cniqn7t5ddowq" path="res://Modules/station_view.tscn" id="12_ltcn0"] +[ext_resource type="Texture2D" uid="uid://0fslq0o4y3cl" path="res://res/icon/icon_show_video_hover.png" id="12_py6bo"] [ext_resource type="PackedScene" uid="uid://bk6628qw2j15m" path="res://Modules/language_panel_vertical.tscn" id="13_ec1yh"] [ext_resource type="Texture2D" uid="uid://ncxqcxrll4gn" path="res://res/bg/bg_info_panel_speed_safebelt_default.png" id="13_ko5d5"] [ext_resource type="Texture2D" uid="uid://bkftfoedt3036" path="res://res/icon/icon_safebelt_yes.png" id="14_1xl0y"] +[ext_resource type="PackedScene" uid="uid://dh23at8cqmfe8" path="res://Modules/station_view_new.tscn" id="15_nyjwy"] +[ext_resource type="PackedScene" uid="uid://dwjj0vio2iyaf" path="res://Modules/tunnel_panel.tscn" id="17_6c7jw"] [node name="Control" type="Control"] layout_mode = 3 @@ -80,7 +84,6 @@ flat = true script = ExtResource("3_8cofn") TextureNormal = ExtResource("2_nfbe6") TextureSelected = ExtResource("4_ew1by") -is_Scale = true [node name="TextureRect" type="TextureRect" parent="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer/Language"] layout_mode = 1 @@ -121,12 +124,15 @@ grow_vertical = 2 texture = ExtResource("3_2tet8") [node name="ADView" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer"] +unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 3 flat = true -script = ExtResource("3_8cofn") +script = ExtResource("8_xyn63") TextureNormal = ExtResource("4_dco67") -TextureSelected = ExtResource("8_ahwag") +TextureNormalHigh = ExtResource("8_ahwag") +TextureSelected = ExtResource("11_nx1mp") +TextureSelectedHigh = ExtResource("12_py6bo") [node name="TextureRect" type="TextureRect" parent="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer/ADView"] layout_mode = 1 @@ -168,10 +174,12 @@ layout_mode = 2 size_flags_vertical = 3 theme_override_constants/separation = 68 -[node name="StationView" parent="MarginContainer/VBoxContainer/HBoxContainer2" instance=ExtResource("12_ltcn0")] +[node name="StationView" parent="MarginContainer/VBoxContainer/HBoxContainer2" instance=ExtResource("15_nyjwy")] +unique_name_in_owner = true layout_mode = 2 [node name="StatePanel" type="Panel" parent="MarginContainer/VBoxContainer/HBoxContainer2"] +unique_name_in_owner = true custom_minimum_size = Vector2(1346, 0) layout_mode = 2 size_flags_horizontal = 3 @@ -301,25 +309,54 @@ text = "已系好" horizontal_alignment = 1 vertical_alignment = 2 -[node name="LanguagePanelHorizontal" parent="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel" instance=ExtResource("12_g3kjd")] +[node name="StateTab" type="TabContainer" parent="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel"] +unique_name_in_owner = true visible = false layout_mode = 1 - -[node name="ADPanel" type="Panel" parent="MarginContainer/VBoxContainer/HBoxContainer2"] -custom_minimum_size = Vector2(1426, 0) -layout_mode = 2 - -[node name="LanguageVertical" parent="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel" instance=ExtResource("13_ec1yh")] -visible = false -layout_mode = 1 - -[node name="TunnelPanel" type="Control" parent="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel"] -layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +current_tab = 1 +tabs_visible = false + +[node name="LanguagePanelHorizontal" parent="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab" instance=ExtResource("12_g3kjd")] +unique_name_in_owner = true +visible = false +layout_mode = 2 +metadata/_tab_index = 0 + +[node name="TunnelPanel" parent="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab" instance=ExtResource("17_6c7jw")] +layout_mode = 2 +metadata/_tab_index = 1 + +[node name="ADPanel" type="Panel" parent="MarginContainer/VBoxContainer/HBoxContainer2"] +unique_name_in_owner = true +custom_minimum_size = Vector2(1426, 0) +layout_mode = 2 + +[node name="ADTab" type="TabContainer" parent="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel"] +unique_name_in_owner = true +visible = false +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +current_tab = 0 +tabs_visible = false + +[node name="LanguageVertical" parent="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab" instance=ExtResource("13_ec1yh")] +unique_name_in_owner = true +layout_mode = 2 +metadata/_tab_index = 0 + +[node name="TunnelPanel" parent="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab" instance=ExtResource("17_6c7jw")] +visible = false +layout_mode = 2 +metadata/_tab_index = 1 [node name="TextureRect" type="TextureRect" parent="."] visible = false @@ -332,4 +369,15 @@ grow_horizontal = 2 grow_vertical = 2 texture = ExtResource("3_kegs1") +[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer/Language" to="." method="_on_language_pressed"] +[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer/Tunnel" to="." method="_on_tunnel_pressed"] +[connection signal="self_click" from="MarginContainer/VBoxContainer/HBoxContainer/MoreOptionPanel/HBoxContainer/ADView" to="." method="_on_ad_view_self_click"] [connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/MoreOption" to="." method="_on_more_option_pressed"] +[connection signal="click" from="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab/LanguagePanelHorizontal" to="." method="_on_language_panel_horizontal_click"] +[connection signal="close_requeset" from="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab/LanguagePanelHorizontal" to="." method="_on_language_close_requeset"] +[connection signal="request_hide" from="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab/TunnelPanel" to="." method="_on_tunnel_panel_request_hide"] +[connection signal="search_click" from="MarginContainer/VBoxContainer/HBoxContainer2/StatePanel/StateTab/TunnelPanel" to="." method="_on_tunnel_panel_search_click"] +[connection signal="click" from="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab/LanguageVertical" to="." method="_on_language_vertical_click"] +[connection signal="close_requeset" from="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab/LanguageVertical" to="." method="_on_language_close_requeset"] +[connection signal="request_hide" from="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab/TunnelPanel" to="." method="_on_tunnel_panel_request_hide"] +[connection signal="search_click" from="MarginContainer/VBoxContainer/HBoxContainer2/ADPanel/ADTab/TunnelPanel" to="." method="_on_tunnel_panel_search_click"] diff --git a/res/bar/bar_terminal_search_default.png b/res/bar/bar_terminal_search_default.png index 5111df3..a7f9780 100644 Binary files a/res/bar/bar_terminal_search_default.png and b/res/bar/bar_terminal_search_default.png differ diff --git a/res/bg/window_terminal_search_default.png b/res/bg/window_terminal_search_default.png new file mode 100644 index 0000000..70c867f Binary files /dev/null and b/res/bg/window_terminal_search_default.png differ diff --git a/res/bg/window_terminal_search_default.png.import b/res/bg/window_terminal_search_default.png.import new file mode 100644 index 0000000..37dfd88 --- /dev/null +++ b/res/bg/window_terminal_search_default.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dyi0k6f82o11s" +path="res://.godot/imported/window_terminal_search_default.png-1b1cb86f24a6b9072d67076a6611bae2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/bg/window_terminal_search_default.png" +dest_files=["res://.godot/imported/window_terminal_search_default.png-1b1cb86f24a6b9072d67076a6611bae2.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/res/button/button_terminal_search_default.png b/res/button/button_terminal_search_default.png new file mode 100644 index 0000000..1c3e23f Binary files /dev/null and b/res/button/button_terminal_search_default.png differ diff --git a/res/button/button_terminal_search_default.png.import b/res/button/button_terminal_search_default.png.import new file mode 100644 index 0000000..50168ec --- /dev/null +++ b/res/button/button_terminal_search_default.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c4bsmbn2tshod" +path="res://.godot/imported/button_terminal_search_default.png-38f250cdaba898ef22e3129a1c24735e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/button/button_terminal_search_default.png" +dest_files=["res://.godot/imported/button_terminal_search_default.png-38f250cdaba898ef22e3129a1c24735e.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/res/icon/icon_terminal_search_close_default.png b/res/icon/icon_terminal_search_close_default.png new file mode 100644 index 0000000..d524bb4 Binary files /dev/null and b/res/icon/icon_terminal_search_close_default.png differ diff --git a/res/icon/icon_terminal_search_close_default.png.import b/res/icon/icon_terminal_search_close_default.png.import new file mode 100644 index 0000000..60b2188 --- /dev/null +++ b/res/icon/icon_terminal_search_close_default.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dqlcxpum4jq7l" +path="res://.godot/imported/icon_terminal_search_close_default.png-0ff7165a66f11d38310e089fd0362277.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/icon/icon_terminal_search_close_default.png" +dest_files=["res://.godot/imported/icon_terminal_search_close_default.png-0ff7165a66f11d38310e089fd0362277.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/res/icon/icon_terminal_search_close_hover.png b/res/icon/icon_terminal_search_close_hover.png new file mode 100644 index 0000000..0251aa2 Binary files /dev/null and b/res/icon/icon_terminal_search_close_hover.png differ diff --git a/res/icon/icon_terminal_search_close_hover.png.import b/res/icon/icon_terminal_search_close_hover.png.import new file mode 100644 index 0000000..8ffcb9d --- /dev/null +++ b/res/icon/icon_terminal_search_close_hover.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ck6dl6bhb1uai" +path="res://.godot/imported/icon_terminal_search_close_hover.png-bb377f85d3d18fa6a2caa226ce721e48.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/icon/icon_terminal_search_close_hover.png" +dest_files=["res://.godot/imported/icon_terminal_search_close_hover.png-bb377f85d3d18fa6a2caa226ce721e48.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/res/icon/icon_terminal_search_default.png b/res/icon/icon_terminal_search_default.png new file mode 100644 index 0000000..0f23564 Binary files /dev/null and b/res/icon/icon_terminal_search_default.png differ diff --git a/res/icon/icon_terminal_search_default.png.import b/res/icon/icon_terminal_search_default.png.import new file mode 100644 index 0000000..b286938 --- /dev/null +++ b/res/icon/icon_terminal_search_default.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dqaaqibdo0erj" +path="res://.godot/imported/icon_terminal_search_default.png-022cc4d45f2af391c97ea2b9df2fbf79.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/icon/icon_terminal_search_default.png" +dest_files=["res://.godot/imported/icon_terminal_search_default.png-022cc4d45f2af391c97ea2b9df2fbf79.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/res/icon/icon_terminal_search_hover.png b/res/icon/icon_terminal_search_hover.png new file mode 100644 index 0000000..de630bc Binary files /dev/null and b/res/icon/icon_terminal_search_hover.png differ diff --git a/res/icon/icon_terminal_search_hover.png.import b/res/icon/icon_terminal_search_hover.png.import new file mode 100644 index 0000000..6c8f0ea --- /dev/null +++ b/res/icon/icon_terminal_search_hover.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b8vrr2xwd3g7c" +path="res://.godot/imported/icon_terminal_search_hover.png-deaded6fbfdbee266c178b4ad9a27c25.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://res/icon/icon_terminal_search_hover.png" +dest_files=["res://.godot/imported/icon_terminal_search_hover.png-deaded6fbfdbee266c178b4ad9a27c25.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