diff --git a/demo/.godot/editor/editor_layout.cfg b/demo/.godot/editor/editor_layout.cfg index f9a50620..00c4be15 100644 --- a/demo/.godot/editor/editor_layout.cfg +++ b/demo/.godot/editor/editor_layout.cfg @@ -12,33 +12,33 @@ dock_floating={} dock_split_2=0 dock_split_3=0 dock_hsplit_1=0 -dock_hsplit_2=540 -dock_hsplit_3=-540 +dock_hsplit_2=401 +dock_hsplit_3=-270 dock_hsplit_4=0 dock_filesystem_split=0 dock_filesystem_display_mode=0 dock_filesystem_file_sort=0 dock_filesystem_file_list_display_mode=1 -dock_filesystem_selected_paths=PackedStringArray("res://addons/gut/fonts/AnonymousPro-Regular.ttf") -dock_filesystem_uncollapsed_paths=PackedStringArray("res://", "res://addons/", "res://addons/gut/", "res://addons/gut/fonts/") +dock_filesystem_selected_paths=PackedStringArray("res://high_level_2D/FmodNodesTest.tscn") +dock_filesystem_uncollapsed_paths=PackedStringArray("res://", "res://low_level_2D/", "res://high_level_3D/", "res://high_level_3D/player/", "res://high_level_2D/", "res://addons/", "res://addons/gut/fonts/") dock_3="Scene,Import" dock_4="FileSystem" dock_5="Inspector,Node,History" [EditorNode] -open_scenes=PackedStringArray("res://low_level/FmodScriptTest.tscn") -current_scene="res://low_level/FmodScriptTest.tscn" -center_split_offset=0 +open_scenes=PackedStringArray("res://low_level_2D/FmodScriptTest.tscn", "res://high_level_3D/World.tscn", "res://high_level_2D/FmodNodesTest.tscn") +current_scene="res://high_level_2D/FmodNodesTest.tscn" +center_split_offset=-360 selected_default_debugger_tab_idx=0 -selected_main_editor_idx=0 +selected_main_editor_idx=2 selected_bottom_panel_item=0 [ScriptEditor] -open_scripts=["res://low_level/FmodTest.gd"] -selected_script="res://low_level/FmodTest.gd" -open_help=[] +open_scripts=["res://high_level_3D/player/Camera.gd", "res://high_level_2D/Emitter.gd", "res://low_level_2D/Emitter.gd", "res://low_level_2D/FmodTest.gd", "res://high_level_3D/FPSCounter.gd", "res://high_level_3D/player/Player.gd", "res://high_level_3D/rollingball.gd", "res://high_level_3D/selfdestroy.gd", "res://high_level_3D/environment/sin_move.gd", "res://high_level_2D/sin_move.gd", "res://high_level_3D/environment/soundcollider.gd"] +selected_script="res://high_level_2D/sin_move.gd" +open_help=["FmodEventEmitter3D", "Node3D", "RigidBody3D", "Time", "Vector3"] script_split_offset=140 list_split_offset=0 @@ -47,3 +47,13 @@ list_split_offset=0 open_shaders=[] split_offset=0 selected_shader="" + +[editor_log] + +log_filter_0=true +log_filter_2=true +log_filter_1=true +log_filter_3=true +log_filter_4=true +collapse=false +show_search=true diff --git a/demo/.godot/editor/filesystem_cache8 b/demo/.godot/editor/filesystem_cache8 index 77b8cb69..043651e4 100644 --- a/demo/.godot/editor/filesystem_cache8 +++ b/demo/.godot/editor/filesystem_cache8 @@ -1,250 +1,268 @@ fc8a56933c4b1c8d796fdb8f7a9f9475 -::res://::1701885088 -.gutconfig.json::JSON::-1::1695548562::0::1::::<><>:: -.gut_editor_config.json::JSON::-1::1695548562::0::1::::<><>:: -appstore.png::CompressedTexture2D::5476228676956390533::1695548562::1701885074::1::::<><>:: -default_env.tres::Environment::-1::1695548563::0::1::::<><>:: -export_presets.cfg::TextFile::-1::1701525568::0::1::::<><>:: -icon.png::CompressedTexture2D::669717876360516596::1695548563::1701885073::1::::<><>:: -::res://addons/::1701852546 -::res://addons/fmod/::1701599554 -fmod.gdextension::GDExtension::-1::1701599554::0::1::::<><>:: -FmodEditorExportPluginProxy.gd::GDScript::-1::1695548562::0::1::::FmodEditorExportPluginProxy<>FmodEditorExportPlugin<>:: -FmodManager.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -FmodPlugin.gd::GDScript::-1::1701611514::0::1::::FmodPlugin<>EditorPlugin<>:: -plugin.cfg::TextFile::-1::1695548562::0::1::::<><>:: -::res://addons/fmod/icons/::1701885073 -bank_icon.svg::CompressedTexture2D::1038516917696115986::1701525568::1701885073::1::::<><>:: -bus_icon.svg::CompressedTexture2D::7845242995299859357::1701525568::1701885073::1::::<><>:: -c_parameter_icon.svg::CompressedTexture2D::5658609721524877954::1701525568::1701885073::1::::<><>:: -d_parameter_icon.svg::CompressedTexture2D::7607278222157620709::1701525568::1701885073::1::::<><>:: -event_icon.svg::CompressedTexture2D::5646458962748177733::1701525568::1701885073::1::::<><>:: -fmod_emitter.png::CompressedTexture2D::5795622517766064297::1701525568::1701885073::1::::<><>:: -fmod_icon.svg::CompressedTexture2D::3964631223776717267::1701525568::1701885073::1::::<><>:: -snapshot_icon.svg::CompressedTexture2D::4441875245663577586::1701525568::1701885073::1::::<><>:: -vca_icon.svg::CompressedTexture2D::6003809236383373252::1701525568::1701885073::1::::<><>:: -::res://addons/fmod/libs/::1701525568 -::res://addons/fmod/libs/android/::1701525568 -::res://addons/fmod/libs/android/arm64/::1701525568 -CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1701525568::0::1::::<><>:: -::res://addons/fmod/libs/iOS/::1701525568 -CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1701525568::0::1::::<><>:: -::res://addons/fmod/libs/linux/::1701525568 -CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1701525568::0::1::::<><>:: -::res://addons/fmod/libs/macos/::1701525568 -CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1701525568::0::1::::<><>:: -::res://addons/fmod/libs/macos/libGodotFmod.macos.template_debug.framework/::1701525568 -::res://addons/fmod/libs/windows/::1701885082 -CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1701525568::0::1::::<><>:: -::res://addons/fmod/tool/::1701525568 -::res://addons/fmod/tool/inspectors/::1701525568 -FmodBankLoaderPropertyInspectorPlugin.gd::GDScript::-1::1701525568::0::1::::FmodBankLoaderPropertyInspectorPlugin<>EditorInspectorPlugin<>:: -FmodEmitterPropertyInspectorPlugin.gd::GDScript::-1::1701611549::0::1::::FmodEmitterPropertyInspectorPlugin<>EditorInspectorPlugin<>:: -::res://addons/fmod/tool/property_editors/::1701525568 -FmodBankPathEditorProperty.gd::GDScript::-1::1701525568::0::1::::FmodBankPathEditorProperty<>EditorProperty<>:: -FmodBankPathsPropertyEditorUi.tscn::PackedScene::8516913634674404363::1701525568::0::1::::<><>::uid://bkqdeaojmbbaj::::res://addons/fmod/icons/bank_icon.svg -FmodEventEditorProperty.gd::GDScript::-1::1701525568::0::1::::FmodEventEditorProperty<>FmodPathEditorProperty<>:: -FmodEventEditorProperty.tscn::PackedScene::5801239393529713660::1701525568::0::1::::<><>::uid://cujo3xq0erren::::res://addons/fmod/tool/property_editors/FmodPathEditorProperty.tscn<>res://addons/fmod/tool/property_editors/FmodEventEditorProperty.gd -FmodGuidAndPathPropertyEditorUi.gd::GDScript::-1::1701525568::0::1::::FmodGuidAndPathPropertyEditorUi<>HBoxContainer<>:: -FmodGuidAndPathPropertyEditorUi.tscn::PackedScene::542436973564082228::1701525568::0::1::::<><>::res://addons/fmod/tool/property_editors/FmodGuidAndPathPropertyEditorUi.gd<>uid://dca7c6jnnpl0f::::res://addons/fmod/icons/event_icon.svg -FmodPathEditorProperty.gd::GDScript::-1::1701525568::0::1::::FmodPathEditorProperty<>EditorProperty<>:: -FmodPathEditorProperty.tscn::PackedScene::6196098913957298241::1701525568::0::1::::<><>::res://addons/fmod/tool/property_editors/FmodPathEditorProperty.gd<>uid://hy04frgfhtgu::::res://addons/fmod/tool/property_editors/FmodGuidAndPathPropertyEditorUi.tscn -::res://addons/fmod/tool/ui/::1701525568 -EventParametersDisplay.gd::GDScript::-1::1701525568::0::1::::EventParametersDisplay<>ScrollContainer<>:: -EventParametersDisplay.tscn::PackedScene::5856926348815139854::1701525568::0::1::::<><>::res://addons/fmod/tool/ui/EventParametersDisplay.gd -EventParametersWindow.tscn::PackedScene::1285012683313334604::1701525568::0::1::::<><>::uid://cppeyr1ke5wre::::res://addons/fmod/tool/ui/EventParametersDisplay.tscn -FmodBankExplorer.gd::GDScript::-1::1701525568::0::1::::FmodBankExplorer<>Window<>:: -FmodBankExplorer.tscn::PackedScene::949309473466276335::1701525568::0::1::::<><>::res://addons/fmod/tool/ui/FmodBankExplorer.gd<>uid://cppeyr1ke5wre::::res://addons/fmod/tool/ui/EventParametersDisplay.tscn -ParameterDisplay.gd::GDScript::-1::1701525568::0::1::::ParameterDisplay<>VBoxContainer<>:: -ParameterDisplay.tscn::PackedScene::2744232029172525152::1701525568::0::1::::<><>::res://addons/fmod/tool/ui/ParameterDisplay.gd -TestFmodBankExplorer.tscn::PackedScene::411348537671190282::1701525568::0::1::::<><>::uid://nr38urn226al::::res://addons/fmod/tool/ui/FmodBankExplorer.tscn -::res://addons/gut/::1701885073 -autofree.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -awaiter.gd::GDScript::-1::1701852546::0::1::::<>Node<>:: -collected_script.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -collected_test.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -comparator.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -compare_result.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -diff_formatter.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -diff_tool.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -doubler.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -double_tools.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -gut.gd::GDScript::-1::1701852546::0::1::::<>Node<>:: -GutScene.gd::GDScript::-1::1701852546::0::1::::<>Node2D<>:: -GutScene.tscn::PackedScene::900020720033095020::1701852546::0::1::::<><>::res://addons/gut/GutScene.gd<>uid://duxblir3vu8x7::::res://addons/gut/gui/NormalGui.tscn<>uid://cnqqdfsn80ise::::res://addons/gut/gui/MinGui.tscn -gut_cmdln.gd::GDScript::-1::1701852546::0::1::::<>SceneTree<>:: -gut_config.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -gut_plugin.gd::GDScript::-1::1701852546::0::1::::<>EditorPlugin<>:: -gut_to_move.gd::GDScript::-1::1701852546::0::1::::<>Node<>:: -hook_script.gd::GDScript::-1::1701852546::0::1::::GutHookScript<>RefCounted<>:: -icon.png::CompressedTexture2D::3890841352431263106::1701852546::1701885073::1::::<><>:: -inner_class_registry.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -input_factory.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -input_sender.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -junit_xml_export.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -LICENSE.md::TextFile::-1::1701852546::0::1::::<><>:: -logger.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -method_maker.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -one_to_many.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -optparse.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -orphan_counter.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -parameter_factory.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -parameter_handler.gd::GDScript::-1::1701852546::0::1::::<>RefCounted<>:: -plugin.cfg::TextFile::-1::1701852547::0::1::::<><>:: -printers.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -result_exporter.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -script_parser.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -signal_watcher.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -source_code_pro.fnt::FontFile::5125156706837925311::1701852547::1701885073::1::::<><>:: -spy.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -strutils.gd::GDScript::-1::1701852547::0::1::::GutStringUtils<>RefCounted<>:: -stubber.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -stub_params.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -summary.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -test.gd::GDScript::-1::1701852547::0::1::::GutTest<>Node<>:: -test_collector.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -thing_counter.gd::GDScript::-1::1701852547::0::1::::<>RefCounted<>:: -UserFileViewer.gd::GDScript::-1::1701852546::0::1::::<>Window<>:: -UserFileViewer.tscn::PackedScene::3676575661945431583::1701852546::0::1::::<><>::res://addons/gut/UserFileViewer.gd -utils.gd::GDScript::-1::1701852547::0::1::::GutUtils<>RefCounted<>:: -::res://addons/gut/double_templates/::1701852547 -function_template.txt::TextFile::-1::1701852547::0::1::::<><>:: -init_template.txt::TextFile::-1::1701852547::0::1::::<><>:: -script_template.txt::TextFile::-1::1701852547::0::1::::<><>:: -::res://addons/gut/fonts/::1701885073 -AnonymousPro-Bold.ttf::FontFile::7090493737101227053::1701852547::1701885073::1::::<><>:: -AnonymousPro-BoldItalic.ttf::FontFile::761724172175864::1701852547::1701885073::1::::<><>:: -AnonymousPro-Italic.ttf::FontFile::503495830806397342::1701852547::1701885073::1::::<><>:: -AnonymousPro-Regular.ttf::FontFile::6954778653853521719::1701852547::1701885073::1::::<><>:: -CourierPrime-Bold.ttf::FontFile::2896714378692211288::1701852547::1701885073::1::::<><>:: -CourierPrime-BoldItalic.ttf::FontFile::977220797652290018::1701852547::1701885073::1::::<><>:: -CourierPrime-Italic.ttf::FontFile::846855295635301556::1701852547::1701885073::1::::<><>:: -CourierPrime-Regular.ttf::FontFile::3314864826498090510::1701852547::1701885073::1::::<><>:: -LobsterTwo-Bold.ttf::FontFile::5632861098580159618::1701852547::1701885073::1::::<><>:: -LobsterTwo-BoldItalic.ttf::FontFile::3182965850633207044::1701852547::1701885073::1::::<><>:: -LobsterTwo-Italic.ttf::FontFile::7759867820021968437::1701852547::1701885073::1::::<><>:: -LobsterTwo-Regular.ttf::FontFile::2115948870915788183::1701852547::1701885073::1::::<><>:: -OFL.txt::TextFile::-1::1701852547::0::1::::<><>:: -::res://addons/gut/gui/::1701885073 -arrow.png::CompressedTexture2D::2222304255268796957::1701852548::1701885073::1::::<><>:: -BottomPanelShortcuts.gd::GDScript::-1::1701852547::0::1::::<>Window<>:: -BottomPanelShortcuts.tscn::PackedScene::3672212108687301338::1701852547::0::1::::<><>::uid://sfb1fw8j6ufu::::res://addons/gut/gui/ShortcutButton.tscn<>res://addons/gut/gui/BottomPanelShortcuts.gd -GutBottomPanel.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -GutBottomPanel.tscn::PackedScene::4354655867367614688::1701852548::0::1::::<><>::res://addons/gut/gui/GutBottomPanel.gd<>uid://bsk32dh41b4gs::::res://addons/gut/gui/BottomPanelShortcuts.tscn<>uid://0yunjxtaa8iw::::res://addons/gut/gui/RunAtCursor.tscn<>uid://cr6tvdv0ve6cv::::res://addons/gut/gui/play.png<>uid://4gyyn12um08h::::res://addons/gut/gui/RunResults.tscn<>uid://bqmo4dj64c7yl::::res://addons/gut/gui/OutputText.tscn -GutControl.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -GutControl.tscn::PackedScene::2054171664569605320::1701852548::0::1::::<><>::res://addons/gut/gui/GutControl.gd -GutRunner.gd::GDScript::-1::1701852548::0::1::::<>Node2D<>:: -GutRunner.tscn::PackedScene::3560702166169920196::1701852548::0::1::::<><>::res://addons/gut/gui/GutRunner.gd<>uid://m28heqtswbuq::::res://addons/gut/GutScene.tscn -GutSceneTheme.tres::Theme::6076084572326576944::1701852548::0::1::::<><>::uid://c6c7gnx36opr0::::res://addons/gut/fonts/AnonymousPro-Regular.ttf -gut_config_gui.gd::GDScript::-1::1701852548::0::1::::<>RefCounted<>:: -gut_gui.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -MinGui.tscn::PackedScene::5719303499070539904::1701852548::0::1::::<><>::uid://cstkhwkpajvqu::::res://addons/gut/gui/GutSceneTheme.tres<>uid://bnh0lslf4yh87::::res://addons/gut/fonts/CourierPrime-Regular.ttf<>res://addons/gut/gui/gut_gui.gd<>uid://bvrqqgjpyouse::::res://addons/gut/gui/ResizeHandle.tscn -NormalGui.tscn::PackedScene::8610600420658602210::1701852548::0::1::::<><>::uid://cstkhwkpajvqu::::res://addons/gut/gui/GutSceneTheme.tres<>res://addons/gut/gui/gut_gui.gd<>uid://bnh0lslf4yh87::::res://addons/gut/fonts/CourierPrime-Regular.ttf<>uid://bvrqqgjpyouse::::res://addons/gut/gui/ResizeHandle.tscn -OutputText.gd::GDScript::-1::1701852548::0::1::::<>VBoxContainer<>:: -OutputText.tscn::PackedScene::3535116713792967483::1701852548::0::1::::<><>::res://addons/gut/gui/OutputText.gd -play.png::CompressedTexture2D::6031238735318256293::1701852548::1701885073::1::::<><>:: -ResizeHandle.gd::GDScript::-1::1701852548::0::1::::<>ColorRect<>:: -ResizeHandle.tscn::PackedScene::3896481196255057096::1701852548::0::1::::<><>::res://addons/gut/gui/ResizeHandle.gd -ResultsTree.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -ResultsTree.tscn::PackedScene::7970351583819098362::1701852548::0::1::::<><>::res://addons/gut/gui/ResultsTree.gd -RunAtCursor.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -RunAtCursor.tscn::PackedScene::1805504221328301514::1701852548::0::1::::<><>::res://addons/gut/gui/RunAtCursor.gd<>uid://cr6tvdv0ve6cv::::res://addons/gut/gui/play.png<>uid://6wra5rxmfsrl::::res://addons/gut/gui/arrow.png -RunResults.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -RunResults.tscn::PackedScene::2049363523129861965::1701852548::0::1::::<><>::res://addons/gut/gui/RunResults.gd<>uid://dls5r5f6157nq::::res://addons/gut/gui/ResultsTree.tscn -script_text_editor_controls.gd::GDScript::-1::1701852548::0::1::::<>RefCounted<>:: -Settings.tscn::PackedScene::6291468949329504810::1701852548::0::1::::<><>:: -ShortcutButton.gd::GDScript::-1::1701852548::0::1::::<>Control<>:: -ShortcutButton.tscn::PackedScene::1273828520004261174::1701852548::0::1::::<><>::res://addons/gut/gui/ShortcutButton.gd -::res://addons/gut/images/::1701885073 -Folder.svg::CompressedTexture2D::7694651741458501535::1701852548::1701885073::1::::<><>:: -green.png::CompressedTexture2D::3896279560051998512::1701852548::1701885073::1::::<><>:: -red.png::CompressedTexture2D::2443263267725858415::1701852548::1701885073::1::::<><>:: -Script.svg::CompressedTexture2D::4817060143842260657::1701852548::1701885073::1::::<><>:: -yellow.png::CompressedTexture2D::1043265824178416429::1701852548::1701885073::1::::<><>:: -::res://android/::1701525568 -::res://android/plugins/::1701525568 -::res://assets/::1695548562 -::res://assets/Banks/::1695548562 -::res://assets/Music/::1701885073 -jingles_SAX07.ogg::AudioStreamOggVorbis::2130403441940005853::1695548562::1701885073::1::::<><>:: -License.txt::TextFile::-1::1695548562::0::1::::<><>:: -::res://assets/Sounds/::1701885073 -beltHandle1.ogg::AudioStreamOggVorbis::6092082587465549097::1695548562::1701885073::1::::<><>:: -beltHandle2.ogg::AudioStreamOggVorbis::6597744014577767141::1695548562::1701885073::1::::<><>:: -bookClose.ogg::AudioStreamOggVorbis::7384285556811369235::1695548562::1701885073::1::::<><>:: -bookFlip1.ogg::AudioStreamOggVorbis::3791833916520807099::1695548562::1701885073::1::::<><>:: -bookFlip2.ogg::AudioStreamOggVorbis::3907949926674338755::1695548562::1701885073::1::::<><>:: -bookFlip3.ogg::AudioStreamOggVorbis::5126021490362044186::1695548562::1701885073::1::::<><>:: -bookOpen.ogg::AudioStreamOggVorbis::934634474384947855::1695548562::1701885073::1::::<><>:: -bookPlace1.ogg::AudioStreamOggVorbis::6609751171184349789::1695548562::1701885073::1::::<><>:: -bookPlace2.ogg::AudioStreamOggVorbis::8415624492036081789::1695548562::1701885073::1::::<><>:: -bookPlace3.ogg::AudioStreamOggVorbis::7134625780549049659::1695548562::1701885073::1::::<><>:: -chop.ogg::AudioStreamOggVorbis::5826363998659718523::1695548562::1701885073::1::::<><>:: -cloth1.ogg::AudioStreamOggVorbis::2798027660658711102::1695548562::1701885073::1::::<><>:: -cloth2.ogg::AudioStreamOggVorbis::7969418091143216954::1695548562::1701885073::1::::<><>:: -cloth3.ogg::AudioStreamOggVorbis::3514332131815052961::1695548562::1701885073::1::::<><>:: -cloth4.ogg::AudioStreamOggVorbis::8443322956222476723::1695548562::1701885073::1::::<><>:: -clothBelt2.ogg::AudioStreamOggVorbis::8245993405394320945::1695548562::1701885073::1::::<><>:: -clothBelt.ogg::AudioStreamOggVorbis::1723446961484721767::1695548562::1701885073::1::::<><>:: -creak1.ogg::AudioStreamOggVorbis::6268446490004302329::1695548562::1701885073::1::::<><>:: -creak2.ogg::AudioStreamOggVorbis::4249305303148040343::1695548562::1701885073::1::::<><>:: -creak3.ogg::AudioStreamOggVorbis::2874677233520698076::1695548562::1701885073::1::::<><>:: -doorClose_1.ogg::AudioStreamOggVorbis::3375580751011414331::1695548562::1701885073::1::::<><>:: -doorClose_2.ogg::AudioStreamOggVorbis::3643377063351694335::1695548562::1701885073::1::::<><>:: -doorClose_3.ogg::AudioStreamOggVorbis::3073532036704592924::1695548562::1701885073::1::::<><>:: -doorClose_4.ogg::AudioStreamOggVorbis::2054960105926019946::1695548562::1701885073::1::::<><>:: -doorOpen_1.ogg::AudioStreamOggVorbis::3649985662915964668::1695548562::1701885073::1::::<><>:: -doorOpen_2.ogg::AudioStreamOggVorbis::5557882272695102232::1695548563::1701885073::1::::<><>:: -drawKnife1.ogg::AudioStreamOggVorbis::3354837507528042558::1695548563::1701885073::1::::<><>:: -drawKnife2.ogg::AudioStreamOggVorbis::7317558167132762144::1695548563::1701885073::1::::<><>:: -drawKnife3.ogg::AudioStreamOggVorbis::1204380789714511576::1695548563::1701885073::1::::<><>:: -dropLeather.ogg::AudioStreamOggVorbis::5988352931676640135::1695548563::1701885073::1::::<><>:: -footstep00.ogg::AudioStreamOggVorbis::1388958585202605431::1695548563::1701885073::1::::<><>:: -footstep01.ogg::AudioStreamOggVorbis::9157122961132159723::1695548563::1701885073::1::::<><>:: -footstep02.ogg::AudioStreamOggVorbis::8279970941643952499::1695548563::1701885073::1::::<><>:: -footstep03.ogg::AudioStreamOggVorbis::5932818475936630236::1695548563::1701885073::1::::<><>:: -footstep04.ogg::AudioStreamOggVorbis::668747893948909371::1695548563::1701885073::1::::<><>:: -footstep05.ogg::AudioStreamOggVorbis::6746680302677460704::1695548563::1701885073::1::::<><>:: -footstep06.ogg::AudioStreamOggVorbis::2413434960292038312::1695548563::1701885073::1::::<><>:: -footstep07.ogg::AudioStreamOggVorbis::9169778522581522658::1695548563::1701885073::1::::<><>:: -footstep08.ogg::AudioStreamOggVorbis::3060365175944862712::1695548563::1701885073::1::::<><>:: -footstep09.ogg::AudioStreamOggVorbis::5310832160033286617::1695548563::1701885073::1::::<><>:: -handleCoins2.ogg::AudioStreamOggVorbis::711194280682736598::1695548563::1701885073::1::::<><>:: -handleCoins.ogg::AudioStreamOggVorbis::8434381163512709137::1695548563::1701885073::1::::<><>:: -handleSmallLeather2.ogg::AudioStreamOggVorbis::2585130399897880180::1695548563::1701885073::1::::<><>:: -handleSmallLeather.ogg::AudioStreamOggVorbis::1272731209494355841::1695548563::1701885073::1::::<><>:: -knifeSlice2.ogg::AudioStreamOggVorbis::2423193153137582499::1695548563::1701885073::1::::<><>:: -knifeSlice.ogg::AudioStreamOggVorbis::8997072192502399214::1695548563::1701885073::1::::<><>:: -licence.txt::TextFile::-1::1695548563::0::1::::<><>:: -metalClick.ogg::AudioStreamOggVorbis::7475538111158933785::1695548563::1701885073::1::::<><>:: -metalLatch.ogg::AudioStreamOggVorbis::6487610088357999992::1695548563::1701885073::1::::<><>:: -metalPot1.ogg::AudioStreamOggVorbis::7063868056879145343::1695548563::1701885073::1::::<><>:: -metalPot2.ogg::AudioStreamOggVorbis::656774085546589152::1695548563::1701885073::1::::<><>:: -metalPot3.ogg::AudioStreamOggVorbis::7365261732977514080::1695548563::1701885073::1::::<><>:: -::res://high_level/::1701525568 -ChangeColor.gd::GDScript::-1::1695548563::0::1::::<>Area2D<>:: -Emitter.gd::GDScript::-1::1701525568::0::1::::<>FmodEventEmitter2D<>:: -FmodNodesTest.tscn::PackedScene::7995747544492451807::1701525568::0::1::::<><>::res://high_level/Emitter.gd<>uid://dichdnwxg2opa::::res://icon.png<>res://high_level/Kinematic.gd<>res://high_level/ChangeColor.gd<>res://low_level/EnterAndLeave.gd<>res://low_level/EnterandLeave2.gd -Kinematic.gd::GDScript::-1::1695548563::0::1::::<>CharacterBody2D<>:: -::res://low_level/::1701885076 -ChangeColor.gd::GDScript::-1::1695548563::0::1::::<>Area2D<>:: -Emitter.gd::GDScript::-1::1695548563::0::1::::<>Sprite2D<>:: -EnterandLeave2.gd::GDScript::-1::1695548563::0::1::::<>Area2D<>:: -EnterAndLeave.gd::GDScript::-1::1695548563::0::1::::<>Area2D<>:: -FmodScriptTest.tscn::PackedScene::6105177409443340932::1701885076::0::1::::<><>::res://low_level/FmodTest.gd<>uid://jsofj31xeeto::::res://icon.png<>res://low_level/Emitter.gd<>res://low_level/Listener.gd<>res://low_level/EnterAndLeave.gd<>res://low_level/ChangeColor.gd<>res://low_level/EnterandLeave2.gd -FmodTest.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -Listener2.gd::GDScript::-1::1695548563::0::1::::<>Node2D<>:: -Listener.gd::GDScript::-1::1695548563::0::1::::<>CharacterBody2D<>:: -::res://test/::1701882273 -tests.tscn::PackedScene::6944549695116706567::1701882273::0::1::::<><>:: -::res://test/integration/::1695548563 -::res://test/unit/::1701525568 -test_bank.gd::GDScript::-1::1695548563::0::1::::<>Node<>:: -test_bus.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -test_callbacks.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -test_desc_event.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -test_event.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -test_global.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: -test_listener.gd::GDScript::-1::1695548563::0::1::::<>Node<>:: -test_sound.gd::GDScript::-1::1695548563::0::1::::<>Node<>:: -test_vca.gd::GDScript::-1::1701525568::0::1::::<>Node<>:: +::res://::1707637937 +.gutconfig.json::JSON::-1::1706805099::0::1::::<><>:: +.gut_editor_config.json::JSON::-1::1702212007::0::1::::<><>:: +appstore.png::CompressedTexture2D::1585621492633356078::1702212007::1702212060::1::::<><>:: +default_env.tres::Environment::-1::1702212007::0::1::::<><>:: +export_presets.cfg::TextFile::-1::1706805093::0::1::::<><>:: +icon.png::CompressedTexture2D::9197489902250349573::1702212007::1702212060::1::::<><>:: +::res://addons/::1702212007 +::res://addons/fmod/::1706805099 +fmod.gdextension::GDExtension::-1::1706805099::0::1::::<><>:: +FmodEditorExportPluginProxy.gd::GDScript::-1::1702212007::0::1::::FmodEditorExportPluginProxy<>FmodEditorExportPlugin<>:: +FmodManager.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +FmodPlugin.gd::GDScript::-1::1706805099::0::1::::FmodPlugin<>EditorPlugin<>:: +plugin.cfg::TextFile::-1::1702212007::0::1::::<><>:: +::res://addons/fmod/icons/::1706805129 +bank_icon.svg::CompressedTexture2D::1038516917696115986::1702212007::1706805129::1::::<><>:: +bus_icon.svg::CompressedTexture2D::7845242995299859357::1702212007::1706805129::1::::<><>:: +c_parameter_icon.svg::CompressedTexture2D::5658609721524877954::1702212007::1706805129::1::::<><>:: +d_parameter_icon.svg::CompressedTexture2D::7607278222157620709::1702212007::1706805129::1::::<><>:: +event_icon.svg::CompressedTexture2D::5646458962748177733::1702212007::1706805129::1::::<><>:: +fmod_emitter.png::CompressedTexture2D::5795622517766064297::1702212007::1702357929::1::::<><>:: +fmod_icon.svg::CompressedTexture2D::3964631223776717267::1702212007::1706805129::1::::<><>:: +snapshot_icon.svg::CompressedTexture2D::4441875245663577586::1702212007::1706805129::1::::<><>:: +vca_icon.svg::CompressedTexture2D::6003809236383373252::1702212007::1706805129::1::::<><>:: +::res://addons/fmod/libs/::1702212007 +::res://addons/fmod/libs/android/::1702212007 +::res://addons/fmod/libs/android/arm64/::1702357929 +CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1702357929::0::1::::<><>:: +::res://addons/fmod/libs/iOS/::1702357929 +CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1702357929::0::1::::<><>:: +::res://addons/fmod/libs/linux/::1702357929 +CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1702357929::0::1::::<><>:: +::res://addons/fmod/libs/macos/::1702357929 +CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1702357929::0::1::::<><>:: +::res://addons/fmod/libs/macos/libGodotFmod.macos.template_debug.framework/::1702357929 +::res://addons/fmod/libs/windows/::1707637933 +CopyPast_Fmod_Libs_Here.txt::TextFile::-1::1702357929::0::1::::<><>:: +::res://addons/fmod/tool/::1702212007 +::res://addons/fmod/tool/inspectors/::1702212007 +FmodBankLoaderPropertyInspectorPlugin.gd::GDScript::-1::1702212007::0::1::::FmodBankLoaderPropertyInspectorPlugin<>EditorInspectorPlugin<>:: +FmodEmitterPropertyInspectorPlugin.gd::GDScript::-1::1702212007::0::1::::FmodEmitterPropertyInspectorPlugin<>EditorInspectorPlugin<>:: +::res://addons/fmod/tool/property_editors/::1702212007 +FmodBankPathEditorProperty.gd::GDScript::-1::1702212007::0::1::::FmodBankPathEditorProperty<>EditorProperty<>:: +FmodBankPathsPropertyEditorUi.tscn::PackedScene::8516913634674404363::1702212007::0::1::::<><>::uid://bkqdeaojmbbaj::::res://addons/fmod/icons/bank_icon.svg +FmodEventEditorProperty.gd::GDScript::-1::1702212007::0::1::::FmodEventEditorProperty<>FmodPathEditorProperty<>:: +FmodEventEditorProperty.tscn::PackedScene::5801239393529713660::1702212007::0::1::::<><>::uid://cujo3xq0erren::::res://addons/fmod/tool/property_editors/FmodPathEditorProperty.tscn<>res://addons/fmod/tool/property_editors/FmodEventEditorProperty.gd +FmodGuidAndPathPropertyEditorUi.gd::GDScript::-1::1702212007::0::1::::FmodGuidAndPathPropertyEditorUi<>HBoxContainer<>:: +FmodGuidAndPathPropertyEditorUi.tscn::PackedScene::542436973564082228::1702212007::0::1::::<><>::res://addons/fmod/tool/property_editors/FmodGuidAndPathPropertyEditorUi.gd<>uid://dca7c6jnnpl0f::::res://addons/fmod/icons/event_icon.svg +FmodPathEditorProperty.gd::GDScript::-1::1702212007::0::1::::FmodPathEditorProperty<>EditorProperty<>:: +FmodPathEditorProperty.tscn::PackedScene::6196098913957298241::1702212007::0::1::::<><>::res://addons/fmod/tool/property_editors/FmodPathEditorProperty.gd<>uid://hy04frgfhtgu::::res://addons/fmod/tool/property_editors/FmodGuidAndPathPropertyEditorUi.tscn +::res://addons/fmod/tool/ui/::1702212007 +EventParametersDisplay.gd::GDScript::-1::1702212007::0::1::::EventParametersDisplay<>ScrollContainer<>:: +EventParametersDisplay.tscn::PackedScene::5856926348815139854::1702212007::0::1::::<><>::res://addons/fmod/tool/ui/EventParametersDisplay.gd +EventParametersWindow.tscn::PackedScene::1285012683313334604::1702212007::0::1::::<><>::uid://cppeyr1ke5wre::::res://addons/fmod/tool/ui/EventParametersDisplay.tscn +FmodBankExplorer.gd::GDScript::-1::1702212007::0::1::::FmodBankExplorer<>Window<>:: +FmodBankExplorer.tscn::PackedScene::949309473466276335::1702212007::0::1::::<><>::res://addons/fmod/tool/ui/FmodBankExplorer.gd<>uid://cppeyr1ke5wre::::res://addons/fmod/tool/ui/EventParametersDisplay.tscn +ParameterDisplay.gd::GDScript::-1::1702212007::0::1::::ParameterDisplay<>VBoxContainer<>:: +ParameterDisplay.tscn::PackedScene::2744232029172525152::1702212007::0::1::::<><>::res://addons/fmod/tool/ui/ParameterDisplay.gd +TestFmodBankExplorer.tscn::PackedScene::411348537671190282::1702212007::0::1::::<><>::uid://nr38urn226al::::res://addons/fmod/tool/ui/FmodBankExplorer.tscn +::res://addons/gut/::1706805099 +autofree.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +awaiter.gd::GDScript::-1::1706805099::0::1::::<>Node<>:: +collected_script.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +collected_test.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +comparator.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +compare_result.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +diff_formatter.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +diff_tool.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +doubler.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +double_tools.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +gut.gd::GDScript::-1::1706805099::0::1::::<>Node<>:: +GutScene.gd::GDScript::-1::1706805099::0::1::::<>Node2D<>:: +GutScene.tscn::PackedScene::900020720033095020::1702212007::0::1::::<><>::res://addons/gut/GutScene.gd<>uid://duxblir3vu8x7::::res://addons/gut/gui/NormalGui.tscn<>uid://cnqqdfsn80ise::::res://addons/gut/gui/MinGui.tscn +gut_cmdln.gd::GDScript::-1::1706805099::0::1::::<>SceneTree<>:: +gut_config.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +gut_plugin.gd::GDScript::-1::1702212007::0::1::::<>EditorPlugin<>:: +gut_to_move.gd::GDScript::-1::1706805099::0::1::::<>Node<>:: +hook_script.gd::GDScript::-1::1702212007::0::1::::GutHookScript<>RefCounted<>:: +icon.png::CompressedTexture2D::4148824126959631941::1702212007::1702212060::1::::<><>:: +inner_class_registry.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +input_factory.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +input_sender.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +junit_xml_export.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +LICENSE.md::TextFile::-1::1702212007::0::1::::<><>:: +logger.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +method_maker.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +one_to_many.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +optparse.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +orphan_counter.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +parameter_factory.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +parameter_handler.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +plugin.cfg::TextFile::-1::1706805099::0::1::::<><>:: +printers.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +result_exporter.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +script_parser.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +signal_watcher.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +source_code_pro.fnt::FontFile::4809323826544945504::1702212007::1702212060::1::::<><>:: +spy.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +strutils.gd::GDScript::-1::1706805099::0::1::::GutStringUtils<>RefCounted<>:: +stubber.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +stub_params.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +summary.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +test.gd::GDScript::-1::1706805099::0::1::::GutTest<>Node<>:: +test_collector.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +thing_counter.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +UserFileViewer.gd::GDScript::-1::1702212007::0::1::::<>Window<>:: +UserFileViewer.tscn::PackedScene::3676575661945431583::1702212007::0::1::::<><>::res://addons/gut/UserFileViewer.gd +utils.gd::GDScript::-1::1706805099::0::1::::GutUtils<>RefCounted<>:: +::res://addons/gut/double_templates/::1706805099 +function_template.txt::TextFile::-1::1706805099::0::1::::<><>:: +init_template.txt::TextFile::-1::1702212007::0::1::::<><>:: +script_template.txt::TextFile::-1::1706805099::0::1::::<><>:: +::res://addons/gut/fonts/::1702212060 +AnonymousPro-Bold.ttf::FontFile::5710237891551171712::1702212007::1702212060::1::::<><>:: +AnonymousPro-BoldItalic.ttf::FontFile::4496023943678774745::1702212007::1702212060::1::::<><>:: +AnonymousPro-Italic.ttf::FontFile::1946051124893490662::1702212007::1702212060::1::::<><>:: +AnonymousPro-Regular.ttf::FontFile::8168722819908664856::1702212007::1702212060::1::::<><>:: +CourierPrime-Bold.ttf::FontFile::1335770516583996146::1702212007::1702212060::1::::<><>:: +CourierPrime-BoldItalic.ttf::FontFile::9220921040455068377::1702212007::1702212060::1::::<><>:: +CourierPrime-Italic.ttf::FontFile::4716042287966991544::1702212007::1702212060::1::::<><>:: +CourierPrime-Regular.ttf::FontFile::3052659757691222413::1702212007::1702212060::1::::<><>:: +LobsterTwo-Bold.ttf::FontFile::1656934621306745164::1702212007::1702212060::1::::<><>:: +LobsterTwo-BoldItalic.ttf::FontFile::5943251930544477702::1702212007::1702212060::1::::<><>:: +LobsterTwo-Italic.ttf::FontFile::992817312615385295::1702212007::1702212060::1::::<><>:: +LobsterTwo-Regular.ttf::FontFile::6855437502702336814::1702212007::1702212060::1::::<><>:: +OFL.txt::TextFile::-1::1702212007::0::1::::<><>:: +::res://addons/gut/gui/::1706805099 +arrow.png::CompressedTexture2D::1645126204995198108::1702212007::1702212060::1::::<><>:: +BottomPanelShortcuts.gd::GDScript::-1::1702212007::0::1::::<>Window<>:: +BottomPanelShortcuts.tscn::PackedScene::3672212108687301338::1702212007::0::1::::<><>::uid://sfb1fw8j6ufu::::res://addons/gut/gui/ShortcutButton.tscn<>res://addons/gut/gui/BottomPanelShortcuts.gd +GutBottomPanel.gd::GDScript::-1::1702212007::0::1::::<>Control<>:: +GutBottomPanel.tscn::PackedScene::4354655867367614688::1706805099::0::1::::<><>::res://addons/gut/gui/GutBottomPanel.gd<>uid://bsk32dh41b4gs::::res://addons/gut/gui/BottomPanelShortcuts.tscn<>uid://0yunjxtaa8iw::::res://addons/gut/gui/RunAtCursor.tscn<>uid://cr6tvdv0ve6cv::::res://addons/gut/gui/play.png<>uid://4gyyn12um08h::::res://addons/gut/gui/RunResults.tscn<>uid://bqmo4dj64c7yl::::res://addons/gut/gui/OutputText.tscn +GutControl.gd::GDScript::-1::1706805099::0::1::::<>Control<>:: +GutControl.tscn::PackedScene::2054171664569605320::1706805099::0::1::::<><>::res://addons/gut/gui/GutControl.gd +GutRunner.gd::GDScript::-1::1706805099::0::1::::<>Node2D<>:: +GutRunner.tscn::PackedScene::3560702166169920196::1702212007::0::1::::<><>::res://addons/gut/gui/GutRunner.gd<>uid://m28heqtswbuq::::res://addons/gut/GutScene.tscn +GutSceneTheme.tres::Theme::6076084572326576944::1706805099::0::1::::<><>::uid://c6c7gnx36opr0::::res://addons/gut/fonts/AnonymousPro-Regular.ttf +gut_config_gui.gd::GDScript::-1::1706805099::0::1::::<>RefCounted<>:: +gut_gui.gd::GDScript::-1::1706805099::0::1::::<>Control<>:: +MinGui.tscn::PackedScene::5719303499070539904::1702212007::0::1::::<><>::uid://cstkhwkpajvqu::::res://addons/gut/gui/GutSceneTheme.tres<>uid://bnh0lslf4yh87::::res://addons/gut/fonts/CourierPrime-Regular.ttf<>res://addons/gut/gui/gut_gui.gd<>uid://bvrqqgjpyouse::::res://addons/gut/gui/ResizeHandle.tscn +NormalGui.tscn::PackedScene::8610600420658602210::1706805099::0::1::::<><>::uid://cstkhwkpajvqu::::res://addons/gut/gui/GutSceneTheme.tres<>res://addons/gut/gui/gut_gui.gd<>uid://bnh0lslf4yh87::::res://addons/gut/fonts/CourierPrime-Regular.ttf<>uid://bvrqqgjpyouse::::res://addons/gut/gui/ResizeHandle.tscn +OutputText.gd::GDScript::-1::1706805099::0::1::::<>VBoxContainer<>:: +OutputText.tscn::PackedScene::3535116713792967483::1706805099::0::1::::<><>::res://addons/gut/gui/OutputText.gd +play.png::CompressedTexture2D::1635000675142942863::1702212007::1702212060::1::::<><>:: +ResizeHandle.gd::GDScript::-1::1702212007::0::1::::<>ColorRect<>:: +ResizeHandle.tscn::PackedScene::3896481196255057096::1702212007::0::1::::<><>::res://addons/gut/gui/ResizeHandle.gd +ResultsTree.gd::GDScript::-1::1706805099::0::1::::<>Control<>:: +ResultsTree.tscn::PackedScene::7970351583819098362::1702212007::0::1::::<><>::res://addons/gut/gui/ResultsTree.gd +RunAtCursor.gd::GDScript::-1::1702212007::0::1::::<>Control<>:: +RunAtCursor.tscn::PackedScene::1805504221328301514::1702212007::0::1::::<><>::res://addons/gut/gui/RunAtCursor.gd<>uid://cr6tvdv0ve6cv::::res://addons/gut/gui/play.png<>uid://6wra5rxmfsrl::::res://addons/gut/gui/arrow.png +RunResults.gd::GDScript::-1::1706805099::0::1::::<>Control<>:: +RunResults.tscn::PackedScene::2049363523129861965::1706805099::0::1::::<><>::res://addons/gut/gui/RunResults.gd<>uid://dls5r5f6157nq::::res://addons/gut/gui/ResultsTree.tscn +script_text_editor_controls.gd::GDScript::-1::1702212007::0::1::::<>RefCounted<>:: +Settings.tscn::PackedScene::6291468949329504810::1702212007::0::1::::<><>:: +ShortcutButton.gd::GDScript::-1::1702212007::0::1::::<>Control<>:: +ShortcutButton.tscn::PackedScene::1273828520004261174::1702212007::0::1::::<><>::res://addons/gut/gui/ShortcutButton.gd +::res://addons/gut/images/::1706805099 +Folder.svg::CompressedTexture2D::3139678791423772960::1706805099::1702358003::1::::<><>:: +green.png::CompressedTexture2D::6520612058784968356::1702212007::1702212060::1::::<><>:: +red.png::CompressedTexture2D::8701602113264182104::1702212007::1702212060::1::::<><>:: +Script.svg::CompressedTexture2D::227483817695335030::1706805099::1702358003::1::::<><>:: +yellow.png::CompressedTexture2D::4004300897466148462::1702212007::1702212060::1::::<><>:: +::res://android/::1706805093 +::res://android/plugins/::1702357929 +::res://assets/::1702212007 +::res://assets/Banks/::1702212007 +::res://assets/Music/::1702212060 +jingles_SAX07.ogg::AudioStreamOggVorbis::8430129551912036922::1702212007::1702212060::1::::<><>:: +License.txt::TextFile::-1::1702212007::0::1::::<><>:: +::res://assets/Sounds/::1702212060 +beltHandle1.ogg::AudioStreamOggVorbis::3357302223200653221::1702212007::1702212060::1::::<><>:: +beltHandle2.ogg::AudioStreamOggVorbis::4492030037012930178::1702212007::1702212060::1::::<><>:: +bookClose.ogg::AudioStreamOggVorbis::1598638016890268994::1702212007::1702212060::1::::<><>:: +bookFlip1.ogg::AudioStreamOggVorbis::8659686117651140863::1702212007::1702212060::1::::<><>:: +bookFlip2.ogg::AudioStreamOggVorbis::2051138622178040217::1702212007::1702212060::1::::<><>:: +bookFlip3.ogg::AudioStreamOggVorbis::5351687936465194543::1702212007::1702212060::1::::<><>:: +bookOpen.ogg::AudioStreamOggVorbis::4209347744650227787::1702212007::1702212060::1::::<><>:: +bookPlace1.ogg::AudioStreamOggVorbis::4439688613466064650::1702212007::1702212060::1::::<><>:: +bookPlace2.ogg::AudioStreamOggVorbis::8173094225030912684::1702212007::1702212060::1::::<><>:: +bookPlace3.ogg::AudioStreamOggVorbis::5122917103694115571::1702212007::1702212060::1::::<><>:: +chop.ogg::AudioStreamOggVorbis::4770687295942508362::1702212007::1702212060::1::::<><>:: +cloth1.ogg::AudioStreamOggVorbis::2224198148930001256::1702212007::1702212060::1::::<><>:: +cloth2.ogg::AudioStreamOggVorbis::1104943319689997112::1702212007::1702212060::1::::<><>:: +cloth3.ogg::AudioStreamOggVorbis::7270126747978541247::1702212007::1702212060::1::::<><>:: +cloth4.ogg::AudioStreamOggVorbis::938220345154471848::1702212007::1702212060::1::::<><>:: +clothBelt2.ogg::AudioStreamOggVorbis::7941395126462620166::1702212007::1702212060::1::::<><>:: +clothBelt.ogg::AudioStreamOggVorbis::6049033300960614688::1702212007::1702212060::1::::<><>:: +creak1.ogg::AudioStreamOggVorbis::2049392349068748724::1702212007::1702212060::1::::<><>:: +creak2.ogg::AudioStreamOggVorbis::3598907444690821558::1702212007::1702212060::1::::<><>:: +creak3.ogg::AudioStreamOggVorbis::5603575959866540641::1702212007::1702212060::1::::<><>:: +doorClose_1.ogg::AudioStreamOggVorbis::5878774309119089919::1702212007::1702212060::1::::<><>:: +doorClose_2.ogg::AudioStreamOggVorbis::8057501149018233673::1702212007::1702212060::1::::<><>:: +doorClose_3.ogg::AudioStreamOggVorbis::3902222800722404190::1702212007::1702212060::1::::<><>:: +doorClose_4.ogg::AudioStreamOggVorbis::8462408386705385386::1702212007::1702212060::1::::<><>:: +doorOpen_1.ogg::AudioStreamOggVorbis::2870352506299748604::1702212007::1702212060::1::::<><>:: +doorOpen_2.ogg::AudioStreamOggVorbis::2118056027540407847::1702212007::1702212060::1::::<><>:: +drawKnife1.ogg::AudioStreamOggVorbis::8555288345876765361::1702212007::1702212060::1::::<><>:: +drawKnife2.ogg::AudioStreamOggVorbis::3172730121284199613::1702212007::1702212060::1::::<><>:: +drawKnife3.ogg::AudioStreamOggVorbis::2885598956039077380::1702212007::1702212060::1::::<><>:: +dropLeather.ogg::AudioStreamOggVorbis::2652839993470705844::1702212007::1702212060::1::::<><>:: +footstep00.ogg::AudioStreamOggVorbis::545842655636310072::1702212007::1702212060::1::::<><>:: +footstep01.ogg::AudioStreamOggVorbis::7262874834105623323::1702212007::1702212060::1::::<><>:: +footstep02.ogg::AudioStreamOggVorbis::6752362312216046949::1702212007::1702212060::1::::<><>:: +footstep03.ogg::AudioStreamOggVorbis::5421889124349596472::1702212007::1702212060::1::::<><>:: +footstep04.ogg::AudioStreamOggVorbis::6996639552434707389::1702212007::1702212060::1::::<><>:: +footstep05.ogg::AudioStreamOggVorbis::7839521999856871107::1702212007::1702212060::1::::<><>:: +footstep06.ogg::AudioStreamOggVorbis::4770730755720057340::1702212007::1702212060::1::::<><>:: +footstep07.ogg::AudioStreamOggVorbis::8897573449071323665::1702212007::1702212060::1::::<><>:: +footstep08.ogg::AudioStreamOggVorbis::2452917993617391188::1702212007::1702212060::1::::<><>:: +footstep09.ogg::AudioStreamOggVorbis::8717182461905250842::1702212007::1702212060::1::::<><>:: +handleCoins2.ogg::AudioStreamOggVorbis::3606102788231600074::1702212007::1702212060::1::::<><>:: +handleCoins.ogg::AudioStreamOggVorbis::6503952773047196798::1702212007::1702212060::1::::<><>:: +handleSmallLeather2.ogg::AudioStreamOggVorbis::178953460861587264::1702212007::1702212060::1::::<><>:: +handleSmallLeather.ogg::AudioStreamOggVorbis::5703842005644944422::1702212007::1702212060::1::::<><>:: +knifeSlice2.ogg::AudioStreamOggVorbis::7369315249712569450::1702212007::1702212060::1::::<><>:: +knifeSlice.ogg::AudioStreamOggVorbis::691124093825965558::1702212007::1702212060::1::::<><>:: +licence.txt::TextFile::-1::1702212007::0::1::::<><>:: +metalClick.ogg::AudioStreamOggVorbis::2778501484639380327::1702212007::1702212060::1::::<><>:: +metalLatch.ogg::AudioStreamOggVorbis::2101886033039985373::1702212007::1702212060::1::::<><>:: +metalPot1.ogg::AudioStreamOggVorbis::1131150234135301616::1702212007::1702212060::1::::<><>:: +metalPot2.ogg::AudioStreamOggVorbis::4368986387788630324::1702212007::1702212060::1::::<><>:: +metalPot3.ogg::AudioStreamOggVorbis::2663723517893286812::1702212007::1702212060::1::::<><>:: +::res://high_level_2D/::1707371630 +ChangeColor.gd::GDScript::-1::1702212007::0::1::::<>Area2D<>:: +Emitter.gd::GDScript::-1::1706812686::0::1::::<>FmodEventEmitter2D<>:: +FmodNodesTest.tscn::PackedScene::7995747544492451807::1707371630::0::1::::<><>::res://high_level_2D/Emitter.gd<>uid://d4blkybu5ojj6::::res://icon.png<>res://high_level_2D/Kinematic.gd<>res://high_level_2D/ChangeColor.gd<>res://low_level_2D/EnterAndLeave.gd<>res://low_level_2D/EnterandLeave2.gd +Kinematic.gd::GDScript::-1::1702212007::0::1::::<>CharacterBody2D<>:: +::res://high_level_3D/::1707373995 +FPSCounter.gd::GDScript::-1::1706807429::0::1::::<>Label<>:: +rollingball.gd::GDScript::-1::1706815625::0::1::::<>FmodEventEmitter3D<>:: +selfdestroy.gd::GDScript::-1::1706812709::0::1::::<>FmodEventEmitter3D<>:: +World.tscn::PackedScene::7914430319469242357::1707373995::0::1::::<><>::res://high_level_3D/FPSCounter.gd<>uid://bhw2o0powjnsp::::res://high_level_3D/environment/Floor.tscn<>uid://dl8xj04oxmnsb::::res://high_level_3D/environment/Ball.tscn<>uid://c7isdpd8ykjep::::res://high_level_3D/environment/Wall.tscn<>res://high_level_3D/environment/soundcollider.gd<>res://high_level_3D/selfdestroy.gd<>res://high_level_3D/rollingball.gd<>uid://bsguup0m8xqxp::::res://high_level_3D/player/Player.tscn +::res://high_level_3D/environment/::1707373277 +1x1.png::CompressedTexture2D::4735347951839930949::1706805359::1706806064::1::::<><>:: +Ball.tscn::PackedScene::8000877718510805353::1706815625::0::1::::<><>::res://high_level_3D/environment/ball_material.tres +ball_material.tres::StandardMaterial3D::-1::1706807365::0::1::::<><>::uid://b8p3qvgwqt8dd::::res://high_level_3D/environment/1x1.png +box.tscn::PackedScene::5700792937621581287::1706807403::0::1::::<><>::res://high_level_3D/environment/wall_material.tres +Floor.tscn::PackedScene::2924824596589690447::1707373277::0::1::::<><>::res://high_level_3D/environment/wall_material.tres +soundcollider.gd::GDScript::-1::1706812214::0::1::::<>FmodEventEmitter3D<>:: +Wall.tscn::PackedScene::7036498443103737707::1706807393::0::1::::<><>::res://high_level_3D/environment/wall_material.tres +wall_material.tres::StandardMaterial3D::-1::1706807376::0::1::::<><>::uid://b8p3qvgwqt8dd::::res://high_level_3D/environment/1x1.png +::res://high_level_3D/player/::1706815625 +Camera.gd::GDScript::-1::1706810645::0::1::::<>Camera3D<>:: +Player.gd::GDScript::-1::1706810164::0::1::::<>CharacterBody3D<>:: +Player.tscn::PackedScene::3663457018496079845::1706815625::0::1::::<><>::res://high_level_3D/player/Player.gd<>res://high_level_3D/player/Camera.gd +::res://low_level_2D/::1707373891 +ChangeColor.gd::GDScript::-1::1702212007::0::1::::<>Area2D<>:: +Emitter.gd::GDScript::-1::1702212007::0::1::::<>Sprite2D<>:: +EnterandLeave2.gd::GDScript::-1::1702212007::0::1::::<>Area2D<>:: +EnterAndLeave.gd::GDScript::-1::1702212007::0::1::::<>Area2D<>:: +FmodScriptTest.tscn::PackedScene::6105177409443340932::1707373891::0::1::::<><>::res://low_level_2D/FmodTest.gd<>uid://d4blkybu5ojj6::::res://icon.png<>res://low_level_2D/Emitter.gd<>res://low_level_2D/Listener.gd<>res://low_level_2D/EnterAndLeave.gd<>res://low_level_2D/ChangeColor.gd<>res://low_level_2D/EnterandLeave2.gd +FmodTest.gd::GDScript::-1::1706807429::0::1::::<>Node<>:: +Listener2.gd::GDScript::-1::1702212007::0::1::::<>Node2D<>:: +Listener.gd::GDScript::-1::1702212007::0::1::::<>CharacterBody2D<>:: +::res://test/::1702212007 +tests.tscn::PackedScene::6944549695116706567::1702212007::0::1::::<><>:: +::res://test/integration/::1702212007 +::res://test/unit/::1702212007 +test_bank.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_bus.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_callbacks.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_desc_event.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_event.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_global.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_listener.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_sound.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: +test_vca.gd::GDScript::-1::1702212007::0::1::::<>Node<>:: diff --git a/demo/.godot/editor/filesystem_update4 b/demo/.godot/editor/filesystem_update4 index edb08b00..4874592d 100644 --- a/demo/.godot/editor/filesystem_update4 +++ b/demo/.godot/editor/filesystem_update4 @@ -1 +1,7 @@ -res://low_level/FmodScriptTest.tscn +res://low_level_2D/FmodScriptTest.tscn +res://low_level_2D/Emitter.gd +res://high_level_3D/World.tscn +res://high_level_3D/selfdestroy.gd +res://high_level_3D/environment/sin_move.gd +res://high_level_2D/FmodNodesTest.tscn +res://high_level_2D/sin_move.gd diff --git a/demo/.godot/editor/project_metadata.cfg b/demo/.godot/editor/project_metadata.cfg index 1cc45702..338d7ce6 100644 --- a/demo/.godot/editor/project_metadata.cfg +++ b/demo/.godot/editor/project_metadata.cfg @@ -1,6 +1,7 @@ [editor_metadata] -executable_path="C:/Program Files/Godot/godot.exe" +executable_path="D:/Godot/Godot_v4.2-stable_win64.exe" +use_advanced_connections=false [debug_options] @@ -9,9 +10,39 @@ run_reload_scripts=true [recent_files] -scenes=["res://low_level/FmodScriptTest.tscn"] -scripts=["res://low_level/FmodTest.gd"] +scenes=["res://high_level_2D/FmodNodesTest.tscn", "res://high_level_3D/World.tscn", "res://low_level_2D/FmodScriptTest.tscn", "res://high_level_3D/environment/Floor.tscn", "res://high_level_3D/environment/Ball.tscn", "res://high_level_3D/player/Player.tscn", "res://high_level_3D/environment/World.tscn", "res://high_level_3D/environment/box.tscn", "res://high_level_3D/environment/Wall.tscn", "res://high_level_3D/player/flashlight/Flashlight.tscn"] +scripts=["res://high_level_2D/sin_move.gd", "res://high_level_3D/environment/sin_move.gd", "Time", "res://low_level_2D/Emitter.gd", "Vector3", "RigidBody3D", "Node3D", "FmodEventEmitter3D", "res://high_level_3D/selfdestroy.gd", "res://high_level_2D/Emitter.gd"] [linked_properties] Node2D:scale=true +Node3D:scale=true +CharacterBody3D:scale=true +CollisionShape3D:scale=false +Camera3D:scale=true +StaticBody3D:scale=false +MeshInstance3D:scale=false +StandardMaterial3D:uv1_scale=true +StandardMaterial3D:uv2_scale=true +RigidBody3D:scale=true +Label:scale=true +DirectionalLight3D:scale=true +MultiNodeEdit:scale=true +FmodEventEmitter2D:scale=true +FmodListener2D:scale=true +FmodListener3D:scale=true +FmodEventEmitter3D:scale=true +EditorDebuggerRemoteObject:scale=true +Sprite2D:scale=true +CharacterBody2D:scale=true +Area2D:scale=true +CollisionShape2D:scale=true + +[dialog_bounds] + +project_settings=Rect2(1020, 258, 1125, 875) +create_new_node=Rect2(717, 282, 1125, 875) + +[script_setup] + +last_selected_language="GDScript" diff --git a/demo/.godot/editor/script_editor_cache.cfg b/demo/.godot/editor/script_editor_cache.cfg index aedc362a..d6dee806 100644 --- a/demo/.godot/editor/script_editor_cache.cfg +++ b/demo/.godot/editor/script_editor_cache.cfg @@ -1,4 +1,4 @@ -[res://low_level/FmodTest.gd] +[res://low_level_2D/FmodTest.gd] state={ "bookmarks": PackedInt32Array(), @@ -11,3 +11,209 @@ state={ "selection": false, "syntax_highlighter": "GDScript" } + +[res://high_level_3D/FPSCounter.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 5, +"scroll_position": 0.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 5, +"selection_to_column": 58, +"selection_to_line": 6, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/player/Player.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 46, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 23, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/player/Camera.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 0, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/environment/soundcollider.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 12, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/rollingball.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 47, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 9, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://high_level_2D/Emitter.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 13, +"scroll_position": 0.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 13, +"selection_to_column": 19, +"selection_to_line": 14, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/selfdestroy.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 7, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://low_level_2D/Emitter.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 25, +"scroll_position": 3.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 25, +"selection_to_column": 37, +"selection_to_line": 26, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/environment/sin_move.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 2, +"scroll_position": 0.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 2, +"selection_to_column": 36, +"selection_to_line": 4, +"syntax_highlighter": "GDScript" +} + +[res://high_level_2D/sin_move.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 28, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 5, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} + +[res://low_level_2D/Emitter.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 25, +"scroll_position": 3.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 25, +"selection_to_column": 37, +"selection_to_line": 26, +"syntax_highlighter": "GDScript" +} + +[res://high_level_3D/environment/sin_move.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 0, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 2, +"scroll_position": 0.0, +"selection": true, +"selection_from_column": 0, +"selection_from_line": 2, +"selection_to_column": 36, +"selection_to_line": 4, +"syntax_highlighter": "GDScript" +} + +[res://high_level_2D/sin_move.gd] + +state={ +"bookmarks": PackedInt32Array(), +"breakpoints": PackedInt32Array(), +"column": 28, +"folded_lines": Array[int]([]), +"h_scroll_position": 0, +"row": 5, +"scroll_position": 0.0, +"selection": false, +"syntax_highlighter": "GDScript" +} diff --git a/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.ctex b/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.ctex index 94250bf2..4d57ff2d 100644 Binary files a/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.ctex and b/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.ctex differ diff --git a/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.meta b/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.meta and b/demo/.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.editor.meta differ diff --git a/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.ctex b/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.ctex index 94250bf2..4d57ff2d 100644 Binary files a/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.ctex and b/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.ctex differ diff --git a/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.meta b/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.meta and b/demo/.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.editor.meta differ diff --git a/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.ctex b/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.ctex index 2bbc106a..d2652802 100644 Binary files a/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.ctex and b/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.ctex differ diff --git a/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.meta b/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.meta and b/demo/.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.editor.meta differ diff --git a/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.ctex b/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.ctex index 7da2c829..a190773c 100644 Binary files a/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.ctex and b/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.ctex differ diff --git a/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.meta b/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.meta and b/demo/.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.editor.meta differ diff --git a/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.ctex b/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.ctex index bbccaba9..1363c331 100644 Binary files a/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.ctex and b/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.ctex differ diff --git a/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.meta b/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.meta and b/demo/.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.editor.meta differ diff --git a/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.ctex b/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.ctex index abd5ca1e..f9c9500e 100644 Binary files a/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.ctex and b/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.ctex differ diff --git a/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.meta b/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.meta and b/demo/.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.editor.meta differ diff --git a/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.ctex b/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.ctex index faaec86e..2c32922b 100644 Binary files a/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.ctex and b/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.ctex differ diff --git a/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.meta b/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.meta and b/demo/.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.editor.meta differ diff --git a/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.ctex b/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.ctex index 94250bf2..4d57ff2d 100644 Binary files a/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.ctex and b/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.ctex differ diff --git a/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.meta b/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.meta index cfc77645..3871b33a 100644 Binary files a/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.meta and b/demo/.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.editor.meta differ diff --git a/demo/.godot/uid_cache.bin b/demo/.godot/uid_cache.bin index 41ed7288..381a4ef4 100644 Binary files a/demo/.godot/uid_cache.bin and b/demo/.godot/uid_cache.bin differ diff --git a/demo/high_level/Emitter.gd b/demo/high_level/Emitter.gd deleted file mode 100644 index 367dbe66..00000000 --- a/demo/high_level/Emitter.gd +++ /dev/null @@ -1,19 +0,0 @@ -extends FmodEventEmitter2D - -var isPlaying: bool = true - -func _process(_delta): - if Input.is_action_just_pressed("space"): - isPlaying = !isPlaying - if(isPlaying): - print("Mower playing") - paused = false - else: - print("Mower paused") - paused = true - elif Input.is_action_just_pressed("kill_event"): - self.queue_free() - if Input.is_action_pressed("engine_power_up"): - self["event_parameter/RPM/value"] = self["event_parameter/RPM/value"] + 10 - if Input.is_action_pressed("engine_power_down"): - self["event_parameter/RPM/value"] = self["event_parameter/RPM/value"] - 10 diff --git a/demo/high_level/ChangeColor.gd b/demo/high_level_2D/ChangeColor.gd similarity index 100% rename from demo/high_level/ChangeColor.gd rename to demo/high_level_2D/ChangeColor.gd diff --git a/demo/high_level_2D/Emitter.gd b/demo/high_level_2D/Emitter.gd new file mode 100644 index 00000000..c3361252 --- /dev/null +++ b/demo/high_level_2D/Emitter.gd @@ -0,0 +1,19 @@ +extends FmodEventEmitter2D + +var isPlaying: bool = true + +func _process(_delta): + if Input.is_action_just_pressed("space"): + isPlaying = !isPlaying + if(isPlaying): + print("Mower playing") + paused = false + else: + print("Mower paused") + paused = true + elif Input.is_action_just_pressed("kill_event"): + self.queue_free() + if Input.is_action_pressed("engine_power_up"): + self["event_parameter/RPM/value"] = self["event_parameter/RPM/value"] + 10 + if Input.is_action_pressed("engine_power_down"): + self["event_parameter/RPM/value"] = self["event_parameter/RPM/value"] - 10 diff --git a/demo/high_level/FmodNodesTest.tscn b/demo/high_level_2D/FmodNodesTest.tscn similarity index 88% rename from demo/high_level/FmodNodesTest.tscn rename to demo/high_level_2D/FmodNodesTest.tscn index 9c611b88..d676c61e 100644 --- a/demo/high_level/FmodNodesTest.tscn +++ b/demo/high_level_2D/FmodNodesTest.tscn @@ -1,11 +1,12 @@ -[gd_scene load_steps=10 format=3 uid="uid://dl6g18ybwc83t"] +[gd_scene load_steps=11 format=3 uid="uid://dl6g18ybwc83t"] -[ext_resource type="Script" path="res://high_level/Emitter.gd" id="2_5cntr"] -[ext_resource type="Texture2D" uid="uid://dichdnwxg2opa" path="res://icon.png" id="2_llv2n"] -[ext_resource type="Script" path="res://high_level/Kinematic.gd" id="3_dlbku"] -[ext_resource type="Script" path="res://high_level/ChangeColor.gd" id="5_5p5kb"] -[ext_resource type="Script" path="res://low_level/EnterAndLeave.gd" id="5_jxvuy"] -[ext_resource type="Script" path="res://low_level/EnterandLeave2.gd" id="7_c28gt"] +[ext_resource type="Script" path="res://high_level_2D/sin_move.gd" id="1_2lkrj"] +[ext_resource type="Script" path="res://high_level_2D/Emitter.gd" id="2_5cntr"] +[ext_resource type="Texture2D" uid="uid://d4blkybu5ojj6" path="res://icon.png" id="2_llv2n"] +[ext_resource type="Script" path="res://high_level_2D/Kinematic.gd" id="3_dlbku"] +[ext_resource type="Script" path="res://high_level_2D/ChangeColor.gd" id="5_5p5kb"] +[ext_resource type="Script" path="res://low_level_2D/EnterAndLeave.gd" id="5_jxvuy"] +[ext_resource type="Script" path="res://low_level_2D/EnterandLeave2.gd" id="7_c28gt"] [sub_resource type="RectangleShape2D" id="1"] size = Vector2(87.7038, 82.621) @@ -23,7 +24,8 @@ size = Vector2(289.938, 284.96) bank_paths = ["res://assets/Banks/Master.strings.bank", "res://assets/Banks/Master.bank", "res://assets/Banks/Music.bank", "res://assets/Banks/Vehicles.bank", "res://assets/Banks/SFX.bank"] [node name="Node2D" type="Node2D" parent="FmodBankLoader"] -position = Vector2(500, 500) +position = Vector2(703, 486) +script = ExtResource("1_2lkrj") [node name="Emitter" type="FmodEventEmitter2D" parent="FmodBankLoader/Node2D"] event_name = "event:/Vehicles/Car Engine" diff --git a/demo/high_level/Kinematic.gd b/demo/high_level_2D/Kinematic.gd similarity index 100% rename from demo/high_level/Kinematic.gd rename to demo/high_level_2D/Kinematic.gd diff --git a/demo/high_level_2D/sin_move.gd b/demo/high_level_2D/sin_move.gd new file mode 100644 index 00000000..eee61efd --- /dev/null +++ b/demo/high_level_2D/sin_move.gd @@ -0,0 +1,6 @@ +extends Node2D + + +func _process(delta: float) -> void: + var time = Time.get_ticks_msec()/1000.0 + self.position.x = 700 + 300 * sin(time) diff --git a/demo/high_level_3D/FPSCounter.gd b/demo/high_level_3D/FPSCounter.gd new file mode 100644 index 00000000..f660ca5c --- /dev/null +++ b/demo/high_level_3D/FPSCounter.gd @@ -0,0 +1,7 @@ +extends Label + +func _ready(): + set_process(true) + +func _process(_delta: float): + self.text = 'FPS: %s' % Engine.get_frames_per_second() diff --git a/demo/high_level_3D/World.tscn b/demo/high_level_3D/World.tscn new file mode 100644 index 00000000..fbcff0d0 --- /dev/null +++ b/demo/high_level_3D/World.tscn @@ -0,0 +1,117 @@ +[gd_scene load_steps=13 format=3 uid="uid://dk02rm1jcir6t"] + +[ext_resource type="Script" path="res://high_level_3D/FPSCounter.gd" id="1_sjwuc"] +[ext_resource type="PackedScene" uid="uid://bhw2o0powjnsp" path="res://high_level_3D/environment/Floor.tscn" id="2_kesb6"] +[ext_resource type="PackedScene" uid="uid://dl8xj04oxmnsb" path="res://high_level_3D/environment/Ball.tscn" id="3_bkia1"] +[ext_resource type="Script" path="res://high_level_3D/environment/sin_move.gd" id="4_ewod2"] +[ext_resource type="PackedScene" uid="uid://c7isdpd8ykjep" path="res://high_level_3D/environment/Wall.tscn" id="4_jv1x4"] +[ext_resource type="Script" path="res://high_level_3D/environment/soundcollider.gd" id="4_mxf3j"] +[ext_resource type="Script" path="res://high_level_3D/selfdestroy.gd" id="4_vlj6k"] +[ext_resource type="Script" path="res://high_level_3D/rollingball.gd" id="5_d681a"] +[ext_resource type="PackedScene" uid="uid://bsguup0m8xqxp" path="res://high_level_3D/player/Player.tscn" id="5_i7hmm"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_y252g"] + +[sub_resource type="Sky" id="8"] +sky_material = SubResource("ProceduralSkyMaterial_y252g") + +[sub_resource type="Environment" id="7"] +background_mode = 2 +sky = SubResource("8") +ssao_intensity = 4.0 + +[node name="Node3D" type="Node3D"] + +[node name="FmodBankLoader" type="FmodBankLoader" parent="."] +bank_paths = ["res://assets/Banks/Master.strings.bank", "res://assets/Banks/Master.bank", "res://assets/Banks/Music.bank", "res://assets/Banks/Vehicles.bank", "res://assets/Banks/SFX.bank"] + +[node name="FPSCounter" type="Label" parent="."] +offset_right = 40.0 +offset_bottom = 14.0 +text = "FPS: 0" +script = ExtResource("1_sjwuc") + +[node name="Help" type="Label" parent="."] +offset_top = 20.0 +offset_right = 106.0 +offset_bottom = 38.0 +text = "Space = Jump +WASD = Move" + +[node name="Floor" parent="." instance=ExtResource("2_kesb6")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.007, -2, -3.715) + +[node name="Ball1" parent="." instance=ExtResource("3_bkia1")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 3.2038) +freeze = true +script = ExtResource("4_ewod2") + +[node name="FmodEventEmitter3D" type="FmodEventEmitter3D" parent="Ball1"] +event_name = "event:/Vehicles/Car Engine" +event_guid = "{0c8363b4-23af-4f9c-af4b-0951bfd37d84}" +autoplay = true +event_parameter/RPM/id = 5864137074015534804 +event_parameter/RPM/value = 1000.0 +event_parameter/RPM/min_value = 0.0 +event_parameter/RPM/max_value = 10000.0 +event_parameter/RPM/default_value = 0.0 +event_parameter/Load/id = -1795603775021193717 +event_parameter/Load/value = -1.0 +event_parameter/Load/min_value = -1.0 +event_parameter/Load/max_value = 1.0 +event_parameter/Load/default_value = -1.0 +script = ExtResource("4_vlj6k") + +[node name="Ball2" parent="." instance=ExtResource("3_bkia1")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, -1.07225, -3) +sleeping = true + +[node name="FmodEventEmitter3D" type="FmodEventEmitter3D" parent="Ball2"] +event_name = "event:/Weapons/Explosion" +event_guid = "{1f687138-e06c-40f5-9bac-57f84bbcedd3}" +volume = 0.5 +event_parameter/Size/id = 6419405856426461066 +event_parameter/Size/value = 0.5 +event_parameter/Size/min_value = 0.0 +event_parameter/Size/max_value = 3.0 +event_parameter/Size/default_value = 0.0 +event_parameter/Distance/id = -6363846794978107960 +event_parameter/Distance/value = 3.40282e+38 +event_parameter/Distance/min_value = 0.0 +event_parameter/Distance/max_value = 100.0 +event_parameter/Distance/default_value = 3.40282e+38 +script = ExtResource("4_mxf3j") + +[node name="Ball3" parent="." instance=ExtResource("3_bkia1")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, -1.03226, -3) + +[node name="FmodEventEmitter3D" type="FmodEventEmitter3D" parent="Ball3"] +event_name = "event:/Interactables/Barrel Roll" +event_guid = "{c42c2240-c4b6-42ed-a473-1a47f19945ea}" +autoplay = true +volume = 0.5 +event_parameter/Speed/id = 841507833874797062 +event_parameter/Speed/value = 0.0 +event_parameter/Speed/min_value = 0.0 +event_parameter/Speed/max_value = 8.0 +event_parameter/Speed/default_value = 0.0 +script = ExtResource("5_d681a") + +[node name="Wall" parent="." instance=ExtResource("4_jv1x4")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.665272, -8.1876) + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("7") + +[node name="Sun" type="DirectionalLight3D" parent="WorldEnvironment"] +transform = Transform3D(-0.5, -0.296198, 0.813798, 0, 0.939693, 0.34202, -0.866025, 0.17101, -0.469847, 0, 0, 0) +layers = 262144 +light_color = Color(0.94902, 0.580392, 0.247059, 1) +light_cull_mask = 4294443007 +shadow_enabled = true + +[node name="Player" parent="." instance=ExtResource("5_i7hmm")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.47008, 8.47787) + +[node name="FmodListener3D" type="FmodListener3D" parent="Player"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.56489, 0) diff --git a/demo/high_level_3D/character.bin b/demo/high_level_3D/character.bin new file mode 100644 index 00000000..f1da1b63 Binary files /dev/null and b/demo/high_level_3D/character.bin differ diff --git a/demo/high_level_3D/environment/1x1.png b/demo/high_level_3D/environment/1x1.png new file mode 100644 index 00000000..c1c08dc4 Binary files /dev/null and b/demo/high_level_3D/environment/1x1.png differ diff --git a/demo/high_level_3D/environment/Ball.tscn b/demo/high_level_3D/environment/Ball.tscn new file mode 100644 index 00000000..542ca907 --- /dev/null +++ b/demo/high_level_3D/environment/Ball.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=4 format=3 uid="uid://dl8xj04oxmnsb"] + +[ext_resource type="Material" path="res://high_level_3D/environment/ball_material.tres" id="1_4hjdv"] + +[sub_resource type="SphereShape3D" id="7"] + +[sub_resource type="SphereMesh" id="8"] +material = ExtResource("1_4hjdv") + +[node name="Ball" type="RigidBody3D"] +linear_damp_mode = 1 +linear_damp = 2.0 +angular_damp_mode = 1 +angular_damp = 3.0 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("7") + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +mesh = SubResource("8") diff --git a/demo/high_level_3D/environment/Floor.tscn b/demo/high_level_3D/environment/Floor.tscn new file mode 100644 index 00000000..ababd20f --- /dev/null +++ b/demo/high_level_3D/environment/Floor.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=4 format=3 uid="uid://bhw2o0powjnsp"] + +[ext_resource type="Material" path="res://high_level_3D/environment/wall_material.tres" id="1_2s467"] + +[sub_resource type="BoxMesh" id="4"] +material = ExtResource("1_2s467") + +[sub_resource type="BoxShape3D" id="3"] +size = Vector3(64, 1, 64) + +[node name="Floor" type="StaticBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2.0364, 0) + +[node name="Mesh" type="MeshInstance3D" parent="."] +transform = Transform3D(64, 0, 0, 0, 1, 0, 0, 0, 64, 0, 0, 0) +mesh = SubResource("4") +skeleton = NodePath("../..") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("3") diff --git a/demo/high_level_3D/environment/Wall.tscn b/demo/high_level_3D/environment/Wall.tscn new file mode 100644 index 00000000..2e9b0a2b --- /dev/null +++ b/demo/high_level_3D/environment/Wall.tscn @@ -0,0 +1,54 @@ +[gd_scene load_steps=8 format=3 uid="uid://c7isdpd8ykjep"] + +[ext_resource type="Material" path="res://high_level_3D/environment/wall_material.tres" id="2"] + + +[sub_resource type="BoxMesh" id="9"] +material = ExtResource("2") +size = Vector3(20, 5, 5) + +[sub_resource type="PrismMesh" id="12"] +material = ExtResource("2") +left_to_right = 0.0 +size = Vector3(10, 5, 5) + +[sub_resource type="ConcavePolygonShape3D" id="15"] +data = PackedVector3Array(-5, 2.5, 2.5, 5, -2.5, 2.5, -5, -2.5, 2.5, -5, 2.5, -2.5, -5, -2.5, -2.5, 5, -2.5, -2.5, -5, 2.5, 2.5, -5, 2.5, -2.5, 5, -2.5, 2.5, -5, 2.5, -2.5, 5, -2.5, -2.5, 5, -2.5, 2.5, -5, 2.5, -2.5, -5, 2.5, 2.5, -5, -2.5, -2.5, -5, 2.5, 2.5, -5, -2.5, 2.5, -5, -2.5, -2.5, -5, -2.5, 2.5, 5, -2.5, 2.5, -5, -2.5, -2.5, 5, -2.5, 2.5, 5, -2.5, -2.5, -5, -2.5, -2.5) + +[sub_resource type="PrismMesh" id="14"] +material = ExtResource("2") +left_to_right = 1.0 +size = Vector3(10, 5, 5) + +[sub_resource type="ConcavePolygonShape3D" id="16"] +data = PackedVector3Array(5, 2.5, 2.5, 5, -2.5, 2.5, -5, -2.5, 2.5, 5, 2.5, -2.5, -5, -2.5, -2.5, 5, -2.5, -2.5, 5, 2.5, 2.5, 5, 2.5, -2.5, 5, -2.5, 2.5, 5, 2.5, -2.5, 5, -2.5, -2.5, 5, -2.5, 2.5, 5, 2.5, -2.5, 5, 2.5, 2.5, -5, -2.5, -2.5, 5, 2.5, 2.5, -5, -2.5, 2.5, -5, -2.5, -2.5, -5, -2.5, 2.5, 5, -2.5, 2.5, -5, -2.5, -2.5, 5, -2.5, 2.5, 5, -2.5, -2.5, -5, -2.5, -2.5) + +[sub_resource type="ConcavePolygonShape3D" id="17"] +data = PackedVector3Array(-10, 2.5, 2.5, 10, 2.5, 2.5, -10, -2.5, 2.5, 10, 2.5, 2.5, 10, -2.5, 2.5, -10, -2.5, 2.5, 10, 2.5, -2.5, -10, 2.5, -2.5, 10, -2.5, -2.5, -10, 2.5, -2.5, -10, -2.5, -2.5, 10, -2.5, -2.5, 10, 2.5, 2.5, 10, 2.5, -2.5, 10, -2.5, 2.5, 10, 2.5, -2.5, 10, -2.5, -2.5, 10, -2.5, 2.5, -10, 2.5, -2.5, -10, 2.5, 2.5, -10, -2.5, -2.5, -10, 2.5, 2.5, -10, -2.5, 2.5, -10, -2.5, -2.5, 10, 2.5, 2.5, -10, 2.5, 2.5, 10, 2.5, -2.5, -10, 2.5, 2.5, -10, 2.5, -2.5, 10, 2.5, -2.5, -10, -2.5, 2.5, 10, -2.5, 2.5, -10, -2.5, -2.5, 10, -2.5, 2.5, 10, -2.5, -2.5, -10, -2.5, -2.5) + +[node name="Wall" type="MeshInstance3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.35862, -5.6476) +mesh = SubResource("9") + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 0, 0) +mesh = SubResource("12") + +[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"] +shape = SubResource("15") + +[node name="MeshInstance2" type="MeshInstance3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 0, 0) +mesh = SubResource("14") + +[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance2"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance2/StaticBody3D"] +shape = SubResource("16") + +[node name="StaticBody3D" type="StaticBody3D" parent="."] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"] +shape = SubResource("17") diff --git a/demo/high_level_3D/environment/ball_material.tres b/demo/high_level_3D/environment/ball_material.tres new file mode 100644 index 00000000..a33a641e --- /dev/null +++ b/demo/high_level_3D/environment/ball_material.tres @@ -0,0 +1,11 @@ +[gd_resource type="StandardMaterial3D" load_steps=2 format=3] + +[ext_resource type="Texture2D" uid="uid://b8p3qvgwqt8dd" path="res://high_level_3D/environment/1x1.png" id="1"] + + +[resource] +detail_enabled = true +detail_blend_mode = 0 +detail_uv_layer = 0 +detail_albedo = ExtResource( 1 ) +uv1_scale = Vector3( 0.5, 0.5, 0.5 ) diff --git a/demo/high_level_3D/environment/box.tscn b/demo/high_level_3D/environment/box.tscn new file mode 100644 index 00000000..86a17575 --- /dev/null +++ b/demo/high_level_3D/environment/box.tscn @@ -0,0 +1,21 @@ +[gd_scene load_steps=4 format=3 uid="uid://cnhrhyfu1hs1t"] + +[ext_resource type="Material" path="res://high_level_3D/environment/wall_material.tres" id="1_uit7m"] + + +[sub_resource type="BoxMesh" id="BoxMesh_wnaer"] +material = ExtResource("1_uit7m") +size = Vector3(0.3, 2, 2) + +[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_1j8j0"] +points = PackedVector3Array(0.15, 1, 1, -0.15, 1, 1, 0.15, -1, 1, 0.15, 1, -1, -0.15, 1, -1, -0.15, -1, 1, 0.15, -1, -1, -0.15, -1, -1) + +[node name="Box" type="RigidBody3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.17535, 0) +mass = 4.0 + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +mesh = SubResource("BoxMesh_wnaer") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("ConvexPolygonShape3D_1j8j0") diff --git a/demo/high_level_3D/environment/sin_move.gd b/demo/high_level_3D/environment/sin_move.gd new file mode 100644 index 00000000..072f540a --- /dev/null +++ b/demo/high_level_3D/environment/sin_move.gd @@ -0,0 +1,5 @@ +extends RigidBody3D + +func _process(delta: float) -> void: + var time = Time.get_ticks_msec()/1000.0 + self.position.x = 10 * sin(time) diff --git a/demo/high_level_3D/environment/soundcollider.gd b/demo/high_level_3D/environment/soundcollider.gd new file mode 100644 index 00000000..756cf4ed --- /dev/null +++ b/demo/high_level_3D/environment/soundcollider.gd @@ -0,0 +1,12 @@ +extends FmodEventEmitter3D + +var moving := false + +func _process(_delta: float): + + var parent: RigidBody3D = get_parent() + if moving == false and parent.linear_velocity.length() > 1: + moving = true + self.play() + elif parent.linear_velocity.length() < 1: + moving = false diff --git a/demo/high_level_3D/environment/wall_material.tres b/demo/high_level_3D/environment/wall_material.tres new file mode 100644 index 00000000..dd9dde01 --- /dev/null +++ b/demo/high_level_3D/environment/wall_material.tres @@ -0,0 +1,11 @@ +[gd_resource type="StandardMaterial3D" load_steps=2 format=3] + +[ext_resource type="Texture2D" uid="uid://b8p3qvgwqt8dd" path="res://high_level_3D/environment/1x1.png" id="1"] + + +[resource] +detail_enabled = true +detail_blend_mode = 0 +detail_uv_layer = 0 +detail_albedo = ExtResource( 1 ) +uv1_scale = Vector3( 20, 15, 0 ) diff --git a/demo/high_level_3D/player/Camera.gd b/demo/high_level_3D/player/Camera.gd new file mode 100644 index 00000000..adef5ed0 --- /dev/null +++ b/demo/high_level_3D/player/Camera.gd @@ -0,0 +1,65 @@ +extends Camera3D + +@onready var Player = get_parent() + +## Increase this value to give a slower turn speed +const CAMERA_TURN_SPEED = 200 + +func _ready(): + ## Tell Godot that we want to handle input + set_process_input(true) + +func look_updown_rotation(new_rotation = 0): + """ + Returns a new Vector3 which contains only the x direction + We'll use this vector to compute the final 3D rotation later + """ + var toReturn = self.get_rotation() + Vector3(new_rotation, 0, 0) + + ## + ## We don't want the player to be able to bend over backwards + ## neither to be able to look under their arse. + ## Here we'll clamp the vertical look to 90° up and down + toReturn.x = clamp(toReturn.x, PI / -2, PI / 2) + + return toReturn + +func look_leftright_rotation(new_rotation = 0): + """ + Returns a new Vector3 which contains only the y direction + We'll use this vector to compute the final 3D rotation later + """ + return Player.get_rotation() + Vector3(0, new_rotation, 0) + +func _input(event): + """ + First person camera controls + """ + ## + ## We'll only process mouse motion events + if not event is InputEventMouseMotion: + return + + ## + ## We'll use the parent node "Player" to set our left-right rotation + ## This prevents us from adding the x-rotation to the y-rotation + ## which would result in a kind of flight-simulator camera + Player.set_rotation(look_leftright_rotation(event.relative.x / -CAMERA_TURN_SPEED)) + + ## + ## Now we can simply set our y-rotation for the camera, and let godot + ## handle the transformation of both together + self.set_rotation(look_updown_rotation(event.relative.y / -CAMERA_TURN_SPEED)) + +func _enter_tree(): + """ + Hide the mouse when we start + """ + Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN) + Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) + +func _leave_tree(): + """ + Show the mouse when we leave + """ + Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) diff --git a/demo/high_level_3D/player/Player.gd b/demo/high_level_3D/player/Player.gd new file mode 100644 index 00000000..c87db2be --- /dev/null +++ b/demo/high_level_3D/player/Player.gd @@ -0,0 +1,84 @@ +extends CharacterBody3D + +var direction := Vector3(0, 0, 0) # Used for animation +var will_jump := false + +const JUMP := 4 +const PLAYER_MOVE_SPEED := 4 + +@onready var Camera = $Camera3D +@onready var GRAVITY = ProjectSettings.get("physics/3d/default_gravity") / 1000 + +func do_jump() -> void: + if not self.is_on_floor(): + return + + if self.will_jump: + return + will_jump = true + + await get_tree().create_timer(0.05).timeout + + self.velocity.y += JUMP + + await get_tree().create_timer(0.1).timeout + will_jump = false + + +func _process(_delta: float) -> void: + """ + Allow the player to move the camera with WASD + See Project settings -> Input map for keyboard bindings + """ + if Input.is_action_just_pressed("space"): + self.do_jump() + + var amount: float = 1 + + if not is_on_floor() or will_jump: + amount = 0.2 + + if Input.is_action_pressed("up"): + self.direction.z -= amount + + elif Input.is_action_pressed("down"): + self.direction.z += amount + + if Input.is_action_pressed("left"): + self.direction.x -= amount + + elif Input.is_action_pressed("right"): + self.direction.x += amount + + self.direction = self.direction.clamp(Vector3(-1, -1, -1), Vector3(1, 1, 1)) + + +func _physics_process(delta: float) -> void: + # Apply friction + if self.is_on_floor(): + self.direction *= Vector3.ONE - Vector3(0.9, 1.0, 0.9) * (10 * delta) + + # Preserve the Y velocity from the previous frame + self.velocity = Vector3(0, self.velocity.y, 0) + + # Always add velocity even when we're in the air + self.velocity += get_transform().basis.x * direction.x * PLAYER_MOVE_SPEED + self.velocity += get_transform().basis.z * direction.z * PLAYER_MOVE_SPEED + + # Apply less gravity if we were on the floor last frame + # This helps our KinematicBody to avoid physics jitter + if self.is_on_floor(): + self.velocity -= Vector3(0, GRAVITY / 100, 0) + else: + self.velocity -= Vector3(0, GRAVITY, 0) + + self.move_and_slide() + + for i in get_slide_collision_count(): + var collision = get_slide_collision(i) + var collider = collision.get_collider() + if not collider is RigidBody3D: + continue + + collider.apply_central_impulse(-collision.get_normal() * 0.8) + collider.apply_impulse(-collision.get_normal() * 0.01, collision.get_position()) diff --git a/demo/high_level_3D/player/Player.tscn b/demo/high_level_3D/player/Player.tscn new file mode 100644 index 00000000..235595ee --- /dev/null +++ b/demo/high_level_3D/player/Player.tscn @@ -0,0 +1,22 @@ +[gd_scene load_steps=4 format=3 uid="uid://bsguup0m8xqxp"] + +[ext_resource type="Script" path="res://high_level_3D/player/Player.gd" id="1"] +[ext_resource type="Script" path="res://high_level_3D/player/Camera.gd" id="2_fstpc"] + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_di3pi"] + +[node name="Player" type="CharacterBody3D"] +platform_on_leave = 2 +script = ExtResource("1") + +[node name="Camera3D" type="Camera3D" parent="."] +transform = Transform3D(1, 9.09495e-15, 0, -9.09495e-15, 1, 0, 0, 0, 1, -9.31323e-10, 1.67742, 0.13534) +cull_mask = 524287 +current = true +fov = 50.0 +far = 200.0 +script = ExtResource("2_fstpc") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0151734, 1.01978, 0.234704) +shape = SubResource("CapsuleShape3D_di3pi") diff --git a/demo/high_level_3D/rollingball.gd b/demo/high_level_3D/rollingball.gd new file mode 100644 index 00000000..1d878aee --- /dev/null +++ b/demo/high_level_3D/rollingball.gd @@ -0,0 +1,10 @@ +extends FmodEventEmitter3D + + +func _process(_delta: float): + + var parent: RigidBody3D = get_parent() + var value:= parent.angular_velocity.length() / 2 + if value < 0.1: + value = 0 + self["event_parameter/Speed/value"] = value diff --git a/demo/high_level_3D/selfdestroy.gd b/demo/high_level_3D/selfdestroy.gd new file mode 100644 index 00000000..5b4bafeb --- /dev/null +++ b/demo/high_level_3D/selfdestroy.gd @@ -0,0 +1,7 @@ +extends FmodEventEmitter3D + + + +func _process(delta: float) -> void: + if Input.is_action_just_pressed("kill"): + self.queue_free() diff --git a/demo/low_level/Emitter.gd b/demo/low_level/Emitter.gd deleted file mode 100644 index 93f09631..00000000 --- a/demo/low_level/Emitter.gd +++ /dev/null @@ -1,26 +0,0 @@ -extends Sprite2D - -var isPlaying: bool = true -var event: FmodEvent = null - -# Called when the node enters the scene tree for the first time. -func _ready(): - event = FmodServer.create_event_instance("event:/Vehicles/Car Engine") - event.set_2d_attributes(self.global_transform) - event.set_parameter_by_name("RPM", 600) - event.set_volume( 2) - event.start() - -# warning-ignore:unused_argument -func _process(_delta): - if Input.is_action_just_pressed("space"): - isPlaying = !isPlaying - if(isPlaying): - print("Mower playing") - event.set_paused(false) - else: - print("Mower paused") - event.set_paused(true) - elif Input.is_action_just_pressed("kill_event"): - self.queue_free() - diff --git a/demo/low_level/FmodTest.gd b/demo/low_level/FmodTest.gd deleted file mode 100644 index 964126bc..00000000 --- a/demo/low_level/FmodTest.gd +++ /dev/null @@ -1,14 +0,0 @@ -extends Node - -# Called when the node enters the scene tree for the first time. -func _enter_tree(): - # load banks -# warning-ignore:return_value_discarded - FmodServer.load_bank("res://assets/Banks/Master.strings.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) -# warning-ignore:return_value_discarded - FmodServer.load_bank("res://assets/Banks/Master.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) -# warning-ignore:return_value_discarded - FmodServer.load_bank("res://assets/Banks/Music.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) -# warning-ignore:return_value_discarded - FmodServer.load_bank("res://assets/Banks/Vehicles.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) - print("Fmod initialised.") diff --git a/demo/low_level/ChangeColor.gd b/demo/low_level_2D/ChangeColor.gd similarity index 100% rename from demo/low_level/ChangeColor.gd rename to demo/low_level_2D/ChangeColor.gd diff --git a/demo/low_level_2D/Emitter.gd b/demo/low_level_2D/Emitter.gd new file mode 100644 index 00000000..249d7027 --- /dev/null +++ b/demo/low_level_2D/Emitter.gd @@ -0,0 +1,28 @@ +extends Sprite2D + +var isPlaying: bool = true +var event: FmodEvent = null + +# Called when the node enters the scene tree for the first time. +func _ready(): + event = FmodServer.create_event_instance("event:/Vehicles/Car Engine") + event.set_2d_attributes(self.global_transform) + event.set_parameter_by_name("RPM", 600) + event.set_volume( 2) + event.start() + +# warning-ignore:unused_argument +func _process(_delta): + if Input.is_action_just_pressed("space"): + isPlaying = !isPlaying + if(isPlaying): + print("Mower playing") + event.set_paused(false) + else: + print("Mower paused") + event.set_paused(true) + elif Input.is_action_just_pressed("kill_event"): + self.queue_free() + var time = Time.get_ticks_msec()/1000.0 + self.position.x = 300 * sin(time) + diff --git a/demo/low_level/EnterAndLeave.gd b/demo/low_level_2D/EnterAndLeave.gd similarity index 100% rename from demo/low_level/EnterAndLeave.gd rename to demo/low_level_2D/EnterAndLeave.gd diff --git a/demo/low_level/EnterandLeave2.gd b/demo/low_level_2D/EnterandLeave2.gd similarity index 100% rename from demo/low_level/EnterandLeave2.gd rename to demo/low_level_2D/EnterandLeave2.gd diff --git a/demo/low_level/FmodScriptTest.tscn b/demo/low_level_2D/FmodScriptTest.tscn similarity index 83% rename from demo/low_level/FmodScriptTest.tscn rename to demo/low_level_2D/FmodScriptTest.tscn index 230aa9cc..97dcc7ef 100644 --- a/demo/low_level/FmodScriptTest.tscn +++ b/demo/low_level_2D/FmodScriptTest.tscn @@ -1,12 +1,12 @@ [gd_scene load_steps=11 format=3 uid="uid://cs8nm6h12whh1"] -[ext_resource type="Script" path="res://low_level/FmodTest.gd" id="1_oc8v3"] -[ext_resource type="Texture2D" uid="uid://jsofj31xeeto" path="res://icon.png" id="2_mamb7"] -[ext_resource type="Script" path="res://low_level/Emitter.gd" id="3_fx7d3"] -[ext_resource type="Script" path="res://low_level/Listener.gd" id="4_448uv"] -[ext_resource type="Script" path="res://low_level/EnterAndLeave.gd" id="5_85yno"] -[ext_resource type="Script" path="res://low_level/ChangeColor.gd" id="6_fyoq1"] -[ext_resource type="Script" path="res://low_level/EnterandLeave2.gd" id="7_6vajh"] +[ext_resource type="Script" path="res://low_level_2D/FmodTest.gd" id="1_oc8v3"] +[ext_resource type="Texture2D" uid="uid://d4blkybu5ojj6" path="res://icon.png" id="2_mamb7"] +[ext_resource type="Script" path="res://low_level_2D/Emitter.gd" id="3_fx7d3"] +[ext_resource type="Script" path="res://low_level_2D/Listener.gd" id="4_448uv"] +[ext_resource type="Script" path="res://low_level_2D/EnterAndLeave.gd" id="5_85yno"] +[ext_resource type="Script" path="res://low_level_2D/ChangeColor.gd" id="6_fyoq1"] +[ext_resource type="Script" path="res://low_level_2D/EnterandLeave2.gd" id="7_6vajh"] [sub_resource type="RectangleShape2D" id="1"] size = Vector2(87.7038, 82.621) @@ -23,7 +23,7 @@ position = Vector2(0, -3) script = ExtResource("1_oc8v3") [node name="Node2D" type="Node2D" parent="."] -position = Vector2(500, 500) +position = Vector2(691, 495) [node name="Emitter" type="Sprite2D" parent="Node2D"] self_modulate = Color(0.988235, 0, 0, 1) @@ -82,7 +82,7 @@ Several instances of the same sound can be played at the same time " [node name="SoundArea2" type="Area2D" parent="."] -position = Vector2(818.43, 97.5364) +position = Vector2(948, 98) script = ExtResource("6_fyoq1") [node name="CollisionShape2D" type="CollisionShape2D" parent="SoundArea2"] diff --git a/demo/low_level_2D/FmodTest.gd b/demo/low_level_2D/FmodTest.gd new file mode 100644 index 00000000..21ebb85a --- /dev/null +++ b/demo/low_level_2D/FmodTest.gd @@ -0,0 +1,14 @@ +extends Node + +# Called when the node enters the scene tree for the first time. +func _enter_tree(): + # load banks +# warning-ignore:return_value_discarded + FmodServer.load_bank("res://assets/Banks/Master.strings.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) +# warning-ignore:return_value_discarded + FmodServer.load_bank("res://assets/Banks/Master.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) +# warning-ignore:return_value_discarded + FmodServer.load_bank("res://assets/Banks/Music.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) +# warning-ignore:return_value_discarded + FmodServer.load_bank("res://assets/Banks/Vehicles.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL) + print("Fmod initialised.") diff --git a/demo/low_level/Listener.gd b/demo/low_level_2D/Listener.gd similarity index 100% rename from demo/low_level/Listener.gd rename to demo/low_level_2D/Listener.gd diff --git a/demo/low_level/Listener2.gd b/demo/low_level_2D/Listener2.gd similarity index 100% rename from demo/low_level/Listener2.gd rename to demo/low_level_2D/Listener2.gd diff --git a/demo/project.godot b/demo/project.godot index 33f6c25e..c555a14f 100644 --- a/demo/project.godot +++ b/demo/project.godot @@ -21,7 +21,7 @@ General/default_listener_count=1 DSP/dsp_buffer_size=512 DSP/dsp_buffer_count=4 "3D Settings/doppler_scale"=1.0 -"3D Settings/distance_factor"=32.0 +"3D Settings/distance_factor"=64.0 "3D Settings/rolloff_scale"=1.0 General/banks_path="res://assets/Banks" General/should_load_by_name=false @@ -33,7 +33,7 @@ modules="org/godotengine/godot/FmodSingleton" [application] config/name="Fmod Demo" -run/main_scene="res://low_level/FmodScriptTest.tscn" +run/main_scene="res://low_level_2D/FmodScriptTest.tscn" config/features=PackedStringArray("4.2") config/icon="res://icon.png" @@ -164,6 +164,10 @@ engine_power_down={ ] } +[physics] + +3d/default_gravity=98.0 + [rendering] textures/vram_compression/import_etc2_astc=true