Фабрика противников

This commit is contained in:
ThomasCharester committed 2026-03-10 12:44:12 +03:00
1 parent 93819c1dd3
commit 653342d080
35 files changed
+512 -391

No files matched your search

+86 -102
View File
@@ -5,85 +5,32 @@
</component>
<component name="ChangeListManager">
<list default="true" id="ed1a3c4f-83ac-4211-ae32-004a26afd5d8" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/Bee.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/Bee.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/BeeRadar.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/Snail.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/Snail.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Entity.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Entity.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEnemyFactory.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEnemyFactory.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlayerEntity.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlayerEntity.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneData.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneData.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerState.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerState.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/UI.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/UI/PlatformerCanvas.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/UI/PlatformerCanvas.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/PlayerPrefsRacePoopshitter.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/PlayerPrefsRacePoopshitter.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Pursue.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Pursue.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScores.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScores.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMaskType.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMaskType.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEntitySettings.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEntitySettings.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Level.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Level/PlatformerLevelData.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Level/PlatformerLevelData.cs.meta" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.Infratest/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.Infratest/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/AddressableAssetsData/AddressableAssetSettings.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/AddressableAssetsData/AddressableAssetSettings.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/AddressableAssetsData/AssetGroups/Default Local Group.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/AddressableAssetsData/AssetGroups/Default Local Group.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Debug/SceneChooser.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Debug/SceneChooser.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceGame.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceGame.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AICarDriver.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AICarDriver.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AIRacerID.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AIRacerID.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Flee.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Flee.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Seek.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Behaviours/Seek.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/CarControllerRB.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/CarControllerRB.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerCarInput.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerCarInput.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/WinScreen.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/WinScreen.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/AppStateMachine.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/AppStateMachine.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/PapaInstaller.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/PapaInstaller.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/SceneInstallers/GameplaySceneInstaller.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/SceneInstallers/GameplaySceneInstaller.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/GameplayState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/GameplayState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/MainMenuState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/MainMenuState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStateMachine.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStateMachine.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStates/BaseCameraState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStates/BaseCameraState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStates/NoneCameraState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Camera/CameraStates/NoneCameraState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Input/IInputService.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Input/IInputService.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Input/InputService.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Input/InputService.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/SceneLoader/SceneId.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/SceneLoader/SceneId.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/LoadingPanel.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/LoadingPanel.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/UIPanelType.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/UIPanelType.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources/Example/Misc/Point.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources/Example/Misc/Point.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEnemyFactory.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEnemyFactory.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/ConfigLocator.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/ConfigLocator.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/SystemConfigsReferences.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/SystemConfigsReferences.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources/SystemConfigsReferences.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources/SystemConfigsReferences.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Configs/Camera/ThirdPersonConfig.asset" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Configs/Camera/ThirdPersonConfig.asset.meta" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Configs/AIGreen.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Configs/AIGreen.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Configs/AIRed.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Configs/AIRed.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/WinScreen.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/WinScreen.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/UI/Panels/LoadingPanel.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/UI/Panels/LoadingPanel.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/UI/Panels/SceneSelectPanel.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/UI/Panels/SceneSelectPanel.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Scenes/Gameplay.unity" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scenes/Gameplay.unity" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/TextMesh Pro/Resources/Fonts &amp; Materials/LiberationSans SDF - Fallback.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/TextMesh Pro/Resources/Fonts &amp; Materials/LiberationSans SDF - Fallback.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.App.AppStateMachine.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.App.AppStateMachine.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.Camera.CameraStateMachine.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.Camera.CameraStateMachine.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources/UI/Fonts/Bebas Neue Cyrillic SDF.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources/UI/Fonts/Bebas Neue Cyrillic SDF.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Platformer/Platformer.unity" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Platformer/Platformer.unity" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Platformer/Snail.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Platformer/Snail.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Example.Race.UI.PlayerScoreCounterEvents.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Example.Race.UI.PlayerScoreCounterEvents.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Example.Race.UI.PlayerScoresEvents.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Example.Race.UI.PlayerScoresEvents.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.LoadingPanelEvents.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.LoadingPanelEvents.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.LogoPanelEvents.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.LogoPanelEvents.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.MenuChoosePanelEvents.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/Code.Infrastructure.UI.Panels.MenuChoosePanelEvents.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/ConfigLocator.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/ConfigLocator.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/SceneLoader.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/SceneLoader.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/PlatformerEnemySettingsConfig.Generated.cs" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/PlatformerEnemySettingsConfig.Generated.cs.meta" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/SystemConfigsReferences.Generated.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/UnityCodeGen.Generated/SystemConfigsReferences.Generated.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Packages/manifest.json" beforeDir="false" afterPath="$PROJECT_DIR$/Packages/manifest.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Packages/packages-lock.json" beforeDir="false" afterPath="$PROJECT_DIR$/Packages/packages-lock.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ProjectSettings/DynamicsManager.asset" beforeDir="false" afterPath="$PROJECT_DIR$/ProjectSettings/DynamicsManager.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ProjectSettings/Physics2DSettings.asset" beforeDir="false" afterPath="$PROJECT_DIR$/ProjectSettings/Physics2DSettings.asset" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ProjectSettings/TagManager.asset" beforeDir="false" afterPath="$PROJECT_DIR$/ProjectSettings/TagManager.asset" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -101,6 +48,7 @@
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/1a795a29c7af4385b159eb69f68237b8468c00/b1/26a57819/InvalidCastException.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/1a795a29c7af4385b159eb69f68237b8468c00/e6/7aba13ff/ThrowHelper.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/1a795a29c7af4385b159eb69f68237b8468c00/f4/be902eb3/List`1.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/30cb9806a8774f11bb35ea6b11076cb4110400/9e/e04a9ad9/Enumerable.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/6a608067b36b43a4b2b9c2c9f46aac8b212200/95/3a3a110c/Vector3.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/6a608067b36b43a4b2b9c2c9f46aac8b212200/ed/c16ca097/Vector2.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Enemies/Bee.cs" root0="FORCE_HIGHLIGHTING" />
@@ -109,6 +57,7 @@
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/Entity.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlatformerEnemyFactory.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/Entity/PlayerEntity.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/Level/PlatformerLevelData.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneData.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerState.cs" root0="FORCE_HIGHLIGHTING" />
@@ -158,10 +107,6 @@
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.gustavopsantos.reflex@fabfbc86f712/Core/IInstaller.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.gustavopsantos.reflex@fabfbc86f712/Injectors/ConstructorInjector.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.gustavopsantos.reflex@fabfbc86f712/Injectors/MethodInjector.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.unity.addressables@13d9ede188ab/Runtime/Addressables.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.unity.addressables@13d9ede188ab/Runtime/ResourceManager/AsyncOperations/AsyncOperationBase.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.unity.addressables@13d9ede188ab/Runtime/ResourceManager/AsyncOperations/AsyncOperationHandle.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.unity.addressables@13d9ede188ab/Runtime/ResourceManager/Util/MonoBehaviourCallbackHooks.cs" root0="SKIP_HIGHLIGHTING" />
</component>
<component name="ProjectColorInfo">{
&quot;customColor&quot;: &quot;&quot;,
@@ -189,6 +134,16 @@
}
}</component>
<component name="RunManager" selected="Attach to Unity Editor.Attach to Unity Editor">
<configuration name="Start Unity" type="RunUnityExe" factoryName="Unity Executable">
<option name="EXE_PATH" value="$USER_HOME$/Unity/Hub/Editor/6000.3.10f1/Editor/Unity" />
<option name="PROGRAM_PARAMETERS" value="-projectPath A:\Projects\Infratest -debugCodeOptimization" />
<option name="WORKING_DIRECTORY" value="A:\Projects\Infratest" />
<option name="PASS_PARENT_ENVS" value="1" />
<option name="ENV_FILE_PATHS" value="" />
<option name="REDIRECT_INPUT_PATH" value="" />
<option name="MIXED_MODE_DEBUG" value="0" />
<method v="2" />
</configuration>
<configuration name="Start Unity" type="RunUnityExe" factoryName="Unity Executable">
<option name="EXE_PATH" value="$USER_HOME$/Unity/Hub/Editor/6000.3.5f2/Editor/Unity" />
<option name="PROGRAM_PARAMETERS" value="-projectPath A:\Projects\Infratest -debugCodeOptimization" />
@@ -199,6 +154,16 @@
<option name="MIXED_MODE_DEBUG" value="0" />
<method v="2" />
</configuration>
<configuration name="Unit Tests (batch mode)" type="RunUnityExe" factoryName="Unity Executable">
<option name="EXE_PATH" value="$USER_HOME$/Unity/Hub/Editor/6000.3.10f1/Editor/Unity" />
<option name="PROGRAM_PARAMETERS" value="-runTests -batchmode -projectPath A:\Projects\Infratest -testResults Logs/results.xml -logFile Logs/Editor.log -testPlatform EditMode -debugCodeOptimization" />
<option name="WORKING_DIRECTORY" value="A:\Projects\Infratest" />
<option name="PASS_PARENT_ENVS" value="1" />
<option name="ENV_FILE_PATHS" value="" />
<option name="REDIRECT_INPUT_PATH" value="" />
<option name="MIXED_MODE_DEBUG" value="0" />
<method v="2" />
</configuration>
<configuration name="Unit Tests (batch mode)" type="RunUnityExe" factoryName="Unity Executable">
<option name="EXE_PATH" value="$USER_HOME$/Unity/Hub/Editor/6000.3.5f2/Editor/Unity" />
<option name="PROGRAM_PARAMETERS" value="-runTests -batchmode -projectPath A:\Projects\Infratest -testResults Logs/results.xml -logFile Logs/Editor.log -testPlatform EditMode -debugCodeOptimization" />
@@ -222,6 +187,34 @@
</option>
<method v="2" />
</configuration>
<configuration name="Attach to Unity Editor &amp; Play" type="UNITY_DEBUG_RUN_CONFIGURATION" factoryName="UNITY_ATTACH_AND_PLAY" show_console_on_std_err="false" show_console_on_std_out="false" port="50000" address="localhost" useMixedMode="false">
<option name="allowRunningInParallel" value="false" />
<option name="listenPortForConnections" value="false" />
<option name="pid" />
<option name="projectPathOnTarget" />
<option name="runtimes">
<list />
</option>
<option name="selectedOptions">
<list />
</option>
<method v="2" />
</configuration>
<configuration name="Attach to Unity Editor" type="UNITY_DEBUG_RUN_CONFIGURATION" factoryName="Unity Debug" show_console_on_std_err="false" show_console_on_std_out="false" port="50000" address="localhost" useMixedMode="false" ignored-value-for-modified-check="3713">
<option name="allowRunningInParallel" value="false" />
<option name="listenPortForConnections" value="false" />
<option name="pid" value="3713" />
<option name="projectPathOnTarget" />
<option name="runtimes">
<list>
<MonoRuntime />
</list>
</option>
<option name="selectedOptions">
<list />
</option>
<method v="2" />
</configuration>
<configuration name="Attach to Unity Editor" type="UNITY_DEBUG_RUN_CONFIGURATION" factoryName="Unity Debug" show_console_on_std_err="false" show_console_on_std_out="false" port="50000" address="localhost" useMixedMode="false">
<option name="allowRunningInParallel" value="false" />
<option name="listenPortForConnections" value="false" />
@@ -238,6 +231,9 @@
<configuration name="Attach to" type="UnityDevicePlayer" factoryName="UnityAttachToDevicePlayer">
<method v="2" />
</configuration>
<configuration name="Attach to" type="UnityDevicePlayer" factoryName="UnityAttachToDevicePlayer">
<method v="2" />
</configuration>
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
<component name="TaskManager">
@@ -316,6 +312,7 @@
<workItem from="1771422036487" duration="1920000" />
<workItem from="1771429673395" duration="3644000" />
<workItem from="1771433586006" duration="1485000" />
<workItem from="1773065611992" duration="4340000" />
</task>
<servers />
</component>
@@ -348,43 +345,30 @@
<option name="timeStamp" value="58" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs</url>
<line>34</line>
<properties documentPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs" containingFunctionPresentation="Method 'SetupMasks'">
<url>file://$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs</url>
<line>45</line>
<properties documentPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" containingFunctionPresentation="Method 'OnContainerBuild'">
<startOffsets>
<option value="1112" />
<option value="1817" />
</startOffsets>
<endOffsets>
<option value="1324" />
<option value="1840" />
</endOffsets>
</properties>
<option name="timeStamp" value="68" />
<option name="timeStamp" value="75" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs</url>
<line>40</line>
<properties documentPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Configs/LayerMasksConfig.cs" containingFunctionPresentation="Method 'SetupMasks'">
<url>file://$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs</url>
<line>51</line>
<properties documentPath="$PROJECT_DIR$/Assets/Code/Example/Platformer/PlatformerSceneInstaller.cs" containingFunctionPresentation="Method 'PlatformerEnemyFactoryInitialized'">
<startOffsets>
<option value="1377" />
<option value="1967" />
</startOffsets>
<endOffsets>
<option value="1401" />
<option value="1991" />
</endOffsets>
</properties>
<option name="timeStamp" value="69" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/App/PapaInstaller.cs</url>
<line>209</line>
<properties documentPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/PapaInstaller.cs" containingFunctionPresentation="Method 'LayerMasksInitialized'">
<startOffsets>
<option value="7914" />
</startOffsets>
<endOffsets>
<option value="7943" />
</endOffsets>
</properties>
<option name="timeStamp" value="70" />
<option name="timeStamp" value="77" />
</line-breakpoint>
<breakpoint enabled="true" type="DotNet_Exception_Breakpoints">
<properties exception="System.OperationCanceledException" breakIfHandledByOtherCode="false" displayValue="System.OperationCanceledException" />
@@ -15,7 +15,7 @@ MonoBehaviour:
m_DefaultGroup: d790534e015d692428ac5a9ce7d2ceb6
m_currentHash:
serializedVersion: 2
Hash: 208aa87fbe30bd178e21e8742fefa5f7
Hash: ffc22690a01aea70596951aee1f02765
m_OptimizeCatalogSize: 0
m_BuildRemoteCatalog: 0
m_CatalogRequestsTimeout: 0
@@ -42,6 +42,7 @@ MonoBehaviour:
m_BundleRedirectLimit: -1
m_SharedBundleSettings: 0
m_SharedBundleSettingsCustomGroupIndex: 0
m_simulatedLoadDelay: 0.1
m_ContiguousBundles: 1
m_StripUnityVersionFromBundleBuild: 0
m_DisableVisibleSubAssetRepresentations: 0
@@ -108,6 +109,7 @@ MonoBehaviour:
- AudioSettingsConfig
- RacerConfig
- LayerMaskConfig
- PlatformerEntity
m_SchemaTemplates: []
m_GroupTemplateObjects:
- {fileID: 11400000, guid: af0b5782a0090884db056705d7776701, type: 2}
@@ -15,11 +15,22 @@ MonoBehaviour:
m_GroupName: Default Local Group
m_GUID: d790534e015d692428ac5a9ce7d2ceb6
m_SerializeEntries:
- m_GUID: 00279b1c6fbb7ac80868388a292b0c44
m_Address: Assets/Resources_moved/Example/Platformer/Configs/Enemies/Snail.asset
m_ReadOnly: 0
m_SerializedLabels:
- PlatformerEntity
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 0d2cf1d8a32701f56851c8b734cf7928
m_Address: Assets/Resources_moved/UI/Panels/PlayerCounter.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 0eb645a0c96b1c437bf0712d6b856b7c
m_Address: Assets/Resources_moved/Example/Platformer/Bee.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 0f5388dd5b953e74281733a43c9bca5a
m_Address: Audio/UI/01. Wake Up, Get Up, Get Out There
m_ReadOnly: 0
@@ -193,6 +204,17 @@ MonoBehaviour:
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 77a268730c52ad461920f3459fdda1a0
m_Address: Assets/Resources_moved/Example/Platformer/Snail.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 78f36de38978ecc0a9d9dff2ca9cf488
m_Address: Assets/Resources_moved/Example/Platformer/Configs/Enemies/Boar.asset
m_ReadOnly: 0
m_SerializedLabels:
- PlatformerEntity
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 7a5ae0cc826b85108aa9f0681d7f85cc
m_Address: Assets/Resources_moved/Example/Race/Configs/AIRed.asset
m_ReadOnly: 0
@@ -285,6 +307,11 @@ MonoBehaviour:
m_SerializedLabels:
- LayerMaskConfig
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: d0a994964f42e0c0dad3da32f7b52c90
m_Address: Assets/Resources_moved/Example/Platformer/Boar.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: d2750e654bd192d41a48144c43b41302
m_Address: Assets/Resources_moved/Configs/UI/Logo.asset
m_ReadOnly: 0
@@ -339,6 +366,12 @@ MonoBehaviour:
m_SerializedLabels:
- AudioSettingsConfig
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: ef1b55458defd6ca99e4006b21b9cb02
m_Address: Assets/Resources_moved/Example/Platformer/Configs/Enemies/Bee.asset
m_ReadOnly: 0
m_SerializedLabels:
- PlatformerEntity
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: f5d189d2c8569c2489fe942137ea0f24
m_Address: Assets/Resources_moved/Camera/CinemachineCamera.prefab
m_ReadOnly: 0
@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.Linq;
using Code.Infrastructure.Configs;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.Generators;
using Cysharp.Threading.Tasks;
using UnityEngine;
using UnityEngine.AddressableAssets;
@@ -11,33 +10,17 @@ using UnityEngine.ResourceManagement.AsyncOperations;
namespace Code.Example.Platformer.Entity
{
[Config("Configs/Gameplay/Platformer/EntitySettings", true)]
public class PlatformerEntitySettings
public interface IPlatformerEnemyFactory
{
[ToConfig] public PlatformerEntityData EntityData;
UniTaskVoid LoadEnemy(PlatformerEntityType enemyType);
void ReleaseEnemy(PlatformerEntityType racerType);
[ToConfig] public AssetReference prefabReference;
UniTaskVoid SpawnEnemy(
PlatformerEntityType enemyType,
Vector3 position);
}
[Serializable]
public struct PlatformerEntityData
{
public string name;
public float speed;
public float acceleration;
public int damage;
public PlatformerEntityType type;
public int maxHealth;
}
public enum PlatformerEntityType
{
Player,
Boar,
Bee,
Snail
}
public class PlatformerEnemyFactory
public class PlatformerEnemyFactory : IPlatformerEnemyFactory, IDisposable
{
private EventBus _eventBus;
@@ -61,53 +44,66 @@ namespace Code.Example.Platformer.Entity
await _enemyConfigsHandle.ToUniTask();
_enemyConfigs = _enemyConfigsHandle.Result.ToDictionary(x => x.racerData.type);
_enemyConfigs = _enemyConfigsHandle.Result.ToDictionary(x => x.EntityData.type);
_enemyConfigs.Remove(PlatformerEntityType.Player);
_eventBus.RaiseEvent<IPlatformerFactoryInitializedHandle>(x => x.PlatformerFactoryInitialized());
_eventBus.RaiseEvent<IPlatformerEnemyFactoryInitializedHandle>(x => x.PlatformerEnemyFactoryInitialized());
}
public async UniTaskVoid LoadRacer(PlatformerEntityType racerType)
public async UniTaskVoid LoadEnemy(PlatformerEntityType enemyType)
{
if (racerType == PlatformerEntityType.Player) return;
if (enemyType == PlatformerEntityType.Player) return;
if (_enemyPrefabsHandle.ContainsKey(racerType))
if (_enemyPrefabsHandle.ContainsKey(enemyType))
{
_eventBus.RaiseEvent<IPlatformerEnemyLoadedHandle>(x => x.PlatformerEnemyLoaded(racerType, null));
_eventBus.RaiseEvent<IPlatformerEnemyLoadedHandle>(x => x.PlatformerEnemyLoaded(enemyType, null));
return;
}
UnityEngine.Debug.LogWarning($"Racer loaded {racerType}");
_enemyPrefabsHandle.Add(racerType,
Addressables.LoadAssetAsync<GameObject>(_enemyConfigs[racerType].prefabReference));
await _enemyPrefabsHandle[racerType].ToUniTask();
var racer = _enemyPrefabsHandle[racerType].Result.GetComponent<Entity>();
racer.SetData(_enemyConfigs[racerType].racerData);
UnityEngine.Debug.LogWarning($"Enemy loaded {enemyType}");
_enemyPrefabsHandle.Add(enemyType,
Addressables.LoadAssetAsync<GameObject>(_enemyConfigs[enemyType].prefabReference));
_eventBus.RaiseEvent<IPlatformerEnemyLoadedHandle>(x => x.PlatformerEnemyLoaded(racerType, racer));
await _enemyPrefabsHandle[enemyType].ToUniTask();
var racer = _enemyPrefabsHandle[enemyType].Result.GetComponent<Entity>();
racer.SetData(_enemyConfigs[enemyType].EntityData);
_eventBus.RaiseEvent<IPlatformerEnemyLoadedHandle>(x => x.PlatformerEnemyLoaded(enemyType, racer));
}
public void ReleaseRacer(PlatformerEntityType racerType)
public void ReleaseEnemy(PlatformerEntityType racerType)
{
_enemyPrefabsHandle[racerType].Release();
_enemyPrefabsHandle.Remove(racerType);
}
public async UniTaskVoid SpawnEnemy(
PlatformerEntityType enemyType,
Vector3 position)
{
if (enemyType == PlatformerEntityType.Player) return;
await Addressables.InstantiateAsync(_enemyConfigs[enemyType].prefabReference, position, Quaternion.identity);
}
public void Dispose()
{
UnityEngine.Debug.LogWarning($"Racers released");
UnityEngine.Debug.LogWarning($"Enemies released");
foreach (var prefab in _enemyPrefabsHandle)
prefab.Value.Release();
_enemyPrefabsHandle.Clear();
_enemyConfigsHandle.Release();
}
}
public interface IPlatformerFactoryInitializedHandle : IGlobalSubscriber
public interface IPlatformerEnemyFactoryInitializedHandle : IGlobalSubscriber
{
public void PlatformerFactoryInitialized();
public void PlatformerEnemyFactoryInitialized();
}
public interface IPlatformerEnemyLoadedHandle : IGlobalSubscriber
{
public void PlatformerEnemyLoaded(PlatformerEntityType type, Entity entity);
@@ -0,0 +1,41 @@
using System;
using Code.Infrastructure.Generators;
using UnityEngine.AddressableAssets;
namespace Code.Example.Platformer.Entity
{
[Serializable]
public struct PlatformerEntityData
{
public string name;
public float speed;
public float acceleration;
public int damage;
public PlatformerEntityType type;
public int maxHealth;
}
public enum PlatformerEntityType
{
Player,
Boar,
Bee,
Snail
}
[Config("Configs/Gameplay/Platformer/EntitySettings", true)]
public class PlatformerEntitySettings
{
[ToConfig] public PlatformerEntityData EntityData;
[ToConfig] public AssetReference prefabReference;
}
[Config("Configs/Gameplay/Platformer/PlayerSettings")]
public class PlatformerPlayerSettings
{
[ToConfig] public PlatformerEntityData EntityData;
[ToConfig] public AssetReference prefabReference;
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 6116fb7cbe9c49a9863b83f85375096a
timeCreated: 1773066580
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 50745373fe25451191a647170efe16d9
timeCreated: 1773067033
@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using UnityEngine;
namespace Code.Example.Platformer.Level
{
[Serializable]
public struct PlatformerFirstLevelData
{
[SerializeField] public List<Transform> enemySpawnPoints;
[SerializeField] public List<Transform> playerCheckPoints;
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 23a7f57640a141dc866ceb89058c2f71
timeCreated: 1773067046
@@ -1,28 +1,55 @@
using System;
using Code.Example.Platformer.Entity;
using Code.Example.Platformer.Level;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.Loadings;
using Code.Infrastructure.SceneLoader;
using Reflex.Core;
using Reflex.Enums;
using UnityEngine;
using Resolution = Reflex.Enums.Resolution;
namespace Code.Example.Platformer
{
public class PlatformerSceneInstaller : MonoBehaviour, IInstaller
public class PlatformerEnemySceneInstaller : MonoBehaviour, IInstaller, IPlatformerEnemyFactoryInitializedHandle
{
// [SerializeField] private PlatformerCanvas gameplayPlatformerCanvas;
[SerializeField] private PlatformerFirstLevelData firstLevelData;
private Loading _sceneInit;
private void LoadingComplete()
{
_container.Resolve<EventBus>()
.RaiseEvent<IOnPlatformerSceneLoadedHandler>(x => x.OnPlatformerSceneInitialized(_container));
}
public void InstallBindings(ContainerBuilder containerBuilder)
{
// containerBuilder.RegisterValue(gameplayPlatformerCanvas);
// Enemies
// Container
_sceneInit = new(2, LoadingComplete);
// containerBuilder.RegisterValue(gameplayPlatformerCanvas);
containerBuilder.Parent.Resolve<EventBus>().Subscribe(this);
containerBuilder.RegisterValue(firstLevelData);
containerBuilder.RegisterType(typeof(PlatformerEnemyFactory), new []{typeof(IPlatformerEnemyFactory)}, Lifetime.Scoped, Resolution.Eager);
containerBuilder.OnContainerBuilt += OnContainerBuild;
}
private Container _container;
private void OnContainerBuild(Container container)
{
// gameplayPlatformerCanvas.GameplayPlatformerCanvas.worldCamera =
// container.Resolve<CameraStateMachineContext>().cameraLoadedData.Camera;
//
container.Resolve<EventBus>()
.RaiseEvent<IOnPlatformerSceneLoadedHandler>(x => x.OnPlatformerSceneInitialized(container));
_container = container;
_sceneInit.DoProgress();
}
public void PlatformerEnemyFactoryInitialized()
{
_sceneInit.DoProgress();
}
}
}
@@ -1,3 +1,5 @@
using Code.Example.Platformer.Entity;
using Code.Example.Platformer.Level;
using Code.Infrastructure.App;
using Code.Infrastructure.Audio;
using Code.Infrastructure.Camera;
@@ -15,7 +17,7 @@ namespace Code.Example.Platformer
{
[State(typeof(AppStates),typeof(AppStateMachineContext))]
[StateRaisingEvent]
public partial class PlatformerState : IOnPlatformerSceneLoadedHandler, ICinematicMachineHandle
public partial class PlatformerState : IOnPlatformerSceneLoadedHandler, ICinematicMachineHandle, IPlatformerEnemyLoadedHandle
{
public PlatformerState(AppStateMachineContext context, EventBus eventBus) : base(context, eventBus)
{
@@ -26,7 +28,12 @@ namespace Code.Example.Platformer
{
EventBus.Subscribe(this);
_loading = new(2, LoadingCompleted);
// Scene
// Camera
// Enemy snail
// Enemy bee
// Enemy boar
_loading = new(5, LoadingCompleted);
Context.UIService.OpenPanel(UIPanelType.Loading);
Context.SceneLoader.LoadSceneAsync(SceneId.Platformer, LoadSceneMode.Single).Forget();
@@ -39,14 +46,20 @@ namespace Code.Example.Platformer
{
Context.AudioService.CancelMusic(AudioNames.UISounds,0);
Context.UIService.ClosePanel(UIPanelType.Loading);
_enemyFactory.SpawnEnemy(PlatformerEntityType.Snail, _firstLevelData.enemySpawnPoints[0].position);
}
protected override void OnExitState()
{
_enemyFactory.ReleaseEnemy(PlatformerEntityType.Bee);
_enemyFactory.ReleaseEnemy(PlatformerEntityType.Snail);
_enemyFactory.ReleaseEnemy(PlatformerEntityType.Boar);
Context.CameraFactory.ReleaseCinemachineCamera(CameraMode.Platformer);
Context.InputService.DisableMap(ActionMappings.Platformer);
EventBus.Unsubscribe(this);
Context.InputService.DisableMap(ActionMappings.Platformer);
}
public void OnPlatformerSceneLoaded()
@@ -54,14 +67,30 @@ namespace Code.Example.Platformer
}
private IPlatformerEnemyFactory _enemyFactory;
private PlatformerFirstLevelData _firstLevelData;
public void OnPlatformerSceneInitialized(Container container)
{
_firstLevelData = container.Resolve<PlatformerFirstLevelData>();
_enemyFactory = container.Resolve<IPlatformerEnemyFactory>();
_enemyFactory.LoadEnemy(PlatformerEntityType.Bee);
_enemyFactory.LoadEnemy(PlatformerEntityType.Boar);
_enemyFactory.LoadEnemy(PlatformerEntityType.Snail);
_loading.DoProgress();
}
public void CinemachineLoaded(CinemachineCamera cinemachineCamera)
{
_loading.DoProgress();
}
public void PlatformerEnemyLoaded(PlatformerEntityType type, Entity.Entity entity)
{
if(entity) _loading.DoProgress();
}
}
}
@@ -1,8 +1,5 @@
using System;
using System.Collections.Generic;
using Code.Infrastructure.SceneLoader;
using Cysharp.Threading.Tasks;
using Reflex.Core;
using UnityEngine;
using UnityEngine.AddressableAssets;
@@ -27,9 +24,7 @@ namespace Code.Infrastructure.Configs
private void LoadSystemConfigs()
{
SystemConfigsReferences systemConfigsReferences = Resources.Load<SystemConfigsReferences>("SystemConfigsReferences");
_singleConfigReferences.Add(typeof(ScenesAssetReferences), systemConfigsReferences.scenesAssetReferences);
Resources.Load<SystemConfigsReferences>("SystemConfigsReferences");
}
}
}
@@ -6,6 +6,5 @@ namespace Code.Infrastructure.Configs
[CreateAssetMenu(fileName = "SystemConfigsReferences", menuName = "Configs/SystemConfigsReferences")]
public partial class SystemConfigsReferences : ScriptableObject
{
public AssetReference scenesAssetReferences;
}
}
+10 -9
View File
@@ -19,15 +19,18 @@ MonoBehaviour:
m_SubObjectGUID:
m_EditorAssetChanged: 0
AudioSourceSettings: AudioSettingsConfig
LayerMasksConfig: LayerMaskConfig
CanvasSettings:
m_AssetGUID: 17c5e56eb6c99db40b6093c9d543bb4f
SceneInfo: SceneConfig
VolumeSettings: PostProccessVolume
InputService:
m_AssetGUID: eab71c0cf90c4b94294e497d3734cfe1
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
UIPanelSettings: UIPanelConfig
SceneInfo: SceneConfig
PlatformerEnemySettings: PlatformerEntity
LayerMasksConfig: LayerMaskConfig
RacerSettings: RacerConfig
GameCamera:
m_AssetGUID: c42e39e2fb64cdd45b2ebc4b723d9d0c
m_SubObjectName:
@@ -35,18 +38,16 @@ MonoBehaviour:
m_SubObjectGUID:
m_EditorAssetChanged: 1
AudioInfo: AudioInfoConfig
RacerSettings: RacerConfig
AudioSourcePrefab:
m_AssetGUID: d7dd69cfadda3d6e18ec390724be0d80
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 1
VolumeSettings: PostProccessVolume
CameraSettings: CameraConfig
InputService:
m_AssetGUID: eab71c0cf90c4b94294e497d3734cfe1
CanvasSettings:
m_AssetGUID: 17c5e56eb6c99db40b6093c9d543bb4f
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
CameraSettings: CameraConfig
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d4c5da3fb6660d2c8b2ffd41a9128fe2
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,27 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c75c4d6c834f6bae6bef22279173f226, type: 3}
m_Name: Bee
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Platformer.Entity.PlatformerEntitySettingsConfig
racerData:
name: Bee
speed: 1
acceleration: 2
damage: 1
type: 2
maxHealth: 1
prefabReference:
m_AssetGUID: 0eb645a0c96b1c437bf0712d6b856b7c
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ef1b55458defd6ca99e4006b21b9cb02
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,27 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c75c4d6c834f6bae6bef22279173f226, type: 3}
m_Name: Boar
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Platformer.Entity.PlatformerEntitySettingsConfig
racerData:
name: Boar
speed: 0.5
acceleration: 2
damage: 1
type: 1
maxHealth: 2
prefabReference:
m_AssetGUID: d0a994964f42e0c0dad3da32f7b52c90
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 78f36de38978ecc0a9d9dff2ca9cf488
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,27 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c75c4d6c834f6bae6bef22279173f226, type: 3}
m_Name: Snail
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Platformer.Entity.PlatformerEntitySettingsConfig
racerData:
name: Snaily
speed: 1
acceleration: 2
damage: 1
type: 3
maxHealth: 1
prefabReference:
m_AssetGUID: 77a268730c52ad461920f3459fdda1a0
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 00279b1c6fbb7ac80868388a292b0c44
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -176,6 +176,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 0aa23aea61d74467889be39a550c9922, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Platformer.PlatformerSceneInstaller
firstLevelData:
enemySpawnPoints:
- {fileID: 591811690}
playerCheckPoints:
- {fileID: 0}
--- !u!1 &97537770
GameObject:
m_ObjectHideFlags: 0
@@ -483,6 +488,37 @@ SpriteRenderer:
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!1 &591811689
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 591811690}
m_Layer: 0
m_Name: SpawnPoint (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &591811690
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 591811689}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 2.48, y: -0.05, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &595108273
GameObject:
m_ObjectHideFlags: 0
@@ -1389,189 +1425,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 234ab51636edcbab88dbadfdb7fbfe65, type: 3}
--- !u!1001 &3495612028810159075
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 3801642601722797476, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_Name
value: Bee
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalPosition.x
value: 0.494
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4741199656111979734, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8386846360287835849, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: 'partolPoints.Array.data[0]'
value:
objectReference: {fileID: 97537771}
- target: {fileID: 8386846360287835849, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
propertyPath: 'partolPoints.Array.data[1]'
value:
objectReference: {fileID: 1369074043}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 0eb645a0c96b1c437bf0712d6b856b7c, type: 3}
--- !u!1001 &4401792132824091566
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalPosition.x
value: -0.283
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalPosition.y
value: 0.414
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2972276770558329035, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3564754929267664154, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
propertyPath: m_Name
value: Boar
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: d0a994964f42e0c0dad3da32f7b52c90, type: 3}
--- !u!1001 &7850265554012673606
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 2523079170963062473, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_Name
value: Snail
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalPosition.x
value: -0.346
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalPosition.y
value: -0.306
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4330041015761084350, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6897803134956731688, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
propertyPath: m_CollisionDetection
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 77a268730c52ad461920f3459fdda1a0, type: 3}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
@@ -1580,8 +1433,6 @@ SceneRoots:
- {fileID: 1464509737}
- {fileID: 595108274}
- {fileID: 3315900791696923540}
- {fileID: 4401792132824091566}
- {fileID: 3495612028810159075}
- {fileID: 7850265554012673606}
- {fileID: 97537771}
- {fileID: 1369074043}
- {fileID: 591811690}
@@ -166,7 +166,7 @@ Rigidbody2D:
m_Bits: 0
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_CollisionDetection: 1
m_Constraints: 4
--- !u!95 &958628273609526838
Animator:
@@ -2,9 +2,9 @@
// retard-generated
using Code.Infrastructure.UI;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.StateMachine;
using Code.Infrastructure.UI;
namespace Code.Example.Race.UI
{
@@ -2,9 +2,9 @@
// retard-generated
using Code.Infrastructure.UI;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.StateMachine;
using Code.Infrastructure.UI;
namespace Code.Example.Race.UI
{
@@ -2,6 +2,7 @@
// retard-generated
using Code.Infrastructure.UI;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.StateMachine;
@@ -2,6 +2,7 @@
// retard-generated
using Code.Infrastructure.UI;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.StateMachine;
@@ -2,6 +2,7 @@
// retard-generated
using Code.Infrastructure.UI;
using Code.Infrastructure.EventBus;
using Code.Infrastructure.StateMachine;
@@ -1,18 +1,19 @@
#pragma warning disable CS0105
using Code.Infrastructure.Audio;
using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.Volume;
using Code.Infrastructure.Input;
using Code.Infrastructure.UI;
using Code.Example.Platformer.Entity;
using Code.Infrastructure.Configs;
using Code.Example.Race.Racer;
using Code.Example.Platformer.Entity;
using Code.Infrastructure.Volume;
using Code.Infrastructure.Camera;
using Code.Infrastructure.UI;
using Code.Example.Race.Racer;
using Code.Infrastructure.Configs;
using Code.Infrastructure.Audio;
using Code.Infrastructure.Audio;
using Code.Infrastructure.UI;
using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.Camera;
using Code.Infrastructure.Input;
using UnityEngine;
#pragma warning restore CS0105
@@ -26,32 +27,34 @@ using Code.Infrastructure.Camera;
{
SystemConfigsReferences systemConfigsReferences = Resources.Load<SystemConfigsReferences>("SystemConfigsReferences");
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Audio.AudioSourceSettingsConfig), systemConfigsReferences.AudioSourceSettings);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Audio.AudioInfoConfig), systemConfigsReferences.AudioInfo);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.SceneLoader.SceneInfoConfig), systemConfigsReferences.SceneInfo);
_multipleConfigReferences.Add(typeof(Code.Example.Platformer.Entity.PlatformerEntitySettingsConfig), systemConfigsReferences.PlatformerEntitySettings);
_singleConfigReferences.Add(typeof(Code.Example.Platformer.Entity.PlatformerPlayerSettingsConfig), systemConfigsReferences.PlatformerPlayerSettings);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Volume.VolumeSettingsConfig), systemConfigsReferences.VolumeSettings);
_singleConfigReferences.Add(typeof(Code.Infrastructure.Input.InputServiceConfig), systemConfigsReferences.InputService);
_singleConfigReferences.Add(typeof(Code.Infrastructure.Camera.GameCameraConfig), systemConfigsReferences.GameCamera);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.UI.UIPanelSettingsConfig), systemConfigsReferences.UIPanelSettings);
_multipleConfigReferences.Add(typeof(Code.Example.Platformer.Entity.PlatformerEntitySettingsConfig), systemConfigsReferences.PlatformerEnemySettings);
_multipleConfigReferences.Add(typeof(Code.Example.Race.Racer.RacerSettingsConfig), systemConfigsReferences.RacerSettings);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Configs.LayerMasksConfigConfig), systemConfigsReferences.LayerMasksConfig);
_multipleConfigReferences.Add(typeof(Code.Example.Race.Racer.RacerSettingsConfig), systemConfigsReferences.RacerSettings);
_singleConfigReferences.Add(typeof(Code.Infrastructure.Camera.GameCameraConfig), systemConfigsReferences.GameCamera);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Audio.AudioInfoConfig), systemConfigsReferences.AudioInfo);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Audio.AudioSourceSettingsConfig), systemConfigsReferences.AudioSourceSettings);
_singleConfigReferences.Add(typeof(Code.Infrastructure.Audio.AudioSourcePrefabConfig), systemConfigsReferences.AudioSourcePrefab);
_singleConfigReferences.Add(typeof(Code.Infrastructure.UI.CanvasSettingsConfig), systemConfigsReferences.CanvasSettings);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.SceneLoader.SceneInfoConfig), systemConfigsReferences.SceneInfo);
_multipleConfigReferences.Add(typeof(Code.Infrastructure.Camera.CameraSettingsConfig), systemConfigsReferences.CameraSettings);
_singleConfigReferences.Add(typeof(Code.Infrastructure.Input.InputServiceConfig), systemConfigsReferences.InputService);
//_singleConfigReferences.Add(typeof(ScenesAssetReferences), systemConfigsReferences.scenesAssetReferences);
}
}
@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: c75c4d6c834f6bae6bef22279173f226
@@ -8,10 +8,10 @@ using UnityEngine.AddressableAssets;
namespace Code.Example.Platformer.Entity{
#pragma warning restore CS0105
[CreateAssetMenu(fileName = "PlatformerEnemySettingsConfig", menuName = "Configs/Gameplay/Platformer/EnemySettings")]
[CreateAssetMenu(fileName = "PlatformerEntitySettingsConfig", menuName = "Configs/Gameplay/Platformer/EntitySettings")]
public class PlatformerEntitySettingsConfig : ScriptableObject
{
public Code.Example.Platformer.Entity.PlatformerEntityData racerData;
public Code.Example.Platformer.Entity.PlatformerEntityData EntityData;
public UnityEngine.AddressableAssets.AssetReference prefabReference;
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d9f34335a0d495815967b971fedf1519
@@ -0,0 +1,18 @@
#pragma warning disable CS0105
using Code.Example.Platformer.Entity;
using UnityEngine.AddressableAssets;
using UnityEngine;
using UnityEngine.AddressableAssets;
namespace Code.Example.Platformer.Entity{
#pragma warning restore CS0105
[CreateAssetMenu(fileName = "PlatformerPlayerSettingsConfig", menuName = "Configs/Gameplay/Platformer/PlayerSettings")]
public class PlatformerPlayerSettingsConfig : ScriptableObject
{
public Code.Example.Platformer.Entity.PlatformerEntityData EntityData;
public UnityEngine.AddressableAssets.AssetReference prefabReference;
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: f80fb6365f0d881bf813d6d78850dc36
@@ -1,18 +1,19 @@
#pragma warning disable CS0105
using Code.Infrastructure.Audio;
using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.Volume;
using Code.Infrastructure.Input;
using Code.Infrastructure.UI;
using Code.Example.Platformer.Entity;
using Code.Infrastructure.Configs;
using Code.Example.Race.Racer;
using Code.Example.Platformer.Entity;
using Code.Infrastructure.Volume;
using Code.Infrastructure.Camera;
using Code.Infrastructure.UI;
using Code.Example.Race.Racer;
using Code.Infrastructure.Configs;
using Code.Infrastructure.Audio;
using Code.Infrastructure.Audio;
using Code.Infrastructure.UI;
using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.Camera;
using Code.Infrastructure.Input;
using UnityEngine.AddressableAssets;
#pragma warning restore CS0105
@@ -20,19 +21,20 @@ using Code.Infrastructure.Camera;
namespace Code.Infrastructure.Configs{
public partial class SystemConfigsReferences
{
public string AudioSourceSettings;
public string SceneInfo;
public string AudioInfo;
public string PlatformerEntitySettings;
public AssetReference PlatformerPlayerSettings;
public string VolumeSettings;
public AssetReference InputService;
public string UIPanelSettings;
public string PlatformerEnemySettings;
public string LayerMasksConfig;
public string RacerSettings;
public AssetReference GameCamera;
public string AudioInfo;
public string UIPanelSettings;
public string RacerSettings;
public string LayerMasksConfig;
public string AudioSourceSettings;
public AssetReference AudioSourcePrefab;
public AssetReference CanvasSettings;
public string SceneInfo;
public string CameraSettings;
public AssetReference InputService;
}
}