├── UnityEventBus ├── Scripts.meta ├── Scripts │ ├── Example.meta │ ├── EventBus.cs.meta │ ├── Interfaces.cs.meta │ ├── UniqueId.cs.meta │ ├── Example │ │ ├── Events.cs.meta │ │ ├── EventReceiver.cs.meta │ │ ├── EventSender.cs.meta │ │ ├── EventBusHolder.cs │ │ ├── EventBusHolder.cs.meta │ │ ├── Events.cs │ │ ├── EventSender.cs │ │ └── EventReceiver.cs │ ├── UniqueId.cs │ ├── Interfaces.cs │ └── EventBus.cs ├── Example.meta └── Example │ ├── EventBusScene.unity.meta │ ├── Materials.meta │ └── Materials │ ├── RedCube.mat.meta │ ├── BlueCube.mat.meta │ ├── GreenCube.mat.meta │ ├── EventReceiver.mat.meta │ ├── EventReceiver.mat │ ├── BlueCube.mat │ ├── RedCube.mat │ └── GreenCube.mat ├── No Camera Minimap ├── Part_1 │ └── Minimap │ │ ├── DataModel.meta │ │ ├── Utils │ │ ├── MapUtils.cs.meta │ │ ├── Vector3Ex.cs.meta │ │ ├── CameraTextureUtils.cs.meta │ │ ├── MapSaveLoadUtils.cs.meta │ │ ├── Vector3Ex.cs │ │ ├── MapUtils.cs │ │ ├── MapSaveLoadUtils.cs │ │ └── CameraTextureUtils.cs │ │ ├── DataModel │ │ ├── MinimapWindowDataModel.cs.meta │ │ └── MinimapWindowDataModel.cs │ │ ├── Editor.meta │ │ ├── Utils.meta │ │ ├── SaveData.meta │ │ └── Editor │ │ └── CreateMapEditor.cs.meta └── Part_2. Final │ └── Minimap │ ├── Scripts.meta │ ├── Scripts │ ├── DataModel.meta │ ├── Minimap.meta │ ├── Minimap │ │ ├── Interfaces.meta │ │ ├── Minimap.cs.meta │ │ ├── MinimapAgentGraphics.cs.meta │ │ ├── Interfaces │ │ │ ├── IMinimapAgent.cs.meta │ │ │ └── IMinimapAgent.cs │ │ └── MinimapAgentGraphics.cs │ ├── Utils │ │ ├── MapUtils.cs.meta │ │ ├── Vector3Ex.cs.meta │ │ ├── MapPrefabUtils.cs.meta │ │ ├── CameraTextureUtils.cs.meta │ │ ├── MapSaveLoadUtils.cs.meta │ │ ├── Vector3Ex.cs │ │ ├── MapUtils.cs │ │ ├── CameraTextureUtils.cs │ │ └── MapSaveLoadUtils.cs │ ├── DataModel │ │ ├── MinimapWindowDataModel.cs.meta │ │ └── MinimapWindowDataModel.cs │ ├── Editor.meta │ ├── Utils.meta │ └── Editor │ │ └── CreateMapEditor.cs.meta │ ├── Sprites │ ├── Circle.png │ ├── navigation.png │ ├── CircleOutline.png │ ├── Circle.png.meta │ ├── CircleOutline.png.meta │ └── navigation.png.meta │ ├── Prefabs │ ├── MapSprites │ │ ├── map_sprite00.png │ │ ├── map_sprite01.png │ │ ├── map_sprite10.png │ │ ├── map_sprite11.png │ │ ├── map_sprite00.png.meta │ │ ├── map_sprite01.png.meta │ │ ├── map_sprite10.png.meta │ │ └── map_sprite11.png.meta │ ├── map_prefab.prefab.meta │ ├── agent_prefab.prefab.meta │ ├── MapSprites.meta │ └── agent_prefab.prefab │ ├── Simple Exmaple │ ├── StaticNPC │ │ ├── Sprites │ │ │ └── message.png │ │ ├── Prefab │ │ │ └── static_npc.prefab.meta │ │ ├── Materials.meta │ │ ├── Prefab.meta │ │ ├── Scripts.meta │ │ ├── Sprites.meta │ │ ├── Materials │ │ │ ├── npc_material.mat.meta │ │ │ └── npc_material.mat │ │ └── Scripts │ │ │ ├── StaticNPCAgent.cs.meta │ │ │ └── StaticNPCAgent.cs │ ├── SuperSimpleFollower │ │ ├── Sprites │ │ │ └── devil.png │ │ ├── Materials.meta │ │ ├── Prefabs.meta │ │ ├── Scripts.meta │ │ ├── Sprites.meta │ │ ├── Prefabs │ │ │ └── super_simple_follower.prefab.meta │ │ ├── Materials │ │ │ ├── follower_material.mat.meta │ │ │ └── follower_material.mat │ │ └── Scripts │ │ │ ├── SuperSimpleFollower.cs.meta │ │ │ └── SuperSimpleFollower.cs │ ├── Scenes.meta │ ├── Scenes │ │ └── example_scene.unity.meta │ ├── StaticNPC.meta │ ├── AgentRegistrator.meta │ ├── SuperSimpleFollower.meta │ └── AgentRegistrator │ │ ├── MinimapAgentRegistrator.cs.meta │ │ └── MinimapAgentRegistrator.cs │ ├── Prefabs.meta │ ├── Sprites.meta │ ├── EditorSaveData.meta │ ├── Simple Exmaple.meta │ └── EditorSaveData │ ├── minimapWindowData.json.meta │ └── minimapWindowData.json ├── SaveLoadSystem └── Assets │ ├── EasyButtons │ ├── Editor │ │ ├── Utils.meta │ │ ├── Button.cs.meta │ │ ├── ButtonsDrawer.cs.meta │ │ ├── ButtonWithParams.cs.meta │ │ ├── NonSerializedError.cs.meta │ │ ├── Utils │ │ │ ├── DrawUtility.cs.meta │ │ │ ├── EnumExtensions.cs.meta │ │ │ ├── StringExtensions.cs.meta │ │ │ ├── TypeExtensions.cs.meta │ │ │ ├── ScriptableObjectCache.cs.meta │ │ │ ├── StringExtensions.cs │ │ │ ├── DrawUtility.cs │ │ │ ├── ScriptableObjectCache.cs │ │ │ └── EnumExtensions.cs │ │ ├── ButtonWithoutParams.cs.meta │ │ ├── NoScriptFieldEditor.cs.meta │ │ ├── EasyButtons.Editor.asmdef.meta │ │ ├── ObjectEditor.cs.meta │ │ ├── EasyButtons.Editor.asmdef │ │ ├── NonSerializedError.cs │ │ ├── ButtonWithoutParams.cs │ │ ├── ObjectEditor.cs │ │ ├── ButtonsDrawer.cs │ │ ├── NoScriptFieldEditor.cs │ │ ├── Button.cs │ │ └── ButtonWithParams.cs │ ├── package.json.meta │ ├── Editor.meta │ ├── Runtime.meta │ ├── Samples.meta │ ├── Runtime │ │ ├── EasyButtons.asmdef.meta │ │ ├── ButtonAttribute.cs.meta │ │ ├── EasyButtons.asmdef │ │ └── ButtonAttribute.cs │ ├── Samples │ │ ├── ButtonsExample.meta │ │ ├── CustomEditorButtonsExample.meta │ │ ├── ScriptableObjectExample.meta │ │ ├── CustomEditorButtonsExample │ │ │ ├── Editor.meta │ │ │ ├── CustomEditorButtonsExample.cs.meta │ │ │ ├── Editor │ │ │ │ ├── CustomEditorButtonsExampleEditor.cs.meta │ │ │ │ └── CustomEditorButtonsExampleEditor.cs │ │ │ └── CustomEditorButtonsExample.cs │ │ ├── ButtonsExample │ │ │ ├── ButtonsExample.cs.meta │ │ │ └── ButtonsExample.cs │ │ └── ScriptableObjectExample │ │ │ ├── ScriptableObjectExample.cs.meta │ │ │ └── ScriptableObjectExample.cs │ └── package.json │ ├── Sources │ ├── SaveLoadSystem │ │ ├── Example.meta │ │ ├── SaveFile.cs.meta │ │ ├── SaveType.cs.meta │ │ ├── Example │ │ │ ├── Saver.cs.meta │ │ │ ├── Inventory │ │ │ │ ├── Inventory.cs.meta │ │ │ │ ├── InventoryHolder.cs.meta │ │ │ │ ├── InventoryHolder.cs │ │ │ │ └── Inventory.cs │ │ │ ├── Inventory.meta │ │ │ └── Saver.cs │ │ ├── SaveLoadObjects.meta │ │ ├── SaveLoadSystem.cs.meta │ │ ├── SaveLoadStrategies.meta │ │ ├── SaveLoadObjects │ │ │ ├── ISaveLoadObject.cs.meta │ │ │ ├── InventorySaveLoadData.cs.meta │ │ │ ├── InventorySaveLoadData.cs │ │ │ └── ISaveLoadObject.cs │ │ ├── SaveLoadStrategies │ │ │ ├── FileSaveLoadStrategy.cs.meta │ │ │ ├── ISaveLoadStrategy.cs.meta │ │ │ ├── ISaveLoadStrategy.cs │ │ │ └── FileSaveLoadStrategy.cs │ │ ├── SaveLoadData.cs.meta │ │ ├── SaveType.cs │ │ ├── SaveLoadData.cs │ │ ├── SaveFile.cs │ │ └── SaveLoadSystem.cs │ └── SaveLoadSystem.meta │ ├── Scenes.meta │ ├── Scenes │ └── SampleScene.unity.meta │ ├── Sources.meta │ └── EasyButtons.meta ├── LauncherClient ├── LauncherClient │ ├── Assets │ │ ├── background.png │ │ └── avalonia-logo.ico │ ├── ViewModels │ │ ├── ViewModelBase.cs │ │ └── MainWindowViewModel.cs │ ├── Models │ │ └── Launcher │ │ │ ├── Game │ │ │ ├── IGameStarter.cs │ │ │ └── GameStarter.cs │ │ │ ├── UI │ │ │ ├── IUIDispatcher.cs │ │ │ └── AvaloniaUiDispatcher.cs │ │ │ ├── Web │ │ │ ├── API │ │ │ │ ├── IApiHandler.cs │ │ │ │ ├── ApiHashDataModel.cs │ │ │ │ └── MockApiHandler.cs │ │ │ └── WebUtils.cs │ │ │ ├── Hash │ │ │ ├── HashDifference.cs │ │ │ ├── HashExtensions.cs │ │ │ └── HashUtils.cs │ │ │ ├── Infrastructure │ │ │ └── WindowsBootstrapper.cs │ │ │ ├── Log │ │ │ └── NLogUtils.cs │ │ │ ├── AppConfig │ │ │ └── AppConfig.cs │ │ │ └── Files │ │ │ └── FilesUtils.cs │ ├── Views │ │ └── MainWindow.axaml.cs │ ├── obj │ │ └── Debug │ │ │ └── net6.0 │ │ │ └── .NETCoreApp,Version=v6.0.AssemblyAttributes.cs │ ├── App.axaml.cs │ ├── Program.cs │ ├── ViewLocator.cs │ ├── App.axaml │ ├── app.manifest │ ├── LauncherClient.csproj │ └── LauncherClient.csproj.DotSettings ├── .idea │ └── .idea.LauncherClient │ │ └── .idea │ │ ├── encodings.xml │ │ ├── misc.xml │ │ ├── indexLayout.xml │ │ ├── .gitignore │ │ ├── riderPublish.xml │ │ └── avalonia.xml ├── HashCalculator │ ├── Programm.cs │ └── HashCalculator.csproj ├── Shared │ ├── Hash │ │ ├── IHashCalculator.cs │ │ ├── ProjectHashData.cs │ │ ├── CalculateHashStatus.cs │ │ └── Crc32HashCalculator.cs │ └── Shared.csproj ├── .dockerignore ├── Crc32HashCalculator │ ├── Crc32HashCalculator.csproj │ └── Program.cs └── LauncherClient.sln ├── HidingRoof ├── PlayerShaderPropertiesSetter.cs └── TopObjectHiding.shader └── .gitignore /UnityEventBus/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ca4c0220c50473cb6d9c23fa5990bdd 3 | timeCreated: 1682939615 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a933052001244797bdce63ccce2c931e 3 | timeCreated: 1682942660 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/EventBus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dadba56d9f8b4f65bf2c14b775179cce 3 | timeCreated: 1682941767 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Interfaces.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7353e0a0249e4adcb4e4bfd865c85190 3 | timeCreated: 1682941638 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/UniqueId.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd2bcbdeb8364091a886002d43cb70b4 3 | timeCreated: 1685269397 -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/DataModel.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 404a54958e084af88baef6f81d35872d 3 | timeCreated: 1684082064 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/Events.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22f938095c62489193e8cb240c512521 3 | timeCreated: 1682942664 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 723ca82fb9cb4106aeeba422828dd52c 3 | timeCreated: 1684785299 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 792a4c9877db4b09953c4806f46702c4 3 | timeCreated: 1607333184 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventReceiver.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0311a45d82cd471ba1d5e5326b953334 3 | timeCreated: 1682942925 -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventSender.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 033764ef3ba74e36b6f9b9942ebc848a 3 | timeCreated: 1682942782 -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Assets/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/LauncherClient/LauncherClient/Assets/background.png -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils/MapUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfbc5d09e16b44b781fd908ad8466fe5 3 | timeCreated: 1684081556 -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils/Vector3Ex.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5dc12b5c1dd4c4791978fd175b6a59e 3 | timeCreated: 1684083989 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Button.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b377c54771a4165ac6d1f6e29ae4881 3 | timeCreated: 1607259837 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf1931dadfa54b899126fa00e74ee51d 3 | timeCreated: 1713030413 -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Assets/avalonia-logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/LauncherClient/LauncherClient/Assets/avalonia-logo.ico -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/DataModel.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 404a54958e084af88baef6f81d35872d 3 | timeCreated: 1684082064 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0993ec1546334f51b09c23c77614af1d 3 | timeCreated: 1684785403 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ButtonsDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 261021260efd459caa00f9b4d2730b19 3 | timeCreated: 1612122787 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveFile.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9c9a8af0a7f4841abeef5ebf2e84e16 3 | timeCreated: 1713028701 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d98083300d6e4038a6b55ebc054a3ad8 3 | timeCreated: 1713030273 -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils/CameraTextureUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4eccec69c9f94c478bf7926a679772bd 3 | timeCreated: 1684083784 -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils/MapSaveLoadUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20438e1c69b844649bc31b3d0f3e532a 3 | timeCreated: 1684082040 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ButtonWithParams.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 547012a77e524de1ab552bc61fb2d86c 3 | timeCreated: 1607331593 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/NonSerializedError.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae856c0314f04c6fbe79a26e72120a66 3 | timeCreated: 1607338452 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/DrawUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cae5c4c4901c48e28018c254fa1c02ca 3 | timeCreated: 1607330049 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Saver.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71bcd6c7f88445ed99460493465b1a85 3 | timeCreated: 1713031304 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadObjects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8fabff33734f4b1aa5e70ffda727ea4b 3 | timeCreated: 1713027687 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf85fe1392874c57a7a18eb3ba5f3f4f 3 | timeCreated: 1713029616 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/Interfaces.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ca347cbff0c4cf38cdcf7756f2dfdbd 3 | timeCreated: 1684785551 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/Minimap.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f2b833ee4414ec3a240dd930a7f04e3 3 | timeCreated: 1684785617 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/MapUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfbc5d09e16b44b781fd908ad8466fe5 3 | timeCreated: 1684081556 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/Vector3Ex.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5dc12b5c1dd4c4791978fd175b6a59e 3 | timeCreated: 1684083989 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Sprites/Circle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Sprites/Circle.png -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ButtonWithoutParams.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b4207a27842d47e5a88925eff62b719c 3 | timeCreated: 1607331600 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/NoScriptFieldEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87b76317e25d4e83a3efcaed567e25b7 3 | timeCreated: 1607178139 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/EnumExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41d3eb60b3e34bed966336bcbdadd884 3 | timeCreated: 1610878573 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/StringExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19e7617480844aed83d94006c9bfeaa3 3 | timeCreated: 1607174721 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/TypeExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef69f98eed3a436b94630cc2603a4d4e 3 | timeCreated: 1607338526 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadStrategies.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0eaf243fc1e04459a0425b305a04b5fc 3 | timeCreated: 1713028019 -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/DataModel/MinimapWindowDataModel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7b381c637274e4c9b1dc91b07668ec6 3 | timeCreated: 1684082084 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/MapPrefabUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29450288ad0643a5893d4eb4b46adcc8 3 | timeCreated: 1684780363 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/ScriptableObjectCache.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 176d46099d46451485d24bf497902d84 3 | timeCreated: 1607173249 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/CameraTextureUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4eccec69c9f94c478bf7926a679772bd 3 | timeCreated: 1684083784 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/MapSaveLoadUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20438e1c69b844649bc31b3d0f3e532a 3 | timeCreated: 1684082040 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Sprites/navigation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Sprites/navigation.png -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Inventory/Inventory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28c18306556a43c89fa7ece5e3b1cbb1 3 | timeCreated: 1713030443 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/MinimapAgentGraphics.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6e51162b4ef489885320734f1a751bc 3 | timeCreated: 1684785720 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Sprites/CircleOutline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Sprites/CircleOutline.png -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Inventory/InventoryHolder.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 265d5d7284ae4bd3bef7e1aa698dca10 3 | timeCreated: 1713031019 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadObjects/ISaveLoadObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65904041025e486ca47088c95bd34fcc 3 | timeCreated: 1713027695 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/DataModel/MinimapWindowDataModel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7b381c637274e4c9b1dc91b07668ec6 3 | timeCreated: 1684082084 -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/Interfaces/IMinimapAgent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 043e852a18b240888e3d055ed163f2a2 3 | timeCreated: 1684785559 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadObjects/InventorySaveLoadData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f7ebba723f64248882c1e0eed4dde3d 3 | timeCreated: 1713030524 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadStrategies/FileSaveLoadStrategy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f99aa3ca0b4472696eaab490ecd4848 3 | timeCreated: 1713028842 -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadStrategies/ISaveLoadStrategy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: adbb46468d624c7498d5a5ac2a424946 3 | timeCreated: 1713028026 -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/ViewModels/ViewModelBase.cs: -------------------------------------------------------------------------------- 1 | using ReactiveUI; 2 | 3 | namespace LauncherClient.ViewModels; 4 | 5 | public class ViewModelBase : ReactiveObject 6 | { 7 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite00.png -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite01.png -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite10.png -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites/map_sprite11.png -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Sprites/message.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Sprites/message.png -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Game/IGameStarter.cs: -------------------------------------------------------------------------------- 1 | namespace LauncherClient.Models.Launcher.Game; 2 | 3 | public interface IGameStarter 4 | { 5 | void StartGame(); 6 | 7 | bool GameIsStarted { get; } 8 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Sprites/devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leksay/YT/HEAD/No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Sprites/devil.png -------------------------------------------------------------------------------- /UnityEventBus/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 47a3c100ea8c1184da222cc307ecf089 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/EventBusScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8579a82870852874fa9837a6a7299ba2 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/UI/IUIDispatcher.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace LauncherClient.Models.Launcher.UI; 4 | 5 | public interface IUIDispatcher 6 | { 7 | public void ExecuteOnUiThread(Action action); 8 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 135397adcb17a5e40996eb8bca0f39ad 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0b0b813f1400954888891d91fdf8567 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fc0d4010bbf28b4594072e72b8655ab 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: de3df7f88bd0185459e03b3eacbdbce1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6cd0394c0fcb7674badce852b4d0f17f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8cd5712c8999465439e39391bf8c56ca 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /LauncherClient/HashCalculator/Programm.cs: -------------------------------------------------------------------------------- 1 | namespace HashCalculator 2 | { 3 | public static class Program 4 | { 5 | public static void Main(params string[] args) 6 | { 7 | 8 | } 9 | } 10 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2332ec7bb29b8b843bbe2a74c6400315 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0f11266ccf1f7848ac5f4a8d0f2cef6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/SaveData.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb1bfa44d1aba834b981b3ae1548af79 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/map_prefab.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b40a897a13cea4b4ab968a7bcdf637af 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9a882ead01ff7c4f97a493e20884f90 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b3450edb09e2f142b0e7a79683276a4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b32bf1297abcba44a828360606451030 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9522e2965104ee46a3fcbbfec8541ad 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventBusHolder.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class EventBusHolder : MonoBehaviour 4 | { 5 | public EventBus EventBus { get; private set; } 6 | 7 | private void Awake() => EventBus = new EventBus(); 8 | } -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Web/API/IApiHandler.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace LauncherClient.Models.Launcher; 4 | 5 | public interface IApiHandler 6 | { 7 | public Task LoadRemoteHash(); 8 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a30c2fea210c0234da0c162807965b2b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/agent_prefab.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45176fbe4c11fa243990b0574b412f87 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afaac774c613e1d45810e76ceb0664e5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/EditorSaveData.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb1bfa44d1aba834b981b3ae1548af79 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2332ec7bb29b8b843bbe2a74c6400315 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0f11266ccf1f7848ac5f4a8d0f2cef6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c71ac53cc05daa4793890fb2e07d1dc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Runtime/EasyButtons.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f24cf67903b27ae498b3069ecc30cc11 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /LauncherClient/HashCalculator/HashCalculator.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netstandard2.1 5 | enable 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /LauncherClient/Shared/Hash/IHashCalculator.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace Shared.Hash; 4 | public interface IHashCalculator 5 | { 6 | public Task CalculateHashesAsync(string rootDirectory, CalculateHashStatus hashStatus); 7 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/EditorSaveData/minimapWindowData.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f13178c672e0f1a4fb7f04d78ebc5cc5 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Prefabs/MapSprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c705006e45780044aa07349935914a6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/EasyButtons.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80120b1292c15624a97f2c7983a70cea 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/ButtonsExample.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7e31e9ef19f2c5409591faae03ae593 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/Materials/RedCube.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57f074732f6871b4a822607ab6c032e0 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Scripts/UniqueId.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | public record UniqueId 4 | { 5 | public string Id => _id ??= Guid.NewGuid().ToString(); 6 | private string _id; 7 | 8 | public static implicit operator string(UniqueId uniqueId) => uniqueId.Id; 9 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aac22d31ab7120445bfad46855980185 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/Scenes/example_scene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 705ed0c273b8029499453ce03a471df4 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c7db3beab80e4f4aaf89f622052a615 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Inventory.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba84622746892a84798c8eb7b31e25d5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/Materials/BlueCube.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e9fd3afe154bb740aef78636c6a90a2 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/Materials/GreenCube.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3fe1bef3c52f53b4cb44749b225eb667 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Views/MainWindow.axaml.cs: -------------------------------------------------------------------------------- 1 | using Avalonia.Controls; 2 | 3 | namespace LauncherClient.Views; 4 | 5 | public partial class MainWindow : Window 6 | { 7 | public MainWindow() 8 | { 9 | InitializeComponent(); 10 | } 11 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/Interfaces/IMinimapAgent.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public interface IMinimapAgent 4 | { 5 | Pose Pose { get; } 6 | Sprite MapIcon { get; } 7 | string Name { get; } 8 | Color IconColor { get; } 9 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Prefab/static_npc.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 171e268ddb56aab458f2f4e05e8a1a38 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6abd78d298c0460489f0ca4eeeee598b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/ScriptableObjectExample.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a98e7bef7713bd408bc9fba493e762d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /UnityEventBus/Example/Materials/EventReceiver.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80516f0a4b492da4ea7896dd4420e38c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/AgentRegistrator.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd171a04efd7f13469bc2c80b161943a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f7e657c69b54eb4f98029c888c5cde8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec6338a9eebe81444852c6f7fce5d1c8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c09cc2711f83c04c844ace14f936f91 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9200e2b8ff9505e4d939383e74f86eaa 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91bcb9b059972314da5597e34128f07f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84113de9d8afe394491dbc39eecda8fb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/indexLayout.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc9622ce0884e7f409e959316e5b6864 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5e930301f38099f4e88b6aac3e0dbe24 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3f5e16e27b13dd4fb7cb3a5bc464803 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Sprites.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8191753f48c2f945bf07eb20039e560 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Prefabs/super_simple_follower.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c224b21b11944c4f9c1cb086643060c 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // 2 | using System; 3 | using System.Reflection; 4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")] 5 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/EditorSaveData/minimapWindowData.json: -------------------------------------------------------------------------------- 1 | {"StartPosition":{"X":-99.996,"Y":0.0,"Z":-73.103},"EndPosition":{"X":199.98,"Y":0.0,"Z":226.9},"SubdivideCount":2,"CameraHeight":25.0,"BackgroundColor":{"r":0.0,"g":0.0,"b":0.0,"a":0.0,"grayscale":0.0,"maxColorComponent":0.0}} -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Materials/npc_material.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 01d906a89c7fe3349916b4ad82e969ab 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Utils/Vector3Ex.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public static class Vector3Ex 4 | { 5 | public static Vector3 ToXZVector(this Vector2 xyVector) => new Vector3(xyVector.x, 0f, xyVector.y); 6 | public static Vector2 FromXZ(this Vector3 vector) => new Vector2(vector.x, vector.y); 7 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Materials/follower_material.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b904dc5b46b9bb84c9129b48a502aad8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Utils/Vector3Ex.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public static class Vector3Ex 4 | { 5 | public static Vector3 ToXZVector(this Vector2 xyVector) => new Vector3(xyVector.x, 0f, xyVector.y); 6 | public static Vector2 FromXZ(this Vector3 vector) => new Vector2(vector.x, vector.z); 7 | } -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventBusHolder.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dda3e682b90c490aaa9320a4223a6e70 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -1 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/Editor/CreateMapEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1fac8f133dd7a1e4a946bfbd05c9b2a1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ObjectEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fdd835899c281654e8b195ef253430ee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Runtime/ButtonAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ae9ef9818cee0749aec4e8bee4a50dd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 31b03489ad9697546bb12f328cf606fb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Editor/CreateMapEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1fac8f133dd7a1e4a946bfbd05c9b2a1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/ButtonsExample/ButtonsExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc63a60957d42df44af3dada9768b5ad 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Scripts/StaticNPCAgent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4e38e897ed7d83b408f9a909246c68d1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/ScriptableObjectExample/ScriptableObjectExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29387bda94bad6043814982231628d6b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/AgentRegistrator/MinimapAgentRegistrator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1105d5a978db3b945b4757d279c75b63 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample/CustomEditorButtonsExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d44ed66702a1b7498777dfb60046abb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Rider ignored files 5 | /projectSettingsUpdater.xml 6 | /contentModel.xml 7 | /modules.xml 8 | /.idea.LauncherClient.iml 9 | # Editor-based HTTP Client requests 10 | /httpRequests/ 11 | # Datasource local storage ignored files 12 | /dataSources/ 13 | /dataSources.local.xml 14 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/UI/AvaloniaUiDispatcher.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Avalonia.Threading; 3 | 4 | namespace LauncherClient.Models.Launcher.UI; 5 | 6 | public class AvaloniaUiDispatcher : IUIDispatcher 7 | { 8 | #region IUIDispatcher 9 | 10 | public void ExecuteOnUiThread(Action action) => Dispatcher.UIThread.Invoke(action); 11 | 12 | #endregion 13 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Scripts/SuperSimpleFollower.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0cd1ee58b472d834685c247ab96a8ac9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample/Editor/CustomEditorButtonsExampleEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 182f73d89d323c64294c6ef124838f11 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Runtime/EasyButtons.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "EasyButtons", 3 | "references": [], 4 | "optionalUnityReferences": [], 5 | "includePlatforms": [], 6 | "excludePlatforms": [], 7 | "allowUnsafeCode": false, 8 | "overrideReferences": false, 9 | "precompiledReferences": [], 10 | "autoReferenced": true, 11 | "defineConstraints": [], 12 | "versionDefines": [] 13 | } 14 | -------------------------------------------------------------------------------- /LauncherClient/Shared/Shared.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net6.0 5 | enable 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Interfaces.cs: -------------------------------------------------------------------------------- 1 | // Пустой интерфейс для маркировки событий 2 | public interface IEvent{} 3 | 4 | // Базовый интерфейс для слушателей событий 5 | public interface IBaseEventReceiver 6 | { 7 | public UniqueId Id { get; } 8 | } 9 | 10 | // Интерфейс для параметризированных слушателей событий 11 | public interface IEventReceiver : IBaseEventReceiver where T : struct, IEvent 12 | { 13 | void OnEvent(T @event); 14 | } -------------------------------------------------------------------------------- /LauncherClient/.dockerignore: -------------------------------------------------------------------------------- 1 | **/.dockerignore 2 | **/.env 3 | **/.git 4 | **/.gitignore 5 | **/.project 6 | **/.settings 7 | **/.toolstarget 8 | **/.vs 9 | **/.vscode 10 | **/.idea 11 | **/*.*proj.user 12 | **/*.dbmdl 13 | **/*.jfm 14 | **/azds.yaml 15 | **/bin 16 | **/charts 17 | **/docker-compose* 18 | **/Dockerfile* 19 | **/node_modules 20 | **/npm-debug.log 21 | **/obj 22 | **/secrets.dev.yaml 23 | **/values.dev.yaml 24 | LICENSE 25 | README.md -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/riderPublish.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveType.cs: -------------------------------------------------------------------------------- 1 | namespace SaveLoadSystem 2 | { 3 | /// 4 | /// Describes save/load strategy types. 5 | /// 6 | public enum SaveType 7 | { 8 | /// 9 | /// Store data as a file (*.json). 10 | /// 11 | File, 12 | 13 | /// 14 | /// Store data with stream cloud. 15 | /// 16 | SteamCloud 17 | } 18 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Web/API/ApiHashDataModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Newtonsoft.Json; 3 | using Shared.Hash; 4 | 5 | namespace LauncherClient.Models.Launcher; 6 | 7 | [Serializable] 8 | public class ApiHashDataModel 9 | { 10 | #region properties 11 | 12 | [JsonProperty("remote_hash")] 13 | public ProjectHashData RemoteHash { get; set; } 14 | 15 | [field: NonSerialized] public static ApiHashDataModel Empty { get; } = new(); 16 | 17 | #endregion 18 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/EasyButtons.Editor.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "EasyButtons.Editor", 3 | "rootNamespace": "", 4 | "references": [ 5 | "GUID:f24cf67903b27ae498b3069ecc30cc11" 6 | ], 7 | "includePlatforms": [ 8 | "Editor" 9 | ], 10 | "excludePlatforms": [], 11 | "allowUnsafeCode": true, 12 | "overrideReferences": false, 13 | "precompiledReferences": [], 14 | "autoReferenced": true, 15 | "defineConstraints": [], 16 | "versionDefines": [], 17 | "noEngineReferences": false 18 | } -------------------------------------------------------------------------------- /HidingRoof/PlayerShaderPropertiesSetter.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | [ExecuteInEditMode] 4 | public class PlayerShaderPropertiesSetter : MonoBehaviour 5 | { 6 | //SP = Shader property 7 | private static int SP_PlayerWorldPosition = Shader.PropertyToID("_PlayerWorldPos"); 8 | private Transform _transform; 9 | 10 | private void Start() 11 | { 12 | _transform = transform; 13 | } 14 | 15 | private void Update() 16 | { 17 | Shader.SetGlobalVector(SP_PlayerWorldPosition, _transform.position); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample/CustomEditorButtonsExample.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Example 2 | { 3 | using UnityEngine; 4 | 5 | public class CustomEditorButtonsExample : MonoBehaviour 6 | { 7 | [Button("Custom Editor Example")] 8 | private void SayHello() 9 | { 10 | Debug.Log("Hello from custom editor"); 11 | } 12 | 13 | [Button] 14 | private void SecondButton() 15 | { 16 | Debug.Log("Second button of the custom editor."); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/StaticNPC/Scripts/StaticNPCAgent.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class StaticNPCAgent : MonoBehaviour, IMinimapAgent 4 | { 5 | #region IMinimapAgent 6 | 7 | public Pose Pose => new Pose(transform.position, transform.rotation); 8 | 9 | [field: SerializeField] 10 | public Sprite MapIcon { get; private set; } 11 | 12 | [field: SerializeField] 13 | public string Name { get; private set;} 14 | 15 | [field: SerializeField] 16 | public Color IconColor { get; private set;} 17 | 18 | #endregion 19 | } 20 | -------------------------------------------------------------------------------- /LauncherClient/.idea/.idea.LauncherClient/.idea/avalonia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadData.cs: -------------------------------------------------------------------------------- 1 | namespace SaveLoadSystem 2 | { 3 | [System.Serializable] 4 | public class SaveLoadData 5 | { 6 | public SaveLoadData(string id, object[] data) 7 | { 8 | Id = id; 9 | Data = data; 10 | } 11 | 12 | /// 13 | /// Id of component to which SaveData belongs. 14 | /// 15 | public string Id { get; private set; } 16 | 17 | /// 18 | /// Saved Data. 19 | /// 20 | public object[] Data { get; private set; } 21 | } 22 | } -------------------------------------------------------------------------------- /LauncherClient/Crc32HashCalculator/Crc32HashCalculator.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net6.0 6 | enable 7 | enable 8 | 10 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/Events.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public readonly struct RedEvent : IEvent 4 | { 5 | public readonly Vector3 MoveDelta; 6 | 7 | public RedEvent(Vector3 moveDelta) 8 | { 9 | MoveDelta = moveDelta; 10 | } 11 | } 12 | 13 | public readonly struct GreenEvent : IEvent 14 | { 15 | public readonly Vector3 Scale; 16 | 17 | public GreenEvent(Vector3 scale) 18 | { 19 | Scale = scale; 20 | } 21 | } 22 | 23 | public readonly struct BlueEvent : IEvent 24 | { 25 | public readonly Color Color; 26 | 27 | public BlueEvent(Color color) 28 | { 29 | Color = color; 30 | } 31 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_1/Minimap/DataModel/MinimapWindowDataModel.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class MinimapWindowDataModel 4 | { 5 | public Vector3Model StartPosition; 6 | public Vector3Model EndPosition; 7 | } 8 | 9 | [System.Serializable] 10 | public struct Vector3Model 11 | { 12 | public float X; 13 | public float Y; 14 | public float Z; 15 | 16 | public Vector3 ToVector3() => new Vector3(X, Y, Z); 17 | 18 | public static Vector3Model FromVector3(Vector3 vector3) 19 | { 20 | return new Vector3Model() 21 | { 22 | X = vector3.x, 23 | Y = vector3.y, 24 | Z = vector3.z 25 | }; 26 | } 27 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/Utils/StringExtensions.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Editor.Utils 2 | { 3 | using System; 4 | 5 | internal static class StringExtensions 6 | { 7 | public static string CapitalizeFirstChar(this string input) 8 | { 9 | if (input == null) 10 | throw new ArgumentNullException(nameof(input)); 11 | 12 | char firstChar = input[0]; 13 | 14 | if (char.IsUpper(firstChar)) 15 | return input; 16 | 17 | var chars = input.ToCharArray(); 18 | chars[0] = char.ToUpper(firstChar); 19 | return new string(chars); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/NonSerializedError.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Editor 2 | { 3 | using System; 4 | using UnityEditor; 5 | using UnityEngine; 6 | 7 | [Serializable] 8 | internal class NonSerializedError { } 9 | 10 | [CustomPropertyDrawer(typeof(NonSerializedError))] 11 | internal class NonSerializedErrorDrawer : PropertyDrawer 12 | { 13 | public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) 14 | { 15 | Rect rectWithoutLabel = EditorGUI.PrefixLabel(rect, label); 16 | 17 | EditorGUI.HelpBox(rectWithoutLabel, "Unable to draw a non-serialized type.", MessageType.Error); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadStrategies/ISaveLoadStrategy.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace SaveLoadSystem 4 | { 5 | /// 6 | /// Base interface for save load strategies. 7 | /// 8 | public interface ISaveLoadStrategy 9 | { 10 | /// 11 | /// Save list of objects. 12 | /// 13 | /// Array of objects to be saved. 14 | public void Save(IEnumerable objectsToSave); 15 | 16 | /// 17 | /// Load data. 18 | /// 19 | /// Loaded data. 20 | public SaveLoadData[] Load(); 21 | } 22 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveFile.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | namespace SaveLoadSystem 5 | { 6 | /// 7 | /// Game save file. 8 | /// 9 | [Serializable] 10 | public struct SaveFile 11 | { 12 | /// 13 | /// Save DateTime. 14 | /// 15 | public DateTime SaveTime { get; } 16 | 17 | /// 18 | /// List of saved data. 19 | /// 20 | public List Data { get; } 21 | 22 | public SaveFile(List data) : this() 23 | { 24 | Data = data; 25 | SaveTime = DateTime.Now; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ButtonWithoutParams.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Editor 2 | { 3 | using System.Reflection; 4 | using UnityEngine; 5 | using System.Collections.Generic; 6 | 7 | internal class ButtonWithoutParams : Button 8 | { 9 | public ButtonWithoutParams(MethodInfo method, ButtonAttribute buttonAttribute) 10 | : base(method, buttonAttribute) { } 11 | 12 | protected override void DrawInternal(IEnumerable targets) 13 | { 14 | if ( ! GUILayout.Button(DisplayName)) 15 | return; 16 | 17 | foreach (object obj in targets) 18 | { 19 | Method.Invoke(obj, null); 20 | } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Common IntelliJ Platform excludes 2 | 3 | # User specific 4 | **/.idea/**/workspace.xml 5 | **/.idea/**/tasks.xml 6 | **/.idea/shelf/* 7 | **/.idea/dictionaries 8 | **/.idea/httpRequests/ 9 | 10 | # Sensitive or high-churn files 11 | **/.idea/**/dataSources/ 12 | **/.idea/**/dataSources.ids 13 | **/.idea/**/dataSources.xml 14 | **/.idea/**/dataSources.local.xml 15 | **/.idea/**/sqlDataSources.xml 16 | **/.idea/**/dynamic.xml 17 | 18 | # Rider 19 | # Rider auto-generates .iml files, and contentModel.xml 20 | **/.idea/**/*.iml 21 | **/.idea/**/contentModel.xml 22 | **/.idea/**/modules.xml 23 | 24 | *.suo 25 | *.user 26 | .vs/ 27 | [Bb]in/ 28 | [Oo]bj/ 29 | _UpgradeReport_Files/ 30 | [Pp]ackages/ 31 | 32 | Thumbs.db 33 | Desktop.ini 34 | .DS_Store -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/Minimap/MinimapAgentGraphics.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | 4 | [RequireComponent(typeof(Image))] 5 | public class MapAgentGraphics : MonoBehaviour 6 | { 7 | public RectTransform RectTransform { get; private set; } 8 | private Image _icon; 9 | 10 | private void Awake() 11 | { 12 | RectTransform = (RectTransform)transform; 13 | _icon = GetComponent(); 14 | } 15 | 16 | public void Initialize(Sprite iconSprite, Color color, string agentName = null) 17 | { 18 | if (iconSprite) 19 | _icon.sprite = iconSprite; 20 | 21 | if (!string.IsNullOrEmpty(agentName)) 22 | gameObject.name = agentName; 23 | 24 | _icon.color = color; 25 | } 26 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ObjectEditor.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Editor 2 | { 3 | using UnityEditor; 4 | using Object = UnityEngine.Object; 5 | 6 | /// 7 | /// Custom inspector for including derived classes. 8 | /// 9 | [CustomEditor(typeof(Object), true)] 10 | [CanEditMultipleObjects] 11 | internal class ObjectEditor : Editor 12 | { 13 | private ButtonsDrawer _buttonsDrawer; 14 | 15 | private void OnEnable() 16 | { 17 | _buttonsDrawer = new ButtonsDrawer(target); 18 | } 19 | 20 | public override void OnInspectorGUI() 21 | { 22 | DrawDefaultInspector(); 23 | _buttonsDrawer.DrawButtons(targets); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadObjects/InventorySaveLoadData.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using SaveLoadSystem.Example; 3 | 4 | namespace SaveLoadSystem 5 | { 6 | /// 7 | /// Custom save load data for inventory. Appends with equipped item and equipped tool. 8 | /// 9 | public class InventorySaveLoadData : SaveLoadData 10 | { 11 | public int EquippedItem { get; private set; } 12 | public int EquippedArmor { get; private set; } 13 | 14 | public InventorySaveLoadData(string id, List data, int equippedItem, int equippedArmor) : base(id, new object[]{data, equippedItem, equippedArmor}) 15 | { 16 | EquippedItem = equippedItem; 17 | EquippedArmor = equippedArmor; 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/App.axaml.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.Controls.ApplicationLifetimes; 3 | using Avalonia.Markup.Xaml; 4 | using LauncherClient.Models.Launcher; 5 | 6 | namespace LauncherClient; 7 | 8 | public partial class App : Application 9 | { 10 | #region public methods 11 | 12 | public override void Initialize() 13 | { 14 | AvaloniaXamlLoader.Load(this); 15 | } 16 | 17 | public override void OnFrameworkInitializationCompleted() 18 | { 19 | if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) 20 | { 21 | WindowsBootstrapper.BuildWindowsApp(); 22 | desktop.MainWindow = WindowsBootstrapper.BuildViews(); 23 | } 24 | 25 | base.OnFrameworkInitializationCompleted(); 26 | } 27 | 28 | #endregion 29 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Program.cs: -------------------------------------------------------------------------------- 1 | using Avalonia; 2 | using Avalonia.ReactiveUI; 3 | using System; 4 | 5 | namespace LauncherClient; 6 | 7 | sealed class Program 8 | { 9 | // Initialization code. Don't use any Avalonia, third-party APIs or any 10 | // SynchronizationContext-reliant code before AppMain is called: things aren't initialized 11 | // yet and stuff might break. 12 | [STAThread] 13 | public static void Main(string[] args) => BuildAvaloniaApp() 14 | .StartWithClassicDesktopLifetime(args); 15 | 16 | // Avalonia configuration, don't remove; also used by visual designer. 17 | public static AppBuilder BuildAvaloniaApp() 18 | => AppBuilder.Configure() 19 | .UsePlatformDetect() 20 | .WithInterFont() 21 | .LogToTrace() 22 | .UseReactiveUI(); 23 | } -------------------------------------------------------------------------------- /LauncherClient/Shared/Hash/ProjectHashData.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace Shared.Hash; 6 | 7 | [Serializable] 8 | public class ProjectHashData 9 | { 10 | #region properties 11 | 12 | public DateTime CheckDate { get; set; } = DateTime.Now; 13 | 14 | public Dictionary Hash { get; set; } = new Dictionary(); 15 | 16 | #endregion 17 | 18 | #region public methods 19 | 20 | public override string ToString() 21 | { 22 | if (Hash.Count == 0) 23 | return "Hash is empty"; 24 | 25 | StringBuilder sb = new StringBuilder(); 26 | foreach (var hash in Hash) 27 | sb.AppendLine($"{hash.Key} -> {hash.Value}"); 28 | 29 | return sb.ToString(); 30 | } 31 | 32 | #endregion 33 | 34 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Hash/HashDifference.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace LauncherClient.Models.Launcher; 4 | 5 | public readonly struct HashDifference 6 | { 7 | #region properties 8 | 9 | public List AddedFiles { get; } 10 | public List ChangedFiles { get; } 11 | public List RemovedFiles { get; } 12 | 13 | public int ChangesCount { get; } 14 | 15 | #endregion 16 | 17 | #region constructors 18 | 19 | public HashDifference(List addedFiles, List changedFiles, List removedFiles) 20 | { 21 | AddedFiles = addedFiles; 22 | ChangedFiles = changedFiles; 23 | RemovedFiles = removedFiles; 24 | 25 | ChangesCount = AddedFiles.Count + ChangedFiles.Count + RemovedFiles.Count; 26 | } 27 | 28 | #endregion 29 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/ScriptableObjectExample/ScriptableObjectExample.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Example 2 | { 3 | using UnityEngine; 4 | 5 | [CreateAssetMenu(fileName = "ScriptableObjectExample.asset", menuName = "EasyButtons/ScriptableObjectExample")] 6 | public class ScriptableObjectExample : ScriptableObject 7 | { 8 | [Button] 9 | public void SayHello() 10 | { 11 | Debug.Log("Hello"); 12 | } 13 | 14 | [Button(Mode = ButtonMode.DisabledInPlayMode)] 15 | public void SayHelloEditor() 16 | { 17 | Debug.Log("Hello from edit mode"); 18 | } 19 | 20 | [Button(Mode = ButtonMode.EnabledInPlayMode)] 21 | public void SayHelloPlayMode() 22 | { 23 | Debug.Log("Hello from play mode"); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/SaveLoadObjects/ISaveLoadObject.cs: -------------------------------------------------------------------------------- 1 | namespace SaveLoadSystem 2 | { 3 | /// 4 | /// Interface for an object that needs to be saved. 5 | /// 6 | public interface ISaveLoadObject 7 | { 8 | /// 9 | /// Id to identify object. 10 | /// 11 | public string ComponentSaveId { get; } 12 | 13 | /// 14 | /// Get data to save for this object. 15 | /// 16 | /// Data to save. 17 | public SaveLoadData GetSaveLoadData(); 18 | 19 | /// 20 | /// Restore object values from saved data. 21 | /// 22 | /// Data for restoring values. 23 | public void RestoreValues(SaveLoadData loadData); 24 | } 25 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/ViewLocator.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Avalonia.Controls; 3 | using Avalonia.Controls.Templates; 4 | using LauncherClient.ViewModels; 5 | 6 | namespace LauncherClient; 7 | 8 | public class ViewLocator : IDataTemplate 9 | { 10 | public Control? Build(object? data) 11 | { 12 | if (data is null) 13 | return null; 14 | 15 | var name = data.GetType().FullName!.Replace("ViewModel", "View", StringComparison.Ordinal); 16 | var type = Type.GetType(name); 17 | 18 | if (type != null) 19 | { 20 | var control = (Control)Activator.CreateInstance(type)!; 21 | control.DataContext = data; 22 | return control; 23 | } 24 | 25 | return new TextBlock { Text = "Not Found: " + name }; 26 | } 27 | 28 | public bool Match(object? data) 29 | { 30 | return data is ViewModelBase; 31 | } 32 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "com.madsbangh.easybuttons", 3 | "version": "1.3.0", 4 | "displayName": "Easy Buttons", 5 | "description": "Add buttons to your inspector in Unity super easily with this simple attribute.", 6 | "keywords": [ 7 | "button", 8 | "editor", 9 | "inspector" 10 | ], 11 | "author": { 12 | "name": "Mads Bang Hoffensetz", 13 | "url": "https://twitter.com/madsbangh" 14 | }, 15 | "samples": [ 16 | { 17 | "displayName": "Buttons Example", 18 | "path": "Samples~/ButtonsExample" 19 | }, 20 | { 21 | "displayName": "Custom Editor Buttons Example", 22 | "path": "Samples~/CustomEditorButtonsExample" 23 | }, 24 | { 25 | "displayName": "Scriptable Object Example", 26 | "path": "Samples~/ScriptableObjectExample" 27 | } 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/App.axaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | #6622CC 19 | #65AAFB 20 | #34CFBB 21 | 22 | 23 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/app.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 10 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Saver.cs: -------------------------------------------------------------------------------- 1 | using EasyButtons; 2 | using UnityEngine; 3 | 4 | namespace SaveLoadSystem.Example 5 | { 6 | /// 7 | /// Helper monobehaviour for saving from unity inspector. 8 | /// 9 | public class Saver : MonoBehaviour 10 | { 11 | [SerializeField] private InventoryHolder _inventoryHolder; 12 | 13 | private SaveLoadSystem _saveLoadSystem; 14 | 15 | private void Start() 16 | { 17 | _saveLoadSystem ??= new(); 18 | _saveLoadSystem.AddToSaveLoad(_inventoryHolder.Inventory); 19 | } 20 | 21 | [Button("Save to file")] 22 | private void Save() 23 | { 24 | _saveLoadSystem.SaveGame(SaveType.File); 25 | } 26 | 27 | [Button("Load from file")] 28 | private void Load() 29 | { 30 | _saveLoadSystem.LoadGame(SaveType.File); 31 | 32 | _inventoryHolder.UpdateItems(); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Hash/HashExtensions.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using Shared.Hash; 4 | 5 | namespace LauncherClient.Models.Launcher; 6 | 7 | public static class HashExtensions 8 | { 9 | #region public methods 10 | 11 | public static HashDifference GetHashDifference(this ProjectHashData hash1, ProjectHashData hash2) 12 | { 13 | var keys1 = hash1.Hash.Keys; 14 | var keys2 = hash2.Hash.Keys; 15 | 16 | var addedFiles = new List(); 17 | var changedFiles = new List(); 18 | var removedFiles = new List(); 19 | 20 | addedFiles.AddRange(keys2.Except(keys1)); 21 | 22 | var sameKeys = keys1.Intersect(keys2); 23 | var changedKeys = sameKeys.Where(key => hash1.Hash[key] != hash2.Hash[key]); 24 | 25 | changedFiles.AddRange(changedKeys); 26 | 27 | removedFiles.AddRange(keys1.Except(keys2)); 28 | 29 | return new HashDifference(addedFiles, changedFiles, removedFiles); 30 | } 31 | 32 | #endregion 33 | } -------------------------------------------------------------------------------- /LauncherClient/Shared/Hash/CalculateHashStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Shared.Hash; 4 | 5 | /// 6 | /// Class that contains status of hash calculation operation. 7 | /// 8 | public class CalculateHashStatus : IDisposable 9 | { 10 | #region properties 11 | 12 | public string Message { get; private set; } = string.Empty; 13 | public double Progress { get; private set; } 14 | 15 | #endregion 16 | 17 | #region attributes 18 | 19 | private Action? _statusChanged; 20 | 21 | #endregion 22 | 23 | #region constructors 24 | 25 | public CalculateHashStatus(Action? onStatusChanged) => _statusChanged = onStatusChanged; 26 | 27 | #endregion 28 | 29 | #region public methods 30 | 31 | public void Set(double progress, string message) 32 | { 33 | Message = message; 34 | Progress = progress; 35 | 36 | _statusChanged?.Invoke(progress, message); 37 | } 38 | 39 | #endregion 40 | 41 | #region IDisposable 42 | 43 | public void Dispose() => _statusChanged = null; 44 | 45 | #endregion 46 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Scripts/DataModel/MinimapWindowDataModel.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class MinimapWindowDataModel 4 | { 5 | public Vector3Model StartPosition { get; set; } 6 | public Vector3Model EndPosition { get; set; } 7 | public int SubdivideCount { get; set; } 8 | public float CameraHeight { get; set; } 9 | public Color BackgroundColor { get; set; } 10 | 11 | public static Newtonsoft.Json.JsonSerializerSettings SerializeSettings() 12 | { 13 | return new Newtonsoft.Json.JsonSerializerSettings 14 | { 15 | ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore 16 | }; 17 | } 18 | } 19 | 20 | [System.Serializable] 21 | public struct Vector3Model 22 | { 23 | public float X; 24 | public float Y; 25 | public float Z; 26 | 27 | public Vector3 ToVector3() => new Vector3(X, Y, Z); 28 | 29 | public static Vector3Model FromVector3(Vector3 vector3) 30 | { 31 | return new Vector3Model() 32 | { 33 | X = vector3.x, 34 | Y = vector3.y, 35 | Z = vector3.z 36 | }; 37 | } 38 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Samples/CustomEditorButtonsExample/Editor/CustomEditorButtonsExampleEditor.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Example 2 | { 3 | using System.Linq; 4 | using Editor; 5 | using UnityEditor; 6 | using UnityEngine; 7 | 8 | [CustomEditor(typeof(CustomEditorButtonsExample))] 9 | public class CustomEditorButtonsExampleEditor : Editor 10 | { 11 | private ButtonsDrawer _buttonsDrawer; 12 | 13 | // Instantiate ButtonsDrawer in OnEnable if possible. 14 | private void OnEnable() 15 | { 16 | _buttonsDrawer = new ButtonsDrawer(target); 17 | } 18 | 19 | public override void OnInspectorGUI() 20 | { 21 | DrawDefaultInspector(); 22 | 23 | EditorGUILayout.HelpBox("Message from the custom editor.", MessageType.Info); 24 | 25 | // You can draw all buttons at once. 26 | _buttonsDrawer.DrawButtons(targets); 27 | 28 | // As well as a specific button in the wanted place. 29 | _buttonsDrawer.Buttons.First(button => button.DisplayName == "Custom Editor Example").Draw(targets); 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventSender.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using Random = UnityEngine.Random; 4 | 5 | public class EventSender : MonoBehaviour 6 | { 7 | public enum TypeOfEvent 8 | { 9 | Red, 10 | Green, 11 | Blue 12 | } 13 | 14 | #region fields 15 | 16 | [SerializeField] private TypeOfEvent _eventType; 17 | [SerializeField] private EventBusHolder _busHolder; 18 | 19 | #endregion 20 | 21 | #region engine methods 22 | 23 | private void OnMouseDown() 24 | { 25 | switch (_eventType) 26 | { 27 | case TypeOfEvent.Red: 28 | _busHolder.EventBus.Raise(new RedEvent(Vector3.one * 0.15f)); 29 | break; 30 | 31 | case TypeOfEvent.Green: 32 | _busHolder.EventBus.Raise(new GreenEvent(Vector3.one * 0.25f)); 33 | break; 34 | 35 | case TypeOfEvent.Blue: 36 | _busHolder.EventBus.Raise(new BlueEvent(Color.cyan * Random.Range(0f, 1f))); 37 | break; 38 | 39 | default: 40 | throw new ArgumentOutOfRangeException(); 41 | } 42 | } 43 | 44 | #endregion 45 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Web/WebUtils.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Net.Http; 3 | using System.Threading.Tasks; 4 | 5 | namespace LauncherClient.Models.Launcher; 6 | 7 | public static class WebUtils 8 | { 9 | #region attributes 10 | 11 | private static readonly NLog.Logger Logger = NLog.LogManager.GetCurrentClassLogger(); 12 | 13 | #endregion 14 | 15 | #region public methods 16 | 17 | public static async Task CheckForConnection(string url, int timeoutMs = 5000) 18 | { 19 | Uri uri = new Uri(url); 20 | if (!uri.IsWellFormedOriginalString()) 21 | { 22 | Logger.Info("Uri {0} in not formated", uri); 23 | return false; 24 | } 25 | 26 | using var client = new HttpClient(); 27 | client.Timeout = new TimeSpan(0, 0, 0, timeoutMs); 28 | 29 | try 30 | { 31 | using var response = await client.GetAsync(url); 32 | return response.IsSuccessStatusCode; 33 | } 34 | catch (Exception e) 35 | { 36 | Logger.Error($"Can't connect to {url}"); 37 | Logger.Error(e); 38 | 39 | return false; 40 | } 41 | } 42 | 43 | #endregion 44 | } -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/Sources/SaveLoadSystem/Example/Inventory/InventoryHolder.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | 4 | namespace SaveLoadSystem.Example 5 | { 6 | public class InventoryHolder : MonoBehaviour 7 | { 8 | [field: SerializeField] public Inventory Inventory { get; private set; } 9 | 10 | public List LoadedItems; 11 | public int LoadedEquippedTool; 12 | public int LoadedEquippedArmor; 13 | 14 | private void Awake() 15 | { 16 | var items = new List(); 17 | 18 | for (int i = 0; i < 10; i++) 19 | { 20 | items.Add(new InventoryItem 21 | { 22 | Id = i, 23 | Title = $"Item {i} title", 24 | Description = $"Item {i} description", 25 | }); 26 | } 27 | 28 | Inventory = new Inventory(items.ToArray()); 29 | } 30 | 31 | public void UpdateItems() 32 | { 33 | LoadedItems = Inventory.Items; 34 | LoadedEquippedTool = Inventory.EquippedTool; 35 | LoadedEquippedArmor = Inventory.EquippedArmor; 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/SuperSimpleFollower/Scripts/SuperSimpleFollower.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class SuperSimpleFollower : MonoBehaviour, IMinimapAgent 4 | { 5 | #region IMinimapAgent 6 | 7 | public Pose Pose => new Pose(transform.position, transform.rotation); 8 | 9 | [field: SerializeField] 10 | public Sprite MapIcon { get; private set; } 11 | 12 | [field: SerializeField] 13 | public string Name { get; private set;} 14 | 15 | [field: SerializeField] 16 | public Color IconColor { get; private set;} 17 | 18 | #endregion 19 | 20 | #region fields 21 | 22 | [SerializeField] private float _speed; 23 | [SerializeField] private Transform _followTarget; 24 | 25 | private CharacterController _characterController; 26 | 27 | #endregion 28 | 29 | #region engine methods 30 | 31 | private void Awake() 32 | { 33 | _characterController = GetComponent(); 34 | } 35 | 36 | private void Update() 37 | { 38 | Vector3 move = ((_followTarget.position - transform.position).normalized * _speed + Physics.gravity) * Time.deltaTime; 39 | 40 | _characterController.Move(move); 41 | } 42 | 43 | #endregion 44 | } 45 | -------------------------------------------------------------------------------- /No Camera Minimap/Part_2. Final/Minimap/Simple Exmaple/AgentRegistrator/MinimapAgentRegistrator.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using UnityEngine; 3 | using System.Collections.Generic; 4 | 5 | /// 6 | /// Only for example purposes 7 | /// 8 | public class MinimapAgentRegistrator : MonoBehaviour 9 | { 10 | [SerializeField] private GameObject _player; 11 | [SerializeField] private List _minimapAgents; 12 | [SerializeField] private Minimap _minimap; 13 | 14 | private void OnValidate() 15 | { 16 | if (_minimapAgents != null && _minimapAgents.Count > 0) 17 | { 18 | for (int i = _minimapAgents.Count - 1; i >= 0; i--) 19 | { 20 | if(!_minimapAgents[i] || _minimapAgents[i].GetComponent() == null) 21 | _minimapAgents.RemoveAt(i); 22 | } 23 | } 24 | 25 | if (!_player || _player.GetComponent() == null) 26 | _player = null; 27 | } 28 | 29 | private void Start() 30 | { 31 | _minimap.RegisterPlayer(_player.GetComponent()); 32 | 33 | foreach (IMinimapAgent agent in _minimapAgents.Select(x => x.GetComponent())) 34 | _minimap.Register(agent); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /LauncherClient/Crc32HashCalculator/Program.cs: -------------------------------------------------------------------------------- 1 | using Mono.Options; 2 | using Shared.Hash; 3 | 4 | public static class Program 5 | { 6 | public static int Main(params string[] args) 7 | { 8 | string rootDirectory = string.Empty; 9 | string savePath = string.Empty; 10 | 11 | var p = new OptionSet 12 | { 13 | {"r|root=", "root directory", v => rootDirectory = v}, 14 | {"s|savePath=", "output directory", v => savePath = v} 15 | }; 16 | 17 | p.Parse(args); 18 | 19 | if (string.IsNullOrEmpty(rootDirectory) || !Directory.Exists(rootDirectory)) 20 | { 21 | Console.WriteLine($"Directory {rootDirectory} doesn't exist"); 22 | return -1; 23 | } 24 | 25 | if (string.IsNullOrEmpty(savePath)) 26 | { 27 | Console.WriteLine("Save path is not specified"); 28 | return -1; 29 | } 30 | 31 | try 32 | { 33 | new Crc32HashCalculator().CalculateAndSaveHash(rootDirectory, savePath); 34 | } 35 | catch (Exception e) 36 | { 37 | Console.WriteLine($"Can't calculate hash {e.Message}"); 38 | Console.WriteLine(e); 39 | return -1; 40 | } 41 | 42 | return 0; 43 | } 44 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Infrastructure/WindowsBootstrapper.cs: -------------------------------------------------------------------------------- 1 | using LauncherClient.Models.Launcher.Game; 2 | using LauncherClient.Models.Launcher.UI; 3 | using LauncherClient.ViewModels; 4 | using LauncherClient.Views; 5 | using Shared.Hash; 6 | using Splat; 7 | 8 | namespace LauncherClient.Models.Launcher; 9 | 10 | public static class WindowsBootstrapper 11 | { 12 | #region public methods 13 | 14 | public static void BuildWindowsApp() 15 | { 16 | NLogUtils.SetConfig(); 17 | 18 | RegisterAs(AppConfig.GetConfig()); 19 | RegisterAs(new Crc32HashCalculator()); 20 | RegisterAs(new MockApiHandler()); 21 | RegisterAs(new AvaloniaUiDispatcher()); 22 | RegisterAs(new GameStarter()); 23 | RegisterAs(new MainWindowViewModel()); 24 | 25 | RegisterAs(new UpdateHandler()); 26 | } 27 | 28 | public static MainWindow BuildViews() 29 | { 30 | var mainViewModel = Locator.Current.GetService(); 31 | 32 | var mainView = new MainWindow 33 | { 34 | DataContext = mainViewModel 35 | }; 36 | 37 | return mainView; 38 | } 39 | 40 | #endregion 41 | 42 | #region service methods 43 | 44 | private static void RegisterAs(TInstance instance) where TInstance : class, TInterface 45 | { 46 | Locator.CurrentMutable.Register(() => instance, typeof(TInterface)); 47 | } 48 | 49 | #endregion 50 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/Models/Launcher/Log/NLogUtils.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Diagnostics; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Threading; 6 | using NLog; 7 | using NLog.Targets; 8 | 9 | namespace LauncherClient.Models.Launcher; 10 | 11 | public static class NLogUtils 12 | { 13 | #region constants 14 | 15 | private const string DefaultOpenLogApplication = "notepad"; 16 | private const string DateTimeFormat = "yyyy-dd-M--HH-mm-ss"; 17 | private static readonly string TimeRelativeLogFile = Path.Combine("Logs", $"{DateTime.Now.ToString(DateTimeFormat)}_logs.txt"); 18 | 19 | #endregion 20 | 21 | #region public methods 22 | 23 | public static void SetConfig() 24 | { 25 | LogManager.Setup().LoadConfiguration(builder => 26 | { 27 | builder.ForLogger().FilterMinLevel(LogLevel.Info).WriteToConsole(); 28 | builder.ForLogger().FilterMinLevel(LogLevel.Debug).WriteToFile(fileName: TimeRelativeLogFile); 29 | }); 30 | } 31 | 32 | public static void OpenLogFile() 33 | { 34 | var fileTarget = LogManager.Configuration?.AllTargets.OfType(); 35 | var localPath = fileTarget?.FirstOrDefault()?.FileName?.Render(LogEventInfo.CreateNullEvent()); 36 | var path = Path.Combine(AppContext.BaseDirectory, localPath); 37 | 38 | Thread.Sleep(500); 39 | 40 | try 41 | { 42 | if (!string.IsNullOrEmpty(path) && File.Exists(path)) 43 | Process.Start(DefaultOpenLogApplication, $"\"{path}\""); 44 | } 45 | catch (Exception e) 46 | { 47 | Console.WriteLine(e); 48 | throw; 49 | } 50 | } 51 | 52 | #endregion 53 | } -------------------------------------------------------------------------------- /UnityEventBus/Scripts/Example/EventReceiver.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | [RequireComponent(typeof(MeshRenderer))] 5 | public class EventReceiver : MonoBehaviour, IEventReceiver, IEventReceiver, IEventReceiver 6 | { 7 | #region fields 8 | 9 | [SerializeField] private EventBusHolder _eventBusHolder; 10 | private MeshRenderer _meshRenderer; 11 | 12 | #endregion 13 | 14 | #region engine methods 15 | 16 | private void OnEnable() 17 | { 18 | _eventBusHolder.EventBus.Register(this as IEventReceiver); 19 | _eventBusHolder.EventBus.Register(this as IEventReceiver); 20 | _eventBusHolder.EventBus.Register(this as IEventReceiver); 21 | 22 | _meshRenderer = GetComponent(); 23 | } 24 | 25 | private void OnDestroy() => _meshRenderer.sharedMaterial.color = Color.white; 26 | 27 | private void OnDisable() 28 | { 29 | _eventBusHolder.EventBus.Unregister(this as IEventReceiver); 30 | _eventBusHolder.EventBus.Unregister(this as IEventReceiver); 31 | _eventBusHolder.EventBus.Unregister(this as IEventReceiver); 32 | } 33 | 34 | #endregion 35 | 36 | #region IEventReceiver 37 | 38 | public UniqueId Id { get; } = new UniqueId(); 39 | 40 | public void OnEvent(RedEvent @event) 41 | { 42 | transform.position += @event.MoveDelta; 43 | gameObject.SetActive(false); 44 | gameObject.SetActive(true); 45 | } 46 | 47 | public void OnEvent(GreenEvent @event) => transform.localScale += @event.Scale; 48 | 49 | public void OnEvent(BlueEvent @event) => _meshRenderer.sharedMaterial.color = @event.Color; 50 | 51 | #endregion 52 | } -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/LauncherClient.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | WinExe 4 | net6.0 5 | enable 6 | true 7 | app.manifest 8 | true 9 | Linux 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | Docker\.dockerignore 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /HidingRoof/TopObjectHiding.shader: -------------------------------------------------------------------------------- 1 | Shader "Leksay/ObjectHiding" 2 | { 3 | Properties 4 | { 5 | _Color ("Color", Color) = (1,1,1,1) 6 | _MainTex ("Albedo (RGB)", 2D) = "white" {} 7 | _Glossiness ("Smoothness", Range(0,1)) = 0.5 8 | _Metallic ("Metallic", Range(0,1)) = 0.0 9 | _HidingDistance("Hide Distance", Range(1,10)) = 3 10 | } 11 | SubShader 12 | { 13 | Tags { "RenderType"="Transparent" "Queue" = "Transparent" "IgnoreProjector" = "True" } 14 | Blend SrcAlpha OneMinusSrcAlpha 15 | ZWrite On 16 | LOD 200 17 | 18 | CGPROGRAM 19 | #pragma surface surf Standard fullforwardshadows alpha:fade 20 | #pragma target 3.0 21 | 22 | sampler2D _MainTex; 23 | 24 | struct Input 25 | { 26 | float2 uv_MainTex; 27 | float3 worldPos; 28 | }; 29 | 30 | half _Glossiness; 31 | half _Metallic; 32 | fixed4 _Color; 33 | 34 | float3 _PlayerWorldPos; 35 | float _HidingDistance; 36 | 37 | // UNITY_INSTANCING_BUFFER_START(Props) 38 | // UNITY_INSTANCING_BUFFER_END(Props) 39 | 40 | void surf (Input IN, inout SurfaceOutputStandard o) 41 | { 42 | fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color; 43 | float3 toPlayer = _PlayerWorldPos - IN.worldPos; 44 | float xz = length(toPlayer.xz); 45 | 46 | float addAlpha = smoothstep(-1, 0, toPlayer.y); 47 | float alpha = clamp(0, 1, smoothstep(0, _HidingDistance, xz / _HidingDistance) + addAlpha); 48 | 49 | o.Albedo = c.rgb; 50 | o.Smoothness = _Glossiness; 51 | o.Alpha = alpha; 52 | } 53 | ENDCG 54 | } 55 | FallBack "Diffuse" 56 | } 57 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LauncherClient", "LauncherClient\LauncherClient.csproj", "{C370AFCF-B426-4129-A789-9C459C6ABCE5}" 4 | EndProject 5 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared", "Shared\Shared.csproj", "{BBCE988D-B99C-496A-BDE0-0C617147EE8F}" 6 | EndProject 7 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Crc32HashCalculator", "Crc32HashCalculator\Crc32HashCalculator.csproj", "{BFC1C096-A597-421C-8359-41EA89705595}" 8 | EndProject 9 | Global 10 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 11 | Debug|Any CPU = Debug|Any CPU 12 | Release|Any CPU = Release|Any CPU 13 | EndGlobalSection 14 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 15 | {C370AFCF-B426-4129-A789-9C459C6ABCE5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 16 | {C370AFCF-B426-4129-A789-9C459C6ABCE5}.Debug|Any CPU.Build.0 = Debug|Any CPU 17 | {C370AFCF-B426-4129-A789-9C459C6ABCE5}.Release|Any CPU.ActiveCfg = Release|Any CPU 18 | {C370AFCF-B426-4129-A789-9C459C6ABCE5}.Release|Any CPU.Build.0 = Release|Any CPU 19 | {BBCE988D-B99C-496A-BDE0-0C617147EE8F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 20 | {BBCE988D-B99C-496A-BDE0-0C617147EE8F}.Debug|Any CPU.Build.0 = Debug|Any CPU 21 | {BBCE988D-B99C-496A-BDE0-0C617147EE8F}.Release|Any CPU.ActiveCfg = Release|Any CPU 22 | {BBCE988D-B99C-496A-BDE0-0C617147EE8F}.Release|Any CPU.Build.0 = Release|Any CPU 23 | {BFC1C096-A597-421C-8359-41EA89705595}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 24 | {BFC1C096-A597-421C-8359-41EA89705595}.Debug|Any CPU.Build.0 = Debug|Any CPU 25 | {BFC1C096-A597-421C-8359-41EA89705595}.Release|Any CPU.ActiveCfg = Release|Any CPU 26 | {BFC1C096-A597-421C-8359-41EA89705595}.Release|Any CPU.Build.0 = Release|Any CPU 27 | EndGlobalSection 28 | EndGlobal 29 | -------------------------------------------------------------------------------- /LauncherClient/LauncherClient/LauncherClient.csproj.DotSettings: -------------------------------------------------------------------------------- 1 | 2 | True 3 | True 4 | True 5 | True 6 | True 7 | True 8 | True 9 | True 10 | True 11 | True -------------------------------------------------------------------------------- /SaveLoadSystem/Assets/EasyButtons/Editor/ButtonsDrawer.cs: -------------------------------------------------------------------------------- 1 | namespace EasyButtons.Editor 2 | { 3 | using System.Collections.Generic; 4 | using System.Reflection; 5 | using JetBrains.Annotations; 6 | 7 | /// 8 | /// Helper class that can be used in custom Editors to draw methods marked with the as buttons. 9 | /// 10 | public class ButtonsDrawer 11 | { 12 | /// 13 | /// A list of buttons that can be drawn for the class. 14 | /// 15 | [PublicAPI] 16 | public readonly List