├── Godot ├── .gitattributes ├── .gitignore ├── CollisionBasedPathfinding │ ├── .gut_editor_config.json │ ├── .gut_editor_shortcuts.cfg │ ├── TODO.gd │ ├── addons │ │ ├── Todo_Manager │ │ │ ├── ColourPicker.gd │ │ │ ├── Current.gd │ │ │ ├── Dock.gd │ │ │ ├── Pattern.gd │ │ │ ├── Project.gd │ │ │ ├── UI │ │ │ │ ├── ColourPicker.tscn │ │ │ │ ├── Dock.tscn │ │ │ │ └── Pattern.tscn │ │ │ ├── doc │ │ │ │ ├── example.gd │ │ │ │ └── images │ │ │ │ │ ├── Instruct1.png │ │ │ │ │ ├── Instruct2.png │ │ │ │ │ ├── Instruct3.png │ │ │ │ │ ├── Instruct4.png │ │ │ │ │ ├── Instruct5.png │ │ │ │ │ ├── TODO_Manager_Logo.png │ │ │ │ │ ├── example1.png │ │ │ │ │ └── example2.png │ │ │ ├── plugin.cfg │ │ │ ├── plugin.gd │ │ │ ├── todo.cfg │ │ │ ├── todoItem_class.gd │ │ │ └── todo_class.gd │ │ └── gut │ │ │ ├── GutScene.gd │ │ │ ├── GutScene.tscn │ │ │ ├── LICENSE.md │ │ │ ├── UserFileViewer.gd │ │ │ ├── UserFileViewer.tscn │ │ │ ├── autofree.gd │ │ │ ├── comparator.gd │ │ │ ├── compare_result.gd │ │ │ ├── diff_formatter.gd │ │ │ ├── diff_tool.gd │ │ │ ├── double_templates │ │ │ ├── function_template.txt │ │ │ └── script_template.txt │ │ │ ├── doubler.gd │ │ │ ├── fonts │ │ │ ├── AnonymousPro-Bold.ttf │ │ │ ├── AnonymousPro-BoldItalic.ttf │ │ │ ├── AnonymousPro-Italic.ttf │ │ │ ├── AnonymousPro-Regular.ttf │ │ │ ├── CourierPrime-Bold.ttf │ │ │ ├── CourierPrime-BoldItalic.ttf │ │ │ ├── CourierPrime-Italic.ttf │ │ │ ├── CourierPrime-Regular.ttf │ │ │ ├── LobsterTwo-Bold.ttf │ │ │ ├── LobsterTwo-BoldItalic.ttf │ │ │ ├── LobsterTwo-Italic.ttf │ │ │ ├── LobsterTwo-Regular.ttf │ │ │ └── OFL.txt │ │ │ ├── get_native_script.gd │ │ │ ├── gui │ │ │ ├── BottomPanelShortcuts.gd │ │ │ ├── BottomPanelShortcuts.tscn │ │ │ ├── GutBottomPanel.gd │ │ │ ├── GutBottomPanel.tscn │ │ │ ├── GutRunner.gd │ │ │ ├── GutRunner.tscn │ │ │ ├── ShortcutButton.gd │ │ │ ├── ShortcutButton.tscn │ │ │ ├── gut_config_gui.gd │ │ │ └── open_editors.gd │ │ │ ├── gut.gd │ │ │ ├── gut_cmdln.gd │ │ │ ├── gut_config.gd │ │ │ ├── gut_plugin.gd │ │ │ ├── hook_script.gd │ │ │ ├── icon.png │ │ │ ├── junit_xml_export.gd │ │ │ ├── logger.gd │ │ │ ├── method_maker.gd │ │ │ ├── one_to_many.gd │ │ │ ├── optparse.gd │ │ │ ├── orphan_counter.gd │ │ │ ├── parameter_factory.gd │ │ │ ├── parameter_handler.gd │ │ │ ├── plugin.cfg │ │ │ ├── plugin_control.gd │ │ │ ├── printers.gd │ │ │ ├── result_exporter.gd │ │ │ ├── signal_watcher.gd │ │ │ ├── source_code_pro.fnt │ │ │ ├── spy.gd │ │ │ ├── strutils.gd │ │ │ ├── stub_params.gd │ │ │ ├── stubber.gd │ │ │ ├── summary.gd │ │ │ ├── test.gd │ │ │ ├── test_collector.gd │ │ │ ├── thing_counter.gd │ │ │ └── utils.gd │ ├── asset_lib_icon.png │ ├── default_env.tres │ ├── icon.png │ ├── new_builder │ │ ├── BuilderTestMap.gd │ │ ├── BuilderTestMap.tscn │ │ ├── CollisionGraph.gd │ │ ├── CollisionGraphBuilder.gd │ │ ├── PerformanceTest.gd │ │ ├── PerformanceTest.tscn │ │ ├── PointsData.gd │ │ └── StaticFunctions.gd │ ├── old_builder │ │ ├── AStarGraphBuilder.gd │ │ ├── LargeMap.gd │ │ ├── LargeMap.tscn │ │ ├── MultipleSectors.gd │ │ ├── MultipleSectors.tscn │ │ ├── Obstacle.tscn │ │ ├── Sector.gd │ │ ├── SelectionComponent.gd │ │ ├── SelectionComponent.tscn │ │ ├── Unit.gd │ │ └── Unit.tscn │ ├── project.godot │ ├── projects │ │ └── NodeGuard.gd │ └── tests │ │ ├── Gut.tscn │ │ ├── GutTestBase.gd │ │ ├── Test_CollisionGraphBuilder.gd │ │ ├── Test_Graph.gd │ │ ├── Test_Map1.gd │ │ ├── Test_Map2.gd │ │ ├── Test_PointsData.gd │ │ ├── Test_StaticFunctions.gd │ │ └── files │ │ ├── Sector.gd │ │ ├── TestMap1.tscn │ │ ├── TestMap2.tscn │ │ ├── TestingFunctions.gd │ │ ├── Unit.gd │ │ └── Unit.tscn ├── DungeonCrawler │ ├── .gitattributes │ ├── .gitignore │ ├── .gut_editor_config.json │ ├── .gut_editor_shortcuts.cfg │ ├── addons │ │ ├── Todo_Manager │ │ │ ├── ColourPicker.gd │ │ │ ├── Current.gd │ │ │ ├── Dock.gd │ │ │ ├── Pattern.gd │ │ │ ├── Project.gd │ │ │ ├── UI │ │ │ │ ├── ColourPicker.tscn │ │ │ │ ├── Dock.tscn │ │ │ │ └── Pattern.tscn │ │ │ ├── doc │ │ │ │ ├── example.gd │ │ │ │ └── images │ │ │ │ │ ├── Instruct1.png │ │ │ │ │ ├── Instruct2.png │ │ │ │ │ ├── Instruct3.png │ │ │ │ │ ├── Instruct4.png │ │ │ │ │ ├── Instruct5.png │ │ │ │ │ ├── TODO_Manager_Logo.png │ │ │ │ │ ├── example1.png │ │ │ │ │ └── example2.png │ │ │ ├── plugin.cfg │ │ │ ├── plugin.gd │ │ │ ├── todo.cfg │ │ │ ├── todoItem_class.gd │ │ │ └── todo_class.gd │ │ ├── gut │ │ │ ├── GutScene.gd │ │ │ ├── GutScene.tscn │ │ │ ├── LICENSE.md │ │ │ ├── UserFileViewer.gd │ │ │ ├── UserFileViewer.tscn │ │ │ ├── autofree.gd │ │ │ ├── comparator.gd │ │ │ ├── compare_result.gd │ │ │ ├── diff_formatter.gd │ │ │ ├── diff_tool.gd │ │ │ ├── double_templates │ │ │ │ ├── function_template.txt │ │ │ │ └── script_template.txt │ │ │ ├── doubler.gd │ │ │ ├── fonts │ │ │ │ ├── AnonymousPro-Bold.ttf │ │ │ │ ├── AnonymousPro-BoldItalic.ttf │ │ │ │ ├── AnonymousPro-Italic.ttf │ │ │ │ ├── AnonymousPro-Regular.ttf │ │ │ │ ├── CourierPrime-Bold.ttf │ │ │ │ ├── CourierPrime-BoldItalic.ttf │ │ │ │ ├── CourierPrime-Italic.ttf │ │ │ │ ├── CourierPrime-Regular.ttf │ │ │ │ ├── LobsterTwo-Bold.ttf │ │ │ │ ├── LobsterTwo-BoldItalic.ttf │ │ │ │ ├── LobsterTwo-Italic.ttf │ │ │ │ ├── LobsterTwo-Regular.ttf │ │ │ │ └── OFL.txt │ │ │ ├── get_native_script.gd │ │ │ ├── gui │ │ │ │ ├── BottomPanelShortcuts.gd │ │ │ │ ├── BottomPanelShortcuts.tscn │ │ │ │ ├── GutBottomPanel.gd │ │ │ │ ├── GutBottomPanel.tscn │ │ │ │ ├── GutRunner.gd │ │ │ │ ├── GutRunner.tscn │ │ │ │ ├── ShortcutButton.gd │ │ │ │ ├── ShortcutButton.tscn │ │ │ │ ├── gut_config_gui.gd │ │ │ │ └── open_editors.gd │ │ │ ├── gut.gd │ │ │ ├── gut_cmdln.gd │ │ │ ├── gut_config.gd │ │ │ ├── gut_plugin.gd │ │ │ ├── hook_script.gd │ │ │ ├── icon.png │ │ │ ├── junit_xml_export.gd │ │ │ ├── logger.gd │ │ │ ├── method_maker.gd │ │ │ ├── one_to_many.gd │ │ │ ├── optparse.gd │ │ │ ├── orphan_counter.gd │ │ │ ├── parameter_factory.gd │ │ │ ├── parameter_handler.gd │ │ │ ├── plugin.cfg │ │ │ ├── plugin_control.gd │ │ │ ├── printers.gd │ │ │ ├── result_exporter.gd │ │ │ ├── signal_watcher.gd │ │ │ ├── source_code_pro.fnt │ │ │ ├── spy.gd │ │ │ ├── strutils.gd │ │ │ ├── stub_params.gd │ │ │ ├── stubber.gd │ │ │ ├── summary.gd │ │ │ ├── test.gd │ │ │ ├── test_collector.gd │ │ │ ├── thing_counter.gd │ │ │ └── utils.gd │ │ └── quentincaffeino │ │ │ ├── array-utils │ │ │ ├── .gitignore │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ └── src │ │ │ │ ├── Collection.gd │ │ │ │ ├── QueueCollection.gd │ │ │ │ └── Utils.gd │ │ │ ├── callback │ │ │ ├── .gitignore │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ ├── assets │ │ │ │ └── translations │ │ │ │ │ └── errors.en.gd │ │ │ └── src │ │ │ │ ├── AbstractCallback.gd │ │ │ │ ├── Callback.gd │ │ │ │ ├── CallbackBuilder.gd │ │ │ │ ├── FuncRefCallback.gd │ │ │ │ └── Utils.gd │ │ │ ├── console │ │ │ ├── .gutconfig.json │ │ │ ├── DefaultActions.gd │ │ │ ├── assets │ │ │ │ └── fonts │ │ │ │ │ └── source-code-pro │ │ │ │ │ ├── LICENSE.md │ │ │ │ │ ├── OTF │ │ │ │ │ ├── SourceCodePro-Black.otf │ │ │ │ │ ├── SourceCodePro-BlackIt.otf │ │ │ │ │ ├── SourceCodePro-Bold.otf │ │ │ │ │ ├── SourceCodePro-BoldIt.otf │ │ │ │ │ ├── SourceCodePro-ExtraLight.otf │ │ │ │ │ ├── SourceCodePro-ExtraLightIt.otf │ │ │ │ │ ├── SourceCodePro-It.otf │ │ │ │ │ ├── SourceCodePro-Light.otf │ │ │ │ │ ├── SourceCodePro-LightIt.otf │ │ │ │ │ ├── SourceCodePro-Medium.otf │ │ │ │ │ ├── SourceCodePro-MediumIt.otf │ │ │ │ │ ├── SourceCodePro-Regular.otf │ │ │ │ │ ├── SourceCodePro-Semibold.otf │ │ │ │ │ └── SourceCodePro-SemiboldIt.otf │ │ │ │ │ └── README.md │ │ │ ├── docs │ │ │ │ ├── Type.md │ │ │ │ └── generated │ │ │ │ │ ├── AbstractCallback.md │ │ │ │ │ ├── ActionService.md │ │ │ │ │ ├── AnyType.md │ │ │ │ │ ├── Argument.md │ │ │ │ │ ├── ArgumentFactory.md │ │ │ │ │ ├── BaseCommands.md │ │ │ │ │ ├── BaseRangeType.md │ │ │ │ │ ├── BaseRegexCheckedType.md │ │ │ │ │ ├── BaseType.md │ │ │ │ │ ├── BoolType.md │ │ │ │ │ ├── Callback.md │ │ │ │ │ ├── CallbackBuilder.md │ │ │ │ │ ├── Collection.md │ │ │ │ │ ├── Command.md │ │ │ │ │ ├── CommandAutocomplete.md │ │ │ │ │ ├── CommandBuilder.md │ │ │ │ │ ├── CommandCollection.md │ │ │ │ │ ├── CommandGroup.md │ │ │ │ │ ├── CommandService.md │ │ │ │ │ ├── Console.md │ │ │ │ │ ├── ConsoleLine.md │ │ │ │ │ ├── DefaultActionServiceFactory.md │ │ │ │ │ ├── DefaultActions.md │ │ │ │ │ ├── Error.md │ │ │ │ │ ├── FilterType.md │ │ │ │ │ ├── FloatRangeType.md │ │ │ │ │ ├── FloatType.md │ │ │ │ │ ├── FuncRefCallback.md │ │ │ │ │ ├── History.md │ │ │ │ │ ├── IntRangeType.md │ │ │ │ │ ├── IntType.md │ │ │ │ │ ├── Iterator.md │ │ │ │ │ ├── Logger.md │ │ │ │ │ ├── QueueCollection.md │ │ │ │ │ ├── RegExLib.md │ │ │ │ │ ├── Result.md │ │ │ │ │ ├── SnapshotCollection.md │ │ │ │ │ ├── StringType.md │ │ │ │ │ ├── Trie.md │ │ │ │ │ ├── TypeFactory.md │ │ │ │ │ ├── Utils.md │ │ │ │ │ ├── Vector2Type.md │ │ │ │ │ ├── Vector3Type.md │ │ │ │ │ └── errors.en.md │ │ │ ├── plugin.cfg │ │ │ ├── plugin.gd │ │ │ ├── src │ │ │ │ ├── Argument │ │ │ │ │ ├── Argument.gd │ │ │ │ │ └── ArgumentFactory.gd │ │ │ │ ├── Command │ │ │ │ │ ├── Command.gd │ │ │ │ │ ├── CommandBuilder.gd │ │ │ │ │ ├── CommandCollection.gd │ │ │ │ │ └── CommandService.gd │ │ │ │ ├── Console.gd │ │ │ │ ├── Console.tscn │ │ │ │ ├── ConsoleLine.gd │ │ │ │ ├── Misc │ │ │ │ │ ├── BaseCommands.gd │ │ │ │ │ ├── Error.gd │ │ │ │ │ ├── History.gd │ │ │ │ │ ├── Logger.gd │ │ │ │ │ ├── Result.gd │ │ │ │ │ └── Trie.gd │ │ │ │ └── Type │ │ │ │ │ ├── AnyType.gd │ │ │ │ │ ├── BaseRangeType.gd │ │ │ │ │ ├── BaseRegexCheckedType.gd │ │ │ │ │ ├── BaseType.gd │ │ │ │ │ ├── BoolType.gd │ │ │ │ │ ├── FilterType.gd │ │ │ │ │ ├── FloatRangeType.gd │ │ │ │ │ ├── FloatType.gd │ │ │ │ │ ├── IntRangeType.gd │ │ │ │ │ ├── IntType.gd │ │ │ │ │ ├── StringType.gd │ │ │ │ │ ├── TypeFactory.gd │ │ │ │ │ ├── Vector2Type.gd │ │ │ │ │ └── Vector3Type.gd │ │ │ └── tests │ │ │ │ ├── tests.tscn │ │ │ │ └── unit │ │ │ │ ├── Argument │ │ │ │ ├── test_argument.gd │ │ │ │ └── test_argument_factory.gd │ │ │ │ ├── Type │ │ │ │ ├── test_base_regex_cheched_type.gd │ │ │ │ ├── test_bool_type.gd │ │ │ │ ├── test_float_type.gd │ │ │ │ ├── test_int_type.gd │ │ │ │ ├── test_string_type.gd │ │ │ │ └── test_type_factory.gd │ │ │ │ └── test_trie.gd │ │ │ ├── iterator │ │ │ ├── .gitignore │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ └── src │ │ │ │ └── Iterator.gd │ │ │ └── regexlib │ │ │ ├── .gitignore │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ └── src │ │ │ └── RegExLib.gd │ ├── data │ │ ├── Module1 │ │ │ ├── Module1.gd │ │ │ ├── items │ │ │ │ ├── HelmetBarbute.tscn │ │ │ │ ├── Module1ItemDatabase.gd │ │ │ │ └── helmet_other.png │ │ │ ├── levels │ │ │ │ └── Level2.tscn │ │ │ └── units │ │ │ │ ├── Dwarf.tscn │ │ │ │ └── deepdwarf_a.png │ │ ├── Module2 │ │ │ ├── Module2.gd │ │ │ ├── items │ │ │ │ └── Module2ItemDatabase.gd │ │ │ ├── levels │ │ │ │ └── Level2.tscn │ │ │ └── units │ │ │ │ ├── Elf.tscn │ │ │ │ ├── elf.png │ │ │ │ └── wizard.png │ │ ├── common │ │ │ ├── assets │ │ │ │ ├── door │ │ │ │ │ ├── dngn_closed_door.png │ │ │ │ │ ├── dngn_open_door.png │ │ │ │ │ ├── gate_closed_left.png │ │ │ │ │ ├── gate_closed_middle.png │ │ │ │ │ ├── gate_closed_right.png │ │ │ │ │ ├── gate_open_left.png │ │ │ │ │ ├── gate_open_middle.png │ │ │ │ │ └── gate_open_right.png │ │ │ │ ├── floor │ │ │ │ │ ├── floor_cobblestone_a.png │ │ │ │ │ ├── floor_cobblestone_b.png │ │ │ │ │ ├── floor_cobblestone_f.png │ │ │ │ │ └── floor_cobblestone_j.png │ │ │ │ ├── stairs │ │ │ │ │ ├── stone_stairs_down.png │ │ │ │ │ └── stone_stairs_up.png │ │ │ │ └── wall │ │ │ │ │ ├── wall_brick1_a.png │ │ │ │ │ ├── wall_brick1_b.png │ │ │ │ │ ├── wall_brick1_e.png │ │ │ │ │ └── wall_brick1_i.png │ │ │ ├── items │ │ │ │ ├── CommonItemDatabase.gd │ │ │ │ ├── Helmet.tscn │ │ │ │ └── helmet.png │ │ │ ├── levels │ │ │ │ ├── FOVTest.tscn │ │ │ │ ├── Level1.tscn │ │ │ │ ├── ground.tres │ │ │ │ └── walls.tres │ │ │ └── units │ │ │ │ ├── Dwarf.tscn │ │ │ │ ├── Ghoul.tscn │ │ │ │ ├── Knight.tscn │ │ │ │ ├── dwarf.png │ │ │ │ ├── ghoul_a.png │ │ │ │ └── knight.png │ │ └── white_square.png │ ├── debug │ │ ├── CommandHolder.gd │ │ ├── ConsoleLogger.gd │ │ ├── Debug.gd │ │ ├── Debug.tscn │ │ ├── DebugCommands.gd │ │ ├── DebugWindow.gd │ │ ├── DebugWindow.tscn │ │ ├── FileLogger.gd │ │ ├── FpsLabel.gd │ │ ├── LoggerBase.gd │ │ └── Variables.gd │ ├── default_env.tres │ ├── engine │ │ ├── Connector.gd │ │ ├── Globals.gd │ │ ├── IntroScene.tscn │ │ ├── Module.gd │ │ ├── ModuleData.gd │ │ ├── SavingModule.gd │ │ ├── SelectionBox.gd │ │ ├── SelectionBox.tscn │ │ ├── SelectionComponent.gd │ │ ├── SelectionComponent.tscn │ │ ├── Utility.gd │ │ ├── agent │ │ │ ├── AgentBase.gd │ │ │ ├── EnemyAgent.gd │ │ │ ├── PlayerAgent.gd │ │ │ ├── PlayerAgent.tscn │ │ │ └── UnitGrabbingAgent.gd │ │ ├── game │ │ │ ├── GUI.gd │ │ │ ├── GameCommands.gd │ │ │ ├── GameCreator.gd │ │ │ ├── GameMenu.gd │ │ │ ├── GameMenu.tscn │ │ │ ├── GameScene.gd │ │ │ ├── GameScene.tscn │ │ │ ├── LevelLoader.gd │ │ │ ├── LogLabel.gd │ │ │ ├── PlayerManager.gd │ │ │ └── PlayerPause.gd │ │ ├── gui │ │ │ ├── AcceptDialog.gd │ │ │ ├── CharacterCreation.gd │ │ │ ├── CharacterCreation.tscn │ │ │ ├── ChooseModuleDialog.gd │ │ │ ├── DevButtons.gd │ │ │ ├── LoadGameDialog.tscn │ │ │ ├── MainMenuScene.gd │ │ │ ├── MainMenuScene.tscn │ │ │ ├── NewGameScene.gd │ │ │ ├── NewGameScene.tscn │ │ │ ├── PlayerData.gd │ │ │ ├── SaveGameDialog.tscn │ │ │ ├── SerializationDialog.gd │ │ │ └── lobby │ │ │ │ ├── Lobby.tscn │ │ │ │ ├── LobbyBase.gd │ │ │ │ ├── NewGameLobby.gd │ │ │ │ ├── NewGameLobby.tscn │ │ │ │ ├── UnitLimit.gd │ │ │ │ ├── UnitLine.gd │ │ │ │ └── UnitLine.tscn │ │ ├── items │ │ │ ├── ItemBase.gd │ │ │ ├── ItemBase.tscn │ │ │ ├── ItemDatabaseBase.gd │ │ │ └── ItemDbFactory.gd │ │ ├── level │ │ │ ├── Entrance.tscn │ │ │ ├── FogOfWar.gd │ │ │ ├── FogVision.tscn │ │ │ ├── FogVisionBase.gd │ │ │ ├── LevelBase.gd │ │ │ ├── LevelBase.tscn │ │ │ ├── LevelCommands.gd │ │ │ ├── LevelItems.gd │ │ │ ├── LevelUnits.gd │ │ │ ├── RaycastFogVision.gd │ │ │ ├── Spawn.gd │ │ │ ├── Spawn.tscn │ │ │ ├── SquareFogVision.gd │ │ │ └── Tilemap.gd │ │ └── units │ │ │ ├── UnitBase.gd │ │ │ ├── UnitBase.tscn │ │ │ └── UnitCreationData.gd │ ├── export_presets.cfg │ ├── icon.png │ ├── project.godot │ ├── projects │ │ ├── FileFinder │ │ │ └── FileFinder.gd │ │ ├── SceneSwitcher │ │ │ ├── SceneSwitcher.gd │ │ │ └── SceneSwitcher.tscn │ │ ├── Serialization │ │ │ ├── HierarchicalSerializer.gd │ │ │ ├── NodeGuard.gd │ │ │ ├── Probe.gd │ │ │ └── SaveGameFile.gd │ │ └── TypeWrappers │ │ │ ├── MapWrapper.gd │ │ │ ├── NodeGuard.gd │ │ │ └── SetWrapper.gd │ ├── save │ │ ├── 4dwarfs.tres │ │ ├── killedGhould.tres │ │ ├── killedPlayerUnit.sav.tres │ │ ├── movement.tres │ │ └── removedHelmet.tres │ └── tests │ │ ├── Gut.tscn │ │ ├── GutTestBase.gd │ │ └── items │ │ ├── DB0 │ │ └── EmptyItemDB.gd │ │ ├── DB1 │ │ ├── Helmet.tscn │ │ ├── ItemDB1.gd │ │ └── helmet.png │ │ ├── Test_ItemDatabaseAccess.gd │ │ ├── Test_ItemDatabaseCreation.gd │ │ ├── Test_ItemDatabaseStaticFunctions.gd │ │ └── duplicates │ │ ├── BarBazBase.gd │ │ └── FooBarBase.gd ├── EngineIssues │ ├── AutocompleteOverridenByGetNode │ │ ├── DerivedParticles2D.gd │ │ ├── Node.gd │ │ ├── Node.tscn │ │ ├── OtherScene.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── AutoloadBreaksInheritance │ │ ├── AutoloadMe.gd │ │ ├── RunMe.gd │ │ ├── RunMe.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── ChildrenOfForeignNodes_godot32 │ │ ├── Node2D.tscn │ │ ├── PasteIntoForeign.tscn │ │ ├── SelectSprite.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── ChildrenOfForeignNodes_godot40 │ │ ├── Node2D.tscn │ │ ├── PasteIntoForeign.tscn │ │ ├── SelectSprite.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── CreatingObjectsLeaksMemory │ │ ├── CreatingObjectsLeaksMemory.gd │ │ ├── CreatingObjectsLeaksMemory.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── InspectorDictionaryCollapse │ │ ├── Node.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ ├── new_script.gd │ │ └── project.godot │ ├── LocksAndGroups │ │ ├── Inner.tscn │ │ ├── Outer.tscn │ │ ├── addons │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── metadata_inspector │ │ │ │ ├── CustomInspectorPlugin.gd │ │ │ │ ├── RealtimeUpdater.gd │ │ │ │ ├── TypeFormattingLogic.gd │ │ │ │ ├── metadata_inspector.gd │ │ │ │ └── plugin.cfg │ │ ├── default_env.tres │ │ ├── delme │ │ │ ├── .gdignore │ │ │ ├── demo1.jpg │ │ │ ├── demo2.jpg │ │ │ └── icon.png │ │ ├── icon.png │ │ └── project.godot │ ├── NestedSceneInstancesDuplication_godot32 │ │ ├── Base.gd │ │ ├── Base.tscn │ │ ├── DuplicationScene1.tscn │ │ ├── DuplicationScene2.tscn │ │ ├── DuplicationScene3.tscn │ │ ├── DuplicationScene4.tscn │ │ ├── DuplicationScene5.tscn │ │ ├── Inherited.tscn │ │ ├── InheritedInstancedTriple.tscn │ │ ├── Instanced.tscn │ │ ├── InstancedDouble.tscn │ │ ├── InstancedQuadruple.tscn │ │ ├── InstancedTriple.tscn │ │ ├── Sprite.gd │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── NestedSceneInstancesDuplication_godot40 │ │ ├── #31744 │ │ │ ├── Scene1.tscn │ │ │ ├── Scene2.tscn │ │ │ └── Scene3.tscn │ │ ├── #42613 │ │ │ ├── Inner.tscn │ │ │ └── Outer.tscn │ │ ├── Canvas │ │ │ ├── Base2D.tscn │ │ │ ├── BaseUI.tscn │ │ │ ├── CanvasUndoRedo.tscn │ │ │ ├── DuplicationScene1.tscn │ │ │ ├── DuplicationScene2.tscn │ │ │ ├── DuplicationScene3.tscn │ │ │ ├── InheritedInstanced2D.tscn │ │ │ ├── Instanced2D.tscn │ │ │ ├── InstancedUI.tscn │ │ │ └── Sprite2D.gd │ │ ├── CanvasGroup.tscn │ │ ├── Exports.gd │ │ ├── Spatial │ │ │ ├── Base3D.tscn │ │ │ ├── DuplicationScene.tscn │ │ │ ├── Inherited3D.tscn │ │ │ ├── InheritedInstanced3D.tscn │ │ │ ├── Instanced3D.tscn │ │ │ └── SpatialUndoRedo.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── Obstacle2DIsInsideTreeErrors_godot35 │ │ ├── Node2D.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── PrintStrayNodes_godot3 │ │ ├── Banana.gd │ │ ├── Grapes.gd │ │ ├── Main.gd │ │ ├── Main.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── PrintStrayNodes_godot4 │ │ ├── Banana.gd │ │ ├── Grapes.gd │ │ ├── Main.gd │ │ ├── Main.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── SelectingHiddenNodesIn3DandCanvasEditors_godot32 │ │ ├── Bones │ │ │ ├── BaseSkelly.tscn │ │ │ ├── BoneJoints.tscn │ │ │ ├── DoubleInstancedSkelly.tscn │ │ │ ├── InstancedSkelly.tscn │ │ │ └── Skeleton2D.tscn │ │ ├── Canvas │ │ │ ├── CanvasChildOfEditable.tscn │ │ │ ├── CanvasEditor.tscn │ │ │ ├── Inner2D.tscn │ │ │ ├── InnerUI.tscn │ │ │ ├── Outer2D.tscn │ │ │ ├── Outer2D_inherited.tscn │ │ │ └── OuterUI.tscn │ │ ├── Spatial │ │ │ ├── Inner3D.tscn │ │ │ ├── Outer3D.tscn │ │ │ ├── Outer3D_inherited.tscn │ │ │ ├── SaveHiddenNode.tscn │ │ │ ├── SelectRootNode.tscn │ │ │ ├── SpatialChildOfEditable.tscn │ │ │ └── SpatialEditor.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── SelectingHiddenNodesIn3DandCanvasEditors_godot40 │ │ ├── Canvas │ │ │ ├── CanvasEditor.tscn │ │ │ ├── Inner2D.tscn │ │ │ ├── Inner2D_inherited.tscn │ │ │ ├── InnerUI.tscn │ │ │ ├── Outer2D.tscn │ │ │ ├── Outer2D_inherited.tscn │ │ │ └── OuterUI.tscn │ │ ├── Spatial │ │ │ ├── Inner3D.tscn │ │ │ ├── Outer3D.tscn │ │ │ └── Outer3D_inherited.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── SignalAutocomplete │ │ ├── Node.gd │ │ ├── Node.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── TypedArrays_40 │ │ ├── Node.gd │ │ ├── Node.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── UninitializedTypedArrays │ │ ├── Node.gd │ │ ├── Node.tscn │ │ ├── default_env.tres │ │ └── project.godot │ ├── UnusedVariableBaseConstructor │ │ ├── Node.gd │ │ ├── Node.tscn │ │ ├── default_env.tres │ │ └── project.godot │ ├── _InstancedScenes_ │ │ └── #43032_collision_layer_not_updating │ │ │ ├── Base.tscn │ │ │ ├── Derived.tscn │ │ │ ├── DerivedTwice.tscn │ │ │ ├── Instanced.tscn │ │ │ ├── WithBase.tscn │ │ │ ├── WithDerived.tscn │ │ │ ├── WithInstanced.tscn │ │ │ ├── World.tscn │ │ │ ├── default_env.tres │ │ │ ├── icon.png │ │ │ └── project.godot │ └── opcode22 │ │ ├── InnerClass.gd │ │ ├── Node2D.gd │ │ ├── Node2D.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot ├── GUT_structure │ └── tests │ │ ├── Gut.tscn │ │ └── GutTestBase.gd ├── Godot3 │ ├── ContinuousMovementWithEvents │ │ ├── ActionStatus.gd │ │ ├── ButtonUnfocus.gd │ │ ├── ColorRects.gd │ │ ├── Main.gd │ │ ├── Main.tscn │ │ ├── Player.gd │ │ ├── Player.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── FileFinder │ │ ├── .gut_editor_config.json │ │ ├── .gut_editor_shortcuts.cfg │ │ ├── FileFinder.gd │ │ ├── addons │ │ │ └── gut │ │ │ │ ├── GutScene.gd │ │ │ │ ├── GutScene.tscn │ │ │ │ ├── LICENSE.md │ │ │ │ ├── UserFileViewer.gd │ │ │ │ ├── UserFileViewer.tscn │ │ │ │ ├── autofree.gd │ │ │ │ ├── comparator.gd │ │ │ │ ├── compare_result.gd │ │ │ │ ├── diff_formatter.gd │ │ │ │ ├── diff_tool.gd │ │ │ │ ├── double_templates │ │ │ │ ├── function_template.txt │ │ │ │ └── script_template.txt │ │ │ │ ├── doubler.gd │ │ │ │ ├── fonts │ │ │ │ ├── AnonymousPro-Bold.ttf │ │ │ │ ├── AnonymousPro-BoldItalic.ttf │ │ │ │ ├── AnonymousPro-Italic.ttf │ │ │ │ ├── AnonymousPro-Regular.ttf │ │ │ │ ├── CourierPrime-Bold.ttf │ │ │ │ ├── CourierPrime-BoldItalic.ttf │ │ │ │ ├── CourierPrime-Italic.ttf │ │ │ │ ├── CourierPrime-Regular.ttf │ │ │ │ ├── LobsterTwo-Bold.ttf │ │ │ │ ├── LobsterTwo-BoldItalic.ttf │ │ │ │ ├── LobsterTwo-Italic.ttf │ │ │ │ ├── LobsterTwo-Regular.ttf │ │ │ │ └── OFL.txt │ │ │ │ ├── get_native_script.gd │ │ │ │ ├── gui │ │ │ │ ├── BottomPanelShortcuts.gd │ │ │ │ ├── BottomPanelShortcuts.tscn │ │ │ │ ├── GutBottomPanel.gd │ │ │ │ ├── GutBottomPanel.tscn │ │ │ │ ├── GutRunner.gd │ │ │ │ ├── GutRunner.tscn │ │ │ │ ├── ShortcutButton.gd │ │ │ │ ├── ShortcutButton.tscn │ │ │ │ ├── gut_config_gui.gd │ │ │ │ └── open_editors.gd │ │ │ │ ├── gut.gd │ │ │ │ ├── gut_cmdln.gd │ │ │ │ ├── gut_config.gd │ │ │ │ ├── gut_plugin.gd │ │ │ │ ├── hook_script.gd │ │ │ │ ├── icon.png │ │ │ │ ├── junit_xml_export.gd │ │ │ │ ├── logger.gd │ │ │ │ ├── method_maker.gd │ │ │ │ ├── one_to_many.gd │ │ │ │ ├── optparse.gd │ │ │ │ ├── orphan_counter.gd │ │ │ │ ├── parameter_factory.gd │ │ │ │ ├── parameter_handler.gd │ │ │ │ ├── plugin.cfg │ │ │ │ ├── plugin_control.gd │ │ │ │ ├── printers.gd │ │ │ │ ├── result_exporter.gd │ │ │ │ ├── signal_watcher.gd │ │ │ │ ├── source_code_pro.fnt │ │ │ │ ├── spy.gd │ │ │ │ ├── strutils.gd │ │ │ │ ├── stub_params.gd │ │ │ │ ├── stubber.gd │ │ │ │ ├── summary.gd │ │ │ │ ├── test.gd │ │ │ │ ├── test_collector.gd │ │ │ │ ├── thing_counter.gd │ │ │ │ └── utils.gd │ │ ├── default_env.tres │ │ ├── icon.png │ │ ├── project.godot │ │ └── tests │ │ │ ├── Gut.tscn │ │ │ ├── GutTestBase.gd │ │ │ ├── Test_FindFiles.gd │ │ │ ├── Test_FindScriptsOfClass.gd │ │ │ └── files │ │ │ ├── NodeSubclass.gd │ │ │ └── test1 │ │ │ ├── dir1 │ │ │ ├── dir12 │ │ │ │ └── file3.txt │ │ │ ├── file2.ini │ │ │ └── file2.txt │ │ │ └── file1.txt │ ├── NavigationServer │ │ ├── Level2D.gd │ │ ├── Level2D.tscn │ │ ├── MovingObstacle2D.gd │ │ ├── NPC.tscn │ │ ├── Obstacle2D.tscn │ │ ├── PathDrawer.gd │ │ ├── Player2D.gd │ │ ├── Player2D.tscn │ │ ├── assets │ │ │ └── BattleCity.png │ │ ├── default_env.tres │ │ ├── icon.png │ │ └── project.godot │ ├── SavingScenesAndResources │ │ ├── Level.gd │ │ ├── Level.tscn │ │ ├── Main.gd │ │ ├── Main.tscn │ │ ├── Unit.gd │ │ ├── Unit.tscn │ │ ├── a_scene.tscn │ │ ├── default_env.tres │ │ ├── icon.png │ │ ├── project.godot │ │ ├── resource_loading.tscn │ │ └── resource_sharing │ │ │ ├── AreResourcesShared.gd │ │ │ ├── AreResourcesShared.tscn │ │ │ ├── IntermediateScene.tscn │ │ │ ├── a_resource.gd │ │ │ ├── a_resource_instance_load.tres │ │ │ ├── a_resource_instance_preload.tres │ │ │ ├── resource_reader.gd │ │ │ └── resource_writer.gd │ └── SceneSwitcher │ │ ├── SceneSwitcher.gd │ │ ├── SceneSwitcher.tscn │ │ ├── addons │ │ └── Todo_Manager │ │ │ ├── ColourPicker.gd │ │ │ ├── Current.gd │ │ │ ├── Dock.gd │ │ │ ├── Pattern.gd │ │ │ ├── Project.gd │ │ │ ├── UI │ │ │ ├── ColourPicker.tscn │ │ │ ├── Dock.tscn │ │ │ └── Pattern.tscn │ │ │ ├── doc │ │ │ ├── example.gd │ │ │ └── images │ │ │ │ ├── Instruct1.png │ │ │ │ ├── Instruct2.png │ │ │ │ ├── Instruct3.png │ │ │ │ ├── Instruct4.png │ │ │ │ ├── Instruct5.png │ │ │ │ ├── TODO_Manager_Logo.png │ │ │ │ ├── TodoExternal.gif │ │ │ │ ├── example1.png │ │ │ │ └── example2.png │ │ │ ├── plugin.cfg │ │ │ ├── plugin.gd │ │ │ ├── todo.cfg │ │ │ ├── todoItem_class.gd │ │ │ └── todo_class.gd │ │ ├── default_env.tres │ │ ├── examples │ │ ├── MultipleResources.gd │ │ ├── MultipleResources.tscn │ │ ├── Printer.gd │ │ ├── Printer.tscn │ │ ├── Scene.gd │ │ ├── Scene1.tscn │ │ ├── Scene2.tscn │ │ ├── SceneSwitcherWithTransition.tscn │ │ └── SwitchingIssues.gd │ │ ├── icon.png │ │ ├── project.godot │ │ └── readme.md ├── Godot4NavigationServer │ ├── icon.png │ ├── level.gd │ ├── level.tscn │ ├── obstacle.tscn │ ├── player.gd │ ├── player.tscn │ └── project.godot ├── InputOrder │ ├── Node.tscn │ ├── PrintInputEvents.gd │ ├── default_env.tres │ ├── icon.png │ └── project.godot ├── InputSequences │ ├── Control.gd │ ├── Control.tscn │ ├── DetectorButtons.gd │ ├── LongestSequenceDetector.gd │ ├── LongestSequenceDetector.tscn │ ├── SequenceDetectorBase.gd │ ├── SubsequenceDetector.gd │ ├── SubsequenceDetector.tscn │ ├── default_env.tres │ ├── icon.png │ └── project.godot ├── MemoryConsumption │ ├── AbstractTypeLine.gd │ ├── ArrayLine.gd │ ├── DictionaryLine.gd │ ├── FloatsInArrayLine.gd │ ├── FloatsInDictLine.gd │ ├── IntegerLine.gd │ ├── MemoryConsumption.gd │ ├── MemoryConsumption.tscn │ ├── MemoryUsage.gd │ ├── NodeLine.gd │ ├── ObjectLine.gd │ ├── PoolIntLine.gd │ ├── ReferenceLine.gd │ ├── ResourceLine.gd │ ├── TypeLine.tscn │ ├── default_env.tres │ ├── icon.png │ └── project.godot ├── NewTilesetEditorTest │ ├── .gitattributes │ ├── .gitignore │ ├── assets │ │ ├── tilemap.png │ │ ├── tilemap.txt │ │ └── tilemap_packed.png │ ├── icon.png │ ├── level.tscn │ └── project.godot ├── Performance │ ├── TimeMeasurement │ │ ├── AggregatedMeasurements.tscn │ │ ├── Arrays.gd │ │ ├── BooleanChoice.gd │ │ ├── Branchless.gd │ │ ├── Dictionaries.gd │ │ ├── FunctionCalls.gd │ │ ├── GetNode.gd │ │ ├── Loops.gd │ │ ├── TimeMeasureBase.gd │ │ ├── TimeMeasureLine.tscn │ │ ├── TimeMeasureScene.gd │ │ └── TimeMeasureScene.tscn │ ├── default_env.tres │ ├── export_presets.cfg │ ├── icon.png │ └── project.godot ├── RVO │ ├── Level.tscn │ ├── Level2.tscn │ ├── Level3.gd │ ├── Level3.tscn │ ├── NavigationMeshInstance2.gd │ ├── PathsDrawer.gd │ ├── PathsLayer.gd │ ├── Player.gd │ ├── Player.tscn │ ├── Player2D.tscn │ ├── Ramp.tscn │ ├── RigidBody2D.gd │ ├── character.png │ ├── default_env.tres │ ├── icon.png │ ├── map.png │ ├── point.png │ ├── project.godot │ ├── readme.txt │ └── uv_checker.jpg ├── Serialization │ ├── .gitignore │ ├── .gut_editor_config.json │ ├── .gut_editor_shortcuts.cfg │ ├── HierarchicalSerializer.gd │ ├── NodeGuard.gd │ ├── Probe.gd │ ├── README.md │ ├── README.txt │ ├── SaveGameFile.gd │ ├── TODO.gd │ ├── addons │ │ └── gut │ │ │ ├── GutScene.gd │ │ │ ├── GutScene.tscn │ │ │ ├── LICENSE.md │ │ │ ├── UserFileViewer.gd │ │ │ ├── UserFileViewer.tscn │ │ │ ├── autofree.gd │ │ │ ├── comparator.gd │ │ │ ├── compare_result.gd │ │ │ ├── diff_formatter.gd │ │ │ ├── diff_tool.gd │ │ │ ├── double_templates │ │ │ ├── function_template.txt │ │ │ └── script_template.txt │ │ │ ├── doubler.gd │ │ │ ├── fonts │ │ │ ├── AnonymousPro-Bold.ttf │ │ │ ├── AnonymousPro-BoldItalic.ttf │ │ │ ├── AnonymousPro-Italic.ttf │ │ │ ├── AnonymousPro-Regular.ttf │ │ │ ├── CourierPrime-Bold.ttf │ │ │ ├── CourierPrime-BoldItalic.ttf │ │ │ ├── CourierPrime-Italic.ttf │ │ │ ├── CourierPrime-Regular.ttf │ │ │ ├── LobsterTwo-Bold.ttf │ │ │ ├── LobsterTwo-BoldItalic.ttf │ │ │ ├── LobsterTwo-Italic.ttf │ │ │ ├── LobsterTwo-Regular.ttf │ │ │ └── OFL.txt │ │ │ ├── get_native_script.gd │ │ │ ├── gui │ │ │ ├── BottomPanelShortcuts.gd │ │ │ ├── BottomPanelShortcuts.tscn │ │ │ ├── GutBottomPanel.gd │ │ │ ├── GutBottomPanel.tscn │ │ │ ├── GutRunner.gd │ │ │ ├── GutRunner.tscn │ │ │ ├── ShortcutButton.gd │ │ │ ├── ShortcutButton.tscn │ │ │ ├── gut_config_gui.gd │ │ │ └── open_editors.gd │ │ │ ├── gut.gd │ │ │ ├── gut_cmdln.gd │ │ │ ├── gut_config.gd │ │ │ ├── gut_plugin.gd │ │ │ ├── hook_script.gd │ │ │ ├── icon.png │ │ │ ├── junit_xml_export.gd │ │ │ ├── logger.gd │ │ │ ├── method_maker.gd │ │ │ ├── one_to_many.gd │ │ │ ├── optparse.gd │ │ │ ├── orphan_counter.gd │ │ │ ├── parameter_factory.gd │ │ │ ├── parameter_handler.gd │ │ │ ├── plugin.cfg │ │ │ ├── plugin_control.gd │ │ │ ├── printers.gd │ │ │ ├── result_exporter.gd │ │ │ ├── signal_watcher.gd │ │ │ ├── source_code_pro.fnt │ │ │ ├── spy.gd │ │ │ ├── strutils.gd │ │ │ ├── stub_params.gd │ │ │ ├── stubber.gd │ │ │ ├── summary.gd │ │ │ ├── test.gd │ │ │ ├── test_collector.gd │ │ │ ├── thing_counter.gd │ │ │ └── utils.gd │ ├── asset_lib_icon.png │ ├── default_env.tres │ ├── project.godot │ └── tests │ │ ├── Gut.tscn │ │ ├── GutTestBase.gd │ │ ├── Test_ChildrenOrder.gd │ │ ├── Test_Customization.gd │ │ ├── Test_NoSerializeFunctions.gd │ │ ├── Test_Probe.gd │ │ ├── Test_SerializeFunctions.gd │ │ └── files │ │ ├── BuiltInTypes.gd │ │ ├── BuiltInTypes.tscn │ │ ├── FileSizeComparison.gd │ │ ├── FileSizeComparison.tscn │ │ ├── FiveNodeBranch.tscn │ │ ├── JsonArraySerializer.gd │ │ ├── NoDeserialize.gd │ │ ├── NoDeserialize.tscn │ │ ├── PostDeserialize.gd │ │ ├── PostDeserialize.tscn │ │ ├── ResourceSavingTest.gd │ │ ├── ResourceSavingTest.tscn │ │ ├── Scene1.tscn │ │ ├── SerializeToArray.gd │ │ ├── SerializeToDict.gd │ │ ├── SerializeToFloat.gd │ │ └── SerializeToString.gd └── TypeWrappers │ ├── .gut_editor_config.json │ ├── .gut_editor_shortcuts.cfg │ ├── MapWrapper.gd │ ├── MultiNodeGuard.gd │ ├── NodeGuard.gd │ ├── SetWrapper.gd │ ├── addons │ └── gut │ │ ├── GutScene.gd │ │ ├── GutScene.tscn │ │ ├── LICENSE.md │ │ ├── UserFileViewer.gd │ │ ├── UserFileViewer.tscn │ │ ├── autofree.gd │ │ ├── comparator.gd │ │ ├── compare_result.gd │ │ ├── diff_formatter.gd │ │ ├── diff_tool.gd │ │ ├── double_templates │ │ ├── function_template.txt │ │ └── script_template.txt │ │ ├── doubler.gd │ │ ├── fonts │ │ ├── AnonymousPro-Bold.ttf │ │ ├── AnonymousPro-BoldItalic.ttf │ │ ├── AnonymousPro-Italic.ttf │ │ ├── AnonymousPro-Regular.ttf │ │ ├── CourierPrime-Bold.ttf │ │ ├── CourierPrime-BoldItalic.ttf │ │ ├── CourierPrime-Italic.ttf │ │ ├── CourierPrime-Regular.ttf │ │ ├── LobsterTwo-Bold.ttf │ │ ├── LobsterTwo-BoldItalic.ttf │ │ ├── LobsterTwo-Italic.ttf │ │ ├── LobsterTwo-Regular.ttf │ │ └── OFL.txt │ │ ├── get_native_script.gd │ │ ├── gui │ │ ├── BottomPanelShortcuts.gd │ │ ├── BottomPanelShortcuts.tscn │ │ ├── GutBottomPanel.gd │ │ ├── GutBottomPanel.tscn │ │ ├── GutRunner.gd │ │ ├── GutRunner.tscn │ │ ├── ShortcutButton.gd │ │ ├── ShortcutButton.tscn │ │ ├── gut_config_gui.gd │ │ └── open_editors.gd │ │ ├── gut.gd │ │ ├── gut_cmdln.gd │ │ ├── gut_config.gd │ │ ├── gut_plugin.gd │ │ ├── hook_script.gd │ │ ├── icon.png │ │ ├── junit_xml_export.gd │ │ ├── logger.gd │ │ ├── method_maker.gd │ │ ├── one_to_many.gd │ │ ├── optparse.gd │ │ ├── orphan_counter.gd │ │ ├── parameter_factory.gd │ │ ├── parameter_handler.gd │ │ ├── plugin.cfg │ │ ├── plugin_control.gd │ │ ├── printers.gd │ │ ├── result_exporter.gd │ │ ├── signal_watcher.gd │ │ ├── source_code_pro.fnt │ │ ├── spy.gd │ │ ├── strutils.gd │ │ ├── stub_params.gd │ │ ├── stubber.gd │ │ ├── summary.gd │ │ ├── test.gd │ │ ├── test_collector.gd │ │ ├── thing_counter.gd │ │ └── utils.gd │ ├── asset_lib_icon.png │ ├── default_env.tres │ ├── project.godot │ └── tests │ ├── Gut.tscn │ ├── GutTestBase.gd │ ├── Test_MapWrapper.gd │ ├── Test_MultiNodeGuard.gd │ ├── Test_NodeGuard.gd │ └── Test_SetWrapper.gd └── GodotEngine └── type_conversions.hpp /Godot/.gitattributes: -------------------------------------------------------------------------------- 1 | # Explicitly declare text files you want to always be normalized and converted 2 | # to native line endings on checkout. 3 | *.gd text eol=lf 4 | *.tscn text eol=lf 5 | *.tres text eol=lf 6 | default_env.tres eol=lf 7 | project.godot eol=lf 8 | -------------------------------------------------------------------------------- /Godot/.gitignore: -------------------------------------------------------------------------------- 1 | *.import 2 | log*.txt 3 | *.inst 4 | *.exe 5 | *.pck 6 | __randomProjects__/* 7 | .godot/ -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/TODO.gd: -------------------------------------------------------------------------------- 1 | """ 2 | 3 | * localize graph update 4 | 5 | * multiple units in one sector 6 | 7 | * remove unit selection buttons 8 | 9 | """ 10 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/ColourPicker.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var colour : Color 5 | var title : String setget set_title 6 | var index : int 7 | 8 | onready var colour_picker := $TODOColourPickerButton 9 | 10 | func _ready() -> void: 11 | $TODOColourPickerButton.color = colour 12 | $Label.text = title 13 | 14 | func set_title(value: String) -> void: 15 | title = value 16 | $Label.text = value 17 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/Pattern.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var text : String setget set_text 5 | var disabled : bool 6 | var index : int 7 | 8 | onready var line_edit := $LineEdit as LineEdit 9 | onready var remove_button := $RemoveButton as Button 10 | 11 | func _ready() -> void: 12 | line_edit.text = text 13 | remove_button.disabled = disabled 14 | 15 | 16 | func set_text(value: String) -> void: 17 | text = value 18 | if line_edit: 19 | line_edit.text = value 20 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/example.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | # TODO: this is a TODO 4 | # HACK: this is a HACK 5 | # FIXME: this is a FIXME 6 | # TODO this works too 7 | #HACK any format will do 8 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct1.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct2.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct3.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct4.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/Instruct5.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/example1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/example1.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/example2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/Todo_Manager/doc/images/example2.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Todo Manager" 4 | description="Dock for housing TODO messages." 5 | author="Peter de Vroom" 6 | version="1.1" 7 | script="plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/todo.cfg: -------------------------------------------------------------------------------- 1 | [scripts] 2 | 3 | full_path=false 4 | sort_alphabetical=true 5 | script_colour=Color( 0.8, 0.807843, 0.827451, 1 ) 6 | ignore_paths=[ "res://addons" ] 7 | 8 | [patterns] 9 | 10 | patterns=[ [ "\\bTODO\\b", Color( 0.588235, 0.945098, 0.678431, 1 ) ], [ "\\bHACK\\b", Color( 0.835294, 0.737255, 0.439216, 1 ) ], [ "\\bFIXME\\b", Color( 0.835294, 0.439216, 0.439216, 1 ) ] ] 11 | 12 | [config] 13 | 14 | auto_refresh=true 15 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/todoItem_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var script_path : String 5 | var todos : Array 6 | 7 | func get_short_path() -> String: 8 | var temp_array := script_path.rsplit('/', false, 1) 9 | var short_path : String 10 | if !temp_array[1]: 11 | short_path = "(!)" + temp_array[0] 12 | else: 13 | short_path = temp_array[1] 14 | return short_path 15 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/Todo_Manager/todo_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var pattern : String 5 | var title : String 6 | var content : String 7 | var script_path : String 8 | var line_number : int 9 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/double_templates/function_template.txt: -------------------------------------------------------------------------------- 1 | {func_decleration} 2 | __gut_spy('{method_name}', {param_array}) 3 | if(__gut_should_call_super('{method_name}', {param_array})): 4 | return {super_call} 5 | else: 6 | return __gut_get_stubbed_return('{method_name}', {param_array}) 7 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Bold.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Italic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/AnonymousPro-Regular.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Bold.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Italic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/CourierPrime-Regular.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Bold.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Italic.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/fonts/LobsterTwo-Regular.ttf -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/get_native_script.gd: -------------------------------------------------------------------------------- 1 | # Since NativeScript does not exist if GDNative is not included in the build 2 | # of Godot this script is conditionally loaded only when NativeScript exists. 3 | # You can then get a reference to NativeScript for use in `is` checks by calling 4 | # get_it. 5 | static func get_it(): 6 | return NativeScript 7 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/gui/GutRunner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/gui/GutRunner.gd" type="Script" id=1] 4 | 5 | [node name="GutRunner" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/icon.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Gut" 4 | description="Unit Testing tool for Godot." 5 | author="Butch Wesley" 6 | version="7.2.0" 7 | script="gut_plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/addons/gut/source_code_pro.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/addons/gut/source_code_pro.fnt -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/asset_lib_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/asset_lib_icon.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/CollisionBasedPathfinding/icon.png -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/new_builder/PerformanceTest.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://new_builder/PerformanceTest.gd" type="Script" id=1] 4 | 5 | [node name="PerformanceTest" type="Node"] 6 | script = ExtResource( 1 ) 7 | runAddPoint = true 8 | runConnectionsAfterPoints = true 9 | runPointsWithConnections = true 10 | runCreateConnections = true 11 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/old_builder/Obstacle.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://icon.png" type="Texture" id=1] 4 | 5 | [sub_resource type="RectangleShape2D" id=1] 6 | extents = Vector2( 71.3884, 24.358 ) 7 | 8 | [node name="Obstacle" type="StaticBody2D"] 9 | modulate = Color( 0.352941, 0.317647, 0.317647, 1 ) 10 | 11 | [node name="CollisionShape2D" type="CollisionShape2D" parent="."] 12 | shape = SubResource( 1 ) 13 | 14 | [node name="Sprite" type="Sprite" parent="."] 15 | scale = Vector2( 0.5, 0.5 ) 16 | texture = ExtResource( 1 ) 17 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/old_builder/SelectionComponent.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Area2D 3 | 4 | onready var _rectShape = $"CollisionShape2D".shape 5 | onready var _perimeter = $"Perimeter" 6 | 7 | 8 | func _process(_delta): 9 | var x = _rectShape.extents.x 10 | var y = _rectShape.extents.y 11 | var points = _perimeter.points 12 | 13 | assert(points.size() == 5) 14 | points[0] = Vector2(-x, -y) 15 | points[1] = Vector2(-x, y) 16 | points[2] = Vector2(x, y) 17 | points[3] = Vector2(x, -y) 18 | points[4] = points[0] 19 | _perimeter.points = points 20 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/tests/Test_Map2.gd: -------------------------------------------------------------------------------- 1 | extends "res://tests/GutTestBase.gd" 2 | 3 | const GraphGd = preload("res://new_builder/CollisionGraph.gd") 4 | const AStarBuilderGd = preload("res://new_builder/CollisionGraphBuilder.gd") 5 | const PointsDataGd = preload("res://new_builder/PointsData.gd") 6 | const FunctionsGd = preload("res://new_builder/StaticFunctions.gd") 7 | const TestMap1Scn = preload("res://tests/files/TestMap1.tscn") 8 | 9 | 10 | -------------------------------------------------------------------------------- /Godot/CollisionBasedPathfinding/tests/files/TestingFunctions.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | static func getEnabledPoints(astar : AStar2D) -> PoolIntArray: 5 | var enabledPoints := PoolIntArray() 6 | for point in astar.get_points(): 7 | if not astar.is_point_disabled(point): 8 | enabledPoints.append(point) 9 | return enabledPoints 10 | 11 | 12 | static func calculateEdgeCountInRect(x :int, y :int, diagonal :bool) -> int: 13 | return x * (y - 1) + y * (x - 1) + int(diagonal) * 2 * (x - 1) * (y - 1) 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/.gitignore: -------------------------------------------------------------------------------- 1 | ignored/* 2 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/ColourPicker.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var colour : Color 5 | var title : String setget set_title 6 | var index : int 7 | 8 | onready var colour_picker := $TODOColourPickerButton 9 | 10 | func _ready() -> void: 11 | $TODOColourPickerButton.color = colour 12 | $Label.text = title 13 | 14 | func set_title(value: String) -> void: 15 | title = value 16 | $Label.text = value 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/Pattern.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var text : String setget set_text 5 | var disabled : bool 6 | var index : int 7 | 8 | onready var line_edit := $LineEdit as LineEdit 9 | onready var remove_button := $RemoveButton as Button 10 | 11 | func _ready() -> void: 12 | line_edit.text = text 13 | remove_button.disabled = disabled 14 | 15 | 16 | func set_text(value: String) -> void: 17 | text = value 18 | if line_edit: 19 | line_edit.text = value 20 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/example.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | # TODO: this is a TODO 4 | # HACK: this is a HACK 5 | # FIXME: this is a FIXME 6 | # TODO this works too 7 | #HACK any format will do 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct1.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct2.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct3.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct4.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/Instruct5.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/example1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/example1.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/doc/images/example2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/Todo_Manager/doc/images/example2.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Todo Manager" 4 | description="Dock for housing TODO messages." 5 | author="Peter de Vroom" 6 | version="1.1" 7 | script="plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/todo.cfg: -------------------------------------------------------------------------------- 1 | [scripts] 2 | 3 | full_path=false 4 | sort_alphabetical=true 5 | script_colour=Color( 0.8, 0.807843, 0.827451, 1 ) 6 | ignore_paths=[ "projects", "addons" ] 7 | 8 | [patterns] 9 | 10 | patterns=[ [ "\\bTODO\\b", Color( 0.588235, 0.945098, 0.678431, 1 ) ], [ "\\bHACK\\b", Color( 0.835294, 0.737255, 0.439216, 1 ) ], [ "\\bFIXME\\b", Color( 0.835294, 0.439216, 0.439216, 1 ) ] ] 11 | 12 | [config] 13 | 14 | auto_refresh=true 15 | builtin_enabled=false 16 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/todoItem_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var script_path : String 5 | var todos : Array 6 | 7 | func get_short_path() -> String: 8 | var temp_array := script_path.rsplit('/', false, 1) 9 | var short_path : String 10 | if !temp_array[1]: 11 | short_path = "(!)" + temp_array[0] 12 | else: 13 | short_path = temp_array[1] 14 | return short_path 15 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/Todo_Manager/todo_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var pattern : String 5 | var title : String 6 | var content : String 7 | var script_path : String 8 | var line_number : int 9 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/double_templates/function_template.txt: -------------------------------------------------------------------------------- 1 | {func_decleration} 2 | __gut_spy('{method_name}', {param_array}) 3 | if(__gut_should_call_super('{method_name}', {param_array})): 4 | return {super_call} 5 | else: 6 | return __gut_get_stubbed_return('{method_name}', {param_array}) 7 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Bold.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Italic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/AnonymousPro-Regular.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Bold.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Italic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/CourierPrime-Regular.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Bold.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Italic.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/fonts/LobsterTwo-Regular.ttf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/get_native_script.gd: -------------------------------------------------------------------------------- 1 | # Since NativeScript does not exist if GDNative is not included in the build 2 | # of Godot this script is conditionally loaded only when NativeScript exists. 3 | # You can then get a reference to NativeScript for use in `is` checks by calling 4 | # get_it. 5 | static func get_it(): 6 | return NativeScript 7 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/gui/GutRunner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/gui/GutRunner.gd" type="Script" id=1] 4 | 5 | [node name="GutRunner" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/icon.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Gut" 4 | description="Unit Testing tool for Godot." 5 | author="Butch Wesley" 6 | version="7.2.0" 7 | script="gut_plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/gut/source_code_pro.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/gut/source_code_pro.fnt -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/array-utils/README.md: -------------------------------------------------------------------------------- 1 | # godot-array-utils 2 | 3 | Standart collections. 4 | 5 | ## License 6 | 7 | See more in LICENSE.md 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/.gutconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "dirs": [ 3 | "res://addons/quentincaffeino/console/tests/" 4 | ], 5 | "include_subdirs": true, 6 | "ignore_pause": true, 7 | "log_level": 2, 8 | "should_exit": true, 9 | "should_maximize": true 10 | } -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Black.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Black.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-BlackIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-BlackIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Bold.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Bold.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-BoldIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-BoldIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-ExtraLight.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-ExtraLight.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-ExtraLightIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-ExtraLightIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-It.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-It.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Light.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Light.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-LightIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-LightIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Medium.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Medium.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-MediumIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-MediumIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Regular.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Semibold.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-Semibold.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-SemiboldIt.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/addons/quentincaffeino/console/assets/fonts/source-code-pro/OTF/SourceCodePro-SemiboldIt.otf -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/AnyType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # AnyType 4 | 5 | **Extends:** [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/ArgumentFactory.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # ArgumentFactory 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### create (static) 12 | 13 | ```gdscript 14 | func create(name: String, type: int|BaseType, description: String|null): Result 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/BaseCommands.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # BaseCommands 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(console: Console) 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/BaseRegexCheckedType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # BaseRegexCheckedType 4 | 5 | **Extends:** [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(name: String, pattern: String) 15 | ``` 16 | 17 | ### check 18 | 19 | ```gdscript 20 | func check(value: Variant): int 21 | ``` 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/BoolType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # BoolType 4 | 5 | **Extends:** [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### normalize 12 | 13 | ```gdscript 14 | func normalize(value: Variant): Variant 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/CommandAutocomplete.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # CommandAutocomplete 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### filter 12 | 13 | ```gdscript 14 | func filter(filter: String): void 15 | ``` 16 | 17 | ### next 18 | 19 | ```gdscript 20 | func next(): String 21 | ``` 22 | 23 | ### reset 24 | 25 | ```gdscript 26 | func reset(): void 27 | ``` 28 | 29 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/CommandCollection.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # CommandCollection 4 | 5 | **Extends:** [Collection](../Collection) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(collection) 15 | ``` 16 | 17 | ### find 18 | 19 | ```gdscript 20 | func find(command_name: String): CommandCollection 21 | ``` 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/DefaultActionServiceFactory.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # DefaultActionServiceFactory 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### create (static) 12 | 13 | ```gdscript 14 | func create(): ActionService 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/FilterType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # FilterType 4 | 5 | **Extends:** [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Enumerations 10 | 11 | ### MODE 12 | 13 | ```gdscript 14 | const MODE: Dictionary = {"ALLOW":0,"DENY":1} 15 | ``` 16 | 17 | ## Method Descriptions 18 | 19 | ### \_init 20 | 21 | ```gdscript 22 | func _init(filterList: Array, mode: int) 23 | ``` 24 | 25 | ### check 26 | 27 | ```gdscript 28 | func check(value: Variant): int 29 | ``` 30 | 31 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/FloatRangeType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # FloatRangeType 4 | 5 | **Extends:** [BaseRangeType](../BaseRangeType) < [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(minValue: float, maxValue: float, step: float) 15 | ``` 16 | 17 | ### normalize 18 | 19 | ```gdscript 20 | func normalize(value: Variant): Variant 21 | ``` 22 | 23 | Normalize variable. -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/FloatType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # FloatType 4 | 5 | **Extends:** [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### normalize 12 | 13 | ```gdscript 14 | func normalize(value: Variant): float 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/FuncRefCallback.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # FuncRefCallback 4 | 5 | **Extends:** [AbstractCallback](../AbstractCallback) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(target: FuncRef) 15 | ``` 16 | 17 | ### ensure 18 | 19 | ```gdscript 20 | func ensure() 21 | ``` 22 | 23 | Ensure callback target exists 24 | boolean 25 | 26 | ### call 27 | 28 | ```gdscript 29 | func call(argv: Variant[]) 30 | ``` 31 | 32 | Variant -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/History.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # History 4 | 5 | **Extends:** [QueueCollection](../QueueCollection) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(maxLength: int) 15 | ``` 16 | 17 | ### print\_all 18 | 19 | ```gdscript 20 | func print_all(): History 21 | ``` 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/IntRangeType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # IntRangeType 4 | 5 | **Extends:** [BaseRangeType](../BaseRangeType) < [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### \_init 12 | 13 | ```gdscript 14 | func _init(minValue: int, maxValue: int, step: int) 15 | ``` 16 | 17 | ### normalize 18 | 19 | ```gdscript 20 | func normalize(value: Variant): Variant 21 | ``` 22 | 23 | Normalize variable. -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/IntType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # IntType 4 | 5 | **Extends:** [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### normalize 12 | 13 | ```gdscript 14 | func normalize(value: Variant): int 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/RegExLib.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # RegExLib 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### split (static) 12 | 13 | ```gdscript 14 | func split(pattern: string, subject: string, maxsplit: int) 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/SnapshotCollection.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # SnapshotCollection 4 | 5 | **Extends:** [Collection](../Collection) < [Utils](../Utils) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### takeSnapshot 12 | 13 | ```gdscript 14 | func takeSnapshot() 15 | ``` 16 | 17 | Creates snapsot of the collection 18 | SnapshotCollection 19 | 20 | ### getShapshot 21 | 22 | ```gdscript 23 | func getShapshot() 24 | ``` 25 | 26 | Returns last snapshot 27 | Dictionary -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/StringType.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # StringType 4 | 5 | **Extends:** [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### normalize 12 | 13 | ```gdscript 14 | func normalize(value: Varian): String 15 | ``` 16 | 17 | Normalize variable -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/TypeFactory.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # TypeFactory 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### create (static) 12 | 13 | ```gdscript 14 | func create(engine_type: int): Result 2 | 3 | # Vector2Type 4 | 5 | **Extends:** [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### check 12 | 13 | ```gdscript 14 | func check(value: Variant): int 15 | ``` 16 | 17 | ### normalize 18 | 19 | ```gdscript 20 | func normalize(value: Variant): Variant 21 | ``` 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/Vector3Type.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # Vector3Type 4 | 5 | **Extends:** [BaseRegexCheckedType](../BaseRegexCheckedType) < [BaseType](../BaseType) < [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Method Descriptions 10 | 11 | ### check 12 | 13 | ```gdscript 14 | func check(value: Variant): int 15 | ``` 16 | 17 | ### normalize 18 | 19 | ```gdscript 20 | func normalize(value: Variant): Variant 21 | ``` 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/docs/generated/errors.en.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # errors.en 4 | 5 | **Extends:** [Reference](../Reference) 6 | 7 | ## Description 8 | 9 | ## Enumerations 10 | 11 | ### messages 12 | 13 | ```gdscript 14 | class errors.en.gd 15 | ``` 16 | 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="quentincaffeino-console" 4 | description="In-game console for Godot 3." 5 | author="QuentinCaffeino" 6 | version="3.2.1" 7 | script="plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Misc/Error.gd: -------------------------------------------------------------------------------- 1 | 2 | # @var String 3 | var _message 4 | 5 | # @var Variant|null 6 | var _code 7 | 8 | 9 | # @param String message 10 | # @param Variant|null code 11 | func _init(message, code = null): 12 | self._message = message 13 | self._code = code 14 | 15 | 16 | # @returns String 17 | func get_message(): 18 | return self._message 19 | 20 | 21 | # @returns Variant|null 22 | func get_code(): 23 | return self._code 24 | 25 | 26 | # @returns String 27 | func to_string(): 28 | return self._message 29 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Misc/History.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/array-utils/src/QueueCollection.gd' 3 | 4 | 5 | # @param int maxLength 6 | func _init(maxLength): 7 | self.set_max_length(maxLength) 8 | 9 | 10 | # @returns History 11 | func print_all(): 12 | var i = 1 13 | for command in self.get_value_iterator(): 14 | Console.write_line(\ 15 | '[b]' + str(i) + '.[/b] [color=#ffff66][url=' + \ 16 | command + ']' + command + '[/url][/color]') 17 | i += 1 18 | 19 | return self 20 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Type/AnyType.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/console/src/Type/BaseType.gd' 3 | 4 | 5 | func _init().('Any'): 6 | pass 7 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Type/BoolType.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/console/src/Type/BaseType.gd' 3 | 4 | 5 | func _init().('Bool'): 6 | pass 7 | 8 | 9 | # @param Variant value 10 | # @returns Variant 11 | func normalize(value): 12 | return value == '1' or value == 'true' 13 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Type/FloatType.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/console/src/Type/BaseRegexCheckedType.gd' 3 | 4 | 5 | func _init().('Float', '^[+-]?([0-9]*[\\.\\,]?[0-9]+|[0-9]+[\\.\\,]?[0-9]*)([eE][+-]?[0-9]+)?$'): 6 | pass 7 | 8 | 9 | # @param Variant value 10 | # @returns float 11 | func normalize(value): 12 | return float(self._reextract(value).replace(',', '.')) 13 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Type/IntType.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/console/src/Type/BaseRegexCheckedType.gd' 3 | 4 | 5 | func _init().('Int', '^[+-]?\\d+$'): 6 | pass 7 | 8 | 9 | # @param Variant value 10 | # @returns int 11 | func normalize(value): 12 | return int(self._reextract(value)) 13 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/src/Type/StringType.gd: -------------------------------------------------------------------------------- 1 | 2 | extends 'res://addons/quentincaffeino/console/src/Type/BaseType.gd' 3 | 4 | 5 | func _init().('String'): 6 | pass 7 | 8 | 9 | # Normalize variable 10 | # @param Varian value 11 | # @returns String 12 | func normalize(value): 13 | return str(value) 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/tests/tests.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/plugin_control.gd" type="Script" id=1] 4 | 5 | [node name="Gut" type="Control"] 6 | anchor_right = 1.0 7 | anchor_bottom = 1.0 8 | rect_min_size = Vector2( 740, 250 ) 9 | script = ExtResource( 1 ) 10 | __meta__ = { 11 | "_edit_use_anchors_": false 12 | } 13 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/tests/unit/Type/test_int_type.gd: -------------------------------------------------------------------------------- 1 | 2 | extends "res://addons/gut/test.gd" 3 | 4 | const IntType = preload("res://addons/quentincaffeino/console/src/Type/IntType.gd") 5 | 6 | 7 | # @var IntType 8 | var type 9 | 10 | func before_each(): 11 | type = IntType.new() 12 | 13 | 14 | func test_normalize_with_int_expect_same_int(): 15 | var any_value = "5" 16 | assert_eq(5, type.normalize(any_value)) 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/console/tests/unit/test_trie.gd: -------------------------------------------------------------------------------- 1 | 2 | extends "res://addons/gut/test.gd" 3 | 4 | const Trie = preload("res://addons/quentincaffeino/console/src/Misc/Trie.gd") 5 | 6 | 7 | func test_insert(): 8 | var trie = Trie.new() 9 | trie.insert("key", "hello world") 10 | assert_true(trie.has("key")) 11 | 12 | 13 | func test_has(): 14 | var trie = Trie.new() 15 | trie.insert("key", "hello world") 16 | assert_false(trie.has("yek")) 17 | 18 | 19 | func test_get(): 20 | var trie = Trie.new() 21 | trie.insert("key", "hello world") 22 | assert_eq("hello world", trie.get("key")) 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/addons/quentincaffeino/regexlib/README.md: -------------------------------------------------------------------------------- 1 | # godot-regexlib 2 | 3 | Usefull regex stuff. 4 | 5 | 6 | ## Todo: 7 | 8 | - Cache compiled patterns in `split` method. 9 | 10 | 11 | ## License 12 | 13 | See more in LICENSE.md 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/Module1.gd: -------------------------------------------------------------------------------- 1 | extends "res://engine/ModuleData.gd" 2 | 3 | const ItemDatabaseGd = preload("./items/Module1ItemDatabase.gd") 4 | var itemDatabase = ItemDatabaseGd.new() 5 | 6 | const UnitMax = 4 7 | const Units = [ 8 | "Dwarf", 9 | "Knight", 10 | ] 11 | 12 | const StartingLevelName = "Level1" 13 | 14 | const LevelNames = [ 15 | "Level1", 16 | "Level2", 17 | ] 18 | 19 | const DefaultLevelEntrances = { 20 | "Level1" : "Start", 21 | "Level2" : "ToLevel1", 22 | } 23 | 24 | const LevelConnections = { 25 | ["Level1", "ToLevel2"] : ["Level2", "ToLevel1"], 26 | ["Level2", "ToLevel1"] : ["Level1", "ToLevel2"], 27 | } 28 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/items/HelmetBarbute.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/items/ItemBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/Module1/items/helmet_other.png" type="Texture" id=2] 5 | 6 | [node name="Helmet" instance=ExtResource( 1 )] 7 | _itemID = "HELMET_BARBUTE" 8 | 9 | [node name="Sprite" parent="." index="0"] 10 | texture = ExtResource( 2 ) 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/items/Module1ItemDatabase.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | var _items := { 5 | "HELMET_BARBUTE" : { 6 | "name" : "Helmet", 7 | "type" : "equipment", 8 | "defense" : 4, 9 | } 10 | } 11 | 12 | 13 | func getAllItemsStats() -> Dictionary: 14 | return _items 15 | 16 | 17 | func _getDirectory() -> String: 18 | return get_script().resource_path.get_base_dir() 19 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/items/helmet_other.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/Module1/items/helmet_other.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/units/Dwarf.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/units/UnitBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/Module1/units/deepdwarf_a.png" type="Texture" id=2] 5 | 6 | [node name="Dwarf" instance=ExtResource( 1 )] 7 | 8 | [node name="Sprite" parent="Pivot" index="0"] 9 | texture = ExtResource( 2 ) 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module1/units/deepdwarf_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/Module1/units/deepdwarf_a.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module2/Module2.gd: -------------------------------------------------------------------------------- 1 | extends "res://engine/ModuleData.gd" 2 | 3 | const ItemDatabaseGd = preload("./items/Module2ItemDatabase.gd") 4 | var itemDatabase = ItemDatabaseGd.new() 5 | 6 | const UnitMax = 5 7 | const Units = ["Elf", "Knight"] 8 | 9 | const StartingLevelName = "Level1" 10 | 11 | const LevelNames = [ 12 | "Level1", 13 | "Level2", 14 | ] 15 | 16 | const DefaultLevelEntrances = { 17 | "Level1" : "Start", 18 | } 19 | 20 | const LevelConnections = { 21 | ["Level1", "ToLevel2"] : ["Level2", "ToLevel1"], 22 | ["Level2", "ToLevel1"] : ["Level1", "ToLevel2"], 23 | } 24 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module2/items/Module2ItemDatabase.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module2/units/Elf.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/units/UnitBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/Module2/units/elf.png" type="Texture" id=2] 5 | 6 | [node name="Gnome" index="0" instance=ExtResource( 1 )] 7 | 8 | [node name="Sprite" parent="Pivot" index="0"] 9 | texture = ExtResource( 2 ) 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module2/units/elf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/Module2/units/elf.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/Module2/units/wizard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/Module2/units/wizard.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/dngn_closed_door.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/dngn_closed_door.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/dngn_open_door.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/dngn_open_door.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_closed_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_closed_left.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_closed_middle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_closed_middle.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_closed_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_closed_right.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_open_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_open_left.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_open_middle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_open_middle.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/door/gate_open_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/door/gate_open_right.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_a.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_b.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_f.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_j.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/floor/floor_cobblestone_j.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/stairs/stone_stairs_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/stairs/stone_stairs_down.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/stairs/stone_stairs_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/stairs/stone_stairs_up.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_a.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_b.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_e.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/assets/wall/wall_brick1_i.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/items/CommonItemDatabase.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | var _items := { 5 | "HELMET" : { 6 | "name" : "Helmet", 7 | "type" : "equipment", 8 | "defense" : 3, 9 | } 10 | } 11 | 12 | 13 | func getAllItemsStats() -> Dictionary: 14 | return _items 15 | 16 | 17 | func _getDirectory() -> String: 18 | return get_script().resource_path.get_base_dir() 19 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/items/Helmet.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/items/ItemBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/common/items/helmet.png" type="Texture" id=2] 5 | 6 | [node name="Helmet" instance=ExtResource( 1 )] 7 | _itemID = "HELMET" 8 | 9 | [node name="Sprite" parent="." index="0"] 10 | texture = ExtResource( 2 ) 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/items/helmet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/items/helmet.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/Dwarf.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/units/UnitBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/common/units/dwarf.png" type="Texture" id=2] 5 | 6 | [node name="Dwarf" instance=ExtResource( 1 )] 7 | 8 | [node name="Sprite" parent="Pivot" index="0"] 9 | texture = ExtResource( 2 ) 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/Ghoul.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/units/UnitBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/common/units/ghoul_a.png" type="Texture" id=2] 5 | 6 | [node name="Ghoul" instance=ExtResource( 1 )] 7 | _speed = 1.0 8 | 9 | [node name="Name" parent="." index="1"] 10 | margin_right = 22.0 11 | text = "Ghoul" 12 | align = 1 13 | 14 | [node name="Sprite" parent="Pivot" index="0"] 15 | texture = ExtResource( 2 ) 16 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/Knight.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/units/UnitBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/common/units/knight.png" type="Texture" id=2] 5 | 6 | [node name="Knight" instance=ExtResource( 1 )] 7 | 8 | [node name="Sprite" parent="Pivot" index="0"] 9 | texture = ExtResource( 2 ) 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/dwarf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/units/dwarf.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/ghoul_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/units/ghoul_a.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/common/units/knight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/common/units/knight.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/data/white_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/data/white_square.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/ConsoleLogger.gd: -------------------------------------------------------------------------------- 1 | extends "./LoggerBase.gd" 2 | 3 | 4 | func info( _caller : Object, message : String ): 5 | if _logLevel >= 3: 6 | print( message ) 7 | 8 | 9 | func warn( _caller : Object, message : String ): 10 | if _logLevel >= 2: 11 | push_warning( message ) 12 | print( message ) 13 | 14 | 15 | func error( _caller : Object, message : String ): 16 | if _logLevel >= 1: 17 | push_error( message ) 18 | print( message ) 19 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/Debug.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://debug/Debug.gd" type="Script" id=1] 4 | [ext_resource path="res://debug/DebugCommands.gd" type="Script" id=2] 5 | 6 | [node name="Debug" type="Node"] 7 | script = ExtResource( 1 ) 8 | 9 | [node name="Commands" type="Node" parent="."] 10 | script = ExtResource( 2 ) 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/DebugWindow.gd: -------------------------------------------------------------------------------- 1 | extends CanvasLayer 2 | 3 | 4 | func _process( _delta ): 5 | $'FpsLabel'.text = str(Engine.get_frames_per_second()) 6 | 7 | 8 | func _on_PrintSceneTree_pressed(): 9 | $"/root".print_tree_pretty() 10 | 11 | 12 | func _on_PrintStrayNodes_pressed(): 13 | $"/root".print_stray_nodes() 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/FpsLabel.gd: -------------------------------------------------------------------------------- 1 | extends Label 2 | 3 | func _process( _delta ): 4 | set_text(str(Engine.get_frames_per_second())) 5 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/LoggerBase.gd: -------------------------------------------------------------------------------- 1 | extends Reference 2 | 3 | var _logLevel := 2 setget setLogLevel 4 | 5 | 6 | func setLogLevel( level : int ): 7 | _logLevel = level 8 | 9 | 10 | # warning-ignore:unused_argument 11 | # warning-ignore:unused_argument 12 | func info( caller : Object, message : String ): 13 | pass 14 | 15 | 16 | # warning-ignore:unused_argument 17 | # warning-ignore:unused_argument 18 | func warn( caller : Object, message : String ): 19 | pass 20 | 21 | 22 | # warning-ignore:unused_argument 23 | # warning-ignore:unused_argument 24 | func error( caller : Object, message : String ): 25 | pass 26 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/debug/Variables.gd: -------------------------------------------------------------------------------- 1 | extends ItemList 2 | 3 | var _variables : Dictionary setget deleted 4 | 5 | func deleted(_a): 6 | assert(false) 7 | 8 | 9 | func _ready(): 10 | _refreshView() 11 | 12 | 13 | func setVariables( variables : Dictionary ): 14 | _variables = variables 15 | _refreshView() 16 | 17 | 18 | func _refreshView(): 19 | clear() 20 | add_item(" VARIABLE") 21 | add_item(" VALUE") 22 | 23 | for variable in _variables: 24 | add_item(str(variable)) 25 | add_item(str(_variables[variable])) 26 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/Globals.gd: -------------------------------------------------------------------------------- 1 | class_name Globals 2 | 3 | const Groups = { 4 | SpawnPoints = "SpawnPoints", 5 | Agents = "Agents", 6 | NPCs = "NPCs", 7 | PCs = "PCs", 8 | } 9 | 10 | const SCENE_EXTENSION = ".tscn" 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/IntroScene.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="GDScript" id=1] 4 | script/source = "extends Node 5 | 6 | const MainMenuPath = \"res://engine/gui/MainMenuScene.tscn\" 7 | 8 | 9 | func _ready(): 10 | if OS.has_feature(\"debug\"): 11 | Debug.setLogToConsole( true ) 12 | Debug.setLogToFile( true ) 13 | Debug.setLogLevel( 3 ) 14 | 15 | Debug.info( self, \"-----\\nPROGRAM START\\n-----\" ) 16 | 17 | SceneSwitcher.switch_scene( MainMenuPath ) 18 | " 19 | 20 | [node name="Intro" type="Node"] 21 | script = SubResource( 1 ) 22 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/ModuleData.gd: -------------------------------------------------------------------------------- 1 | extends Resource 2 | 3 | 4 | func _init(): 5 | var constMap = get_script().get_script_constant_map() 6 | 7 | assert( constMap.has("UnitMax") ) 8 | assert( constMap.has("Units") ) 9 | assert( constMap.has("LevelNames") ) 10 | assert( constMap.has("LevelConnections") ) 11 | assert( constMap.has("StartingLevelName") ) 12 | assert( constMap.has("DefaultLevelEntrances") ) 13 | assert( constMap.get("LevelNames").has( constMap.get("StartingLevelName") ) ) 14 | assert( constMap.get("DefaultLevelEntrances").has( constMap.get("StartingLevelName") ) ) 15 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/SelectionBox.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/SelectionBox.gd" type="Script" id=1] 4 | 5 | [node name="SelectionBox" type="CanvasLayer"] 6 | layer = 5 7 | script = ExtResource( 1 ) 8 | 9 | [node name="ColorRect" type="ColorRect" parent="."] 10 | modulate = Color( 1, 1, 1, 0.470588 ) 11 | margin_right = 40.0 12 | margin_bottom = 40.0 13 | color = Color( 0.231373, 0.529412, 0.643137, 1 ) 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/SelectionComponent.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Area2D 3 | 4 | onready var _rectShape = $"CollisionShape2D".shape 5 | onready var _perimeter = $"Perimeter" 6 | 7 | 8 | func _process( _delta ): 9 | var x = _rectShape.extents.x 10 | var y = _rectShape.extents.y 11 | var points = _perimeter.points 12 | 13 | assert(points.size() == 5) 14 | points[0] = Vector2(-x, -y) 15 | points[1] = Vector2(-x, y) 16 | points[2] = Vector2(x, y) 17 | points[3] = Vector2(x, -y) 18 | points[4] = points[0] 19 | _perimeter.points = points 20 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/agent/PlayerAgent.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/agent/PlayerAgent.gd" type="Script" id=1] 4 | [ext_resource path="res://engine/SelectionBox.tscn" type="PackedScene" id=2] 5 | 6 | [node name="PlayerAgent" type="Node"] 7 | script = ExtResource( 1 ) 8 | fogVisionGd = "res://engine/level/RaycastFogVision.gd" 9 | 10 | [node name="SelectionBox" parent="." instance=ExtResource( 2 )] 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/agent/UnitGrabbingAgent.gd: -------------------------------------------------------------------------------- 1 | extends "res://engine/agent/PlayerAgent.gd" 2 | 3 | 4 | func _ready(): 5 | var parent = get_parent() 6 | if parent is UnitBase: 7 | call_deferred( 'addUnit', parent ) 8 | 9 | 10 | func _onTravelRequest(): 11 | pass 12 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/game/LogLabel.gd: -------------------------------------------------------------------------------- 1 | extends Label 2 | 3 | 4 | func setMessage( message : String ): 5 | self.text = message 6 | 7 | if has_node("resetMessage"): 8 | $"resetMessage".start() 9 | else: 10 | var timer = Timer.new() 11 | timer.name = "resetMessage" 12 | timer.connect("timeout", self, "set_text", [""]) 13 | timer.connect("timeout", timer, "queue_free") 14 | timer.wait_time = 3 15 | add_child( timer ) 16 | timer.start() 17 | 18 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/game/PlayerPause.gd: -------------------------------------------------------------------------------- 1 | extends Control 2 | 3 | onready var _pause = visible 4 | onready var _sceneRoot = $"../.." 5 | 6 | 7 | func _unhandled_input(event): 8 | if event.is_action_pressed("pause"): 9 | _pause = !_pause 10 | visible = _pause 11 | _sceneRoot.updatePaused() 12 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/AcceptDialog.gd: -------------------------------------------------------------------------------- 1 | 2 | 3 | static func showAcceptDialog( message, title, dialogParent ): 4 | var dialog = AcceptDialog.new() 5 | dialog.set_title( title ) 6 | dialog.set_text( message ) 7 | dialog.set_name( title ) 8 | dialog.popup_exclusive = false 9 | dialog.connect("confirmed", dialog, "queue_free") 10 | dialog.connect("hide", dialog, "queue_free") 11 | dialog.connect("tree_entered", dialog, "call_deferred", ["popup_centered_minsize"]) 12 | SceneSwitcher.connect("scene_set_as_current", dialog, "raise") 13 | dialogParent.call_deferred("add_child", dialog) 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/ChooseModuleDialog.gd: -------------------------------------------------------------------------------- 1 | extends FileDialog 2 | 3 | const ModulesDirectory = "res://data" 4 | const ModuleFileExtension = "gd" 5 | 6 | 7 | func _draw(): 8 | set_current_dir(ModulesDirectory) 9 | self.filters = PoolStringArray( ["*." + ModuleFileExtension] ) 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/LoadGameDialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/gui/SerializationDialog.gd" type="Script" id=1] 4 | 5 | [node name="LoadGameDialog" type="FileDialog"] 6 | anchor_left = 0.5 7 | anchor_top = 0.5 8 | anchor_right = 0.5 9 | anchor_bottom = 0.5 10 | margin_left = -339.5 11 | margin_top = -246.0 12 | margin_right = 339.5 13 | margin_bottom = 246.0 14 | rect_min_size = Vector2( 150, 52.5 ) 15 | window_title = "Open a File" 16 | mode = 0 17 | script = ExtResource( 1 ) 18 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/PlayerData.gd: -------------------------------------------------------------------------------- 1 | extends Panel 2 | 3 | 4 | export var _defaultPlayerName = "Player" 5 | 6 | 7 | func _ready(): 8 | $"Name".text = _defaultPlayerName 9 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/SaveGameDialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/gui/SerializationDialog.gd" type="Script" id=1] 4 | 5 | [node name="SaveGameDialog" type="FileDialog"] 6 | anchor_left = 0.5 7 | anchor_top = 0.5 8 | anchor_right = 0.5 9 | anchor_bottom = 0.5 10 | margin_left = -348.5 11 | margin_top = -237.0 12 | margin_right = 340.5 13 | margin_bottom = 253.0 14 | rect_min_size = Vector2( 190, 66.5 ) 15 | dialog_text = "Create save file" 16 | script = ExtResource( 1 ) 17 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/SerializationDialog.gd: -------------------------------------------------------------------------------- 1 | extends FileDialog 2 | 3 | #TODO saves in usr:// directory 4 | const SaveGameDirectory = "res://save" 5 | const SaveFileExtension = "tres" 6 | 7 | 8 | func _draw(): 9 | set_current_dir(SaveGameDirectory) 10 | self.filters = PoolStringArray( ["*." + SaveFileExtension] ) 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/lobby/LobbyBase.gd: -------------------------------------------------------------------------------- 1 | extends Panel 2 | 3 | const PlayerString = "%s (%s) %s" 4 | 5 | var _maxUnits = 0 setget setMaxUnits 6 | 7 | 8 | func deleted(_a): 9 | assert(false) 10 | 11 | 12 | func refreshLobby( clientList : Dictionary ): 13 | $"Players/PlayerList".clear() 14 | for pId in clientList: 15 | var playerString = PlayerString % [clientList[pId], pId, ""] 16 | $"Players/PlayerList".add_item( playerString ) 17 | 18 | 19 | func setMaxUnits( maxUnits : int ): 20 | _maxUnits = maxUnits 21 | $"UnitLimit".setMaximum( maxUnits ) 22 | 23 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/lobby/NewGameLobby.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/gui/lobby/Lobby.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Lobby" instance=ExtResource( 1 )] 6 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/lobby/UnitLimit.gd: -------------------------------------------------------------------------------- 1 | extends Label 2 | 3 | 4 | const UnitCountPrefix = "Units : " 5 | 6 | var _maxUnits = 0 7 | var _currentUnits = 0 8 | 9 | 10 | func _ready(): 11 | refreshText() 12 | 13 | 14 | func setMaximum( maximum ): 15 | _maxUnits = maximum 16 | refreshText() 17 | 18 | 19 | func setCurrent( current ): 20 | _currentUnits = current 21 | refreshText() 22 | 23 | 24 | func refreshText(): 25 | self.text = ( UnitCountPrefix + str(_currentUnits) + "/" + str(_maxUnits) ) 26 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/gui/lobby/UnitLine.gd: -------------------------------------------------------------------------------- 1 | extends HBoxContainer 2 | 3 | const UnitCreationDataGd = preload("res://engine/units/UnitCreationData.gd") 4 | 5 | var _lineIdx setget deleted, getIdx 6 | 7 | signal deletePressed( lineIdx ) 8 | 9 | 10 | func deleted(_a): 11 | assert(false) 12 | 13 | 14 | func initialize( idx ): 15 | _lineIdx = idx 16 | 17 | 18 | func setUnit( unitData : UnitCreationDataGd ): 19 | $"Name".text = unitData.name 20 | $"TextureRect".texture = unitData.icon 21 | 22 | 23 | func onDeletePressed(): 24 | emit_signal( "deletePressed", get_index() ) 25 | 26 | 27 | func getIdx(): 28 | return _lineIdx 29 | 30 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/items/ItemBase.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | class_name ItemBase 3 | 4 | const INVALID_ID := "" 5 | 6 | export var _itemID : String = INVALID_ID 7 | 8 | 9 | func _init(): 10 | Debug.updateVariable("Item count", +1, true) 11 | 12 | 13 | func _ready(): 14 | assert(_itemID != INVALID_ID) 15 | 16 | 17 | func _notification(what): 18 | if what == NOTIFICATION_PREDELETE: 19 | Debug.updateVariable("Item count", -1, true) 20 | 21 | 22 | func getID() -> String: 23 | return _itemID 24 | 25 | 26 | func destroy(): 27 | queue_free() 28 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/items/ItemBase.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/items/ItemBase.gd" type="Script" id=1] 4 | 5 | [node name="ItemBase" type="Node2D"] 6 | z_index = 10 7 | script = ExtResource( 1 ) 8 | 9 | [node name="Sprite" type="Sprite" parent="."] 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/items/ItemDbFactory.gd: -------------------------------------------------------------------------------- 1 | extends Reference 2 | 3 | 4 | static func createItemDb( ItemDbPath: String ) -> ItemDbBase: 5 | var databaseScene: ItemDbBase = load(ItemDbPath).new() 6 | var errors := [] 7 | databaseScene.setupItemDatabase(errors) 8 | 9 | for error in errors: 10 | print(error) 11 | 12 | return databaseScene 13 | 14 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/level/FogVision.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://engine/level/FogVisionBase.gd" type="Script" id=1] 4 | 5 | [node name="FogVision" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/level/Spawn.gd: -------------------------------------------------------------------------------- 1 | extends Position2D 2 | 3 | var _bodiesInArea = 0 setget deleted 4 | 5 | 6 | func deleted(_a): 7 | assert(false) 8 | 9 | 10 | func _ready(): 11 | assert( is_in_group(Globals.Groups.SpawnPoints) ) 12 | _bodiesInArea = get_node("Area2D").get_overlapping_bodies().size() 13 | 14 | 15 | func spawnAllowed(): 16 | assert( _bodiesInArea >= 0 ) 17 | return _bodiesInArea == 0 18 | 19 | 20 | func onArea2DBodyEntered( _body ): 21 | _bodiesInArea += 1 22 | 23 | 24 | func onArea2DBodyExited( _body ): 25 | _bodiesInArea -= 1 26 | 27 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/engine/units/UnitCreationData.gd: -------------------------------------------------------------------------------- 1 | extends Reference 2 | 3 | 4 | var name : String setget deleted 5 | var icon : Texture setget deleted 6 | 7 | 8 | func deleted(_a): 9 | assert(false) 10 | 11 | 12 | func _init( name_ : String, icon_ : Texture ): 13 | name = name_ 14 | icon = icon_ 15 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/icon.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/projects/Serialization/SaveGameFile.gd: -------------------------------------------------------------------------------- 1 | extends Resource 2 | 3 | # warning-ignore:unused_class_variable 4 | export var version : String = "0.0.0" 5 | 6 | # warning-ignore:unused_class_variable 7 | export var nodesDict := {} 8 | 9 | # warning-ignore:unused_class_variable 10 | export var userDict := {} 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/DB0/EmptyItemDB.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | func getAllItemsStats() -> Dictionary: 5 | return {} 6 | 7 | 8 | func _getDirectory() -> String: 9 | return get_script().resource_path.get_base_dir() 10 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/DB1/Helmet.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://engine/items/ItemBase.tscn" type="PackedScene" id=1] 4 | [ext_resource path="res://data/common/items/helmet.png" type="Texture" id=2] 5 | 6 | [node name="Helmet" instance=ExtResource( 1 )] 7 | _itemID = "HELMET" 8 | 9 | [node name="Sprite" parent="." index="0"] 10 | texture = ExtResource( 2 ) 11 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/DB1/ItemDB1.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | var _items := { 5 | "HELMET" : { 6 | "name" : "Helmet", 7 | "type" : "equipment", 8 | "defense" : 3, 9 | } 10 | } 11 | 12 | 13 | func getAllItemsStats() -> Dictionary: 14 | return _items 15 | 16 | 17 | func _getDirectory() -> String: 18 | return get_script().resource_path.get_base_dir() 19 | 20 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/DB1/helmet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/DungeonCrawler/tests/items/DB1/helmet.png -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/duplicates/BarBazBase.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | var _items := { 5 | "BAZ" : { 6 | "name" : "Baz", 7 | }, 8 | "BAR" : { 9 | "name" : "Bar", 10 | } 11 | } 12 | 13 | 14 | func getAllItemsStats() -> Dictionary: 15 | return _items 16 | 17 | 18 | func _getDirectory() -> String: 19 | return get_script().resource_path.get_base_dir() 20 | -------------------------------------------------------------------------------- /Godot/DungeonCrawler/tests/items/duplicates/FooBarBase.gd: -------------------------------------------------------------------------------- 1 | extends ItemDbBase 2 | 3 | 4 | var _items := { 5 | "FOO" : { 6 | "name" : "Foo", 7 | }, 8 | "BAR" : { 9 | "name" : "Bar", 10 | } 11 | } 12 | 13 | 14 | func getAllItemsStats() -> Dictionary: 15 | return _items 16 | 17 | 18 | func _getDirectory() -> String: 19 | return get_script().resource_path.get_base_dir() 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/DerivedParticles2D.gd: -------------------------------------------------------------------------------- 1 | extends CPUParticles2D 2 | 3 | var emi_nemi 4 | 5 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/Node.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | const DerivedParticles = preload("res://DerivedParticles2D.gd") 4 | 5 | onready var foo: DerivedParticles 6 | onready var bar: CPUParticles2D = $"CPUParticles2D" 7 | onready var baz: CPUParticles2D = CPUParticles2D.new() 8 | 9 | 10 | var my_array = [ CPUParticles2D.new(), 2] 11 | var my_dict = { 1 : DerivedParticles.new() } 12 | 13 | func _init(): 14 | foo.emission_normals 15 | bar.emi 16 | baz.emission_colors 17 | 18 | my_array[0].emission_colors 19 | my_dict[1]. 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | [node name="CPUParticles2D" type="CPUParticles2D" parent="."] 9 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/OtherScene.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Node" type="Node"] 4 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/AutocompleteOverridenByGetNode/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/AutocompleteOverridenByGetNode/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="AutocompleteOverridenByGetNode" 14 | config/icon="res://icon.png" 15 | 16 | [physics] 17 | 18 | common/enable_pause_aware_picking=true 19 | 20 | [rendering] 21 | 22 | environment/default_environment="res://default_env.tres" 23 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutoloadBreaksInheritance/AutoloadMe.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | # autoload this script 5 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutoloadBreaksInheritance/RunMe.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | class BaseClass: 5 | var member 6 | 7 | 8 | class DerivedClass extends BaseClass: 9 | func _init(): 10 | member = 8 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutoloadBreaksInheritance/RunMe.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://RunMe.gd" type="Script" id=1] 4 | 5 | [node name="RunMe" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutoloadBreaksInheritance/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/AutoloadBreaksInheritance/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/AutoloadBreaksInheritance/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot32/Node2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Node2D" type="Node2D"] 4 | 5 | [node name="foreignChild" type="Node2D" parent="."] 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot32/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot32/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/ChildrenOfForeignNodes_godot32/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot40/Node2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Node2D" type="Node2D"] 4 | script = null 5 | 6 | [node name="foreignChild" type="Node2D" parent="."] 7 | script = null 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot40/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="Sky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot40/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/ChildrenOfForeignNodes_godot40/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/ChildrenOfForeignNodes_godot40/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="ChildrenOfForeignNodes_godot40" 14 | config/icon="res://icon.png" 15 | 16 | [rendering] 17 | 18 | driver/driver_name="Vulkan" 19 | environment/defaults/default_environment="res://default_env.tres" 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/CreatingObjectsLeaksMemory/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/CreatingObjectsLeaksMemory/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/CreatingObjectsLeaksMemory/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/InspectorDictionaryCollapse/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://new_script.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/InspectorDictionaryCollapse/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | 6 | [resource] 7 | 8 | background_mode = 2 9 | background_sky = SubResource( 1 ) 10 | 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/InspectorDictionaryCollapse/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/InspectorDictionaryCollapse/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/InspectorDictionaryCollapse/new_script.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var dict = { 4 | 'dict1' : { 5 | 'dict2' : { 1 : 'cant see' }, 6 | 'array2' : ['cant see'], 7 | }, 8 | 'array1' : [ 9 | 3, 10 | ['cant see'] 11 | ], 12 | } 13 | 14 | 15 | func _ready(): 16 | pass # put a breakpoint here 17 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/Outer.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Inner.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer" type="Control"] 6 | anchor_right = 1.0 7 | anchor_bottom = 1.0 8 | __meta__ = { 9 | "_edit_lock_": true, 10 | "_edit_use_anchors_": false 11 | } 12 | 13 | [node name="Inner" parent="." instance=ExtResource( 1 )] 14 | 15 | [editable path="Inner"] 16 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/addons/.gitignore: -------------------------------------------------------------------------------- 1 | # Godot-specific ignores 2 | .import/ 3 | export.cfg 4 | export_presets.cfg 5 | 6 | # Imported translations (automatically generated from CSV files) 7 | *.translation 8 | # Mono-specific ignores 9 | .mono/ 10 | data_*/ 11 | mono_crash.*.json 12 | 13 | # System/tool-specific ignores 14 | .directory 15 | *~ 16 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/addons/metadata_inspector/RealtimeUpdater.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var counter = 0 4 | 5 | func _ready(): 6 | print("REDY") 7 | 8 | func _process(delta): 9 | if counter == 30: 10 | #print(Engine.is_editor_hint()) 11 | if( self.get_tree().has_method("is_editor_hint") and not self.get_tree().is_editor_hint() 12 | or( not Engine.is_editor_hint()) 13 | ): 14 | print("UPDATE") 15 | counter = (counter+1)%120 16 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/addons/metadata_inspector/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Metadata Inspector" 4 | description="From the nodes tab, you can now view metadata and set custom variables." 5 | author="Ballerburg9005" 6 | version="0.2.1" 7 | script="metadata_inspector.gd" 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/delme/.gdignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/LocksAndGroups/delme/.gdignore -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/delme/demo1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/LocksAndGroups/delme/demo1.jpg -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/delme/demo2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/LocksAndGroups/delme/demo2.jpg -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/delme/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/LocksAndGroups/delme/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/LocksAndGroups/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/LocksAndGroups/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/Base.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | onready var x = $Ghost 4 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/Inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Base.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Inherited" instance=ExtResource( 1 )] 6 | 7 | [node name="Sprite" parent="." index="0"] 8 | modulate = Color( 0.0980392, 0.654902, 0, 1 ) 9 | position = Vector2( -1, 93 ) 10 | ghost = "hoo hoo" 11 | 12 | [node name="Name" parent="Sprite/Line" index="0"] 13 | text = "Inherited" 14 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/InheritedInstancedTriple.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://InstancedTriple.tscn" type="PackedScene" id=1] 4 | 5 | [node name="InheritedInstancedTriple" instance=ExtResource( 1 )] 6 | 7 | [node name="Name" parent="InstancedDouble/Instanced/Base/Sprite/Line" index="0"] 8 | text = "InheritedInstancedTriple" 9 | 10 | [editable path="InstancedDouble"] 11 | [editable path="InstancedDouble/Instanced"] 12 | [editable path="InstancedDouble/Instanced/Base"] 13 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/Instanced.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Base.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Instanced" type="Node2D"] 6 | 7 | [node name="Base" parent="." instance=ExtResource( 1 )] 8 | self_modulate = Color( 0.503814, 0.209564, 0.851563, 1 ) 9 | position = Vector2( 100, 0 ) 10 | 11 | [node name="Name" parent="Base/Sprite/Line" index="0"] 12 | text = "Instanced 13 | " 14 | 15 | [editable path="Base"] 16 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/InstancedDouble.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Instanced.tscn" type="PackedScene" id=1] 4 | 5 | [node name="InstancedDouble" type="Node2D"] 6 | 7 | [node name="Instanced" parent="." instance=ExtResource( 1 )] 8 | 9 | [node name="Sprite" parent="Instanced/Base" index="0"] 10 | position = Vector2( 93, 83 ) 11 | ghost = "boohooboo" 12 | 13 | [node name="Name" parent="Instanced/Base/Sprite/Line" index="0"] 14 | text = "InstancedDouble" 15 | 16 | [editable path="Instanced"] 17 | [editable path="Instanced/Base"] 18 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/Sprite.gd: -------------------------------------------------------------------------------- 1 | extends Sprite 2 | 3 | export var ghost := "boo" 4 | 5 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/NestedSceneInstancesDuplication_godot32/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/#31744/Scene1.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="StreamTexture2D" id=1] 4 | load_path = "res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" 5 | 6 | [node name="Scene1" type="Node2D"] 7 | script = null 8 | 9 | [node name="Sprite2D" type="Sprite2D" parent="."] 10 | texture = SubResource( 1 ) 11 | script = null 12 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/#31744/Scene2.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://#31744/Scene1.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Scene2" type="Node2D"] 6 | script = null 7 | 8 | [node name="Scene1" parent="." instance=ExtResource( 1 )] 9 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/#31744/Scene3.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://#31744/Scene1.tscn" type="PackedScene" id=1] 4 | 5 | [sub_resource type="StreamTexture2D" id=1] 6 | load_path = "res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" 7 | 8 | [node name="Scene3" type="Node2D"] 9 | script = null 10 | 11 | [node name="Scene1" parent="." instance=ExtResource( 1 )] 12 | 13 | [node name="Sprite2D" parent="Scene1" index="0"] 14 | position = Vector2( 185, 137 ) 15 | texture = SubResource( 1 ) 16 | 17 | [editable path="Scene1"] 18 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/#42613/Inner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Inner" type="Node2D"] 4 | script = null 5 | 6 | [node name="SaveMe" type="Node2D" parent="."] 7 | script = null 8 | 9 | [node name="CanvasGroup" type="CanvasGroup" parent="SaveMe"] 10 | script = null 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/#42613/Outer.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://#42613/Inner.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer" type="Node2D"] 6 | script = null 7 | 8 | [node name="Inner" parent="." instance=ExtResource( 1 )] 9 | 10 | [editable path="Inner"] 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Canvas/InheritedInstanced2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Instanced2D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="InheritedInstanced2D" instance=ExtResource( 1 )] 6 | 7 | [node name="Label" parent="Base/Sprite2D/Line2D" index="0"] 8 | structured_text_bidi_override_options = [ ] 9 | 10 | [editable path="Base"] 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Canvas/Instanced2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Base2D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Instanced2D" type="Node2D"] 6 | script = null 7 | 8 | [node name="Base" parent="." instance=ExtResource( 1 )] 9 | 10 | [node name="Sprite2D" parent="Base" index="0"] 11 | variable = 123 12 | 13 | [node name="Label" parent="Base/Sprite2D/Line2D" index="0"] 14 | structured_text_bidi_override_options = [ ] 15 | 16 | [editable path="Base"] 17 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Canvas/InstancedUI.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/BaseUI.tscn" type="PackedScene" id=1] 4 | 5 | [node name="InstancedUI" type="Control"] 6 | anchor_right = 1.0 7 | anchor_bottom = 1.0 8 | offset_right = -875.0 9 | offset_bottom = -466.0 10 | script = null 11 | __meta__ = { 12 | "_edit_use_anchors_": false 13 | } 14 | 15 | [node name="BaseUI" parent="." instance=ExtResource( 1 )] 16 | 17 | [node name="Label" parent="BaseUI" index="0"] 18 | structured_text_bidi_override_options = [ ] 19 | 20 | [editable path="BaseUI"] 21 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/CanvasGroup.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="CanvasGroup" type="CanvasGroup"] 4 | script = null 5 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Exports.gd: -------------------------------------------------------------------------------- 1 | extends NavigationObstacle2D 2 | 3 | @export var ff : float = 0.0 4 | 5 | @export var ii : int = 0 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Spatial/Base3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="SphereMesh" id=1] 4 | 5 | [node name="Base3D" type="Node3D"] 6 | script = null 7 | 8 | [node name="MeshInstance3D" type="MeshInstance3D" parent="."] 9 | layers = 5 10 | mesh = SubResource( 1 ) 11 | material/0 = null 12 | script = null 13 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Spatial/Inherited3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Base3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Inherited3D" instance=ExtResource( 1 )] 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Spatial/InheritedInstanced3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Instanced3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Instanced3D" instance=ExtResource( 1 )] 6 | 7 | [editable path="Base3D"] 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/Spatial/Instanced3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://Spatial/Base3D.tscn" type="PackedScene" id=1] 4 | 5 | [sub_resource type="BoxMesh" id=1] 6 | 7 | [node name="Instanced3D" type="Node3D"] 8 | script = null 9 | 10 | [node name="MeshInstance3D" type="MeshInstance3D" parent="."] 11 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1.18053, 0.584269, 0.281217 ) 12 | mesh = SubResource( 1 ) 13 | material/0 = null 14 | script = null 15 | 16 | [node name="Base3D" parent="." instance=ExtResource( 1 )] 17 | 18 | [editable path="Base3D"] 19 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="Sky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/NestedSceneInstancesDuplication_godot40/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="NestedSceneInstancesDuplication_godot40" 14 | run/main_scene="res://Canvas/Base2D.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [rendering] 18 | 19 | environment/defaults/default_environment="res://default_env.tres" 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/Obstacle2DIsInsideTreeErrors_godot35/Node2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="LineShape2D" id=1] 4 | 5 | [node name="Node2D" type="KinematicBody2D"] 6 | 7 | [node name="NavigationObstacle2D" type="NavigationObstacle2D" parent="."] 8 | 9 | [node name="CollisionShape2D" type="CollisionShape2D" parent="."] 10 | shape = SubResource( 1 ) 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/Obstacle2DIsInsideTreeErrors_godot35/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/Obstacle2DIsInsideTreeErrors_godot35/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/Obstacle2DIsInsideTreeErrors_godot35/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/Banana.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/Grapes.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/Main.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | const BananaGd = preload("res://Banana.gd") 4 | const GrapesGd = preload("res://Grapes.gd") 5 | 6 | 7 | func _ready(): 8 | var node = Node.new() 9 | node.set_script(BananaGd) 10 | node = GrapesGd.new() 11 | var parent = Node2D.new() 12 | parent.add_child(node) 13 | 14 | call_deferred("print_stray") 15 | 16 | 17 | func print_stray(): 18 | print_stray_nodes() 19 | pass 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/Main.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Main.gd" type="Script" id=1] 4 | 5 | [node name="Main" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/PrintStrayNodes_godot3/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot3/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="PrintStrayNodes_godot3" 14 | run/main_scene="res://Main.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [physics] 18 | 19 | common/enable_pause_aware_picking=true 20 | 21 | [rendering] 22 | 23 | environment/default_environment="res://default_env.tres" 24 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/Banana.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/Grapes.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/Main.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | const BananaGd = preload("res://Banana.gd") 4 | const GrapesGd = preload("res://Grapes.gd") 5 | 6 | 7 | func _ready(): 8 | var node = Node.new() 9 | node.set_script(BananaGd) 10 | node = GrapesGd.new() 11 | var parent = Node2D.new() 12 | parent.add_child(node) 13 | 14 | call_deferred("print_stray") 15 | 16 | 17 | func print_stray(): 18 | print_stray_nodes() 19 | pass 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/Main.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Main.gd" type="Script" id=1] 4 | 5 | [node name="Main" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="Sky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/PrintStrayNodes_godot4/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/PrintStrayNodes_godot4/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="PrintStrayNodes_godot4" 14 | run/main_scene="res://Main.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [rendering] 18 | 19 | environment/defaults/default_environment="res://default_env.tres" 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Bones/BaseSkelly.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Skeleton2D" type="Skeleton2D"] 4 | 5 | [node name="Bone1" type="Bone2D" parent="."] 6 | __meta__ = { 7 | "_edit_group_": true, 8 | "_edit_lock_": true 9 | } 10 | 11 | [node name="Bone2" type="Bone2D" parent="Bone1"] 12 | position = Vector2( -2.24747, 56.1865 ) 13 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Bones/DoubleInstancedSkelly.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Bones/InstancedSkelly.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Node2D" type="Node2D"] 6 | 7 | [node name="Node" parent="." instance=ExtResource( 1 )] 8 | 9 | [editable path="Node"] 10 | [editable path="Node/Skelly"] 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Bones/InstancedSkelly.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Bones/BaseSkelly.tscn" type="PackedScene" id=1] 4 | 5 | [node name="InstanceWithSkelly" type="Node"] 6 | 7 | [node name="Skelly" parent="." instance=ExtResource( 1 )] 8 | 9 | [editable path="Skelly"] 10 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Bones/Skeleton2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Skeleton2D" type="Skeleton2D"] 4 | __meta__ = { 5 | "_edit_lock_": true 6 | } 7 | 8 | [node name="Bone2D" type="Bone2D" parent="."] 9 | position = Vector2( 32.9628, 23.2238 ) 10 | 11 | [node name="Bone2D" type="Bone2D" parent="Bone2D"] 12 | position = Vector2( 37.4577, 37.4577 ) 13 | default_length = 30.0 14 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Canvas/CanvasChildOfEditable.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Outer2D_inherited.tscn" type="PackedScene" id=1] 4 | 5 | [node name="CanvasChildOfEditable" type="Control"] 6 | anchor_right = 1.0 7 | anchor_bottom = 1.0 8 | __meta__ = { 9 | "_edit_use_anchors_": false 10 | } 11 | 12 | [node name="Outer2D_inherited" parent="." instance=ExtResource( 1 )] 13 | 14 | [editable path="Outer2D_inherited"] 15 | [editable path="Outer2D_inherited/Inner2D"] 16 | [editable path="Outer2D_inherited/Skeleton2D"] 17 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Canvas/Outer2D_inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Outer2D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer2D_inherited" instance=ExtResource( 1 )] 6 | modulate = Color( 0.976471, 0.611765, 0.141176, 1 ) 7 | 8 | [editable path="Inner2D"] 9 | 10 | [editable path="Skeleton2D"] 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/Inner3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="PrismMesh" id=1] 4 | 5 | [node name="Inner3D" type="Spatial"] 6 | 7 | [node name="MeshInstance" type="MeshInstance" parent="."] 8 | mesh = SubResource( 1 ) 9 | material/0 = null 10 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/Outer3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://Spatial/Inner3D.tscn" type="PackedScene" id=1] 4 | 5 | [sub_resource type="CubeMesh" id=1] 6 | 7 | [node name="Outer3D" type="MeshInstance"] 8 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.998668, 0.835253, 0.0256224 ) 9 | mesh = SubResource( 1 ) 10 | material/0 = null 11 | 12 | [node name="Inner3D" parent="." instance=ExtResource( 1 )] 13 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.45761, -0.0247924, 0 ) 14 | 15 | [editable path="Inner3D"] 16 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/Outer3D_inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Outer3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer3D_inherited" instance=ExtResource( 1 )] 6 | 7 | [editable path="Inner3D"] 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/SaveHiddenNode.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Outer3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="SaveHiddenNode" type="Control"] 6 | anchor_right = 1.0 7 | anchor_bottom = 1.0 8 | __meta__ = { 9 | "_edit_use_anchors_": false 10 | } 11 | 12 | [node name="Outer3D" parent="." instance=ExtResource( 1 )] 13 | 14 | [node name="AnimationTree" type="AnimationTree" parent="Outer3D/Inner3D" index="1"] 15 | process_mode = 0 16 | 17 | [editable path="Outer3D"] 18 | [editable path="Outer3D/Inner3D"] 19 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/SelectRootNode.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Outer3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="SelectRootNode" instance=ExtResource( 1 )] 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/Spatial/SpatialChildOfEditable.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Outer3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="SpatialChildOfEditable" type="Spatial"] 6 | 7 | [node name="Outer3D" parent="." instance=ExtResource( 1 )] 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot32/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/Canvas/Inner2D_inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Inner2D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Inner2D_inherited" instance=ExtResource( 1 )] 6 | modulate = Color( 0.643137, 0.411765, 0.917647, 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/Canvas/Outer2D_inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Canvas/Outer2D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer2D_inherited" instance=ExtResource( 1 )] 6 | modulate = Color( 0.988235, 0.67451, 0.270588, 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/Spatial/Inner3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="CylinderMesh" id=1] 4 | 5 | [node name="Inner3D" type="Node3D"] 6 | script = null 7 | 8 | [node name="MeshInstance3D" type="MeshInstance3D" parent="."] 9 | transform = Transform( 0.745975, 0, 0, 0, 0.745975, 0, 0, 0, 0.745975, 0.232797, 0.219764, -0.194422 ) 10 | gi_mode = 2 11 | mesh = SubResource( 1 ) 12 | material/0 = null 13 | script = null 14 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/Spatial/Outer3D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://Spatial/Inner3D.tscn" type="PackedScene" id=1] 4 | 5 | [sub_resource type="PrismMesh" id=1] 6 | 7 | [node name="Outer3D" type="MeshInstance3D"] 8 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.899553, 0.569159, 0.137122 ) 9 | mesh = SubResource( 1 ) 10 | material/0 = null 11 | script = null 12 | 13 | [node name="Inner3D" parent="." instance=ExtResource( 1 )] 14 | transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.58907, -0.61449, 0.0607145 ) 15 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/Spatial/Outer3D_inherited.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Spatial/Outer3D.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Outer3D_inherited" instance=ExtResource( 1 )] 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="Sky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/SelectingHiddenNodesIn3DandCanvasEditors_godot40/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="SelectingHiddenNodesIn3DandCanvasEditors_godot40" 14 | config/icon="res://icon.png" 15 | 16 | [rendering] 17 | 18 | driver/driver_name="Vulkan" 19 | environment/defaults/default_environment="res://default_env.tres" 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SignalAutocomplete/Node.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | func _init(): 5 | $"Timer".connect("") 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SignalAutocomplete/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | [node name="Timer" type="Timer" parent="."] 9 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SignalAutocomplete/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/SignalAutocomplete/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/SignalAutocomplete/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/SignalAutocomplete/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="SignalAutocompleteExtraQuotes" 14 | config/icon="res://icon.png" 15 | 16 | [physics] 17 | 18 | common/enable_pause_aware_picking=true 19 | 20 | [rendering] 21 | 22 | environment/default_environment="res://default_env.tres" 23 | -------------------------------------------------------------------------------- /Godot/EngineIssues/TypedArrays_40/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/TypedArrays_40/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="Sky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/TypedArrays_40/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/TypedArrays_40/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/TypedArrays_40/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="TypedArrays_40" 14 | run/main_scene="res://Node.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [rendering] 18 | 19 | environment/defaults/default_environment="res://default_env.tres" 20 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UninitializedTypedArrays/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UninitializedTypedArrays/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | 6 | [resource] 7 | 8 | background_mode = 2 9 | background_sky = SubResource( 1 ) 10 | 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UninitializedTypedArrays/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | _global_script_classes=[ ] 12 | _global_script_class_icons={ 13 | 14 | } 15 | 16 | [application] 17 | 18 | config/name="UninitializedTypedArrays" 19 | run/main_scene="res://Node.tscn" 20 | 21 | [rendering] 22 | 23 | environment/default_environment="res://default_env.tres" 24 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UnusedVariableBaseConstructor/Node.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | func _ready(): 5 | var d = Derived.new(2) 6 | 7 | 8 | class Base: 9 | func _init(a): 10 | aa = a 11 | 12 | var aa 13 | 14 | 15 | class Derived extends Base: 16 | func _init(a).(a): 17 | pass 18 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UnusedVariableBaseConstructor/Node.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/UnusedVariableBaseConstructor/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | _global_script_classes=[ ] 12 | _global_script_class_icons={ 13 | 14 | } 15 | 16 | [application] 17 | 18 | config/name="UnusedVariableBaseConstructor" 19 | run/main_scene="res://Node.tscn" 20 | 21 | [rendering] 22 | 23 | environment/default_environment="res://default_env.tres" 24 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/Base.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="Base" type="KinematicBody2D"] 4 | show_behind_parent = true 5 | collision_layer = 7 6 | collision_mask = 0 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/Derived.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Base.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Derived" instance=ExtResource( 1 )] 6 | motion/sync_to_physics = true 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/DerivedTwice.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Derived.tscn" type="PackedScene" id=1] 4 | 5 | [node name="DerivedTwice" instance=ExtResource( 1 )] 6 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/Instanced.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Base.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Instanced" type="Node"] 6 | 7 | [node name="Base" parent="." instance=ExtResource( 1 )] 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/WithBase.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Base.tscn" type="PackedScene" id=1] 4 | 5 | [node name="WithBase" type="Node"] 6 | 7 | [node name="Base" parent="." instance=ExtResource( 1 )] 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/WithDerived.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Derived.tscn" type="PackedScene" id=1] 4 | 5 | [node name="WithDerived" type="Node"] 6 | 7 | [node name="Derived" parent="." instance=ExtResource( 1 )] 8 | 9 | [editable path="Derived"] 10 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/WithInstanced.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Instanced.tscn" type="PackedScene" id=1] 4 | 5 | [node name="WithInstanced" type="Node"] 6 | 7 | [node name="Instanced" parent="." instance=ExtResource( 1 )] 8 | 9 | [editable path="Instanced"] 10 | [editable path="Instanced/Base"] 11 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/World.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=2] 2 | 3 | [node name="World" type="Node2D"] 4 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/_InstancedScenes_/#43032_collision_layer_not_updating/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | _global_script_classes=[ ] 12 | _global_script_class_icons={ 13 | } 14 | 15 | [application] 16 | 17 | config/name="UpdateCollision" 18 | config/icon="res://icon.png" 19 | 20 | [rendering] 21 | 22 | environment/default_environment="res://default_env.tres" 23 | -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/InnerClass.gd: -------------------------------------------------------------------------------- 1 | extends Reference 2 | 3 | class InnerClass: 4 | static func make() -> InnerClass: 5 | return InnerClass.new() 6 | 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/Node2D.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | const InnerClass = preload("res://InnerClass.gd").InnerClass 4 | 5 | func _ready(): 6 | InnerClass.make() 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/Node2D.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Node2D.gd" type="Script" id=1] 4 | 5 | [node name="Node2D" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/EngineIssues/opcode22/icon.png -------------------------------------------------------------------------------- /Godot/EngineIssues/opcode22/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="opcode22" 14 | run/main_scene="res://Node2D.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [physics] 18 | 19 | common/enable_pause_aware_picking=true 20 | 21 | [rendering] 22 | 23 | environment/default_environment="res://default_env.tres" 24 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/ActionStatus.gd: -------------------------------------------------------------------------------- 1 | extends HBoxContainer 2 | 3 | 4 | func _process(_delta): 5 | var actionsToLabels = { 6 | 'ui_up' : $StatusUp, 'ui_down' : $StatusDown, 'ui_left' : $StatusLeft, 'ui_right' : $StatusRight 7 | } 8 | 9 | for a in actionsToLabels: 10 | if Input.is_action_pressed(a): 11 | actionsToLabels[a].text = a 12 | else: 13 | actionsToLabels[a].text = "" 14 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/ButtonUnfocus.gd: -------------------------------------------------------------------------------- 1 | extends Button 2 | 3 | 4 | func _pressed(): 5 | release_focus() 6 | 7 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/Main.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | var _actionsToRelease := ["ui_up", "ui_down", "ui_left", "ui_right"] 5 | 6 | 7 | func _notification(what): 8 | if what == NOTIFICATION_WM_FOCUS_OUT: 9 | for action in _actionsToRelease: 10 | var ev = InputEventAction.new() 11 | ev.action = action 12 | ev.pressed = false 13 | Input.parse_input_event(ev) 14 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/Player.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=2] 2 | 3 | [ext_resource path="res://Player.gd" type="Script" id=1] 4 | [ext_resource path="res://icon.png" type="Texture" id=2] 5 | 6 | [sub_resource type="RectangleShape2D" id=3] 7 | extents = Vector2( 31, 31 ) 8 | 9 | [node name="Player" type="KinematicBody2D"] 10 | position = Vector2( 347, 165 ) 11 | script = ExtResource( 1 ) 12 | __meta__ = { 13 | "_edit_group_": true 14 | } 15 | 16 | [node name="CollisionShape2D" type="CollisionShape2D" parent="."] 17 | shape = SubResource( 3 ) 18 | 19 | [node name="Sprite" type="Sprite" parent="."] 20 | texture = ExtResource( 2 ) 21 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/Godot3/ContinuousMovementWithEvents/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/ContinuousMovementWithEvents/icon.png -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/double_templates/function_template.txt: -------------------------------------------------------------------------------- 1 | {func_decleration} 2 | __gut_spy('{method_name}', {param_array}) 3 | if(__gut_should_call_super('{method_name}', {param_array})): 4 | return {super_call} 5 | else: 6 | return __gut_get_stubbed_return('{method_name}', {param_array}) 7 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Bold.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Italic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/AnonymousPro-Regular.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Bold.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Italic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/CourierPrime-Regular.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Bold.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Italic.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/fonts/LobsterTwo-Regular.ttf -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/get_native_script.gd: -------------------------------------------------------------------------------- 1 | # Since NativeScript does not exist if GDNative is not included in the build 2 | # of Godot this script is conditionally loaded only when NativeScript exists. 3 | # You can then get a reference to NativeScript for use in `is` checks by calling 4 | # get_it. 5 | static func get_it(): 6 | return NativeScript 7 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/gui/GutRunner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/gui/GutRunner.gd" type="Script" id=1] 4 | 5 | [node name="GutRunner" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/icon.png -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Gut" 4 | description="Unit Testing tool for Godot." 5 | author="Butch Wesley" 6 | version="7.2.0" 7 | script="gut_plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/addons/gut/source_code_pro.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/addons/gut/source_code_pro.fnt -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/icon.png -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=4 10 | 11 | [application] 12 | 13 | config/name="FileFinder" 14 | run/main_scene="res://tests/Gut.tscn" 15 | config/icon="res://icon.png" 16 | 17 | [physics] 18 | 19 | common/enable_pause_aware_picking=true 20 | 21 | [rendering] 22 | 23 | environment/default_environment="res://default_env.tres" 24 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/Test_FindScriptsOfClass.gd: -------------------------------------------------------------------------------- 1 | extends "res://tests/GutTestBase.gd" 2 | 3 | const FileFinderGd = preload("res://FileFinder.gd") 4 | 5 | 6 | func test_findNodeSubclasses(): 7 | var scripts := PoolStringArray() 8 | scripts.append("res://tests/files/NodeSubclass.gd") 9 | var nodeSubclasses = FileFinderGd.findScriptsOfClass(scripts, Node) 10 | assert_eq(nodeSubclasses.size(), 1) 11 | 12 | var node2Dsubclasses = FileFinderGd.findScriptsOfClass(scripts, Node2D) 13 | assert_eq(node2Dsubclasses.size(), 0) 14 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/files/NodeSubclass.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/files/test1/dir1/dir12/file3.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/tests/files/test1/dir1/dir12/file3.txt -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/files/test1/dir1/file2.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/tests/files/test1/dir1/file2.ini -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/files/test1/dir1/file2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/tests/files/test1/dir1/file2.txt -------------------------------------------------------------------------------- /Godot/Godot3/FileFinder/tests/files/test1/file1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/FileFinder/tests/files/test1/file1.txt -------------------------------------------------------------------------------- /Godot/Godot3/NavigationServer/Level2D.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | func _process(_delta): 5 | $"LabelPath".text = "Path: " + str($"Navigation2D/Player".nav_agent.get_nav_path()) 6 | $"LabelNextTarget".text = "Next: " + str($"Navigation2D/Player".nav_agent.get_next_location()) 7 | $"LabelTargetLoc".text = "Target: " + str($"Navigation2D/Player".nav_agent.get_target_location()) 8 | $"LabelFinalLoc".text = "Final: " + str($"Navigation2D/Player".nav_agent.get_target_location()) 9 | $"LabelFinished".text = "Finished: " + str($"Navigation2D/Player".nav_agent.is_navigation_finished()) 10 | -------------------------------------------------------------------------------- /Godot/Godot3/NavigationServer/MovingObstacle2D.gd: -------------------------------------------------------------------------------- 1 | extends KinematicBody2D 2 | 3 | const SPEED = 100 4 | var direction := Vector2.DOWN 5 | 6 | 7 | func _ready(): 8 | # warning-ignore:return_value_discarded 9 | $"Timer".connect("timeout", self, "_change_direction") 10 | $"Timer".start() 11 | 12 | 13 | func _physics_process(delta): 14 | # warning-ignore:return_value_discarded 15 | move_and_collide(direction * delta * SPEED) 16 | 17 | 18 | func _change_direction(): 19 | direction = Vector2.DOWN if direction == Vector2.UP else Vector2.UP 20 | -------------------------------------------------------------------------------- /Godot/Godot3/NavigationServer/assets/BattleCity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/NavigationServer/assets/BattleCity.png -------------------------------------------------------------------------------- /Godot/Godot3/NavigationServer/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/Godot3/NavigationServer/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/NavigationServer/icon.png -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/Level.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | export var aa : int = 0 4 | export var ee_new : float = 0.0 5 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/Level.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [ext_resource path="res://Level.gd" type="Script" id=1] 4 | [ext_resource path="res://Unit.tscn" type="PackedScene" id=2] 5 | 6 | [node name="Level" type="Node2D"] 7 | script = ExtResource( 1 ) 8 | 9 | [node name="TouchScreenButton" type="TouchScreenButton" parent="."] 10 | 11 | [node name="Unit" parent="." instance=ExtResource( 2 )] 12 | 13 | [node name="Bone2D" parent="Unit" index="0"] 14 | default_length = 14.0 15 | 16 | [editable path="Unit"] 17 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/Unit.gd: -------------------------------------------------------------------------------- 1 | extends KinematicBody2D 2 | 3 | export var HP : int = 10 4 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/Unit.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://Unit.gd" type="Script" id=1] 4 | 5 | [node name="Unit" type="KinematicBody2D"] 6 | script = ExtResource( 1 ) 7 | 8 | [node name="Bone2D" type="Bone2D" parent="."] 9 | 10 | [node name="Bone2D2" type="Bone2D" parent="."] 11 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/a_scene.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="GDScript" id=1] 4 | script/source = "extends Node 5 | 6 | 7 | " 8 | 9 | [node name="a_scene" type="Node"] 10 | script = SubResource( 1 ) 11 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SavingScenesAndResources/icon.png -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_loading.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://a_scene.tscn" type="PackedScene" id=1] 4 | 5 | [node name="resource_loading" type="Node"] 6 | 7 | [node name="a_scene" parent="." instance=ExtResource( 1 )] 8 | 9 | [node name="a_scene2" parent="." instance=ExtResource( 1 )] 10 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/AreResourcesShared.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://resource_sharing/AreResourcesShared.gd" type="Script" id=1] 4 | 5 | [node name="AreResourcesShared" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | [node name="ChangeScene" type="Button" parent="."] 9 | margin_left = 89.0 10 | margin_top = 40.0 11 | margin_right = 200.0 12 | margin_bottom = 60.0 13 | text = "ChangeScene" 14 | 15 | [connection signal="pressed" from="ChangeScene" to="." method="_on_ChangeScene_pressed"] 16 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/a_resource.gd: -------------------------------------------------------------------------------- 1 | extends Resource 2 | class_name AResource 3 | 4 | 5 | var pp = "not shared" 6 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/a_resource_instance_load.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Resource" load_steps=2 format=2] 2 | 3 | [ext_resource path="res://resource_sharing/a_resource.gd" type="Script" id=1] 4 | 5 | [resource] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/a_resource_instance_preload.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Resource" load_steps=2 format=2] 2 | 3 | [ext_resource path="res://resource_sharing/a_resource.gd" type="Script" id=1] 4 | 5 | [resource] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/resource_reader.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | 4 | func preload_and_read(): 5 | var res_instance = preload("res://resource_sharing/a_resource_instance_preload.tres") 6 | print_debug("resource instance: %s, value read: %s" % [res_instance, res_instance.pp]) 7 | 8 | 9 | func load_and_read(): 10 | var res_instance = load("res://resource_sharing/a_resource_instance_load.tres") 11 | print_debug("resource instance: %s, value read: %s" % [res_instance, res_instance.pp]) 12 | -------------------------------------------------------------------------------- /Godot/Godot3/SavingScenesAndResources/resource_sharing/resource_writer.gd: -------------------------------------------------------------------------------- 1 | extends Reference 2 | 3 | 4 | func preload_and_write(): 5 | var res_instance = preload("res://resource_sharing/a_resource_instance_preload.tres") 6 | res_instance.pp = "shared" 7 | print_debug("resource instance: %s, value written: %s" % [res_instance, res_instance.pp]) 8 | 9 | 10 | func load_and_write(): 11 | var res_instance = load("res://resource_sharing/a_resource_instance_load.tres") 12 | res_instance.pp = "shared" 13 | print_debug("resource instance: %s, value written: %s" % [res_instance, res_instance.pp]) 14 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/ColourPicker.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var colour : Color 5 | var title : String setget set_title 6 | var index : int 7 | 8 | onready var colour_picker := $TODOColourPickerButton 9 | 10 | func _ready() -> void: 11 | $TODOColourPickerButton.color = colour 12 | $Label.text = title 13 | 14 | func set_title(value: String) -> void: 15 | title = value 16 | $Label.text = value 17 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/Pattern.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends HBoxContainer 3 | 4 | var text : String setget set_text 5 | var disabled : bool 6 | var index : int 7 | 8 | onready var line_edit := $LineEdit as LineEdit 9 | onready var remove_button := $RemoveButton as Button 10 | 11 | func _ready() -> void: 12 | line_edit.text = text 13 | remove_button.disabled = disabled 14 | 15 | 16 | func set_text(value: String) -> void: 17 | text = value 18 | if line_edit: 19 | line_edit.text = value 20 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/example.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | # TODO: this is a TODO 4 | # HACK: this is a HACK 5 | # FIXME: this is a FIXME 6 | # TODO this works too 7 | #HACK any format will do 8 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct1.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct2.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct3.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct4.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/Instruct5.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/TODO_Manager_Logo.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/TodoExternal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/TodoExternal.gif -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/example1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/example1.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/example2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/addons/Todo_Manager/doc/images/example2.png -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Todo Manager" 4 | description="Dock for housing TODO messages." 5 | author="Peter de Vroom" 6 | version="1.2.2" 7 | script="plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/todo.cfg: -------------------------------------------------------------------------------- 1 | [scripts] 2 | 3 | full_path=false 4 | sort_alphabetical=true 5 | script_colour=Color( 0.8, 0.807843, 0.827451, 1 ) 6 | ignore_paths=[ "res://addons" ] 7 | 8 | [patterns] 9 | 10 | patterns=[ [ "\\bTODO\\b", Color( 0.588235, 0.945098, 0.678431, 1 ) ], [ "\\bHACK\\b", Color( 0.835294, 0.737255, 0.439216, 1 ) ], [ "\\bFIXME\\b", Color( 0.835294, 0.439216, 0.439216, 1 ) ] ] 11 | 12 | [config] 13 | 14 | auto_refresh=true 15 | builtin_enabled=false 16 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/todoItem_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var script_path : String 5 | var todos : Array 6 | 7 | func get_short_path() -> String: 8 | var temp_array := script_path.rsplit('/', false, 1) 9 | var short_path : String 10 | if !temp_array[1]: 11 | short_path = "(!)" + temp_array[0] 12 | else: 13 | short_path = temp_array[1] 14 | return short_path 15 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/addons/Todo_Manager/todo_class.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends Reference 3 | 4 | var pattern : String 5 | var title : String 6 | var content : String 7 | var script_path : String 8 | var line_number : int 9 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) 5 | sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) 6 | sky_curve = 0.25 7 | ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) 8 | ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) 9 | ground_curve = 0.01 10 | sun_energy = 16.0 11 | 12 | [resource] 13 | background_mode = 2 14 | background_sky = SubResource( 1 ) 15 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/examples/MultipleResources.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | export(String) var nextScene := "" 4 | 5 | func _ready(): 6 | var param = SceneSwitcher.get_params(self) 7 | $"LineEditParams".text = param if param else "" 8 | 9 | 10 | func _on_Switch_pressed(): 11 | SceneSwitcher.switch_scene(nextScene) 12 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/examples/Scene2.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://examples/Scene1.tscn" type="PackedScene" id=1] 4 | 5 | [node name="Scene2" instance=ExtResource( 1 )] 6 | nextScene = "res://examples/Scene1.tscn" 7 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/examples/SwitchingIssues.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | const Scene1Scn = preload("res://examples/MultipleResources.tscn") 4 | 5 | 6 | func _on_WrongMetaType_pressed(): 7 | var scene = Scene1Scn.instance() 8 | SceneSwitcher.switch_scene_to_instance(scene, null, 42) 9 | scene.free() 10 | 11 | 12 | func _on_NullSceneSource_pressed(): 13 | SceneSwitcher.switch_scene_to_instance(null) 14 | 15 | 16 | func _on_InvalidScenePath_pressed(): 17 | SceneSwitcher.switch_scene("res:/doesn't exist", 1337, "key") 18 | 19 | 20 | func _on_NodeIsNotAScene_pressed(): 21 | SceneSwitcher.switch_scene_to_instance(Node.new()) 22 | -------------------------------------------------------------------------------- /Godot/Godot3/SceneSwitcher/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot3/SceneSwitcher/icon.png -------------------------------------------------------------------------------- /Godot/Godot4NavigationServer/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Godot4NavigationServer/icon.png -------------------------------------------------------------------------------- /Godot/Godot4NavigationServer/player.gd: -------------------------------------------------------------------------------- 1 | extends CharacterBody2D 2 | 3 | 4 | @onready var navAgent : NavigationAgent2D = $"NavigationAgent2D" 5 | 6 | 7 | func getNavAgent(): 8 | return navAgent 9 | 10 | 11 | func _input(event): 12 | if event is InputEventMouseButton and event.is_action_pressed("move"): 13 | navAgent.set_target_location(event.position) 14 | 15 | 16 | func _process(delta): 17 | if navAgent.is_navigation_finished(): 18 | return 19 | 20 | global_position.direction_to(navAgent.get_next_location()) 21 | -------------------------------------------------------------------------------- /Godot/InputOrder/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/InputOrder/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/InputOrder/icon.png -------------------------------------------------------------------------------- /Godot/InputSequences/LongestSequenceDetector.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://LongestSequenceDetector.gd" type="Script" id=1] 4 | 5 | [node name="SequenceDetector" type="Node"] 6 | script = ExtResource( 1 ) 7 | 8 | [node name="Timer" type="Timer" parent="."] 9 | wait_time = 0.5 10 | 11 | [connection signal="timeout" from="Timer" to="." method="reset"] 12 | -------------------------------------------------------------------------------- /Godot/InputSequences/SubsequenceDetector.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://SubsequenceDetector.gd" type="Script" id=1] 4 | 5 | 6 | [node name="SequenceDetector" type="Node"] 7 | script = ExtResource( 1 ) 8 | 9 | [node name="Timer" type="Timer" parent="."] 10 | wait_time = 0.5 11 | 12 | [connection signal="timeout" from="Timer" to="." method="reset"] 13 | -------------------------------------------------------------------------------- /Godot/InputSequences/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/InputSequences/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/InputSequences/icon.png -------------------------------------------------------------------------------- /Godot/MemoryConsumption/ArrayLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var arrays := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | arrays.resize(count) 10 | for i in arrays.size(): 11 | arrays[i] = Array() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | arrays.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for i in arrays.size(): 22 | _sum += arrays[i].size() 23 | 24 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/DictionaryLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var dicts := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | dicts.resize(count) 10 | for i in dicts.size(): 11 | dicts[i] = Dictionary() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | dicts.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for i in dicts.size(): 22 | _sum += dicts[i].size() 23 | 24 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/FloatsInArrayLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var floats := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | floats.resize(count) 10 | for i in count: 11 | floats[i] = 2.2 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | floats.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for fl in floats: 22 | _sum += fl 23 | 24 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/FloatsInDictLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var floats := {} 6 | 7 | 8 | func _create( count : int ) -> int: 9 | for i in count: 10 | floats[float(i)] = true 11 | return OK 12 | 13 | 14 | func _destroy(): 15 | floats.clear() 16 | 17 | 18 | func _compute(): 19 | var _sum := 0 20 | for fl in floats.keys(): 21 | _sum += fl 22 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/IntegerLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var ints := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | ints.resize(count) 10 | for i in ints.size(): 11 | ints[i] = 3 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | ints.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for i in ints.size(): 22 | _sum += ints[i] 23 | 24 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/MemoryUsage.gd: -------------------------------------------------------------------------------- 1 | extends HBoxContainer 2 | 3 | 4 | func _process(_delta): 5 | # warning-ignore:narrowing_conversion 6 | $"LineDynamic".text = \ 7 | String.humanize_size( Performance.get_monitor(Performance.MEMORY_DYNAMIC) ) 8 | # warning-ignore:narrowing_conversion 9 | $"LineStatic".text = \ 10 | String.humanize_size( Performance.get_monitor(Performance.MEMORY_STATIC) ) 11 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/NodeLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var objects := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | objects.resize(count) 10 | for i in objects.size(): 11 | objects[i] = MyNode.new() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | for i in objects.size(): 17 | objects[i].free() 18 | objects.clear() 19 | 20 | 21 | func _compute(): 22 | var _sum := 0 23 | for ob in objects: 24 | _sum = ob.get_instance_id() 25 | 26 | 27 | 28 | class MyNode extends Node: 29 | pass 30 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/ObjectLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var objects := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | objects.resize(count) 10 | for i in objects.size(): 11 | objects[i] = MyObj.new() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | for i in objects.size(): 17 | objects[i].free() 18 | objects.clear() 19 | 20 | 21 | func _compute(): 22 | var _sum := 0 23 | for ob in objects: 24 | _sum = ob.get_instance_id() 25 | 26 | 27 | 28 | class MyObj extends Object: 29 | pass 30 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/PoolIntLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var poolInts := PoolIntArray() 6 | 7 | 8 | func _create( count : int ) -> int: 9 | poolInts.resize(count) 10 | for i in poolInts.size(): 11 | poolInts[i] = 3 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | poolInts.resize(0) 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for i in poolInts.size(): 22 | _sum += poolInts[i] 23 | 24 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/ReferenceLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var objects := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | objects.resize(count) 10 | for i in objects.size(): 11 | objects[i] = MyRef.new() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | objects.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for ob in objects: 22 | _sum = ob.get_instance_id() 23 | 24 | 25 | 26 | class MyRef extends Reference: 27 | pass 28 | 29 | 30 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/ResourceLine.gd: -------------------------------------------------------------------------------- 1 | tool 2 | extends "res://AbstractTypeLine.gd" 3 | 4 | 5 | var objects := [] 6 | 7 | 8 | func _create( count : int ) -> int: 9 | objects.resize(count) 10 | for i in objects.size(): 11 | objects[i] = MyRes.new() 12 | return OK 13 | 14 | 15 | func _destroy(): 16 | objects.clear() 17 | 18 | 19 | func _compute(): 20 | var _sum := 0 21 | for ob in objects: 22 | _sum = ob.get_instance_id() 23 | 24 | 25 | 26 | class MyRes extends Resource: 27 | pass 28 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/MemoryConsumption/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/MemoryConsumption/icon.png -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/.gitattributes: -------------------------------------------------------------------------------- 1 | # Normalize EOL for all files that Git considers text files. 2 | * text=auto eol=lf 3 | -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/.gitignore: -------------------------------------------------------------------------------- 1 | # Godot 4+ specific ignores 2 | .godot/ 3 | -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/assets/tilemap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/NewTilesetEditorTest/assets/tilemap.png -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/assets/tilemap.txt: -------------------------------------------------------------------------------- 1 | 2 | Tile width : 16px 3 | Tile height: 16px 4 | 5 | Margin: 0px 6 | Spacing: 1px -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/assets/tilemap_packed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/NewTilesetEditorTest/assets/tilemap_packed.png -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/NewTilesetEditorTest/icon.png -------------------------------------------------------------------------------- /Godot/NewTilesetEditorTest/project.godot: -------------------------------------------------------------------------------- 1 | ; Engine configuration file. 2 | ; It's best edited using the editor UI and not directly, 3 | ; since the parameters that go here are not all obvious. 4 | ; 5 | ; Format: 6 | ; [section] ; section goes between [] 7 | ; param=value ; assign values to parameters 8 | 9 | config_version=5 10 | 11 | [application] 12 | 13 | config/name="NewTilesetEditorTest" 14 | config/icon="res://icon.png" 15 | config/features=PackedStringArray("4.0", "Vulkan Clustered") 16 | -------------------------------------------------------------------------------- /Godot/Performance/TimeMeasurement/TimeMeasureBase.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | class_name MeasureBase 3 | 4 | var loopCount : int = 10_000 setget setLoopCount 5 | 6 | 7 | func measureTime() -> int: 8 | var msec := OS.get_ticks_msec() 9 | _execute() 10 | return OS.get_ticks_msec() - msec 11 | 12 | 13 | func _execute(): 14 | assert(false) 15 | 16 | 17 | func setup(): 18 | pass 19 | 20 | 21 | func teardown(): 22 | pass 23 | 24 | 25 | func setLoopCount(count : int): 26 | loopCount = count 27 | -------------------------------------------------------------------------------- /Godot/Performance/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/Performance/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Performance/icon.png -------------------------------------------------------------------------------- /Godot/RVO/Level3.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | @export var agentHolders : Array[NodePath] = [] 4 | var agents : Array[NavigationAgent2D] 5 | 6 | 7 | func _ready(): 8 | for holder in agentHolders: 9 | var agent = get_node(holder).get_node("NavigationAgent2D") 10 | if agent != null: 11 | agents.append(agent) 12 | agent.path_changed.connect(update_path_drawer) 13 | 14 | 15 | func update_path_drawer(): 16 | var paths := [] 17 | for agent in agents: 18 | paths.append(agent.get_nav_path()) 19 | $"PathsLayer/Drawer".paths = paths 20 | $"PathsLayer/Drawer".update() 21 | -------------------------------------------------------------------------------- /Godot/RVO/NavigationMeshInstance2.gd: -------------------------------------------------------------------------------- 1 | extends NavigationMeshInstance 2 | 3 | 4 | func _ready(): 5 | await get_tree().create_timer(10.0).timeout 6 | var ramp = load("res://Ramp.tscn").instance() 7 | $"RampPosition".add_child(ramp) 8 | print("Start baking navigation mesh") 9 | bake_navigation_mesh() 10 | 11 | 12 | func _on_NavigationMeshInstance2_navigation_mesh_changed(): 13 | print("Navigation mesh changed") 14 | -------------------------------------------------------------------------------- /Godot/RVO/PathsDrawer.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | var paths: Array[PackedVector2Array] 4 | 5 | 6 | func _draw(): 7 | for path in paths: 8 | for i in path.size() - 1: 9 | draw_line(path[i], path[i+1], Color.BROWN, 1.2) 10 | -------------------------------------------------------------------------------- /Godot/RVO/PathsLayer.gd: -------------------------------------------------------------------------------- 1 | extends CanvasLayer 2 | -------------------------------------------------------------------------------- /Godot/RVO/Ramp.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=2] 2 | 3 | [sub_resource type="CubeMesh" id=1] 4 | size = Vector3( 20, 2, 5 ) 5 | 6 | [sub_resource type="BoxShape" id=2] 7 | extents = Vector3( 9.97725, 1, 2.49444 ) 8 | 9 | [node name="Ramp" type="MeshInstance"] 10 | transform = Transform( 0.899008, -0.437932, 0, 0.437932, 0.899008, 0, 0, 0, 1, 0, 0, 0 ) 11 | mesh = SubResource( 1 ) 12 | material/0 = null 13 | 14 | [node name="StaticBody2" type="StaticBody" parent="."] 15 | 16 | [node name="CollisionShape" type="CollisionShape" parent="StaticBody2"] 17 | shape = SubResource( 2 ) 18 | -------------------------------------------------------------------------------- /Godot/RVO/character.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/RVO/character.png -------------------------------------------------------------------------------- /Godot/RVO/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | 5 | [resource] 6 | background_mode = 2 7 | background_sky = SubResource( 1 ) 8 | -------------------------------------------------------------------------------- /Godot/RVO/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/RVO/icon.png -------------------------------------------------------------------------------- /Godot/RVO/map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/RVO/map.png -------------------------------------------------------------------------------- /Godot/RVO/point.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/RVO/point.png -------------------------------------------------------------------------------- /Godot/RVO/readme.txt: -------------------------------------------------------------------------------- 1 | project made by AndreaCatania 2 | can be found here: https://github.com/godotengine/godot/pull/34776 -------------------------------------------------------------------------------- /Godot/RVO/uv_checker.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/RVO/uv_checker.jpg -------------------------------------------------------------------------------- /Godot/Serialization/.gitignore: -------------------------------------------------------------------------------- 1 | save/* 2 | -------------------------------------------------------------------------------- /Godot/Serialization/SaveGameFile.gd: -------------------------------------------------------------------------------- 1 | extends Resource 2 | 3 | # warning-ignore:unused_class_variable 4 | export var version : String = "0.0.0" 5 | 6 | # warning-ignore:unused_class_variable 7 | export var nodesDict := {} 8 | 9 | # warning-ignore:unused_class_variable 10 | export var userDict := {} 11 | -------------------------------------------------------------------------------- /Godot/Serialization/TODO.gd: -------------------------------------------------------------------------------- 1 | """ 2 | 3 | * example code 4 | 5 | * decide what to do with metadata 6 | 7 | * don't create multiple Probe objects 8 | 9 | * custom isSerializable detection for Probe 10 | 11 | * improve prints in HierarchicalSerializer.gd 12 | 13 | 14 | """ 15 | -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/double_templates/function_template.txt: -------------------------------------------------------------------------------- 1 | {func_decleration} 2 | __gut_spy('{method_name}', {param_array}) 3 | if(__gut_should_call_super('{method_name}', {param_array})): 4 | return {super_call} 5 | else: 6 | return __gut_get_stubbed_return('{method_name}', {param_array}) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/AnonymousPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/AnonymousPro-Bold.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/AnonymousPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/AnonymousPro-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/AnonymousPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/AnonymousPro-Italic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/AnonymousPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/AnonymousPro-Regular.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/CourierPrime-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/CourierPrime-Bold.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/CourierPrime-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/CourierPrime-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/CourierPrime-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/CourierPrime-Italic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/CourierPrime-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/CourierPrime-Regular.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/LobsterTwo-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/LobsterTwo-Bold.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/LobsterTwo-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/LobsterTwo-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/LobsterTwo-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/LobsterTwo-Italic.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/fonts/LobsterTwo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/fonts/LobsterTwo-Regular.ttf -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/get_native_script.gd: -------------------------------------------------------------------------------- 1 | # Since NativeScript does not exist if GDNative is not included in the build 2 | # of Godot this script is conditionally loaded only when NativeScript exists. 3 | # You can then get a reference to NativeScript for use in `is` checks by calling 4 | # get_it. 5 | static func get_it(): 6 | return NativeScript 7 | -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/gui/GutRunner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/gui/GutRunner.gd" type="Script" id=1] 4 | 5 | [node name="GutRunner" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/icon.png -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Gut" 4 | description="Unit Testing tool for Godot." 5 | author="Butch Wesley" 6 | version="7.2.0" 7 | script="gut_plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/Serialization/addons/gut/source_code_pro.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/addons/gut/source_code_pro.fnt -------------------------------------------------------------------------------- /Godot/Serialization/asset_lib_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/Serialization/asset_lib_icon.png -------------------------------------------------------------------------------- /Godot/Serialization/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | sky_top_color = Color( 0.647059, 0.839216, 0.945098, 1 ) 5 | sky_horizon_color = Color( 0.839216, 0.917647, 0.980392, 1 ) 6 | ground_bottom_color = Color( 0.156863, 0.184314, 0.211765, 1 ) 7 | ground_horizon_color = Color( 0.423529, 0.396078, 0.372549, 1 ) 8 | sun_energy = 16.0 9 | 10 | [resource] 11 | background_mode = 2 12 | background_sky = SubResource( 1 ) 13 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/BuiltInTypes.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://tests/files/BuiltInTypes.gd" type="Script" id=1] 4 | 5 | [node name="BuiltInTypes" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/NoDeserialize.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | func serialize(): 4 | return 0 5 | 6 | 7 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/NoDeserialize.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://tests/files/NoDeserialize.gd" type="Script" id=1] 4 | 5 | [node name="NoDeserialize" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/PostDeserialize.gd: -------------------------------------------------------------------------------- 1 | extends Node2D 2 | 3 | var i := 0 4 | var ii : int 5 | 6 | 7 | func serialize(): 8 | return i 9 | 10 | 11 | func deserialize( data ): 12 | i = data 13 | 14 | 15 | func post_deserialize(): 16 | ii = i 17 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/PostDeserialize.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://tests/files/PostDeserialize.gd" type="Script" id=1] 4 | 5 | [node name="PostDeserialize" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/ResourceSavingTest.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://tests/files/ResourceSavingTest.gd" type="Script" id=1] 4 | 5 | [node name="Node" type="Node"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/Scene1.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [sub_resource type="GDScript" id=1] 4 | script/source = "extends Node 5 | 6 | 7 | var ii : int = 12 8 | var ff : float = 3.6 9 | 10 | 11 | func serialize(): 12 | return [ii, ff] 13 | 14 | 15 | func deserialize( data ): 16 | ii = data[0] 17 | ff = data[1] 18 | " 19 | 20 | [node name="Node" type="Node"] 21 | script = SubResource( 1 ) 22 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/SerializeToArray.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var f := 0.0 4 | var i := 0 5 | 6 | 7 | func serialize(): 8 | return [f, i] 9 | 10 | 11 | func deserialize( data ): 12 | f = data[0] 13 | i = data[1] 14 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/SerializeToDict.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var f := 0.0 4 | var s := "" 5 | 6 | 7 | func serialize(): 8 | return { 'f' : f, 's' : s } 9 | 10 | 11 | func deserialize( data ): 12 | f = data['f'] 13 | s = data['s'] 14 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/SerializeToFloat.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var f := 0.0 4 | 5 | 6 | func serialize(): 7 | return f 8 | 9 | 10 | func deserialize( data ): 11 | f = data 12 | -------------------------------------------------------------------------------- /Godot/Serialization/tests/files/SerializeToString.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | var s := "" 4 | 5 | 6 | func serialize(): 7 | return s 8 | 9 | 10 | func deserialize( data ): 11 | s = data 12 | -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/double_templates/function_template.txt: -------------------------------------------------------------------------------- 1 | {func_decleration} 2 | __gut_spy('{method_name}', {param_array}) 3 | if(__gut_should_call_super('{method_name}', {param_array})): 4 | return {super_call} 5 | else: 6 | return __gut_get_stubbed_return('{method_name}', {param_array}) 7 | -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Bold.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Italic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/AnonymousPro-Regular.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Bold.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/CourierPrime-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/CourierPrime-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Italic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/CourierPrime-Regular.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Bold.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-BoldItalic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Italic.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/fonts/LobsterTwo-Regular.ttf -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/get_native_script.gd: -------------------------------------------------------------------------------- 1 | # Since NativeScript does not exist if GDNative is not included in the build 2 | # of Godot this script is conditionally loaded only when NativeScript exists. 3 | # You can then get a reference to NativeScript for use in `is` checks by calling 4 | # get_it. 5 | static func get_it(): 6 | return NativeScript 7 | -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/gui/GutRunner.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=2] 2 | 3 | [ext_resource path="res://addons/gut/gui/GutRunner.gd" type="Script" id=1] 4 | 5 | [node name="GutRunner" type="Node2D"] 6 | script = ExtResource( 1 ) 7 | -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/icon.png -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Gut" 4 | description="Unit Testing tool for Godot." 5 | author="Butch Wesley" 6 | version="7.2.0" 7 | script="gut_plugin.gd" 8 | -------------------------------------------------------------------------------- /Godot/TypeWrappers/addons/gut/source_code_pro.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/addons/gut/source_code_pro.fnt -------------------------------------------------------------------------------- /Godot/TypeWrappers/asset_lib_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hilfazer/Projects/c6d80ef3d1ee65a4bb1b87791a5022dd8281beff/Godot/TypeWrappers/asset_lib_icon.png -------------------------------------------------------------------------------- /Godot/TypeWrappers/default_env.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="Environment" load_steps=2 format=2] 2 | 3 | [sub_resource type="ProceduralSky" id=1] 4 | sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 ) 5 | sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 ) 6 | sky_curve = 0.25 7 | ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 ) 8 | ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 ) 9 | ground_curve = 0.01 10 | sun_energy = 16.0 11 | 12 | [resource] 13 | background_mode = 2 14 | background_sky = SubResource( 1 ) 15 | -------------------------------------------------------------------------------- /GodotEngine/type_conversions.hpp: -------------------------------------------------------------------------------- 1 | template 2 | Vector vectorize(Set const& set) { 3 | Vector vec; 4 | 5 | for (auto const *E = set.front(); E; E = E->next()) { 6 | vec.push_back(E->get()); 7 | } 8 | 9 | return vec; 10 | } 11 | 12 | template 13 | Vector> vectorize(Map const& map) { 14 | Vector> vec; 15 | 16 | for (auto const *E = map.front(); E; E = E->next()) { 17 | vec.push_back({ E->key(), E->value() }); 18 | } 19 | 20 | return vec; 21 | } --------------------------------------------------------------------------------