Compare commits

..

No commits in common. "main" and "v0.6.1" have entirely different histories.
main ... v0.6.1

43 changed files with 309 additions and 1055 deletions

1
.gitignore vendored
View file

@ -1,4 +1,5 @@
# Godot 4+ specific ignores
.godot/
/android/
/LoadedModContent/
export_presets.cfg

View file

@ -1,17 +1,18 @@
[gd_scene load_steps=26 format=3 uid="uid://oiehbor0dlqx"]
[gd_scene load_steps=27 format=3 uid="uid://oiehbor0dlqx"]
[ext_resource type="Script" uid="uid://dfiwoln8mdwm8" path="res://Scripts/EditorScreen.gd" id="1_sd512"]
[ext_resource type="Theme" uid="uid://dbgs4id7y5d1c" path="res://UI/Themes/EditorDark.tres" id="1_v0ton"]
[ext_resource type="Texture2D" uid="uid://xllpr3qc064c" path="res://UI/TransportControls/Play.png" id="3_g6u4d"]
[ext_resource type="Texture2D" uid="uid://dgacnkv2dc65s" path="res://UI/TransportControls/PlayBackwards.png" id="3_mr8sb"]
[ext_resource type="Texture2D" uid="uid://dts4eh6hyt8p3" path="res://UI/TransportControls/SkipBackwards.png" id="3_r4ytj"]
[ext_resource type="Texture2D" uid="uid://bwhgy4u37jmo1" path="res://UI/TransportControls/Pause.png" id="4_ba3jn"]
[ext_resource type="Theme" uid="uid://dbgs4id7y5d1c" path="res://UI/Themes/Dark.tres" id="1_v0ton"]
[ext_resource type="Texture2D" uid="uid://xllpr3qc064c" path="res://UI/Play.png" id="3_g6u4d"]
[ext_resource type="Texture2D" uid="uid://dgacnkv2dc65s" path="res://UI/PlayBackwards.png" id="3_mr8sb"]
[ext_resource type="Texture2D" uid="uid://dts4eh6hyt8p3" path="res://UI/SkipBackwards.png" id="3_r4ytj"]
[ext_resource type="Texture2D" uid="uid://bpb3xn54kpxoe" path="res://UI/icon-32px.png" id="4_20noo"]
[ext_resource type="Texture2D" uid="uid://bwhgy4u37jmo1" path="res://UI/Pause.png" id="4_ba3jn"]
[ext_resource type="Texture2D" uid="uid://s3yr2wasxv03" path="res://UI/BlankCam.png" id="4_v0ton"]
[ext_resource type="Texture2D" uid="uid://dhx2v2fd0egxd" path="res://UI/TransportControls/FastBackwards.png" id="4_wy7jo"]
[ext_resource type="Texture2D" uid="uid://cttgtbu1xllwq" path="res://UI/TransportControls/Stop.png" id="8_20noo"]
[ext_resource type="Texture2D" uid="uid://dsr03w7r667fw" path="res://UI/TransportControls/FastForward.png" id="8_v0ton"]
[ext_resource type="Texture2D" uid="uid://bphwtliq2ahus" path="res://UI/TransportControls/SkipForward.png" id="9_20noo"]
[ext_resource type="Texture2D" uid="uid://ckg2ihy105ttj" path="res://UI/TransportControls/Record.png" id="10_wy7jo"]
[ext_resource type="Texture2D" uid="uid://dhx2v2fd0egxd" path="res://UI/FastBackwards.png" id="4_wy7jo"]
[ext_resource type="Texture2D" uid="uid://cttgtbu1xllwq" path="res://UI/Stop.png" id="8_20noo"]
[ext_resource type="Texture2D" uid="uid://dsr03w7r667fw" path="res://UI/FastForward.png" id="8_v0ton"]
[ext_resource type="Texture2D" uid="uid://bphwtliq2ahus" path="res://UI/SkipForward.png" id="9_20noo"]
[ext_resource type="Texture2D" uid="uid://ckg2ihy105ttj" path="res://UI/Record.png" id="10_wy7jo"]
[ext_resource type="ButtonGroup" uid="uid://bij2tonqeslpt" path="res://Scenes/GUI/FlyoutButtonGroup.tres" id="13_wy7jo"]
[sub_resource type="ViewportTexture" id="ViewportTexture_g6u4d"]
@ -98,22 +99,6 @@ ok_button_text = "Proceed"
dialog_text = "You have unsaved data! Are you sure you want to proceed?"
cancel_button_text = "Do Not"
[node name="ExitMenuOverwriteConfirmationDialog" type="ConfirmationDialog" parent="."]
auto_translate_mode = 1
initial_position = 2
size = Vector2i(472, 100)
ok_button_text = "Proceed"
dialog_text = "You have unsaved data! Are you sure you want to proceed?"
cancel_button_text = "Do Not"
[node name="ExitDesktopOverwriteConfirmationDialog" type="ConfirmationDialog" parent="."]
auto_translate_mode = 1
initial_position = 2
size = Vector2i(472, 100)
ok_button_text = "Proceed"
dialog_text = "You have unsaved data! Are you sure you want to proceed?"
cancel_button_text = "Do Not"
[node name="FileDoesntExistDialog" type="AcceptDialog" parent="."]
initial_position = 2
dialog_text = "The specified file does not exist."
@ -141,10 +126,6 @@ dialog_text = "This showtape is not compatible with the currently selected stage
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
[node name="SubViewport" type="SubViewport" parent="."]
msaa_3d = 1
screen_space_aa = 1
use_debanding = true
use_occlusion_culling = true
mesh_lod_threshold = 0.0
size = Vector2i(1280, 720)
@ -157,7 +138,7 @@ grow_horizontal = 2
grow_vertical = 2
color = Color(0.187176, 0.187176, 0.187176, 1)
[node name="InstructionsLabel" type="Button" parent="."]
[node name="Label" type="Label" parent="."]
layout_mode = 1
anchors_preset = -1
anchor_right = 0.5
@ -168,20 +149,15 @@ offset_right = -8.0
offset_bottom = 48.0
grow_horizontal = 2
grow_vertical = 2
text = "Welcome to the Pneumatic Plaything Editor!
text = "Welcome to Pneumatic Plaything Animatronic Simulator!
You can use the menu button on the top bar to
create a new Showtape, load an existing Showtape,
or exit to the menu.
You can press the buttons to the side to
control the bots manually, adjust their flows,
change the camera angle, or switch their cosmetics.
The buttons on the side can be used to manually
control aspects of the show, such as flows, the
camera, and cosmetics.
Controls can be viewed from the main menu
Click on this message to dismiss it."
flat = true
Open the Controls menu to see all of the keybinds."
horizontal_alignment = 1
vertical_alignment = 1
[node name="CameraPlaceholder" type="TextureRect" parent="."]
layout_mode = 1
@ -229,7 +205,7 @@ offset_top = 4.0
offset_right = 260.0
offset_bottom = 36.0
selected = 1
item_count = 16
item_count = 6
popup/item_0/text = "Official Stages"
popup/item_0/id = 0
popup/item_0/separator = true
@ -237,68 +213,83 @@ popup/item_1/text = "Balcony Stage"
popup/item_1/id = 1
popup/item_2/text = "C-Stage"
popup/item_2/id = 2
popup/item_3/text = "Rocker Stage"
popup/item_3/id = 3
popup/item_4/text = "3-Stage"
popup/item_4/id = 4
popup/item_5/text = "Prototype Road Stage"
popup/item_5/id = 5
popup/item_6/text = "Road Stage"
popup/item_6/id = 6
popup/item_7/text = "2-Stage"
popup/item_7/id = 7
popup/item_8/text = "1-Stage"
popup/item_8/id = 8
popup/item_9/text = "Turntable 1-Stage"
popup/item_9/id = 9
popup/item_10/text = "Cyberamic 3-Stage"
popup/item_10/id = 10
popup/item_11/text = "CU-1 Stage"
popup/item_11/id = 11
popup/item_12/text = "Custom Stages"
popup/item_12/id = 12
popup/item_12/separator = true
popup/item_13/text = "Helen House"
popup/item_13/id = 13
popup/item_14/text = "Chuck E's Corner"
popup/item_14/id = 14
popup/item_15/text = "Modded Stages"
popup/item_15/id = 15
popup/item_15/separator = true
popup/item_3/text = "Custom Stages"
popup/item_3/id = 5
popup/item_3/separator = true
popup/item_4/text = "Helen House"
popup/item_4/id = 6
popup/item_5/text = "Chuck E's Corner"
popup/item_5/id = 7
[node name="MenuButton" type="MenuButton" parent="MenuBar"]
layout_mode = 0
offset_left = 264.0
offset_top = 4.0
offset_right = 392.0
offset_bottom = 36.0
text = "Showtape"
flat = false
item_count = 3
popup/item_0/text = "New"
popup/item_0/id = 0
popup/item_1/text = "Load"
popup/item_1/id = 1
popup/item_2/text = "Save"
popup/item_2/id = 2
[node name="ControlsButton" type="Button" parent="MenuBar"]
layout_mode = 0
offset_left = 396.0
offset_top = 4.0
offset_right = 524.0
offset_bottom = 36.0
text = "Controls"
[node name="CreditsButton" type="Button" parent="MenuBar"]
layout_mode = 0
offset_left = 528.0
offset_top = 4.0
offset_right = 656.0
offset_bottom = 36.0
text = "Credits"
[node name="Wordmark" type="Label" parent="MenuBar"]
layout_mode = 1
anchors_preset = -1
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -264.0
offset_top = -16.0
offset_right = -40.0
offset_bottom = 16.0
grow_horizontal = 0
grow_vertical = 2
text = "Pneumatic Plaything v0.6.1"
horizontal_alignment = 2
vertical_alignment = 1
[node name="EditingLabel" type="Label" parent="MenuBar"]
layout_mode = 0
offset_left = 268.0
offset_left = 660.0
offset_top = 4.0
offset_right = 524.0
offset_right = 899.0
offset_bottom = 36.0
text = "No showtape loaded."
vertical_alignment = 1
[node name="MenuButton" type="MenuButton" parent="MenuBar"]
[node name="TextureRect" type="TextureRect" parent="MenuBar"]
layout_mode = 1
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -132.0
offset_left = -36.0
offset_top = 4.0
offset_right = -4.0
offset_bottom = 36.0
grow_horizontal = 0
text = "Menu
"
flat = false
item_count = 5
popup/item_0/text = "New Showtape"
popup/item_0/id = 0
popup/item_1/text = "Load Show"
popup/item_1/id = 1
popup/item_2/text = "Save Show"
popup/item_2/id = 2
popup/item_3/text = "Exit to Main Menu"
popup/item_3/id = 3
popup/item_4/text = "Exit to Desktop"
popup/item_4/id = 4
texture = ExtResource("4_20noo")
[node name="SequencerPanel" type="Panel" parent="."]
layout_mode = 1
@ -639,6 +630,135 @@ offset_bottom = 388.0
max_value = 0.0
step = 1.0
[node name="ControlsScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="InputEater" type="Button" parent="ControlsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_wy7jo")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_v0ton")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_20noo")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_mch36")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_fxi2g")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_bdf35")
theme_override_styles/hover = SubResource("StyleBoxEmpty_j2w5p")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_bv2rw")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_gx718")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_gu086")
theme_override_styles/normal = SubResource("StyleBoxEmpty_othvt")
[node name="DialogPanel" type="Panel" parent="ControlsScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -256.0
offset_top = -192.0
offset_right = 256.0
offset_bottom = 192.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="ControlsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "Fullscreen camera view: ESC
Fullscreen program: F11 or Alt+Enter
Play/Pause: Space
Play Reverse: Shift + Space
Fast Forward: Shift + Right Arrow
Fast Reverse: Shift + Left
Step Forward: Right Arrow
Step Backward: Left Arrow
Stop: Home
Change Camera Angle: Tab"
horizontal_alignment = 1
vertical_alignment = 1
[node name="CreditsScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="InputEater" type="Button" parent="CreditsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_wy7jo")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_v0ton")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_20noo")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_mch36")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_fxi2g")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_bdf35")
theme_override_styles/hover = SubResource("StyleBoxEmpty_j2w5p")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_bv2rw")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_gx718")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_gu086")
theme_override_styles/normal = SubResource("StyleBoxEmpty_othvt")
[node name="DialogPanel" type="Panel" parent="CreditsScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -256.0
offset_top = -256.0
offset_right = 256.0
offset_bottom = 256.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="CreditsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
text = "Pneumatic Plaything Animatronic Simulator
Project Oversight: Persephone (KawaiiZenbo)
Interface Design: Persephone
Simulator Backend: Persephone
3-Stage Bot Models: Persephone
Cyberamic Bot Models: Persephone
C-Stage Model: Persephone
Iris Textures: Avery
Chuck E's Corner Stage: Luigigamin212
Balcony Stage Model: ToastHQ
This project is not associated with CEC Entertainment LLC.
or Creative Engineering Inc."
horizontal_alignment = 1
vertical_alignment = 1
[node name="ShowtapeNewScreen" type="Control" parent="."]
visible = false
layout_mode = 1
@ -995,10 +1115,9 @@ expand_mode = 2
[connection signal="confirmed" from="NewOverwriteConfirmationDialog" to="." method="_on_new_overwrite_confirmation_dialog_confirmed"]
[connection signal="confirmed" from="LoadOverwriteConfirmationDialog" to="." method="_on_load_overwrite_confirmation_dialog_confirmed"]
[connection signal="confirmed" from="StageChangeOverwriteConfirmationDialog" to="." method="_on_stage_change_overwrite_confirmation_dialog_confirmed"]
[connection signal="confirmed" from="ExitMenuOverwriteConfirmationDialog" to="." method="_on_exit_menu_overwrite_confirmation_dialog_confirmed"]
[connection signal="confirmed" from="ExitDesktopOverwriteConfirmationDialog" to="." method="_on_exit_desktop_overwrite_confirmation_dialog_2_confirmed"]
[connection signal="pressed" from="InstructionsLabel" to="." method="_on_instructions_label_pressed"]
[connection signal="item_selected" from="MenuBar/StageSelector" to="." method="_on_stage_selector_item_selected"]
[connection signal="pressed" from="MenuBar/ControlsButton" to="." method="_on_controls_button_pressed"]
[connection signal="pressed" from="MenuBar/CreditsButton" to="." method="_on_credits_button_pressed"]
[connection signal="pressed" from="SequencerPanel/TransportControls/Centered/StepBackwardsButton" to="." method="_on_step_backwards_button_pressed"]
[connection signal="pressed" from="SequencerPanel/TransportControls/Centered/FastBackwardsButton" to="." method="_on_fast_backwards_button_pressed"]
[connection signal="pressed" from="SequencerPanel/TransportControls/Centered/PlayBackwardsButton" to="." method="_on_play_backwards_button_pressed"]
@ -1016,6 +1135,8 @@ expand_mode = 2
[connection signal="value_changed" from="FlyoutPanel/Movements/VScrollBar" to="." method="_on_movement_v_scroll_bar_value_changed"]
[connection signal="value_changed" from="FlyoutPanel/FlowControls/VScrollBar" to="." method="_on_flow_v_scroll_bar_value_changed"]
[connection signal="value_changed" from="FlyoutPanel/Cosmetics/VScrollBar" to="." method="_on_cosmetics_v_scroll_bar_value_changed"]
[connection signal="pressed" from="ControlsScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="pressed" from="CreditsScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="pressed" from="ShowtapeNewScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="pressed" from="ShowtapeNewScreen/DialogPanel/AudioBrowseButton" to="." method="_on_showtape_new_audio_browse_button_pressed"]
[connection signal="pressed" from="ShowtapeNewScreen/DialogPanel/CancelButton" to="." method="_on_showtape_new_cancel_button_pressed"]

View file

@ -1,595 +0,0 @@
[gd_scene load_steps=19 format=3 uid="uid://1ikkb4b8mw1w"]
[ext_resource type="Theme" uid="uid://dbgs4id7y5d1c" path="res://UI/Themes/EditorDark.tres" id="1_dkd36"]
[ext_resource type="Script" uid="uid://b5nh5td5bdsfd" path="res://Scripts/MainMenu.gd" id="1_ocgay"]
[ext_resource type="Texture2D" uid="uid://dbh0vh85wks2l" path="res://UI/logo.png" id="2_6d82g"]
[ext_resource type="Texture2D" uid="uid://6mf6wucl3y6k" path="res://UI/MenuBG/BalconyBG.png" id="2_j6v32"]
[ext_resource type="Texture2D" uid="uid://dr6ir8mgbjrs7" path="res://UI/MenuBG/CStageBG.png" id="3_vaoig"]
[ext_resource type="Texture2D" uid="uid://dyyyg85g3jwip" path="res://UI/MenuBG/ProtoRoadBG.png" id="4_dkd36"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_dkd36"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ha2rd"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wdeli"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wyv1s"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_drn21"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_pcbci"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_he4sq"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_rsjs4"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_rj3vb"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_pocyv"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_8uhic"]
[sub_resource type="LabelSettings" id="LabelSettings_dkd36"]
font_size = 48
[node name="MainMenu" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme = ExtResource("1_dkd36")
script = ExtResource("1_ocgay")
[node name="PleaseRestart" type="AcceptDialog" parent="."]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Please restart the game for any changes to apply."
[node name="Backgrounds" type="Control" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="BalconyBG" type="TextureRect" parent="Backgrounds"]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_j6v32")
expand_mode = 1
[node name="CStageBG" type="TextureRect" parent="Backgrounds"]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("3_vaoig")
expand_mode = 1
[node name="ProtoRoadBG" type="TextureRect" parent="Backgrounds"]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("4_dkd36")
expand_mode = 1
[node name="TextureRect" type="TextureRect" parent="."]
layout_mode = 0
offset_left = 64.0
offset_top = 64.0
offset_right = 576.0
offset_bottom = 160.0
texture = ExtResource("2_6d82g")
[node name="Buttons" type="Panel" parent="."]
layout_mode = 1
anchors_preset = 2
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = 60.0
offset_top = -380.0
offset_right = 324.0
offset_bottom = -64.0
grow_vertical = 0
[node name="EditorButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 4.0
offset_right = 260.0
offset_bottom = 52.0
text = "Editor"
[node name="FreeRoamButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 56.0
offset_right = 260.0
offset_bottom = 104.0
text = "Free Roam
"
[node name="ModsButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 108.0
offset_right = 260.0
offset_bottom = 156.0
text = "Manage Mods"
[node name="ControlsButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 160.0
offset_right = 260.0
offset_bottom = 208.0
text = "Controls"
[node name="CreditsButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 212.0
offset_right = 260.0
offset_bottom = 260.0
text = "Credits"
[node name="ExitButton" type="Button" parent="Buttons"]
layout_mode = 0
offset_left = 4.0
offset_top = 264.0
offset_right = 260.0
offset_bottom = 312.0
text = "Exit to Desktop"
[node name="FreeRoamChooseScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ColorRect" type="ColorRect" parent="FreeRoamChooseScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.121569, 0.121569, 0.121569, 0.501961)
[node name="InputEater" type="Button" parent="FreeRoamChooseScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_dkd36")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_ha2rd")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_wdeli")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_wyv1s")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_drn21")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_pcbci")
theme_override_styles/hover = SubResource("StyleBoxEmpty_he4sq")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_rsjs4")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_rj3vb")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_pocyv")
theme_override_styles/normal = SubResource("StyleBoxEmpty_8uhic")
[node name="DialogPanel" type="Panel" parent="FreeRoamChooseScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 64.0
offset_right = -64.0
offset_bottom = -64.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="FreeRoamChooseScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = 112.0
grow_horizontal = 2
text = "Free Roam"
label_settings = SubResource("LabelSettings_dkd36")
horizontal_alignment = 1
vertical_alignment = 1
[node name="ModsScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ColorRect" type="ColorRect" parent="ModsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.121569, 0.121569, 0.121569, 0.501961)
[node name="InputEater" type="Button" parent="ModsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_dkd36")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_ha2rd")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_wdeli")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_wyv1s")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_drn21")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_pcbci")
theme_override_styles/hover = SubResource("StyleBoxEmpty_he4sq")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_rsjs4")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_rj3vb")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_pocyv")
theme_override_styles/normal = SubResource("StyleBoxEmpty_8uhic")
[node name="DialogPanel" type="Panel" parent="ModsScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 64.0
offset_right = -64.0
offset_bottom = -64.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = 112.0
grow_horizontal = 2
text = "Mods"
label_settings = SubResource("LabelSettings_dkd36")
horizontal_alignment = 1
vertical_alignment = 1
[node name="ModList" type="ItemList" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = 8.0
offset_top = 128.0
offset_right = -8.0
grow_horizontal = 2
grow_vertical = 2
[node name="ModNameText" type="Label" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = 8.0
offset_top = 8.0
offset_bottom = 40.0
text = "Select a mod to view its information"
vertical_alignment = 1
clip_text = true
text_overrun_behavior = 3
[node name="ModAuthorText" type="Label" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = 40.0
vertical_alignment = 1
clip_text = true
text_overrun_behavior = 3
[node name="ModVersionText" type="Label" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_top = 1.0
anchor_right = 0.25
anchor_bottom = 1.0
offset_left = 8.0
offset_top = -40.0
offset_bottom = -8.0
vertical_alignment = 1
clip_text = true
text_overrun_behavior = 3
[node name="ModDescriptionText" type="Label" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 8.0
offset_top = 48.0
offset_right = -8.0
offset_bottom = -48.0
grow_horizontal = 2
grow_vertical = 2
autowrap_mode = 2
clip_text = true
text_overrun_behavior = 3
[node name="OpenFolderButton" type="Button" parent="ModsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_left = 1.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -264.0
offset_top = -40.0
offset_right = -8.0
offset_bottom = -8.0
grow_horizontal = 0
grow_vertical = 0
text = "Open Mods Folder"
[node name="ControlsScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ColorRect" type="ColorRect" parent="ControlsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.121569, 0.121569, 0.121569, 0.501961)
[node name="InputEater" type="Button" parent="ControlsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_dkd36")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_ha2rd")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_wdeli")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_wyv1s")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_drn21")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_pcbci")
theme_override_styles/hover = SubResource("StyleBoxEmpty_he4sq")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_rsjs4")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_rj3vb")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_pocyv")
theme_override_styles/normal = SubResource("StyleBoxEmpty_8uhic")
[node name="DialogPanel" type="Panel" parent="ControlsScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 64.0
offset_right = -64.0
offset_bottom = -64.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="ControlsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = 112.0
grow_horizontal = 2
text = "Controls"
label_settings = SubResource("LabelSettings_dkd36")
horizontal_alignment = 1
vertical_alignment = 1
[node name="EditorLabel" type="Label" parent="ControlsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = 8.0
offset_top = 128.0
offset_bottom = -8.0
grow_horizontal = 2
grow_vertical = 2
text = "Global:
Fullscreen: F11 or Alt+Enter
In Editor:
Fullscreen camera view: ESC
Play/Pause: Space
Play Reverse: Shift + Space
Fast Forward: Shift + Right Arrow
Fast Reverse: Shift + Left
Step Forward: Right Arrow
Step Backward: Left Arrow
Stop: Home
Change Camera Angle: Tab"
[node name="FreeRoamLabel" type="Label" parent="ControlsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 128.0
offset_right = -8.0
offset_bottom = -8.0
grow_horizontal = 2
grow_vertical = 2
text = "
In Free Roam:
Move: W, A, S, D
Jump: Space
Open Menu: ESC"
[node name="CreditsScreen" type="Control" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="ColorRect" type="ColorRect" parent="CreditsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.121569, 0.121569, 0.121569, 0.501961)
[node name="InputEater" type="Button" parent="CreditsScreen"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/focus = SubResource("StyleBoxEmpty_dkd36")
theme_override_styles/disabled_mirrored = SubResource("StyleBoxEmpty_ha2rd")
theme_override_styles/disabled = SubResource("StyleBoxEmpty_wdeli")
theme_override_styles/hover_pressed_mirrored = SubResource("StyleBoxEmpty_wyv1s")
theme_override_styles/hover_pressed = SubResource("StyleBoxEmpty_drn21")
theme_override_styles/hover_mirrored = SubResource("StyleBoxEmpty_pcbci")
theme_override_styles/hover = SubResource("StyleBoxEmpty_he4sq")
theme_override_styles/pressed_mirrored = SubResource("StyleBoxEmpty_rsjs4")
theme_override_styles/pressed = SubResource("StyleBoxEmpty_rj3vb")
theme_override_styles/normal_mirrored = SubResource("StyleBoxEmpty_pocyv")
theme_override_styles/normal = SubResource("StyleBoxEmpty_8uhic")
[node name="DialogPanel" type="Panel" parent="CreditsScreen"]
layout_mode = 1
anchors_preset = -1
anchor_left = 0.5
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = 64.0
offset_right = -64.0
offset_bottom = -64.0
grow_horizontal = 2
grow_vertical = 2
[node name="Label" type="Label" parent="CreditsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = 112.0
grow_horizontal = 2
text = "Credits"
label_settings = SubResource("LabelSettings_dkd36")
horizontal_alignment = 1
vertical_alignment = 1
[node name="CreditsLabel" type="Label" parent="CreditsScreen/DialogPanel"]
layout_mode = 1
anchors_preset = -1
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 8.0
offset_top = 128.0
offset_right = -8.0
offset_bottom = -8.0
grow_horizontal = 2
grow_vertical = 2
text = "Pneumatic Plaything Animatronic Simulator
Project Oversight: Persephone (KawaiiZenbo)
Interface Design: Persephone
Simulator Backend: Persephone
3-Stage Bot Models: Persephone
Cyberamic Bot Models: Persephone
C-Stage Model: Persephone
Cyberamic Iris Textures: Avery
Chuck E's Corner Stage: Luigigamin212
Balcony Stage Model: ToastHQ
This project is not associated with CEC Entertainment LLC.
or Creative Engineering Inc."
horizontal_alignment = 1
[node name="VersionLabel" type="Label" parent="."]
layout_mode = 1
anchors_preset = -1
anchor_left = 1.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -264.0
offset_top = -40.0
offset_right = -8.0
offset_bottom = -8.0
grow_horizontal = 0
grow_vertical = 0
text = "Pneumatic Plaything vX.X"
horizontal_alignment = 2
vertical_alignment = 1
[connection signal="pressed" from="Buttons/EditorButton" to="." method="_on_button_pressed"]
[connection signal="pressed" from="Buttons/FreeRoamButton" to="." method="_on_free_roam_button_pressed"]
[connection signal="pressed" from="Buttons/ModsButton" to="." method="_on_mods_button_pressed"]
[connection signal="pressed" from="Buttons/ControlsButton" to="." method="_on_controls_button_pressed"]
[connection signal="pressed" from="Buttons/CreditsButton" to="." method="_on_credits_button_pressed"]
[connection signal="pressed" from="Buttons/ExitButton" to="." method="_on_exit_button_pressed"]
[connection signal="pressed" from="FreeRoamChooseScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="pressed" from="ModsScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="item_selected" from="ModsScreen/DialogPanel/ModList" to="." method="_on_mod_list_item_selected"]
[connection signal="pressed" from="ModsScreen/DialogPanel/OpenFolderButton" to="." method="_on_open_folder_button_pressed"]
[connection signal="pressed" from="ControlsScreen/InputEater" to="." method="_on_input_eater_pressed"]
[connection signal="pressed" from="CreditsScreen/InputEater" to="." method="_on_input_eater_pressed"]

View file

@ -35,7 +35,6 @@ transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
[node name="Angle 1" type="Camera3D" parent="."]
transform = Transform3D(-1, 1.31602e-08, -1.50421e-07, 0, 0.996195, 0.0871557, 1.50996e-07, 0.0871557, -0.996195, 0, 1.5, -3)
current = true
fov = 60.0
[node name="Angle 2" type="Camera3D" parent="."]

View file

@ -374,14 +374,3 @@ var Cyber3Stage = {
],
"cosmetic_defaults": [ 4, 4, 1, 1, 1, 2, 1, 2, 2, 2, 1, 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 3 ]
}
var stages_info = {
"Helen House": HelenHouse,
"Chuck E's Corner": ChuckEsCorner,
"Balcony Stage": BalconyStage,
"C-Stage": CStage,
"Prototype Road Stage": ProtoRoadStage,
"Cyberamic 3-Stage": Cyber3Stage,
}
var loaded_mods = { }

View file

@ -7,12 +7,22 @@ var playback_rate : int = 1
var transport_enabled : bool = false
var erase_validated : bool = false
var cam_index : int = 0
var fullscreen : bool = false
var showtape_loaded : bool = false
var show_name : String
var current_stage : String
var stages_info = {
"Helen House": Stages.HelenHouse,
"Chuck E's Corner": Stages.ChuckEsCorner,
"Balcony Stage": Stages.BalconyStage,
"C-Stage": Stages.CStage,
"Prototype Road Stage": Stages.ProtoRoadStage,
"Cyber 3-Stage": Stages.Cyber3Stage
}
signal step(amount: int)
signal start_recording()
signal end_recording()
@ -37,14 +47,14 @@ func reload_stage() -> void:
if ($SubViewport.get_child_count() > 0):
$SubViewport.get_child(0).queue_free()
cam_index = 0
var stage = load(Stages.stages_info[current_stage]["scene"]).instantiate()
var stage = load(stages_info[current_stage]["scene"]).instantiate()
$SubViewport.add_child(stage)
var cam_offset = 4
for i in range(1, Stages.stages_info[current_stage]["camera_count"]+1):
for i in range(1, stages_info[current_stage]["camera_count"]+1):
var camera_button = load("res://Scenes/GUI/Controls/CameraButton.tscn").instantiate()
camera_button.camera = "Angle " + str(i)
camera_button.base_scene_path = "../../../" + Stages.stages_info[current_stage]["scene_ref_base"]
camera_button.base_scene_path = "../../../" + stages_info[current_stage]["scene_ref_base"]
camera_button.position.y = cam_offset
cam_offset += 36
$FlyoutPanel/Camera.add_child(camera_button)
@ -52,13 +62,13 @@ func reload_stage() -> void:
var cosmetics_offset = 0
var cosmetics_count = 0
for cosmetic_subtable in Stages.stages_info[current_stage]["cosmetics"]:
for cosmetic_subtable in stages_info[current_stage]["cosmetics"]:
for cosmetic in cosmetic_subtable:
var cosmetic_adjustment = load("res://Scenes/GUI/Controls/CosmeticAdjustment.tscn").instantiate()
cosmetic_adjustment.vis_name = cosmetic
cosmetic_adjustment.options = cosmetic_subtable[cosmetic]
cosmetic_adjustment.scene_handle = "../../../../../" + Stages.stages_info[current_stage]["scene_ref_base"]
cosmetic_adjustment.drop_index = Stages.stages_info[current_stage]["cosmetic_defaults"][cosmetics_count]
cosmetic_adjustment.scene_handle = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
cosmetic_adjustment.drop_index = stages_info[current_stage]["cosmetic_defaults"][cosmetics_count]
cosmetic_adjustment.position.y = cosmetics_offset
cosmetics_offset += 44
cosmetics_count += 1
@ -68,12 +78,12 @@ func reload_stage() -> void:
var rows_offset = 0
var flows_offset = 0
var flow_count = 0
for bit_number in Stages.stages_info[current_stage]["bit_mapping"]:
var bot = Stages.stages_info[current_stage]["bit_mapping"][bit_number]["bot"]
var movement = Stages.stages_info[current_stage]["bit_mapping"][bit_number]["movement"]
for bit_number in stages_info[current_stage]["bit_mapping"]:
var bot = stages_info[current_stage]["bit_mapping"][bit_number]["bot"]
var movement = stages_info[current_stage]["bit_mapping"][bit_number]["movement"]
var in_flow = Stages.stages_info[current_stage]["bit_mapping"][bit_number]["flow_in"]
var out_flow = Stages.stages_info[current_stage]["bit_mapping"][bit_number]["flow_out"]
var in_flow = stages_info[current_stage]["bit_mapping"][bit_number]["flow_in"]
var out_flow = stages_info[current_stage]["bit_mapping"][bit_number]["flow_out"]
if (in_flow is not String):
var flow_control = load("res://Scenes/GUI/Controls/FlowControl.tscn").instantiate()
flow_control.position.y = flows_offset
@ -88,7 +98,7 @@ func reload_stage() -> void:
var row = load("res://Scenes/GUI/Controls/MovementRow.tscn").instantiate()
row.name = str(bit_number) + " Bit"
row.position.y = rows_offset
row.base_scene_path = "../../../../../" + Stages.stages_info[current_stage]["scene_ref_base"]
row.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
row.animatronic = bot
row.current_stage = current_stage
if (in_flow is String): row.flow_path = "None"
@ -98,7 +108,7 @@ func reload_stage() -> void:
var movement_button = load("res://Scenes/GUI/Controls/MovementButton.tscn").instantiate()
movement_button.position.y = rows_offset
movement_button.base_scene_path = "../../../../../" + Stages.stages_info[current_stage]["scene_ref_base"]
movement_button.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
movement_button.animatronic = bot
movement_button.movement_bit = bit_number
movement_button.current_stage = current_stage
@ -106,8 +116,8 @@ func reload_stage() -> void:
movement_button.movement_name = movement
$FlyoutPanel/Movements/InvisibleMask/MovementHandle.add_child(movement_button)
rows_offset += 44
$SequencerPanel/TimelinePanel/VScrollBar.max_value = Stages.stages_info[current_stage]["bits"] - 1
$FlyoutPanel/Movements/VScrollBar.max_value = Stages.stages_info[current_stage]["bits"] - 1
$SequencerPanel/TimelinePanel/VScrollBar.max_value = stages_info[current_stage]["bits"] - 1
$FlyoutPanel/Movements/VScrollBar.max_value = stages_info[current_stage]["bits"] - 1
$FlyoutPanel/FlowControls/VScrollBar.max_value = flow_count - 1
$CameraPreview.visible = true
@ -139,9 +149,7 @@ func _ready() -> void:
get_tree().get_root().size_changed.connect(_on_size_changed)
erase_all.connect(_erase_all)
$MenuBar/MenuButton.get_popup().id_pressed.connect(_showtape_menu_button_pressed)
for mod in Stages.loaded_mods:
for moddedStage in Stages.loaded_mods[mod]["implements_stages"]:
$MenuBar/StageSelector.add_item(moddedStage)
OS.request_permissions()
current_stage = $MenuBar/StageSelector.get_item_text($MenuBar/StageSelector.selected)
reload_stage()
@ -162,12 +170,6 @@ func _showtape_menu_button_pressed(id: int) -> void:
2: #save
if (showtape_loaded): $ShowtapeSaveScreen.visible = true
else: $NoShowtapeLoadedDialog.show()
3: # exit menu
if (showtape_loaded): $ExitMenuOverwriteConfirmationDialog.show()
else: get_tree().change_scene_to_file("res://Scenes/GUI/MainMenu.tscn")
4: # exit desktop
if (showtape_loaded): $ExitDesktopOverwriteConfirmationDialog.show()
else: get_tree().quit()
func _on_showtape_new_audio_browse_button_pressed() -> void:
@ -222,8 +224,8 @@ func _on_showtape_load_open_button_pressed() -> void:
$IncorrectShowtapeDialog.dialog_text = "This showtape is not the correct version!"
$IncorrectShowtapeDialog.show()
return
if (header[3] != Stages.stages_info[current_stage]["ust_type"]):
$IncorrectShowtapeDialog.dialog_text = "This showtape is not compatible with the currently selected stage.\nShowtape stage type: %s\n Current stage type: %s" % [ header[3], Stages.stages_info[current_stage]["ust_type"] ]
if (header[3] != stages_info[current_stage]["ust_type"]):
$IncorrectShowtapeDialog.dialog_text = "This showtape is not compatible with the currently selected stage.\nShowtape stage type: %s\n Current stage type: %s" % [ header[3], stages_info[current_stage]["ust_type"] ]
$IncorrectShowtapeDialog.show()
return
show_name = header[2]
@ -247,7 +249,7 @@ func _on_showtape_save_create_button_pressed() -> void:
if ($ShowtapeSaveScreen/DialogPanel/OutFilePath.text == ""):
$NoFileSpecified.show()
return
var header = "UST,2,"+show_name.replace(",", "_").replace(";", "_")+","+Stages.stages_info[current_stage]["ust_type"]+";"
var header = "UST,2,"+show_name.replace(",", "_").replace(";", "_")+","+stages_info[current_stage]["ust_type"]+";"
var data_out_string = save_data()
var file = FileAccess.open($ShowtapeSaveScreen/DialogPanel/OutFilePath.text, FileAccess.WRITE)
file.store_string(header+data_out_string+";"+Marshalls.raw_to_base64($AudioStreamPlayer.stream.data))
@ -263,32 +265,34 @@ func _on_save_showtape_file_dialog_file_selected(path: String) -> void:
$ShowtapeSaveScreen/DialogPanel/OutFilePath.text = path
func _input(event: InputEvent) -> void:
if event.is_action_pressed("editor_toggle_full_camera"):
if event.is_action_pressed("toggle_editor_screen"):
$CameraPreview.visible = !$CameraPreview.visible;
$CameraFullScreen.visible = !$CameraFullScreen.visible;
if event.is_action_pressed("fullscreen"):
if (!DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN):
if (!fullscreen):
fullscreen = true
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)
else:
fullscreen = false
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
if (event.is_action_pressed("editor_cycle_camera_angle")):
if (event.is_action_pressed("cycle_camera_angle")):
cam_index += 1
get_node(Stages.stages_info[current_stage]["scene_ref_base"] + "Angle " + str((cam_index % Stages.stages_info[current_stage]["camera_count"])+1)).current = true
get_node(stages_info[current_stage]["scene_ref_base"] + "Angle " + str((cam_index % stages_info[current_stage]["camera_count"])+1)).current = true
if (transport_enabled):
if event.is_action_pressed("editor_sequencer_play_pause"):
if event.is_action_pressed("sequencer_play_pause"):
if (playing): _on_pause_button_pressed()
else: _on_play_button_pressed()
elif event.is_action_pressed("editor_sequencer_play_reverse"):
elif event.is_action_pressed("sequencer_play_reverse"):
_on_play_backwards_button_pressed()
elif event.is_action_pressed("editor_sequencer_fast_reverse"):
elif event.is_action_pressed("sequencer_fast_reverse"):
_on_fast_backwards_button_pressed()
elif event.is_action_pressed("editor_sequencer_fast_forward"):
elif event.is_action_pressed("sequencer_fast_forward"):
_on_fast_forward_button_pressed()
elif event.is_action_pressed("editor_sequencer_step_backward"):
elif event.is_action_pressed("sequencer_step_backward"):
_on_step_backwards_button_pressed()
elif event.is_action_pressed("editor_sequencer_step_forward"):
elif event.is_action_pressed("sequencer_step_forward"):
_on_step_forward_button_pressed()
elif event.is_action_pressed("editor_sequencer_home"):
elif event.is_action_pressed("sequencer_home"):
_on_stop_button_pressed()
func _physics_process(_delta: float) -> void:
@ -330,6 +334,8 @@ func _on_credits_button_pressed() -> void:
$CreditsScreen.visible = true
func _on_input_eater_pressed() -> void:
$ControlsScreen.visible = false
$CreditsScreen.visible = false
$ShowtapeNewScreen.visible = false
$ShowtapeLoadScreen.visible = false
$ShowtapeSaveScreen.visible = false
@ -464,7 +470,7 @@ func plot_data(data: String):
if (frame_string == ""): continue
var check_frame_split = frame_string.split()
check_frame_split.reverse()
for i in Stages.stages_info[current_stage]["bit_mapping"]:
for i in stages_info[current_stage]["bit_mapping"]:
var er = false
if ((check_frame_split[(i - 1) / 4].hex_to_int() & int(pow(2, ((i - 1) % 4)))) == int(pow(2, ((i - 1) % 4)))):
er = true
@ -490,15 +496,3 @@ func index_s_get_safe(cindex: int, data: Dictionary) -> Array[bool]:
var out = data.get(cindex)
if (out == null): return [ false ]
return out
func _on_exit_menu_overwrite_confirmation_dialog_confirmed() -> void:
get_tree().change_scene_to_file("res://Scenes/GUI/MainMenu.tscn")
func _on_exit_desktop_overwrite_confirmation_dialog_2_confirmed() -> void:
get_tree().quit()
func _on_instructions_label_pressed() -> void:
$InstructionsLabel.visible = false

View file

@ -1,80 +0,0 @@
extends Control
func _ready():
OS.request_permissions()
randomize()
$VersionLabel.text = "Pneumatic Plaything v%s" % ProjectSettings.get_setting("application/config/version")
$Backgrounds.get_child(randi() % $Backgrounds.get_child_count()).visible = true
var moddir = DirAccess.open("user://Mods")
if moddir == null:
print("Mod folder was not found. Creating.")
var temp = DirAccess.open("user://")
temp.make_dir("Mods")
moddir = DirAccess.open("user://Mods")
moddir.list_dir_begin()
for file: String in moddir.get_files():
if (!file.ends_with(".pck")): return
ProjectSettings.load_resource_pack("user://Mods/%s" % file, false)
var dir = DirAccess.open("res://LoadedModContent/ModManifest")
if dir == null:
print("No mods were found.")
return
dir.list_dir_begin()
var tempLoadedList = []
for file: String in dir.get_files():
var modManifest = load(dir.get_current_dir() + "/" + file.trim_suffix(".remap")).new()
if (Stages.loaded_mods.get(modManifest.ModInfo["mod_name"]) != null):
if (tempLoadedList.find(modManifest.ModInfo["mod_name"]) == -1):
$ModsScreen/DialogPanel/ModList.add_item(modManifest.ModInfo["mod_name"], null, true)
return
Stages.loaded_mods[modManifest.ModInfo["mod_name"]] = modManifest.ModInfo
for stage in modManifest.ModInfo["implements_stages"]:
Stages.stages_info[stage] = modManifest.ModInfo["implements_stages"][stage]
$ModsScreen/DialogPanel/ModList.add_item(modManifest.ModInfo["mod_name"], null, true)
tempLoadedList.append(modManifest.ModInfo["mod_name"])
print("Loaded Mod \"%s\"" % modManifest.ModInfo["mod_name"])
func _on_button_pressed() -> void:
get_tree().change_scene_to_file("res://Scenes/GUI/EditorScreen.tscn")
func _on_exit_button_pressed() -> void:
get_tree().quit()
func _on_credits_button_pressed() -> void:
$CreditsScreen.visible = true
func _on_controls_button_pressed() -> void:
$ControlsScreen.visible = true
func _on_free_roam_button_pressed() -> void:
$FreeRoamChooseScreen.visible = true
func _on_mods_button_pressed() -> void:
$ModsScreen.visible = true
func _on_input_eater_pressed() -> void:
$CreditsScreen.visible = false
$ControlsScreen.visible = false
$FreeRoamChooseScreen.visible = false
$ModsScreen.visible = false
func _input(event: InputEvent) -> void:
if event.is_action_pressed("fullscreen"):
if (!DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_FULLSCREEN):
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)
else:
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
func _on_mod_list_item_selected(index: int) -> void:
var itext = $ModsScreen/DialogPanel/ModList.get_item_text(index)
$ModsScreen/DialogPanel/ModNameText.text = Stages.loaded_mods[itext]["mod_name"]
$ModsScreen/DialogPanel/ModAuthorText.text = "by %s" % Stages.loaded_mods[itext]["mod_creator"]
$ModsScreen/DialogPanel/ModVersionText.text = "Mod version %s" % Stages.loaded_mods[itext]["mod_version"]
$ModsScreen/DialogPanel/ModDescriptionText.text = Stages.loaded_mods[itext]["mod_description"]
func _on_open_folder_button_pressed() -> void:
OS.shell_open(ProjectSettings.globalize_path("user://Mods"))
$PleaseRestart.show()

View file

@ -1 +0,0 @@
uid://b5nh5td5bdsfd

View file

@ -17,11 +17,6 @@
- 1-Stage
- Turntable 1-Stage
- Cyberamic 3-Stage
- 3-Stage
- CU 1-Stage
- Great Transformation (as a mod)
## Planned
@ -33,6 +28,8 @@
### 3-Stage
- 3-Stage
- CU 1-Stage
- Hollywood 3-Stage

View file

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 362 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dhx2v2fd0egxd"
path="res://.godot/imported/FastBackwards.png-baafc41184f250c6fa4ffe3e374078aa.ctex"
path="res://.godot/imported/FastBackwards.png-f55ba91d8d237cb6919d5f2a056db594.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/FastBackwards.png"
dest_files=["res://.godot/imported/FastBackwards.png-baafc41184f250c6fa4ffe3e374078aa.ctex"]
source_file="res://UI/FastBackwards.png"
dest_files=["res://.godot/imported/FastBackwards.png-f55ba91d8d237cb6919d5f2a056db594.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 337 B

After

Width:  |  Height:  |  Size: 337 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dsr03w7r667fw"
path="res://.godot/imported/FastForward.png-fb55633376434284021e6fcb868d095e.ctex"
path="res://.godot/imported/FastForward.png-acbfeb2710bea5385ca8ad13fa6699e8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/FastForward.png"
dest_files=["res://.godot/imported/FastForward.png-fb55633376434284021e6fcb868d095e.ctex"]
source_file="res://UI/FastForward.png"
dest_files=["res://.godot/imported/FastForward.png-acbfeb2710bea5385ca8ad13fa6699e8.ctex"]
[params]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 465 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://6mf6wucl3y6k"
path="res://.godot/imported/BalconyBG.png-77fc3cb12985ad4aa4c7a07719c902d3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/MenuBG/BalconyBG.png"
dest_files=["res://.godot/imported/BalconyBG.png-77fc3cb12985ad4aa4c7a07719c902d3.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 718 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dr6ir8mgbjrs7"
path="res://.godot/imported/CStageBG.png-e353155e38aa74a5eeb8ad8bbf0ca97f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/MenuBG/CStageBG.png"
dest_files=["res://.godot/imported/CStageBG.png-e353155e38aa74a5eeb8ad8bbf0ca97f.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 607 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dyyyg85g3jwip"
path="res://.godot/imported/ProtoRoadBG.png-14030153324591d805d6a4c6283133d9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/MenuBG/ProtoRoadBG.png"
dest_files=["res://.godot/imported/ProtoRoadBG.png-14030153324591d805d6a4c6283133d9.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

View file

Before

Width:  |  Height:  |  Size: 138 B

After

Width:  |  Height:  |  Size: 138 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bwhgy4u37jmo1"
path="res://.godot/imported/Pause.png-6e00544a0fac9a91b2c20976bb7ce799.ctex"
path="res://.godot/imported/Pause.png-90c47ed988bd7d26b746eb81a6aaeedf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/Pause.png"
dest_files=["res://.godot/imported/Pause.png-6e00544a0fac9a91b2c20976bb7ce799.ctex"]
source_file="res://UI/Pause.png"
dest_files=["res://.godot/imported/Pause.png-90c47ed988bd7d26b746eb81a6aaeedf.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 346 B

After

Width:  |  Height:  |  Size: 346 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://xllpr3qc064c"
path="res://.godot/imported/Play.png-afe759610dc1045a62cd8cc2e725ba25.ctex"
path="res://.godot/imported/Play.png-eec0d54380d32c59b84e7db5fa226d5e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/Play.png"
dest_files=["res://.godot/imported/Play.png-afe759610dc1045a62cd8cc2e725ba25.ctex"]
source_file="res://UI/Play.png"
dest_files=["res://.godot/imported/Play.png-eec0d54380d32c59b84e7db5fa226d5e.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 353 B

After

Width:  |  Height:  |  Size: 353 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dgacnkv2dc65s"
path="res://.godot/imported/PlayBackwards.png-fa19f96c52d7ee8953d0dc88bd9de225.ctex"
path="res://.godot/imported/PlayBackwards.png-52f3d5b871717feab369f20308dd695c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/PlayBackwards.png"
dest_files=["res://.godot/imported/PlayBackwards.png-fa19f96c52d7ee8953d0dc88bd9de225.ctex"]
source_file="res://UI/PlayBackwards.png"
dest_files=["res://.godot/imported/PlayBackwards.png-52f3d5b871717feab369f20308dd695c.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 411 B

After

Width:  |  Height:  |  Size: 411 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ckg2ihy105ttj"
path="res://.godot/imported/Record.png-feac6691f8b44c91b371c385fd49720a.ctex"
path="res://.godot/imported/Record.png-52d5a1455899304e32054af5c940c434.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/Record.png"
dest_files=["res://.godot/imported/Record.png-feac6691f8b44c91b371c385fd49720a.ctex"]
source_file="res://UI/Record.png"
dest_files=["res://.godot/imported/Record.png-52d5a1455899304e32054af5c940c434.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 352 B

After

Width:  |  Height:  |  Size: 352 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dts4eh6hyt8p3"
path="res://.godot/imported/SkipBackwards.png-07ed2723ebfa991c5eb7dd5b04bbdcc5.ctex"
path="res://.godot/imported/SkipBackwards.png-dfebc48054bc60d9671fc8d69c696237.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/SkipBackwards.png"
dest_files=["res://.godot/imported/SkipBackwards.png-07ed2723ebfa991c5eb7dd5b04bbdcc5.ctex"]
source_file="res://UI/SkipBackwards.png"
dest_files=["res://.godot/imported/SkipBackwards.png-dfebc48054bc60d9671fc8d69c696237.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 331 B

After

Width:  |  Height:  |  Size: 331 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bphwtliq2ahus"
path="res://.godot/imported/SkipForward.png-d4be5716d356f8b0d5ac15243372a7e3.ctex"
path="res://.godot/imported/SkipForward.png-ca36b20fa5c982368f6b620245865f56.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/SkipForward.png"
dest_files=["res://.godot/imported/SkipForward.png-d4be5716d356f8b0d5ac15243372a7e3.ctex"]
source_file="res://UI/SkipForward.png"
dest_files=["res://.godot/imported/SkipForward.png-ca36b20fa5c982368f6b620245865f56.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 138 B

After

Width:  |  Height:  |  Size: 138 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://d007317123e27"
path="res://.godot/imported/SmallLock.png-c01b2981fa753e94bcf44ea7af0f5dc4.ctex"
path="res://.godot/imported/SmallLock.png-0c9e5ce04a7421f0922124b2fb1d8696.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/SmallLock.png"
dest_files=["res://.godot/imported/SmallLock.png-c01b2981fa753e94bcf44ea7af0f5dc4.ctex"]
source_file="res://UI/SmallLock.png"
dest_files=["res://.godot/imported/SmallLock.png-0c9e5ce04a7421f0922124b2fb1d8696.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 164 B

After

Width:  |  Height:  |  Size: 164 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cn5xdrxdv622h"
path="res://.godot/imported/SmallX.png-3e04f0094c67e8b6434dfe5dacc07c39.ctex"
path="res://.godot/imported/SmallX.png-fca237bd1b13d37241a1ac9e982c446b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/SmallX.png"
dest_files=["res://.godot/imported/SmallX.png-3e04f0094c67e8b6434dfe5dacc07c39.ctex"]
source_file="res://UI/SmallX.png"
dest_files=["res://.godot/imported/SmallX.png-fca237bd1b13d37241a1ac9e982c446b.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 132 B

After

Width:  |  Height:  |  Size: 132 B

Before After
Before After

View file

@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cttgtbu1xllwq"
path="res://.godot/imported/Stop.png-fb014661ae7c7c34a81ed967c5cf7ad4.ctex"
path="res://.godot/imported/Stop.png-28cf49bd72d354d073c38f19027d6ddb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/TransportControls/Stop.png"
dest_files=["res://.godot/imported/Stop.png-fb014661ae7c7c34a81ed967c5cf7ad4.ctex"]
source_file="res://UI/Stop.png"
dest_files=["res://.godot/imported/Stop.png-28cf49bd72d354d073c38f19027d6ddb.ctex"]
[params]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dbh0vh85wks2l"
path="res://.godot/imported/logo.png-51af639b546fa143c715ebb74d0509d5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/logo.png"
dest_files=["res://.godot/imported/logo.png-51af639b546fa143c715ebb74d0509d5.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dg456qc8q7g41"
path="res://.godot/imported/logo_prototype.png-b48e68e1e5cc609b09dc1f21c0861d46.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/logo_prototype.png"
dest_files=["res://.godot/imported/logo_prototype.png-b48e68e1e5cc609b09dc1f21c0861d46.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

View file

@ -12,8 +12,8 @@ config_version=5
config/name="Pneumatic Plaything"
config/description="Animatronic Simulator"
config/version="1.0"
run/main_scene="uid://1ikkb4b8mw1w"
config/version="v0.6.1"
run/main_scene="uid://oiehbor0dlqx"
config/features=PackedStringArray("4.4", "GL Compatibility")
boot_splash/show_image=false
config/icon="uid://den5alc77qk1s"
@ -338,55 +338,55 @@ ui_swap_input_direction={
"deadzone": 0.5,
"events": []
}
editor_toggle_full_camera={
toggle_editor_screen={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194305,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":6,"pressure":0.0,"pressed":true,"script":null)
]
}
editor_sequencer_play_pause={
sequencer_play_pause={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null)
]
}
editor_sequencer_play_reverse={
sequencer_play_reverse={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null)
]
}
editor_sequencer_fast_forward={
sequencer_fast_forward={
"deadzone": 0.2,
"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":5,"axis_value":1.0,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
editor_sequencer_fast_reverse={
sequencer_fast_reverse={
"deadzone": 0.2,
"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":4,"axis_value":1.0,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
editor_sequencer_step_forward={
sequencer_step_forward={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":10,"pressure":0.0,"pressed":true,"script":null)
]
}
editor_sequencer_step_backward={
sequencer_step_backward={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":9,"pressure":0.0,"pressed":true,"script":null)
]
}
editor_cycle_camera_angle={
cycle_camera_angle={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194306,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":3,"pressure":0.0,"pressed":false,"script":null)
]
}
editor_sequencer_home={
sequencer_home={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194317,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":2,"pressure":0.0,"pressed":false,"script":null)
@ -401,9 +401,8 @@ fullscreen={
[rendering]
renderer/rendering_method="gl_compatibility"
renderer/rendering_method.mobile="gl_compatibility"
textures/vram_compression/import_etc2_astc=true
anti_aliasing/quality/msaa_3d=1
limits/opengl/max_renderable_lights=128
limits/opengl/max_lights_per_object=128
anti_aliasing/quality/screen_space_aa=1
anti_aliasing/quality/use_debanding=true