From d558a9add0e183219a7a9ff482807bdcd677e21a Mon Sep 17 00:00:00 2001 From: Anson Bridges Date: Mon, 11 Aug 2025 22:42:00 -0700 Subject: Initialize repo from local files --- objects/BorderIndicator.tscn | 46 +++++++ objects/HexSpace.tscn | 178 +++++++++++++++++++++++++ objects/Plane.tscn | 136 +++++++++++++++++++ objects/PlaneControlBoard.tscn | 292 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 652 insertions(+) create mode 100644 objects/BorderIndicator.tscn create mode 100644 objects/HexSpace.tscn create mode 100644 objects/Plane.tscn create mode 100644 objects/PlaneControlBoard.tscn (limited to 'objects') diff --git a/objects/BorderIndicator.tscn b/objects/BorderIndicator.tscn new file mode 100644 index 0000000..77535f4 --- /dev/null +++ b/objects/BorderIndicator.tscn @@ -0,0 +1,46 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://textures/gradient_transparent.png" type="Texture" id=1] + +[sub_resource type="SpatialMaterial" id=1] +flags_transparent = true +params_cull_mode = 2 +albedo_color = Color( 1, 0.956863, 0, 1 ) +albedo_texture = ExtResource( 1 ) +emission_enabled = true +emission = Color( 1, 1, 0, 1 ) +emission_energy = 1.0 +emission_operator = 0 +emission_on_uv2 = false +uv1_scale = Vector3( 1, 0.9, 1 ) +uv1_offset = Vector3( 0, 0.1, 0 ) + +[sub_resource type="QuadMesh" id=2] +material = SubResource( 1 ) +size = Vector2( 0.577, 0.15 ) + +[sub_resource type="SpatialMaterial" id=3] +flags_transparent = true +params_cull_mode = 2 +albedo_color = Color( 1, 0.956863, 0, 0.486275 ) +emission_enabled = true +emission = Color( 1, 1, 0, 1 ) +emission_energy = 1.0 +emission_operator = 0 +emission_on_uv2 = false +uv1_scale = Vector3( 1, 0.9, 1 ) +uv1_offset = Vector3( 0, 0.1, 0 ) + +[sub_resource type="QuadMesh" id=4] +material = SubResource( 3 ) +size = Vector2( 0.577, 0.04 ) + +[node name="BorderIndicator" type="Spatial"] + +[node name="MeshInstance" type="MeshInstance" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0537032, 0 ) +mesh = SubResource( 2 ) + +[node name="MeshInstance3" type="MeshInstance" parent="."] +transform = Transform( 1, 4.37114e-08, 4.37114e-08, -4.37114e-08, -4.37114e-08, 1, 4.37114e-08, -1, -4.37114e-08, 0, 0, 0 ) +mesh = SubResource( 4 ) diff --git a/objects/HexSpace.tscn b/objects/HexSpace.tscn new file mode 100644 index 0000000..121a5a9 --- /dev/null +++ b/objects/HexSpace.tscn @@ -0,0 +1,178 @@ +[gd_scene load_steps=22 format=2] + +[ext_resource path="res://scripts/HexSpace.gd" type="Script" id=1] +[ext_resource path="res://resources/fonts/cochineal_bold_billboard.tres" type="DynamicFont" id=2] + +[sub_resource type="SpatialMaterial" id=5] +albedo_color = Color( 0.101961, 0.427451, 0.0235294, 1 ) + +[sub_resource type="CylinderMesh" id=1] +material = SubResource( 5 ) +top_radius = 0.577 +bottom_radius = 0.577 +height = 0.5 +radial_segments = 6 +rings = 1 + +[sub_resource type="ConvexPolygonShape" id=2] +points = PoolVector3Array( 0.499697, 0.25, 0.2885, 0, 0.25, 0.577, 0.499697, -0.25, 0.2885, 0.499697, 0.25, -0.2885, 0, -0.25, 0.577, -0.499697, 0.25, 0.2885, 0.499697, -0.25, -0.2885, 0, 0.25, -0.577, -0.499697, -0.25, 0.2885, -0.499697, 0.25, -0.2885, 0, -0.25, -0.577, -0.499697, -0.25, -0.2885 ) + +[sub_resource type="SpatialMaterial" id=18] +albedo_color = Color( 0.470588, 0.470588, 0.470588, 1 ) + +[sub_resource type="CubeMesh" id=19] +material = SubResource( 18 ) +size = Vector3( 0.2, 0.2, 0.2 ) + +[sub_resource type="SpatialMaterial" id=6] +albedo_color = Color( 0.658824, 0.658824, 0.658824, 1 ) +metallic_specular = 0.0 + +[sub_resource type="QuadMesh" id=7] +material = SubResource( 6 ) +size = Vector2( 0.15, 0.9 ) + +[sub_resource type="SpatialMaterial" id=8] +albedo_color = Color( 0.47451, 0.47451, 0.47451, 1 ) +metallic_specular = 0.0 + +[sub_resource type="QuadMesh" id=9] +material = SubResource( 8 ) +size = Vector2( 0.15, 0.9 ) + +[sub_resource type="SpatialMaterial" id=10] +albedo_color = Color( 0.27451, 0.27451, 0.27451, 1 ) +metallic_specular = 0.0 + +[sub_resource type="QuadMesh" id=11] +material = SubResource( 10 ) +size = Vector2( 0.15, 0.9 ) + +[sub_resource type="SpatialMaterial" id=12] +albedo_color = Color( 0.988235, 0.780392, 0.156863, 1 ) + +[sub_resource type="CylinderMesh" id=13] +material = SubResource( 12 ) +top_radius = 0.07 +bottom_radius = 0.07 +height = 0.25 +radial_segments = 6 + +[sub_resource type="SpatialMaterial" id=14] +albedo_color = Color( 0.113725, 0.113725, 0.113725, 1 ) + +[sub_resource type="CylinderMesh" id=15] +material = SubResource( 14 ) +top_radius = 0.05 +bottom_radius = 0.05 +height = 0.1 +radial_segments = 6 + +[sub_resource type="SpatialMaterial" id=16] +albedo_color = Color( 0.682353, 0, 0, 1 ) + +[sub_resource type="PrismMesh" id=17] +material = SubResource( 16 ) +size = Vector3( 0.15, 0.15, 0.2 ) + +[sub_resource type="SpatialMaterial" id=20] +albedo_color = Color( 0.360784, 0.360784, 0.360784, 1 ) + +[sub_resource type="CubeMesh" id=21] +material = SubResource( 20 ) +size = Vector3( 0.5, 0.5, 0.5 ) + +[node name="HexSpace" type="StaticBody"] +script = ExtResource( 1 ) + +[node name="BaseMesh" type="MeshInstance" parent="."] +mesh = SubResource( 1 ) + +[node name="CollisionShape" type="CollisionShape" parent="."] +shape = SubResource( 2 ) + +[node name="Hills" type="Spatial" parent="."] +transform = Transform( 1.5, 0, 0, 0, 3, 0, 0, 0, 1.5, 0, 0, 0 ) +visible = false + +[node name="Hill1" type="MeshInstance" parent="Hills"] +transform = Transform( 0.572221, -0.735731, 0.362302, 0.453934, 0.652079, 0.607237, -0.683013, -0.183013, 0.707107, -0.136769, 0.00248935, -0.0678155 ) +mesh = SubResource( 19 ) + +[node name="Hill2" type="MeshInstance" parent="Hills"] +transform = Transform( 0.128026, -0.722156, 0.679779, 0.453934, 0.652079, 0.607237, -0.88179, 0.230833, 0.411294, 0.112486, -0.0176367, 0.0223942 ) +mesh = SubResource( 19 ) + +[node name="Hill3" type="MeshInstance" parent="Hills"] +transform = Transform( -0.672034, -0.196937, 0.713853, 0.453934, 0.652079, 0.607237, -0.585076, 0.732127, -0.348823, 0.0607607, -0.0176367, 0.146304 ) +mesh = SubResource( 19 ) + +[node name="Mtn4" type="MeshInstance" parent="Hills"] +transform = Transform( 0.0943905, -0.712853, 0.694933, 0.453934, 0.652079, 0.607237, -0.886021, 0.258136, 0.385138, 0.0280236, 0.0174877, -0.12019 ) +mesh = SubResource( 19 ) + +[node name="Mtn5" type="MeshInstance" parent="Hills"] +transform = Transform( -0.602414, -0.086159, 0.805447, 0.479476, 0.657607, 0.576965, -0.579378, 0.733764, -0.35484, 0.195652, -0.00499119, 0.0690676 ) +mesh = SubResource( 19 ) + +[node name="Mtn6" type="MeshInstance" parent="Hills"] +transform = Transform( 0.762554, -0.636833, 0.113821, 0.453934, 0.652079, 0.607237, -0.460929, -0.411384, 0.786325, -0.0791655, 0.0010101, 0.116248 ) +mesh = SubResource( 19 ) + +[node name="Airport" type="Spatial" parent="."] +visible = false + +[node name="MediumRunway" type="MeshInstance" parent="Airport"] +transform = Transform( 0.866025, 0.5, -6.55671e-08, 0, 1.31134e-07, 1, 0.5, -0.866025, 1.13566e-07, 0, 0.251, 0 ) +mesh = SubResource( 7 ) + +[node name="HardRunway" type="MeshInstance" parent="Airport"] +transform = Transform( -5.96046e-08, 1, -1.31134e-07, 0, 1.31134e-07, 1, 1, 5.96046e-08, -7.10543e-15, 0, 0.252, 0 ) +mesh = SubResource( 9 ) + +[node name="EasyRunway" type="MeshInstance" parent="Airport"] +transform = Transform( -0.866025, 0.5, -6.55671e-08, 0, 1.31134e-07, 1, 0.5, 0.866025, -1.13566e-07, 0, 0.253, 0 ) +mesh = SubResource( 11 ) + +[node name="ATCTowerBase" type="MeshInstance" parent="Airport"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0212696, 0.378614, 0.362361 ) +mesh = SubResource( 13 ) + +[node name="ATCTowerTop" type="MeshInstance" parent="Airport"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0212696, 0.547252, 0.362361 ) +mesh = SubResource( 15 ) + +[node name="MeshInstance" type="MeshInstance" parent="Airport"] +transform = Transform( 0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, 0.866025, 0.0160618, 0.319395, -0.39729 ) +mesh = SubResource( 17 ) + +[node name="AirportName" type="Label3D" parent="Airport"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.971102, 0 ) +visible = false +pixel_size = 0.001 +billboard = 1 +fixed_size = true +text = "AIRPORT NAME" +font = ExtResource( 2 ) + +[node name="AirportIcon" type="Sprite3D" parent="Airport"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.366498, 0.366924, 0.20708 ) +pixel_size = 0.0035 +billboard = 1 +transparent = false + +[node name="Mountain" type="Spatial" parent="."] +transform = Transform( 1, 0, 0, 0, 5, 0, 0, 0, 1, 0, -0.838121, 0 ) +visible = false + +[node name="Mtn1" type="MeshInstance" parent="Mountain"] +transform = Transform( 0.702638, 0.466574, 0.537224, -0.711548, 0.460731, 0.530496, 0, -0.755007, 0.655716, 0.15039, 0, 0.227606 ) +mesh = SubResource( 21 ) + +[node name="Mtn2" type="MeshInstance" parent="Mountain"] +transform = Transform( 0.663538, 0.192264, 0.723016, -0.711548, 0.460731, 0.530496, -0.23112, -0.866465, 0.442518, -0.128441, 0.0223821, 0.00454938 ) +mesh = SubResource( 21 ) + +[node name="Mtn3" type="MeshInstance" parent="Mountain"] +transform = Transform( -0.365966, -0.887525, 0.279942, -0.711548, 0.460731, 0.530496, -0.599807, -0.00504872, -0.800129, 0.0776231, -0.0221244, -0.135642 ) +mesh = SubResource( 21 ) diff --git a/objects/Plane.tscn b/objects/Plane.tscn new file mode 100644 index 0000000..21ce972 --- /dev/null +++ b/objects/Plane.tscn @@ -0,0 +1,136 @@ +[gd_scene load_steps=15 format=2] + +[ext_resource path="res://scripts/Plane.gd" type="Script" id=1] +[ext_resource path="res://resources/fonts/Cochineal-Bold.otf" type="DynamicFontData" id=2] +[ext_resource path="res://textures/plane_action_indicator_board.png" type="Texture" id=3] +[ext_resource path="res://textures/gradient_transparent.png" type="Texture" id=4] +[ext_resource path="res://resources/blank_plane_material.material" type="Material" id=5] + +[sub_resource type="CylinderMesh" id=1] +material = ExtResource( 5 ) +top_radius = 0.1 +bottom_radius = 0.1 +height = 0.4 + +[sub_resource type="PrismMesh" id=2] +left_to_right = 0.2 +size = Vector3( 0.18, 0.18, 0.18 ) + +[sub_resource type="CubeMesh" id=3] +size = Vector3( 0.1, 0.05, 0.6 ) + +[sub_resource type="CubeMesh" id=4] +size = Vector3( 0.1, 0.05, 0.3 ) + +[sub_resource type="CylinderShape" id=5] +height = 0.2 +radius = 0.35 + +[sub_resource type="DynamicFont" id=6] +size = 100 +outline_size = 2 +outline_color = Color( 0, 0, 0, 1 ) +font_data = ExtResource( 2 ) + +[sub_resource type="ViewportTexture" id=7] +viewport_path = NodePath("ActionIndicatorViewport") + +[sub_resource type="SpatialMaterial" id=8] +flags_transparent = true +flags_unshaded = true +params_cull_mode = 2 +albedo_color = Color( 0.945098, 1, 0, 0.439216 ) +albedo_texture = ExtResource( 4 ) +uv1_offset = Vector3( 0, 0.498, 0 ) + +[sub_resource type="CylinderMesh" id=9] +material = SubResource( 8 ) +top_radius = 0.4 +bottom_radius = 0.4 +height = 0.3 +radial_segments = 20 + +[node name="Plane" type="Area"] +script = ExtResource( 1 ) + +[node name="Fuselage" type="MeshInstance" parent="."] +transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) +mesh = SubResource( 1 ) + +[node name="Cone" type="MeshInstance" parent="."] +transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -0.287144, 0.0157076, 0 ) +mesh = SubResource( 2 ) + +[node name="Wings" type="MeshInstance" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0623346, 0.0405034, 0 ) +mesh = SubResource( 3 ) + +[node name="Tail" type="MeshInstance" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.19327, 0.0606151, 0 ) +mesh = SubResource( 4 ) + +[node name="CollisionShape" type="CollisionShape" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0276226, 0.0342902, 0 ) +shape = SubResource( 5 ) + +[node name="UnsetIndicator" type="Label3D" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.280024, 0 ) +visible = false +pixel_size = 0.001 +billboard = 1 +fixed_size = true +text = "!" +font = SubResource( 6 ) + +[node name="ActionIndicator" type="Sprite3D" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.00816703, 0 ) +visible = false +centered = false +pixel_size = 0.0015 +billboard = 1 +double_sided = false +no_depth_test = true +fixed_size = true +texture = SubResource( 7 ) + +[node name="SelectionIndicator" type="MeshInstance" parent="."] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.071805, 0 ) +visible = false +mesh = SubResource( 9 ) + +[node name="ActionIndicatorViewport" type="Viewport" parent="."] +size = Vector2( 320, 64 ) +transparent_bg = true +disable_3d = true +usage = 1 + +[node name="FlightInfo" type="Node2D" parent="ActionIndicatorViewport"] + +[node name="Background" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 192, 32 ) +z_index = -1 +texture = ExtResource( 3 ) + +[node name="Action1" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 95, 32 ) +scale = Vector2( 0.625, 0.625 ) + +[node name="Action2" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 144, 32 ) +scale = Vector2( 0.625, 0.625 ) + +[node name="Action3" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 193, 32 ) +scale = Vector2( 0.625, 0.625 ) + +[node name="Action4" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 242, 32 ) +scale = Vector2( 0.625, 0.625 ) + +[node name="Action5" type="Sprite" parent="ActionIndicatorViewport/FlightInfo"] +position = Vector2( 291, 32 ) +scale = Vector2( 0.625, 0.625 ) + +[connection signal="input_event" from="." to="." method="_on_Plane_input_event"] +[connection signal="mouse_entered" from="." to="." method="_on_Plane_mouse_entered"] +[connection signal="mouse_exited" from="." to="." method="_on_Plane_mouse_exited"] diff --git a/objects/PlaneControlBoard.tscn b/objects/PlaneControlBoard.tscn new file mode 100644 index 0000000..4c58d5d --- /dev/null +++ b/objects/PlaneControlBoard.tscn @@ -0,0 +1,292 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://resources/PlaneControlBoard.theme" type="Theme" id=1] +[ext_resource path="res://scripts/PlaneControlBoard.gd" type="Script" id=2] +[ext_resource path="res://textures/airport_indicator_2.png" type="Texture" id=3] +[ext_resource path="res://textures/airport_indicator_3.png" type="Texture" id=4] +[ext_resource path="res://textures/airport_indicator_1.png" type="Texture" id=5] + +[sub_resource type="GDScript" id=3] +resource_name = "action_func" +script/source = "extends VBoxContainer + +var move_first = true + +# 0 = nothing, 1 = forward, 2 = CCW, 3 = CW, 4 = ascend, 5 = descend +func get_action(): + var action = [$ActionOption.get_selected_id()] + if move_first: + action.push_front(1) + else: + action.push_back(1) + +func reset(): + $ActionOption.select(0) + $MoveFirstButton.text = \"\" + $MoveLastButton.text = \"\" + +func disable(): + $MoveFirstButton.disabled = true + $MoveLastButton.disabled = true + $ActionOption.disabled = true + +func enable(): + reset() + set_move_first() + $MoveFirstButton.disabled = false + $MoveLastButton.disabled = false + $ActionOption.disabled = false + +func set_move_first(first = true): + if first: + move_first = true + $MoveFirstButton.text = \">>\" + $MoveLastButton.text = \"\" + else: + move_first = false + $MoveFirstButton.text = \"\" + $MoveLastButton.text = \">>\" +" + +[node name="PlaneControlBoard" type="ColorRect"] +margin_right = 400.0 +margin_bottom = 250.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +color = Color( 0.988235, 0.984314, 0.972549, 1 ) +script = ExtResource( 2 ) + +[node name="DestinationHBOX" type="HBoxContainer" parent="."] +anchor_left = 0.05 +anchor_top = 0.3 +anchor_right = 0.941 +anchor_bottom = 0.3 +margin_left = -2.0 +margin_top = -70.0 +margin_right = -2.0 +margin_bottom = -6.0 + +[node name="Label" type="Label" parent="DestinationHBOX"] +margin_top = 24.0 +margin_right = 111.0 +margin_bottom = 40.0 +theme = ExtResource( 1 ) +custom_colors/font_color = Color( 0, 0, 0, 1 ) +text = "DESTINATION: " + +[node name="DestinationIcon" type="TextureRect" parent="DestinationHBOX"] +margin_left = 115.0 +margin_right = 179.0 +margin_bottom = 64.0 +texture = ExtResource( 5 ) + +[node name="AltitudeHBox" type="HBoxContainer" parent="."] +anchor_left = 0.05 +anchor_top = 0.3 +anchor_right = 0.941 +anchor_bottom = 0.3 + +[node name="Label" type="Label" parent="AltitudeHBox"] +margin_top = 24.0 +margin_right = 109.0 +margin_bottom = 40.0 +theme = ExtResource( 1 ) +custom_colors/font_color = Color( 0, 0, 0, 1 ) +text = "ALTITUDE: " + +[node name="Altitude1" type="TextureRect" parent="AltitudeHBox"] +margin_left = 113.0 +margin_right = 177.0 +margin_bottom = 64.0 +texture = ExtResource( 5 ) + +[node name="Altitude2" type="TextureRect" parent="AltitudeHBox"] +modulate = Color( 0.3, 0.3, 0.3, 1 ) +margin_left = 181.0 +margin_right = 245.0 +margin_bottom = 64.0 +texture = ExtResource( 3 ) + +[node name="Altitude3" type="TextureRect" parent="AltitudeHBox"] +modulate = Color( 0.3, 0.3, 0.3, 1 ) +margin_left = 249.0 +margin_right = 313.0 +margin_bottom = 64.0 +size_flags_horizontal = 0 +size_flags_vertical = 0 +texture = ExtResource( 4 ) + +[node name="ActionHBox" type="HBoxContainer" parent="."] +anchor_left = 0.05 +anchor_top = 0.647 +anchor_right = 0.95 +anchor_bottom = 0.9 + +[node name="ActionSquare1" type="VBoxContainer" parent="ActionHBox"] +margin_right = 50.0 +margin_bottom = 74.0 +script = SubResource( 3 ) + +[node name="MoveFirstButton" type="Button" parent="ActionHBox/ActionSquare1"] +margin_right = 50.0 +margin_bottom = 22.0 +theme = ExtResource( 1 ) +text = ">>" + +[node name="ActionOption" type="OptionButton" parent="ActionHBox/ActionSquare1"] +margin_top = 26.0 +margin_right = 50.0 +margin_bottom = 48.0 +rect_min_size = Vector2( 50, 0 ) +theme = ExtResource( 1 ) +items = [ "", null, false, 0, null, "←", null, false, 2, null, "→", null, false, 3, null, "↑", null, false, 4, null, "↓", null, false, 5, null ] +selected = 0 + +[node name="MoveLastButton" type="Button" parent="ActionHBox/ActionSquare1"] +margin_top = 52.0 +margin_right = 50.0 +margin_bottom = 74.0 +theme = ExtResource( 1 ) + +[node name="Spacer1" type="Control" parent="ActionHBox"] +margin_left = 54.0 +margin_right = 73.0 +margin_bottom = 74.0 +size_flags_horizontal = 3 + +[node name="ActionSquare2" type="VBoxContainer" parent="ActionHBox"] +margin_left = 77.0 +margin_right = 127.0 +margin_bottom = 74.0 +script = SubResource( 3 ) + +[node name="MoveFirstButton" type="Button" parent="ActionHBox/ActionSquare2"] +margin_right = 50.0 +margin_bottom = 22.0 +theme = ExtResource( 1 ) +text = ">>" + +[node name="ActionOption" type="OptionButton" parent="ActionHBox/ActionSquare2"] +margin_top = 26.0 +margin_right = 50.0 +margin_bottom = 48.0 +rect_min_size = Vector2( 50, 0 ) +theme = ExtResource( 1 ) +items = [ "", null, false, 0, null, "←", null, false, 2, null, "→", null, false, 3, null, "↑", null, false, 4, null, "↓", null, false, 5, null ] +selected = 0 + +[node name="MoveLastButton" type="Button" parent="ActionHBox/ActionSquare2"] +margin_top = 52.0 +margin_right = 50.0 +margin_bottom = 74.0 +theme = ExtResource( 1 ) + +[node name="Spacer2" type="Control" parent="ActionHBox"] +margin_left = 131.0 +margin_right = 151.0 +margin_bottom = 74.0 +size_flags_horizontal = 3 + +[node name="ActionSquare3" type="VBoxContainer" parent="ActionHBox"] +margin_left = 155.0 +margin_right = 205.0 +margin_bottom = 74.0 +script = SubResource( 3 ) + +[node name="MoveFirstButton" type="Button" parent="ActionHBox/ActionSquare3"] +margin_right = 50.0 +margin_bottom = 22.0 +theme = ExtResource( 1 ) +text = ">>" + +[node name="ActionOption" type="OptionButton" parent="ActionHBox/ActionSquare3"] +margin_top = 26.0 +margin_right = 50.0 +margin_bottom = 48.0 +rect_min_size = Vector2( 50, 0 ) +theme = ExtResource( 1 ) +items = [ "", null, false, 0, null, "←", null, false, 2, null, "→", null, false, 3, null, "↑", null, false, 4, null, "↓", null, false, 5, null ] +selected = 0 + +[node name="MoveLastButton" type="Button" parent="ActionHBox/ActionSquare3"] +margin_top = 52.0 +margin_right = 50.0 +margin_bottom = 74.0 +theme = ExtResource( 1 ) + +[node name="Spacer3" type="Control" parent="ActionHBox"] +margin_left = 209.0 +margin_right = 228.0 +margin_bottom = 74.0 +size_flags_horizontal = 3 + +[node name="ActionSquare4" type="VBoxContainer" parent="ActionHBox"] +margin_left = 232.0 +margin_right = 282.0 +margin_bottom = 74.0 +script = SubResource( 3 ) + +[node name="MoveFirstButton" type="Button" parent="ActionHBox/ActionSquare4"] +margin_right = 50.0 +margin_bottom = 22.0 +theme = ExtResource( 1 ) +text = ">>" + +[node name="ActionOption" type="OptionButton" parent="ActionHBox/ActionSquare4"] +margin_top = 26.0 +margin_right = 50.0 +margin_bottom = 48.0 +rect_min_size = Vector2( 50, 0 ) +theme = ExtResource( 1 ) +items = [ "", null, false, 0, null, "←", null, false, 2, null, "→", null, false, 3, null, "↑", null, false, 4, null, "↓", null, false, 5, null ] +selected = 0 + +[node name="MoveLastButton" type="Button" parent="ActionHBox/ActionSquare4"] +margin_top = 52.0 +margin_right = 50.0 +margin_bottom = 74.0 +theme = ExtResource( 1 ) + +[node name="Spacer4" type="Control" parent="ActionHBox"] +margin_left = 286.0 +margin_right = 306.0 +margin_bottom = 74.0 +size_flags_horizontal = 3 + +[node name="ActionSquare5" type="VBoxContainer" parent="ActionHBox"] +margin_left = 310.0 +margin_right = 360.0 +margin_bottom = 74.0 +script = SubResource( 3 ) + +[node name="MoveFirstButton" type="Button" parent="ActionHBox/ActionSquare5"] +margin_right = 50.0 +margin_bottom = 22.0 +theme = ExtResource( 1 ) +text = ">>" + +[node name="ActionOption" type="OptionButton" parent="ActionHBox/ActionSquare5"] +margin_top = 26.0 +margin_right = 50.0 +margin_bottom = 48.0 +rect_min_size = Vector2( 50, 0 ) +theme = ExtResource( 1 ) +items = [ "", null, false, 0, null, "←", null, false, 2, null, "→", null, false, 3, null, "↑", null, false, 4, null, "↓", null, false, 5, null ] +selected = 0 + +[node name="MoveLastButton" type="Button" parent="ActionHBox/ActionSquare5"] +margin_top = 52.0 +margin_right = 50.0 +margin_bottom = 74.0 +theme = ExtResource( 1 ) + +[connection signal="pressed" from="ActionHBox/ActionSquare1/MoveFirstButton" to="ActionHBox/ActionSquare1" method="set_move_first" binds= [ true ]] +[connection signal="pressed" from="ActionHBox/ActionSquare1/MoveLastButton" to="ActionHBox/ActionSquare1" method="set_move_first" binds= [ false ]] +[connection signal="pressed" from="ActionHBox/ActionSquare2/MoveFirstButton" to="ActionHBox/ActionSquare2" method="set_move_first" binds= [ true ]] +[connection signal="pressed" from="ActionHBox/ActionSquare2/MoveLastButton" to="ActionHBox/ActionSquare2" method="set_move_first" binds= [ false ]] +[connection signal="pressed" from="ActionHBox/ActionSquare3/MoveFirstButton" to="ActionHBox/ActionSquare3" method="set_move_first" binds= [ true ]] +[connection signal="pressed" from="ActionHBox/ActionSquare3/MoveLastButton" to="ActionHBox/ActionSquare3" method="set_move_first" binds= [ false ]] +[connection signal="pressed" from="ActionHBox/ActionSquare4/MoveFirstButton" to="ActionHBox/ActionSquare4" method="set_move_first" binds= [ true ]] +[connection signal="pressed" from="ActionHBox/ActionSquare4/MoveLastButton" to="ActionHBox/ActionSquare4" method="set_move_first" binds= [ false ]] +[connection signal="pressed" from="ActionHBox/ActionSquare5/MoveFirstButton" to="ActionHBox/ActionSquare5" method="set_move_first" binds= [ true ]] +[connection signal="pressed" from="ActionHBox/ActionSquare5/MoveLastButton" to="ActionHBox/ActionSquare5" method="set_move_first" binds= [ false ]] -- cgit v1.2.3