ИИ гонщиков, запуск, перезапуск игры и пр

This commit is contained in:
ThomasCharester committed 2026-02-09 16:22:37 +03:00
1 parent f557c58c9d
commit efcfaae647
48 files changed
+1470 -196

No files matched your search

+100 -8
View File
@@ -5,18 +5,51 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="7a4e4e1b-6c5f-4c8d-968e-512e90aa8c7c" name="Changes" comment=""> <list default="true" id="7a4e4e1b-6c5f-4c8d-968e-512e90aa8c7c" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AICarDriver.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/AICarDriver.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerRBCarController.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerRBCarController.cs.meta" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/WinScreen.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/WinScreen.cs.meta" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.Infra/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.Infra/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/.idea.Infra/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.Infra/.idea/workspace.xml" 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/RaceGame.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceGame.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceScores.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceScores.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceScores.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/RaceScores.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/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/Agent.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/AI/ID/Agent.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/Player/PlayerCarControllerRB.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/PlayerCarControllerRB.cs.meta" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/CarControllerRB.cs.meta" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerRacer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Player/PlayerRacer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Racer.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/Racer.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/RacerFactory.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Racer/RacerFactory.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Track/CheckPoint.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Track/CheckPoint.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/Track/RaceTrackData.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/Track/RaceTrackData.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScoreCounter.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScoreCounter.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScoreCounter.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Example/Race/UI/PlayerScoreCounter.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/BootstrapState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/BootstrapState.cs" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/BootstrapState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/BootstrapState.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/GameplayState.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/GameplayState.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/Audio/AudioService.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Audio/AudioService.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/Audio/AudioFactory.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/Audio/AudioFactory.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/SceneLoader/SceneLoader.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/SceneLoader/SceneLoader.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/DamnEmptyPanel.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/DamnEmptyPanel.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/MenuChoosePanel.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/Panels/MenuChoosePanel.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/UIFactory.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/UIFactory.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/Code/Infrastructure/UI/UIService.cs" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Code/Infrastructure/UI/UIService.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/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/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/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/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/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/Configs/Player.asset" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Configs/Player.asset" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/PlayerCounter.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/PlayerCounter.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/PlayerRacist.prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/PlayerRacist.prefab" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Racist (1).prefab" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Resources_moved/Example/Race/Racist (1).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/Scenes/MainMenu.unity" beforeDir="false" afterPath="$PROJECT_DIR$/Assets/Scenes/MainMenu.unity" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -29,13 +62,11 @@
<component name="HighlightingSettingsPerFile"> <component name="HighlightingSettingsPerFile">
<setting file="file://$PROJECT_DIR$/Assets/Code/Infrastructure/Audio/AudioFactory.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://$PROJECT_DIR$/Assets/Code/Infrastructure/Audio/AudioFactory.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.cysharp.unitask@a85b92a8e443/Runtime/UniTaskScheduler.cs" root0="SKIP_HIGHLIGHTING" /> <setting file="file://$PROJECT_DIR$/Library/PackageCache/com.cysharp.unitask@a85b92a8e443/Runtime/UniTaskScheduler.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.gustavopsantos.reflex@e8008dafac36/Core/Container.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.gustavopsantos.reflex@e8008dafac36/Core/ContainerScope.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://$PROJECT_DIR$/Library/PackageCache/com.unity.addressables@45e9abf44299/Runtime/AddressablesImpl.cs" root0="SKIP_HIGHLIGHTING" />
<setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/Code.Infrastructure.Generators.SceneLoaderGenerator/SceneLoader.Generated.g.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/Code.Infrastructure.Generators.SceneLoaderGenerator/SceneLoader.Generated.g.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.App.AppStateMachine.StateMachine.Generated.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.App.AppStateMachine.StateMachine.Generated.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.App.States.BootstrapState.State.Generated.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.App.States.BootstrapState.State.Generated.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.Camera.CameraStateMachine.StateMachine.Generated.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://C:/TEMP/SourceGeneratedDocuments/1A3209B82D230FF4FE3E50D7/InfraGens/StateMachineGenerator/Code.Infrastructure.Camera.CameraStateMachine.StateMachine.Generated.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/1eb9db207454431c84a47bcd81e79c3746ae00/50/ee0759d6/Dictionary`2.cs" root0="FORCE_HIGHLIGHTING" />
<setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/493b407efcb64dddad59f28bb0b831d3212400/94/af20347f/Object.cs" root0="FORCE_HIGHLIGHTING" /> <setting file="file://$APPLICATION_CONFIG_DIR$/resharper-host/DecompilerCache/decompiler/493b407efcb64dddad59f28bb0b831d3212400/94/af20347f/Object.cs" root0="FORCE_HIGHLIGHTING" />
</component> </component>
<component name="ProjectColorInfo">{ <component name="ProjectColorInfo">{
@@ -94,10 +125,10 @@
</option> </option>
<method v="2" /> <method v="2" />
</configuration> </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" ignored-value-for-modified-check="10068"> <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" ignored-value-for-modified-check="6116">
<option name="allowRunningInParallel" value="false" /> <option name="allowRunningInParallel" value="false" />
<option name="listenPortForConnections" value="false" /> <option name="listenPortForConnections" value="false" />
<option name="pid" value="10068" /> <option name="pid" value="6116" />
<option name="projectPathOnTarget" /> <option name="projectPathOnTarget" />
<option name="selectedOptions"> <option name="selectedOptions">
<list /> <list />
@@ -120,6 +151,9 @@
<workItem from="1769350118757" duration="196000" /> <workItem from="1769350118757" duration="196000" />
<workItem from="1769608253594" duration="3971000" /> <workItem from="1769608253594" duration="3971000" />
<workItem from="1770363329441" duration="12586000" /> <workItem from="1770363329441" duration="12586000" />
<workItem from="1770407896165" duration="404000" />
<workItem from="1770451319773" duration="10815000" />
<workItem from="1770634886406" duration="8191000" />
</task> </task>
<servers /> <servers />
</component> </component>
@@ -136,4 +170,62 @@
<component name="VcsManagerConfiguration"> <component name="VcsManagerConfiguration">
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="true" /> <option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="true" />
</component> </component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/GameplayState.cs</url>
<line>141</line>
<properties documentPath="A:\Projects\Infra\Assets\Code\Infrastructure\App\States\GameplayState.cs" containingFunctionPresentation="Method 'EndTheGame'">
<startOffsets>
<option value="5436" />
</startOffsets>
<endOffsets>
<option value="5530" />
</endOffsets>
</properties>
<option name="timeStamp" value="13" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/GameplayState.cs</url>
<line>62</line>
<properties documentPath="A:\Projects\Infra\Assets\Code\Infrastructure\App\States\GameplayState.cs" containingFunctionPresentation="Method 'GameplayLoadingCompleted'">
<startOffsets>
<option value="2095" />
</startOffsets>
<endOffsets>
<option value="2152" />
</endOffsets>
</properties>
<option name="timeStamp" value="14" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Infrastructure/App/States/MainMenuState.cs</url>
<line>60</line>
<properties documentPath="A:\Projects\Infra\Assets\Code\Infrastructure\App\States\MainMenuState.cs" containingFunctionPresentation="Method 'OnReadyToPlay'">
<startOffsets>
<option value="2151" />
</startOffsets>
<endOffsets>
<option value="2210" />
</endOffsets>
</properties>
<option name="timeStamp" value="15" />
</line-breakpoint>
<line-breakpoint enabled="true" type="DotNet Breakpoints">
<url>file://$PROJECT_DIR$/Assets/Code/Example/Race/RaceGame.cs</url>
<line>62</line>
<properties documentPath="A:\Projects\Infra\Assets\Code\Example\Race\RaceGame.cs" containingFunctionPresentation="Method 'PlaceRacers'">
<startOffsets>
<option value="1879" />
</startOffsets>
<endOffsets>
<option value="2084" />
</endOffsets>
</properties>
<option name="timeStamp" value="16" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
</project> </project>
@@ -125,6 +125,12 @@ MonoBehaviour:
m_ReadOnly: 0 m_ReadOnly: 0
m_SerializedLabels: [] m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 55ccf07d7c51c2a409a42ddcda3b3b30
m_Address: Assets/Resources_moved/Configs/UI/WinScreen.asset
m_ReadOnly: 0
m_SerializedLabels:
- UIPanelConfig
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 62388720cc90ef87f9d8ed5328dbc6fe - m_GUID: 62388720cc90ef87f9d8ed5328dbc6fe
m_Address: Assets/Resources_moved/Configs/Audio/AudioInfoConfig.asset m_Address: Assets/Resources_moved/Configs/Audio/AudioInfoConfig.asset
m_ReadOnly: 0 m_ReadOnly: 0
@@ -308,6 +314,11 @@ MonoBehaviour:
m_SerializedLabels: m_SerializedLabels:
- SceneConfig - SceneConfig
FlaggedDuringContentUpdateRestriction: 0 FlaggedDuringContentUpdateRestriction: 0
- m_GUID: f60baf3e133aa2644a106742a1f2c2fb
m_Address: Assets/Resources_moved/Example/Race/WinScreen.prefab
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: f7cebe94899e9257497d042d1ec4fd76 - m_GUID: f7cebe94899e9257497d042d1ec4fd76
m_Address: Assets/Resources_moved/Configs/Audio/Infos/UI/ButtonRollOver.asset m_Address: Assets/Resources_moved/Configs/Audio/Infos/UI/ButtonRollOver.asset
m_ReadOnly: 0 m_ReadOnly: 0
+10 -1
View File
@@ -1,8 +1,10 @@
using System.Collections.Generic;
using Code.Infrastructure.App; using Code.Infrastructure.App;
using Code.Infrastructure.SceneLoader; using Code.Infrastructure.SceneLoader;
using Reflex.Attributes; using Reflex.Attributes;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
using UnityEngine.UI;
namespace Code.Debug namespace Code.Debug
{ {
@@ -12,7 +14,7 @@ namespace Code.Debug
[Inject] private AppStateMachine _stateMachine; [Inject] private AppStateMachine _stateMachine;
public void ChooseScene(int id) public void ChooseScene(int id)
{ {
_sceneLoader.LoadSceneAsync((SceneId)id, LoadSceneMode.Single).Forget(); _sceneLoader.LoadSceneAsync((SceneId)id, LoadSceneMode.Additive).Forget();
} }
public void ChooseState(int id) public void ChooseState(int id)
@@ -24,5 +26,12 @@ namespace Code.Debug
{ {
_stateMachine.SwitchState(AppStates.Gameplay).AllowStateTransition(AppStates.MainMenu); _stateMachine.SwitchState(AppStates.Gameplay).AllowStateTransition(AppStates.MainMenu);
} }
[SerializeField] private List<Button> buttons;
public void EnableButtons()
{
foreach (var button in buttons) button.interactable = true;
}
} }
} }
+7 -10
View File
@@ -1,10 +1,10 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using Code.Example.Race.Racer; using Code.Example.Race.Racer;
using Code.Example.Race.Track; using Code.Example.Race.Track;
using Code.Infrastructure.EventBus; using Code.Infrastructure.EventBus;
using Code.Infrastructure.Loadings; using Code.Infrastructure.Loadings;
using Reflex.Attributes;
namespace Code.Example.Race namespace Code.Example.Race
{ {
@@ -52,7 +52,7 @@ namespace Code.Example.Race
} }
private void RacersLoadCompleted() => private void RacersLoadCompleted() =>
_eventBus.RaiseEvent<IRaceGameInitializedHandle>(x => x.RaceGameReady()); _eventBus.RaiseEvent<IRaceGameHandle>(x => x.RaceGameReady());
public List<Racer.Racer> PlacedRacers { get; } = new(); public List<Racer.Racer> PlacedRacers { get; } = new();
@@ -70,7 +70,7 @@ namespace Code.Example.Race
foreach (var racer in PlacedRacers) foreach (var racer in PlacedRacers)
{ {
racer.Initialize(_raceTrackData.trackData.Checkpoints); racer.Initialize(_raceTrackData.trackData.Checkpoints.Select(x=> x.transform).ToList());
} }
} }
@@ -85,22 +85,19 @@ namespace Code.Example.Race
_raceGameLoading.DoProgress(); _raceGameLoading.DoProgress();
} }
// private Dictionary<RacerType, Racer.AI.Racer> _spawnedRacers = new();
public void RacerCreated(RacerType type, Racer.Racer racer)
{
// _spawnedRacers.Add(type, racer);
// _raceGameLoading.DoProgress();
}
public void Dispose() public void Dispose()
{ {
foreach (var racer in PlacedRacers) _scores.UnsubscribeRacer(racer);
_eventBus.Unsubscribe(this); _eventBus.Unsubscribe(this);
_racerPrefabs.Clear(); _racerPrefabs.Clear();
} }
} }
public interface IRaceGameInitializedHandle : IGlobalSubscriber public interface IRaceGameHandle : IGlobalSubscriber
{ {
void RaceGameReady(); void RaceGameReady();
void RaceGameEnded(RaceScores scores);
} }
} }
+36 -8
View File
@@ -1,14 +1,16 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using Code.Example.Race.Racer.Player;
using Code.Example.Race.Track; using Code.Example.Race.Track;
using Code.Infrastructure.EventBus; using Code.Infrastructure.EventBus;
using Reflex.Attributes;
namespace Code.Example.Race namespace Code.Example.Race
{ {
public class RaceScores : IRacerPassedCheckpointHandler, IDisposable public class RaceScores : IRacerPassedCheckpointHandler, IDisposable, IPlayerPassedCheckpointHandler
{ {
private Dictionary<Racer.Racer, int> _scores = new(); private Dictionary<Racer.Racer, ScoreData> _scores = new();
private EventBus _eventBus; private EventBus _eventBus;
public RaceScores(EventBus eventBus) public RaceScores(EventBus eventBus)
@@ -16,15 +18,24 @@ namespace Code.Example.Race
_eventBus = eventBus; _eventBus = eventBus;
_eventBus.Subscribe(this); _eventBus.Subscribe(this);
} }
public void SubscribeRacer(Racer.Racer racer) public void SubscribeRacer(Racer.Racer racer)
{ {
_scores.Add(racer, 0); _scores.Add(racer, new ScoreData());
} }
public void ChangeScore(Racer.Racer racer, int additionalScore) public void ChangeScore(Racer.Racer racer, int additionalScore)
{ {
_scores[racer] += additionalScore; _scores[racer].checkpointsPassed += additionalScore;
_eventBus.RaiseEvent<IScoreChangedHandle>(x=> x.ScoreChanged(racer,additionalScore, GetScores())); _eventBus.RaiseEvent<IScoreChangedHandle>(x=> x.ScoreChanged(racer,_scores[racer], GetScores()));
}
public void LapPassed(Racer.Racer racer)
{
_scores[racer].lapsPassed++;
_eventBus.RaiseEvent<IScoreChangedHandle>(x=> x.ScoreChanged(racer,_scores[racer], GetScores()));
if (_scores[racer].lapsPassed >= _raceTrackData.trackData.LapCount)
_eventBus.RaiseEvent<IRaceGameHandle>(x=> x.RaceGameEnded(this));
} }
public void UnsubscribeRacer(Racer.Racer racer) public void UnsubscribeRacer(Racer.Racer racer)
@@ -32,9 +43,9 @@ namespace Code.Example.Race
_scores.Remove(racer); _scores.Remove(racer);
} }
public List<KeyValuePair<Racer.Racer, int>> GetScores() public List<KeyValuePair<Racer.Racer, ScoreData>> GetScores()
{ {
return _scores.OrderByDescending(x => x.Value).ToList(); return _scores.OrderByDescending(x => x.Value.checkpointsPassed).ToList();
} }
public void OnRacerPassedCheckpoint(Racer.Racer racer) => ChangeScore(racer,1); public void OnRacerPassedCheckpoint(Racer.Racer racer) => ChangeScore(racer,1);
@@ -43,10 +54,27 @@ namespace Code.Example.Race
{ {
_eventBus.Unsubscribe(this); _eventBus.Unsubscribe(this);
} }
[Inject] private RaceTrackData _raceTrackData;
public void OnPlayerPassedCheckpoint(Racer.Racer racer)
{
var player = (PlayerRacer)racer;
_raceTrackData.trackData.Checkpoints[player.CurrentWaypointIndex].Show();
}
public void OnPlayerLapPassed(Racer.Racer racer)
{
}
} }
public class ScoreData
{
public int checkpointsPassed;
public int lapsPassed;
}
public interface IScoreChangedHandle : IGlobalSubscriber public interface IScoreChangedHandle : IGlobalSubscriber
{ {
void ScoreChanged(Racer.Racer racer, int additionalScore, List<KeyValuePair<Racer.Racer, int>> scores); void ScoreChanged(Racer.Racer racer, ScoreData score, List<KeyValuePair<Racer.Racer, ScoreData>> scores);
} }
} }
@@ -0,0 +1,12 @@
using UnityEngine;
namespace Code.Example.Race.Racer.AI
{
public class AICarDriver : CarControllerRB
{
public override void SetSteering(Vector2 steeringLinear)
{
SteeringInput = steeringLinear;
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c82b0db1441e417098bccb9ca1575e3e
timeCreated: 1770639201
+35 -24
View File
@@ -1,11 +1,16 @@
using System.Collections.Generic; using System.Collections.Generic;
using Code.Example.Race.Racer.AI.ID; using Code.Example.Race.Racer.AI.ID;
using Code.Example.Race.Track;
using Code.Infrastructure.EventBus;
using Reflex.Attributes;
using UnityEngine; using UnityEngine;
namespace Code.Example.Race.Racer.AI namespace Code.Example.Race.Racer.AI
{ {
public class AIRacerID : Racer public class AIRacerID : Racer
{ {
[Inject] private EventBus _eventBus;
[SerializeField] private CarControllerRB carController;
public override void SetData(RacerData data) public override void SetData(RacerData data)
{ {
Data = data; Data = data;
@@ -21,9 +26,10 @@ namespace Code.Example.Race.Racer.AI
public override void NextWaypoint() public override void NextWaypoint()
{ {
if(CurrentWaypointIndex >= Waypoints.Count) CurrentWaypointIndex = 0; if (++CurrentWaypointIndex < Waypoints.Count) return;
CurrentWaypointIndex++; CurrentWaypointIndex = 0;
_eventBus.RaiseEvent<IRacerPassedCheckpointHandler>(x=> x.LapPassed(this));
} }
public override void StartRacer() public override void StartRacer()
@@ -66,33 +72,38 @@ namespace Code.Example.Race.Racer.AI
{ {
if (!_running) return; if (!_running) return;
var displacement = _velocity * Time.deltaTime; var steering =
_orientation += _rotation * Time.deltaTime; transform.InverseTransformDirection(
_orientation = NormalizeAngle(_orientation); agent.GetSteering(Waypoints[CurrentWaypointIndex]).linear);
transform.Translate(displacement, Space.World); carController.SetSteering(new Vector2(steering.x, steering.z));
transform.Rotate(Vector3.up, _orientation); // var displacement = _velocity * Time.deltaTime;
// _orientation += _rotation * Time.deltaTime;
// _orientation = NormalizeAngle(_orientation);
//
// transform.Translate(displacement, Space.World);
// transform.Rotate(Vector3.up, _orientation);
} }
public virtual void LateUpdate() public virtual void LateUpdate()
{ {
if (!_running) return; if (!_running) return;
//
_steering = agent.GetSteering(Waypoints[CurrentWaypointIndex]); // _steering = agent.GetSteering(Waypoints[CurrentWaypointIndex]);
//
_velocity += _steering.linear * Time.deltaTime; // _velocity += _steering.linear * Time.deltaTime;
_rotation += _steering.angular * Time.deltaTime; // _rotation += _steering.angular * Time.deltaTime;
if (_velocity.magnitude > Data.speed) // if (_velocity.magnitude > Data.speed)
{ // {
_velocity = _velocity.normalized * Data.speed; // _velocity = _velocity.normalized * Data.speed;
} // }
if (_steering.angular == 0.0f) // if (_steering.angular == 0.0f)
{ // {
_rotation = 0.0f; // _rotation = 0.0f;
} // }
if (_steering.linear.sqrMagnitude == 0.0f) // if (_steering.linear.sqrMagnitude == 0.0f)
{ // {
_velocity = Vector3.zero; // _velocity = Vector3.zero;
} // }
} }
} }
} }
@@ -16,11 +16,6 @@ namespace Code.Example.Race.Racer.AI.ID
velocity = Vector3.zero; velocity = Vector3.zero;
steering = new Steering(); steering = new Steering();
} }
public void SetSteering(Steering steering)
{
this.steering = steering;
}
public virtual void Update () public virtual void Update ()
{ {
Vector3 displacement = velocity * Time.deltaTime; Vector3 displacement = velocity * Time.deltaTime;
@@ -9,8 +9,10 @@ namespace Code.Example.Race.Racer.AI.ID.Behaviours
Steering steering = new Steering(); Steering steering = new Steering();
steering.linear = target.position - transform.position; steering.linear = target.position - transform.position;
UnityEngine.Debug.DrawRay(transform.position, steering.linear, Color.yellow, 5f);
// steering.linear *= agent.Data.maxAcceleration;
steering.linear.Normalize(); steering.linear.Normalize();
steering.linear *= agent.Data.maxAcceleration; UnityEngine.Debug.Log(steering.linear);
return steering; return steering;
} }
} }
@@ -1,11 +1,10 @@
using UnityEngine;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using Code.Example.Race.Racer.AI; using UnityEngine;
namespace Code.Example.Race.Racer.Player namespace Code.Example.Race.Racer
{ {
public class PlayerCarControllerRB : MonoBehaviour public abstract class CarControllerRB : MonoBehaviour
{ {
public enum ControlMode public enum ControlMode
{ {
@@ -35,30 +34,31 @@ namespace Code.Example.Race.Racer.Player
public List<Wheel> wheels; public List<Wheel> wheels;
private Rigidbody carRb; protected Rigidbody CarRb;
[SerializeField] private PlayerCarInput _playerCarInput; protected Vector2 SteeringInput = Vector2.zero;
[SerializeField] private PlayerRacer _playerRacer; public abstract void SetSteering(Vector2 steeringLinear);
[SerializeField] protected Racer racer;
// private CarLights carLights; // private CarLights carLights;
void Start() private void Start()
{ {
carRb = GetComponent<Rigidbody>(); CarRb = GetComponent<Rigidbody>();
carRb.centerOfMass = _centerOfMass; CarRb.centerOfMass = _centerOfMass;
// carLights = GetComponent<CarLights>(); // carLights = GetComponent<CarLights>();
} }
void Update() protected virtual void Update()
{ {
// GetInputs(); // GetInputs();
AnimateWheels(); AnimateWheels();
// WheelEffects(); // WheelEffects();
} }
void FixedUpdate() private void FixedUpdate()
{ {
Move(); Move();
Steer(); Steer();
@@ -84,51 +84,54 @@ namespace Code.Example.Race.Racer.Player
// } // }
} }
void Move() private void Move()
{ {
foreach (var wheel in wheels) foreach (var wheel in wheels)
{ {
wheel.wheelCollider.motorTorque = _playerCarInput.MovementInput.y * 600 * _playerRacer.Data.maxAcceleration * Time.fixedDeltaTime; wheel.wheelCollider.motorTorque = SteeringInput.y * 600 * racer.Data.maxAcceleration * Time.fixedDeltaTime;
// wheel.wheelCollider.motorTorque = _playerCarInput.MovementInput.y * 600 * _playerRacer.Data.maxAcceleration * Time.fixedDeltaTime;
} }
} }
void Steer() private void Steer()
{ {
foreach (var wheel in wheels) foreach (var wheel in wheels)
{ {
if (wheel.axel != Axel.Front) continue; if (wheel.axel != Axel.Front) continue;
var _steerAngle = _playerCarInput.MovementInput.x * _playerRacer.Data.turnSensitivity * _playerRacer.Data.maxSteerAngle; var steerAngle = SteeringInput.x * racer.Data.turnSensitivity * racer.Data.maxSteerAngle;
wheel.wheelCollider.steerAngle = _steerAngle; // var _steerAngle = _playerCarInput.MovementInput.x * _playerRacer.Data.turnSensitivity * _playerRacer.Data.maxSteerAngle;
wheel.wheelCollider.steerAngle = steerAngle;
// wheel.wheelCollider.steerAngle = Mathf.Lerp(wheel.wheelCollider.steerAngle, _steerAngle, 0.6f); // wheel.wheelCollider.steerAngle = Mathf.Lerp(wheel.wheelCollider.steerAngle, _steerAngle, 0.6f);
} }
} }
void Brake() protected virtual void Brake()
{ {
if (_playerCarInput.Brake || _playerCarInput.MovementInput.y == 0) //|| _playerCarInput.MovementInput.y == 0
{ // if (_playerCarInput.Brake )
foreach (var wheel in wheels) // {
{ // foreach (var wheel in wheels)
wheel.wheelCollider.brakeTorque = 300 * _playerRacer.Data.brakeAcceleration * Time.fixedDeltaTime; // {
} // wheel.wheelCollider.brakeTorque = 300 * _racer.Data.brakeAcceleration * Time.fixedDeltaTime;
// }
// carLights.isBackLightOn = true; //
// carLights.OperateBackLights(); // // carLights.isBackLightOn = true;
} // // carLights.OperateBackLights();
else // }
{ // else
foreach (var wheel in wheels) // {
{ // foreach (var wheel in wheels)
wheel.wheelCollider.brakeTorque = 0; // {
} // wheel.wheelCollider.brakeTorque = 0;
// }
// carLights.isBackLightOn = false; //
// carLights.OperateBackLights(); // // carLights.isBackLightOn = false;
} // // carLights.OperateBackLights();
// }
} }
void AnimateWheels() private void AnimateWheels()
{ {
foreach (var wheel in wheels) foreach (var wheel in wheels)
{ {
@@ -140,14 +143,14 @@ namespace Code.Example.Race.Racer.Player
} }
} }
void WheelEffects() private void WheelEffects()
{ {
foreach (var wheel in wheels) foreach (var wheel in wheels)
{ {
//var dirtParticleMainSettings = wheel.smokeParticle.main; //var dirtParticleMainSettings = wheel.smokeParticle.main;
if (wheel.axel == Axel.Rear && wheel.wheelCollider.isGrounded && if (wheel.axel == Axel.Rear && wheel.wheelCollider.isGrounded &&
carRb.linearVelocity.magnitude >= 10.0f) CarRb.linearVelocity.magnitude >= 10.0f)
{ {
// wheel.wheelEffectObj.GetComponentInChildren<TrailRenderer>().emitting = true; // wheel.wheelEffectObj.GetComponentInChildren<TrailRenderer>().emitting = true;
// wheel.smokeParticle.Emit(1); // wheel.smokeParticle.Emit(1);
@@ -0,0 +1,44 @@
using UnityEngine;
namespace Code.Example.Race.Racer.Player
{
public class PlayerRBCarController : CarControllerRB
{
[SerializeField] private PlayerCarInput playerCarInput;
public override void SetSteering(Vector2 steeringLinear)
{
}
protected override void Update()
{
SteeringInput = playerCarInput.MovementInput;
base.Update();
}
protected override void Brake()
{
if (playerCarInput.Brake )
{
foreach (var wheel in wheels)
{
wheel.wheelCollider.brakeTorque = 300 * racer.Data.brakeAcceleration * Time.fixedDeltaTime;
}
// carLights.isBackLightOn = true;
// carLights.OperateBackLights();
}
else
{
foreach (var wheel in wheels)
{
wheel.wheelCollider.brakeTorque = 0;
}
// carLights.isBackLightOn = false;
// carLights.OperateBackLights();
}
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: bad2326aa0f24acb9bdfeb5fb7d3d208
timeCreated: 1770640123
@@ -1,10 +1,15 @@
using System.Collections.Generic; using System.Collections.Generic;
using Code.Example.Race.Track;
using Code.Infrastructure.EventBus;
using Reflex.Attributes;
using UnityEngine; using UnityEngine;
namespace Code.Example.Race.Racer.Player namespace Code.Example.Race.Racer.Player
{ {
public class PlayerRacer : Racer public class PlayerRacer : Racer
{ {
[Inject] private EventBus _eventBus;
public Transform CameraPosition; public Transform CameraPosition;
public override void SetData(RacerData data) public override void SetData(RacerData data)
{ {
@@ -13,21 +18,26 @@ namespace Code.Example.Race.Racer.Player
public override void Initialize(List<Transform> waypoints) public override void Initialize(List<Transform> waypoints)
{ {
Waypoints = waypoints;
} }
public override void NextWaypoint() public override void NextWaypoint()
{ {
if (++CurrentWaypointIndex < Waypoints.Count) return;
CurrentWaypointIndex = 0;
_eventBus.RaiseEvent<IPlayerPassedCheckpointHandler>(x=> x.OnPlayerLapPassed(this));
_eventBus.RaiseEvent<IRacerPassedCheckpointHandler>(x=> x.LapPassed(this));
} }
public bool RaceStarted { get; set; }
public override void StartRacer() public override void StartRacer()
{ {
RaceStarted = true;
} }
public override void StopRacer() public override void StopRacer()
{ {
RaceStarted = false;
} }
} }
} }
+2 -1
View File
@@ -6,7 +6,8 @@ namespace Code.Example.Race.Racer
public abstract class Racer : MonoBehaviour public abstract class Racer : MonoBehaviour
{ {
protected List<Transform> Waypoints; protected List<Transform> Waypoints;
protected int CurrentWaypointIndex;
public int CurrentWaypointIndex { get; protected set; }
public RacerData Data { get; protected set; } public RacerData Data { get; protected set; }
public int Id { get; set; } public int Id { get; set; }
public abstract void SetData(RacerData data); public abstract void SetData(RacerData data);
@@ -57,7 +57,7 @@ namespace Code.Example.Race.Racer
return; return;
} }
UnityEngine.Debug.LogWarning($"Racer loaded {racerType}");
_racerPrefabsHandle.Add(racerType, _racerPrefabsHandle.Add(racerType,
Addressables.LoadAssetAsync<GameObject>(_racerConfigs[racerType].prefabReference)); Addressables.LoadAssetAsync<GameObject>(_racerConfigs[racerType].prefabReference));
@@ -76,8 +76,10 @@ namespace Code.Example.Race.Racer
public void Dispose() public void Dispose()
{ {
UnityEngine.Debug.LogWarning($"Racers released");
foreach (var prefab in _racerPrefabsHandle) foreach (var prefab in _racerPrefabsHandle)
prefab.Value.Release(); prefab.Value.Release();
_racerPrefabsHandle.Clear();
_racerConfigsHandle.Release(); _racerConfigsHandle.Release();
} }
@@ -91,6 +93,5 @@ namespace Code.Example.Race.Racer
public interface IRacerLoadedHandle : IGlobalSubscriber public interface IRacerLoadedHandle : IGlobalSubscriber
{ {
public void RacerLoaded(RacerType type, Racer racer); public void RacerLoaded(RacerType type, Racer racer);
public void RacerCreated(RacerType type, Racer racer);
} }
} }
+21 -1
View File
@@ -1,4 +1,4 @@
using Code.Example.Race.Racer.AI; using Code.Example.Race.Racer;
using Code.Infrastructure.EventBus; using Code.Infrastructure.EventBus;
using Reflex.Attributes; using Reflex.Attributes;
using UnityEngine; using UnityEngine;
@@ -8,17 +8,37 @@ namespace Code.Example.Race.Track
public class CheckPoint : MonoBehaviour public class CheckPoint : MonoBehaviour
{ {
[Inject] private EventBus _eventBus; [Inject] private EventBus _eventBus;
[SerializeField] private GameObject _checkPointMesh;
[SerializeField] private int _id; // Костыль инвалид лестница
private void OnTriggerEnter(Collider other) private void OnTriggerEnter(Collider other)
{ {
var racer = other.GetComponent<Racer.Racer>(); var racer = other.GetComponent<Racer.Racer>();
if (racer.CurrentWaypointIndex != _id) return;
racer.NextWaypoint(); racer.NextWaypoint();
if (racer.Data.type == RacerType.Player)
{
Hide();
_eventBus.RaiseEvent<IPlayerPassedCheckpointHandler>(h => h.OnPlayerPassedCheckpoint(racer));
}
_eventBus.RaiseEvent<IRacerPassedCheckpointHandler>(h => h.OnRacerPassedCheckpoint(racer)); _eventBus.RaiseEvent<IRacerPassedCheckpointHandler>(h => h.OnRacerPassedCheckpoint(racer));
} }
public void Hide() => _checkPointMesh.SetActive(false);
public void Show() => _checkPointMesh.SetActive(true);
} }
public interface IRacerPassedCheckpointHandler : IGlobalSubscriber public interface IRacerPassedCheckpointHandler : IGlobalSubscriber
{ {
void OnRacerPassedCheckpoint(Racer.Racer racer); void OnRacerPassedCheckpoint(Racer.Racer racer);
void LapPassed(Racer.Racer racer);
}
public interface IPlayerPassedCheckpointHandler : IGlobalSubscriber
{
void OnPlayerPassedCheckpoint(Racer.Racer racer);
void OnPlayerLapPassed(Racer.Racer racer);
} }
} }
@@ -13,6 +13,7 @@ namespace Code.Example.Race.Track
public struct TrackData public struct TrackData
{ {
public List<Transform> RacerPoints; public List<Transform> RacerPoints;
public List<Transform> Checkpoints; public List<CheckPoint> Checkpoints;
public int LapCount;
} }
} }
@@ -1,13 +1,10 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using Code.Example.Race.Racer;
using Code.Example.Race.Track;
using Code.Infrastructure.EventBus; using Code.Infrastructure.EventBus;
using Code.Infrastructure.UI; using Code.Infrastructure.UI;
using Reflex.Attributes; using Reflex.Attributes;
using TMPro; using TMPro;
using UnityEngine; using UnityEngine;
using UnityEngine.Rendering;
namespace Code.Example.Race.UI namespace Code.Example.Race.UI
{ {
@@ -25,24 +22,22 @@ namespace Code.Example.Race.UI
public override void Open(Action callback = null) public override void Open(Action callback = null)
{ {
playerScore.gameObject.SetActive(true); playerScore.gameObject.SetActive(true);
callback?.Invoke();
// image.DOColor(shownColor, 1f).onComplete = () => callback?.Invoke(); // image.DOColor(shownColor, 1f).onComplete = () => callback?.Invoke();
} }
public override void Close(Action callback = null) public override void Close(Action callback = null)
{ {
playerScore.gameObject.SetActive(true); playerScore.gameObject.SetActive(false);
callback?.Invoke();
// image.DOColor(hiddenColor, 1f).onComplete += () => callback?.Invoke(); // image.DOColor(hiddenColor, 1f).onComplete += () => callback?.Invoke();
} }
public void OnRacerPassedCheckpoint(Racer.Racer racer) public void ScoreChanged(Racer.Racer racer, ScoreData additionalScore, List<KeyValuePair<Racer.Racer,ScoreData>> scores)
{
}
public void ScoreChanged(Racer.Racer racer, int additionalScore, List<KeyValuePair<Racer.Racer,int>> scores)
{ {
// if (racer.Data.type == RacerType.Player) // if (racer.Data.type == RacerType.Player)
string output = ""; string output = "";
foreach (var score in scores) output += $@"{score.Key.Data.name}: {score.Value}\n"; foreach (var score in scores) output += $@"{score.Key.Data.name}: {score.Value.lapsPassed} \t {score.Value.checkpointsPassed}\n";
playerScore.text = output; playerScore.text = output;
} }
} }
+30
View File
@@ -0,0 +1,30 @@
using System;
using Code.Infrastructure.UI;
using DG.Tweening;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
namespace Code.Example.Race.UI
{
public class WinScreen : UIPanel
{
[SerializeField] private Image image;
[SerializeField] private TMP_Text winText;
[SerializeField] private Color shownColor;
[SerializeField] private Color hiddenColor;
public void SetText(string text) => winText.text = text;
public override void Open(Action callback = null)
{
image.DOColor(shownColor, 1f).onComplete = () => callback?.Invoke();
winText.DOColor(shownColor, 1f).onComplete = () => callback?.Invoke();
}
public override void Close(Action callback = null)
{
image.DOColor(hiddenColor, 1f).onComplete = () => callback?.Invoke();
winText.DOColor(hiddenColor, 1f).onComplete = () => callback?.Invoke();
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 9093110373134c91b06be09705639ddd
timeCreated: 1770455340
@@ -22,6 +22,7 @@ namespace Code.Infrastructure.App
[Inject] public IAudioFactory AudioFactory { get; set; } [Inject] public IAudioFactory AudioFactory { get; set; }
[Inject] public IAudioService AudioService { get; set; } [Inject] public IAudioService AudioService { get; set; }
[Inject] public IInputService InputService { get; set; } [Inject] public IInputService InputService { get; set; }
public AppStateMachine StateMachine { get; set; }
} }
[Generators.StateMachine(typeof(AppStateMachineContext),typeof(AppStates))] [Generators.StateMachine(typeof(AppStateMachineContext),typeof(AppStates))]
@@ -110,6 +110,7 @@ namespace Code.Infrastructure.App
container.Resolve<EventBus.EventBus>().Unsubscribe(this); container.Resolve<EventBus.EventBus>().Unsubscribe(this);
container.Resolve<AppStateMachine>().SwitchState(AppStates.Bootstrap) container.Resolve<AppStateMachine>().SwitchState(AppStates.Bootstrap)
.AllowStateTransition(AppStates.Gameplay); .AllowStateTransition(AppStates.Gameplay);
container.Resolve<AppStateMachineContext>().StateMachine = container.Resolve<AppStateMachine>();
} }
public void SceneConfigsLoaded() public void SceneConfigsLoaded()
@@ -1,4 +1,3 @@
using Code.Debug;
using Code.Example.Race; using Code.Example.Race;
using Code.Example.Race.Racer; using Code.Example.Race.Racer;
using Code.Example.Race.Track; using Code.Example.Race.Track;
@@ -6,21 +5,24 @@ using Code.Infrastructure.SceneLoader;
using Reflex.Core; using Reflex.Core;
using Reflex.Enums; using Reflex.Enums;
using UnityEngine; using UnityEngine;
using UnityEngine.Serialization;
using Resolution = Reflex.Enums.Resolution; using Resolution = Reflex.Enums.Resolution;
namespace Code.Infrastructure.App.SceneInstallers namespace Code.Infrastructure.App.SceneInstallers
{ {
public class GameplaySceneInstaller : MonoBehaviour, IInstaller public class GameplaySceneInstaller : MonoBehaviour, IInstaller
{ {
[SerializeField] private RaceTrackData _raceTrackData; [SerializeField] private RaceTrackData raceTrackData;
public void InstallBindings(ContainerBuilder containerBuilder) public void InstallBindings(ContainerBuilder containerBuilder)
{ {
containerBuilder.RegisterType(typeof(RacerFactory), new[] { typeof(IRacerFactory) }, Lifetime.Scoped, containerBuilder.RegisterType(typeof(RacerFactory), new[] { typeof(IRacerFactory) }, Lifetime.Scoped,
Resolution.Lazy); Resolution.Lazy);
containerBuilder.RegisterType(typeof(RaceScores), Lifetime.Scoped, containerBuilder.RegisterType(typeof(RaceScores), Lifetime.Scoped,
Resolution.Eager);
containerBuilder.RegisterValue(raceTrackData);
containerBuilder.RegisterType(typeof(RaceGame), Lifetime.Scoped,
Resolution.Lazy); Resolution.Lazy);
containerBuilder.RegisterValue(_raceTrackData);
containerBuilder.OnContainerBuilt += PostInstall; containerBuilder.OnContainerBuilt += PostInstall;
} }
@@ -1,4 +1,5 @@
using System.Threading; using System.Threading;
using Code.Debug;
using Code.Infrastructure.Audio; using Code.Infrastructure.Audio;
using Code.Infrastructure.Generators; using Code.Infrastructure.Generators;
using Code.Infrastructure.UI; using Code.Infrastructure.UI;
@@ -1,8 +1,10 @@
using System.Linq;
using Code.Example.Race; using Code.Example.Race;
using Code.Example.Race.Racer; using Code.Example.Race.Racer;
using Code.Example.Race.Racer.AI; using Code.Example.Race.Racer.AI;
using Code.Example.Race.Racer.Player; using Code.Example.Race.Racer.Player;
using Code.Example.Race.Track; using Code.Example.Race.Track;
using Code.Example.Race.UI;
using Code.Infrastructure.Audio; using Code.Infrastructure.Audio;
using Code.Infrastructure.Camera; using Code.Infrastructure.Camera;
using Code.Infrastructure.Camera.CameraStates; using Code.Infrastructure.Camera.CameraStates;
@@ -11,6 +13,7 @@ using Code.Infrastructure.Input;
using Code.Infrastructure.Loadings; using Code.Infrastructure.Loadings;
using Code.Infrastructure.SceneLoader; using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.UI; using Code.Infrastructure.UI;
using Cysharp.Threading.Tasks;
using Reflex.Core; using Reflex.Core;
using Reflex.Injectors; using Reflex.Injectors;
using Unity.Cinemachine; using Unity.Cinemachine;
@@ -22,7 +25,7 @@ namespace Code.Infrastructure.App.States
[StateRaisingEvent] [StateRaisingEvent]
public partial class GameplayState : public partial class GameplayState :
IOnGameplaySceneLoadedHandler, IOnGameplaySceneLoadedHandler,
IRaceGameInitializedHandle, IRaceGameHandle,
IRacerFactoryInitializedHandle, IRacerFactoryInitializedHandle,
IUIPanelLoaded, IUIPanelLoaded,
ICinematicMachineHandle ICinematicMachineHandle
@@ -44,10 +47,12 @@ namespace Code.Infrastructure.App.States
// RaceGame // RaceGame
// Factory // Factory
// PlayerCounter // PlayerCounter
// WinScreen
// CinemachineCamera // CinemachineCamera
_gameplayLoading = new Loading(5, GameplayLoadingCompleted); _gameplayLoading = new Loading(6, GameplayLoadingCompleted);
Context.UIService.TryLoadPanel(UIPanelType.PlayerScoreCounter); Context.UIService.TryLoadPanel(UIPanelType.PlayerScoreCounter);
Context.UIService.TryLoadPanel(UIPanelType.WinScreen);
Context.SceneLoader.LoadSceneAsync(SceneId.Gameplay, LoadSceneMode.Single).Forget(); Context.SceneLoader.LoadSceneAsync(SceneId.Gameplay, LoadSceneMode.Single).Forget();
Context.InputService.EnableMap(ActionMappings.Gameplay); Context.InputService.EnableMap(ActionMappings.Gameplay);
Context.CameraFactory.LoadCinemachineCamera(CameraMode.ThirdPerson).Forget(); Context.CameraFactory.LoadCinemachineCamera(CameraMode.ThirdPerson).Forget();
@@ -75,7 +80,12 @@ namespace Code.Infrastructure.App.States
{ {
Context.InputService.DisableMap(ActionMappings.Gameplay); Context.InputService.DisableMap(ActionMappings.Gameplay);
Context.UIService.TryRemovePanel(UIPanelType.PlayerScoreCounter); Context.UIService.TryRemovePanel(UIPanelType.PlayerScoreCounter);
Context.UIService.TryRemovePanel(UIPanelType.WinScreen);
Context.CameraFactory.ReleaseCinemachineCamera(CameraMode.ThirdPerson); Context.CameraFactory.ReleaseCinemachineCamera(CameraMode.ThirdPerson);
Context.InputService.DisableMap(ActionMappings.Gameplay);
_raceGame = null;
EventBus.Unsubscribe(this); EventBus.Unsubscribe(this);
} }
@@ -105,15 +115,48 @@ namespace Code.Infrastructure.App.States
_gameplayLoading.DoProgress(); _gameplayLoading.DoProgress();
} }
public void RaceGameEnded(RaceScores scores)
{
var winScreen = (WinScreen)Context.UIService.TryGetPanel(UIPanelType.WinScreen);
var id = 0;
var cachedScores = scores.GetScores();
for (var i = 0; i < cachedScores.Count; i++)
if (cachedScores[i].Key.Data.type == RacerType.Player) id = i + 1;
var winText = $@"{id} МЕСТО\n";
winScreen.SetText(winText);
Context.UIService.ClosePanel(UIPanelType.PlayerScoreCounter);
Context.UIService.OpenPanel(UIPanelType.WinScreen);
EndTheGame().Forget();
}
private async UniTaskVoid EndTheGame()
{
await UniTask.WaitForSeconds(3f);
Context.UIService.OpenPanel(UIPanelType.Loading);
Context.StateMachine.SwitchState(AppStates.MainMenu).AllowStateTransition(AppStates.Gameplay);
}
public void RacerFactoryInitialized() public void RacerFactoryInitialized()
{ {
_raceGame = (RaceGame)ConstructorInjector.Construct(typeof(RaceGame), UNTILTHEYFIXCONTAINERS); _raceGame = UNTILTHEYFIXCONTAINERS.Resolve<RaceGame>();
_gameplayLoading.DoProgress(); _gameplayLoading.DoProgress();
} }
public void UILoaded(UIPanelType uiPanelType) public void UILoaded(UIPanelType uiPanelType)
{ {
if(uiPanelType == UIPanelType.WinScreen)
{
_gameplayLoading.DoProgress();
return;
}
if (uiPanelType != UIPanelType.PlayerScoreCounter) return; if (uiPanelType != UIPanelType.PlayerScoreCounter) return;
Context.UIService.OpenPanel(UIPanelType.PlayerScoreCounter); Context.UIService.OpenPanel(UIPanelType.PlayerScoreCounter);
@@ -1,22 +1,74 @@
using Code.Debug;
using Code.Infrastructure.Audio;
using Code.Infrastructure.Generators; using Code.Infrastructure.Generators;
using Code.Infrastructure.Loadings;
using Code.Infrastructure.SceneLoader;
using Code.Infrastructure.UI;
using Code.Infrastructure.UI.Panels;
using Reflex.Core;
using UnityEngine.SceneManagement;
namespace Code.Infrastructure.App.States namespace Code.Infrastructure.App.States
{ {
[State(typeof(AppStates),typeof(AppStateMachineContext))] [State(typeof(AppStates),typeof(AppStateMachineContext))]
[StateRaisingEvent] [StateRaisingEvent]
public partial class MainMenuState public partial class MainMenuState : IUIPanelLoaded, IReadyToPlayHandle, IOnMainMenuSceneLoadedHandler
{ {
private EventBus.EventBus _eventBus;
public MainMenuState(AppStateMachineContext context, EventBus.EventBus eventBus) : base(context,eventBus) public MainMenuState(AppStateMachineContext context, EventBus.EventBus eventBus) : base(context,eventBus)
{ {
_eventBus = eventBus;
} }
public override AppStates myState => AppStates.MainMenu; public override AppStates myState => AppStates.MainMenu;
private Loading _loading;
protected override void OnEnterState() protected override void OnEnterState()
{ {
_eventBus.Subscribe(this);
_loading = new Loading(2, LoadComplete);
Context.UIService.TryLoadPanel(UIPanelType.DebugSceneChooser);
// Context.AudioFactory.LoadAudioClips(AudioNames.UISounds);
Context.SceneLoader.LoadSceneAsync(SceneId.MainMenu, LoadSceneMode.Single).Forget();
Context.AudioService.PlayRepeatedly(AudioNames.UISounds,0);
} }
protected override void OnExitState() protected override void OnExitState()
{ {
// Context.AudioFactory.ReleaseAudios(AudioNames.UISounds);
Context.UIService.TryRemovePanel(UIPanelType.DebugSceneChooser);
_eventBus.Unsubscribe(this);
}
public void UILoaded(UIPanelType uiPanelType)
{
if (uiPanelType != UIPanelType.DebugSceneChooser) return;
Context.UIService.OpenPanel(uiPanelType);
_loading.DoProgress();
}
private void LoadComplete()
{
Context.UIService.OpenPanel(UIPanelType.DebugSceneChooser);
Context.UIService.ClosePanel(UIPanelType.Loading);
}
public void OnReadyToPlay(AudioNames groupName)
{
_loading.DoProgress();
Context.AudioService.PlayRepeatedly(AudioNames.UISounds,0);
}
public void OnMainMenuSceneLoaded()
{
_loading.DoProgress();
}
public void OnMainMenuSceneInitialized(Container container)
{
} }
} }
} }
@@ -54,6 +54,8 @@ namespace Code.Infrastructure.Audio
public async UniTaskVoid LoadAudioClips(AudioNames groupName) public async UniTaskVoid LoadAudioClips(AudioNames groupName)
{ {
UnityEngine.Debug.LogWarning($"Audios loaded {groupName}");
foreach (var audioInfo in _audioInfos[groupName]) foreach (var audioInfo in _audioInfos[groupName])
if (!_clipsHandles[groupName].ContainsKey(audioInfo.Key)) if (!_clipsHandles[groupName].ContainsKey(audioInfo.Key))
_clipsHandles[groupName].Add(audioInfo.Key, Addressables.LoadAssetAsync<AudioClip>(audioInfo.Value)); _clipsHandles[groupName].Add(audioInfo.Key, Addressables.LoadAssetAsync<AudioClip>(audioInfo.Value));
@@ -71,6 +73,7 @@ namespace Code.Infrastructure.Audio
public void ReleaseAudios(AudioNames groupName) public void ReleaseAudios(AudioNames groupName)
{ {
UnityEngine.Debug.LogWarning($"Audios unloaded {groupName}");
_eventBus.RaiseEvent<IAudioClipsEventHandle>(x=> x.AudioClipsUnLoaded(groupName)); _eventBus.RaiseEvent<IAudioClipsEventHandle>(x=> x.AudioClipsUnLoaded(groupName));
foreach (var handle in _clipsHandles) foreach (var handle in _clipsHandles)
@@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using Code.Infrastructure.Configs; using Code.Infrastructure.Configs;
using Code.Infrastructure.EventBus; using Code.Infrastructure.EventBus;
using Code.Infrastructure.Generators; using Code.Infrastructure.Generators;
@@ -37,6 +38,10 @@ namespace Code.Infrastructure.SceneLoader
// TODO типилище // TODO типилище
public async UniTaskVoid LoadSceneAsync(SceneId id, LoadSceneMode loadMode) public async UniTaskVoid LoadSceneAsync(SceneId id, LoadSceneMode loadMode)
{ {
if (loadMode == LoadSceneMode.Single)
for (var i = 0; i < _loadedScenes.Count; i++)
UnloadSceneAsync(_loadedScenes.Keys.ToList()[i]).Forget();
_loadedScenes.Add(id,Addressables.LoadSceneAsync(_sceneInfos[id].SceneAsset, loadMode)); _loadedScenes.Add(id,Addressables.LoadSceneAsync(_sceneInfos[id].SceneAsset, loadMode));
await _loadedScenes[id]; await _loadedScenes[id];
@@ -6,12 +6,12 @@ namespace Code.Infrastructure.UI.Panels
{ {
public override void Open(Action callback = null) public override void Open(Action callback = null)
{ {
callback?.Invoke();
} }
public override void Close(Action callback = null) public override void Close(Action callback = null)
{ {
callback?.Invoke();
} }
} }
} }
@@ -1,18 +1,22 @@
using System; using System;
using Code.Debug;
using Code.Infrastructure.Audio; using Code.Infrastructure.Audio;
using Reflex.Attributes; using Reflex.Attributes;
using UnityEngine;
namespace Code.Infrastructure.UI.Panels namespace Code.Infrastructure.UI.Panels
{ {
public class MenuChoosePanel : UIPanel public class MenuChoosePanel : UIPanel
{ {
[Inject] IAudioService _audioService; [Inject] IAudioService _audioService;
[SerializeField] private SceneChooser sceneChooser;
public void PlaySelectSound() => _audioService.PlayOneShot(AudioNames.UISounds, 7); public void PlaySelectSound() => _audioService.PlayOneShot(AudioNames.UISounds, 7);
public void PlayDeselectSound() => _audioService.PlayOneShot(AudioNames.UISounds, 8); public void PlayDeselectSound() => _audioService.PlayOneShot(AudioNames.UISounds, 8);
public void PlayClickSound() => _audioService.PlayOneShot(AudioNames.UISounds, 1); public void PlayClickSound() => _audioService.PlayOneShot(AudioNames.UISounds, 1);
public override void Open(Action callback = null) public override void Open(Action callback = null)
{ {
sceneChooser.EnableButtons();
callback?.Invoke();
} }
public override void Close(Action callback = null) public override void Close(Action callback = null)
+4 -1
View File
@@ -43,13 +43,16 @@ namespace Code.Infrastructure.UI
public async UniTaskVoid LoadPanel(UIPanelType panelType) public async UniTaskVoid LoadPanel(UIPanelType panelType)
{ {
var panel = (await Addressables.InstantiateAsync(_configs[panelType].Prefab, _canvas.transform).ToUniTask()).GetComponent<UIPanel>(); var panel = (await Addressables.InstantiateAsync(_configs[panelType].Prefab, _canvas.transform).ToUniTask())
.GetComponent<UIPanel>();
UnityEngine.Debug.LogWarning($"Panel loaded {panelType}");
_eventBus.RaiseEvent<IUIPanelLoadedHandle>(ui => ui.UIPanelLoaded(panel, panelType)); _eventBus.RaiseEvent<IUIPanelLoadedHandle>(ui => ui.UIPanelLoaded(panel, panelType));
} }
public void ReleasePanel(UIPanel panel) public void ReleasePanel(UIPanel panel)
{ {
UnityEngine.Debug.LogWarning($"Panel released {panel.gameObject.name}");
Addressables.ReleaseInstance(panel.gameObject); Addressables.ReleaseInstance(panel.gameObject);
} }
@@ -6,6 +6,7 @@ namespace Code.Infrastructure.UI
Loading, Loading,
DebugSceneChooser, DebugSceneChooser,
PlayerScoreCounter, PlayerScoreCounter,
WinScreen,
DebugMenu DebugMenu
} }
} }
@@ -15,6 +15,7 @@ namespace Code.Infrastructure.UI
void TryLoadPanel(UIPanelType uiPanelType); void TryLoadPanel(UIPanelType uiPanelType);
void TryRemovePanel(UIPanelType uiPanelType); void TryRemovePanel(UIPanelType uiPanelType);
void SetCanvasCamera(UnityEngine.Camera camera); void SetCanvasCamera(UnityEngine.Camera camera);
UIPanel TryGetPanel(UIPanelType panelType);
} }
public class UIService : IUIPanelLoadedHandle, IUIService public class UIService : IUIPanelLoadedHandle, IUIService
@@ -34,6 +35,7 @@ namespace Code.Infrastructure.UI
public void SetCanvasCamera(UnityEngine.Camera camera) public void SetCanvasCamera(UnityEngine.Camera camera)
{ {
_factory.Canvas.worldCamera = camera; _factory.Canvas.worldCamera = camera;
_factory.Canvas.planeDistance = 0.3f;
} }
public void OpenPanel(UIPanelType uiPanelType) public void OpenPanel(UIPanelType uiPanelType)
@@ -75,6 +77,8 @@ namespace Code.Infrastructure.UI
_factory.ReleasePanel(_loadedPanels[panelType]); _factory.ReleasePanel(_loadedPanels[panelType]);
_loadedPanels.Remove(panelType); _loadedPanels.Remove(panelType);
} }
public UIPanel TryGetPanel(UIPanelType panelType) => _loadedPanels.GetValueOrDefault(panelType);
} }
public interface IUIPanelLoaded : IGlobalSubscriber public interface IUIPanelLoaded : IGlobalSubscriber
+2 -1
View File
@@ -17,7 +17,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!4 &4817184085434687091 --- !u!4 &4817184085434687091
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -137,6 +137,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3} m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
_checkPointMesh: {fileID: 4572327094981614325}
--- !u!65 &6226029900384859586 --- !u!65 &6226029900384859586
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -14,12 +14,12 @@ MonoBehaviour:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.RacerSettingsConfig m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.RacerSettingsConfig
racerData: racerData:
name: Trump name: Trump
speed: 10 speed: 500
angularSpeed: 30 angularSpeed: 30
maxAcceleration: 10 maxAcceleration: 200
brakeAcceleration: 0 brakeAcceleration: 140
turnSensitivity: 0 turnSensitivity: 3
maxSteerAngle: 0 maxSteerAngle: 30
type: 1 type: 1
prefabReference: prefabReference:
m_AssetGUID: eb48bfdd161d536498ed1b2810fa476e m_AssetGUID: eb48bfdd161d536498ed1b2810fa476e
@@ -14,12 +14,12 @@ MonoBehaviour:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.RacerSettingsConfig m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.RacerSettingsConfig
racerData: racerData:
name: Obama name: Obama
speed: 10 speed: 500
angularSpeed: 30 angularSpeed: 30
maxAcceleration: 10 maxAcceleration: 200
brakeAcceleration: 0 brakeAcceleration: 140
turnSensitivity: 0 turnSensitivity: 3
maxSteerAngle: 0 maxSteerAngle: 30
type: 2 type: 2
prefabReference: prefabReference:
m_AssetGUID: eb48bfdd161d536498ed1b2810fa476e m_AssetGUID: eb48bfdd161d536498ed1b2810fa476e
@@ -156,7 +156,7 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_text: New Text m_text:
m_isRightToLeft: 0 m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2} m_fontAsset: {fileID: 11400000, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2}
m_sharedMaterial: {fileID: -7713220333506954542, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2} m_sharedMaterial: {fileID: -7713220333506954542, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2}
@@ -183,7 +183,7 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 72 m_fontSize: 36
m_fontSizeBase: 36 m_fontSizeBase: 36
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 1 m_enableAutoSizing: 1
@@ -116,7 +116,7 @@ GameObject:
- component: {fileID: -5481457697853763424} - component: {fileID: -5481457697853763424}
- component: {fileID: 1147852963366359813} - component: {fileID: 1147852963366359813}
- component: {fileID: 886327510218819001} - component: {fileID: 886327510218819001}
- component: {fileID: 383144760231914814} - component: {fileID: 7109764327185416190}
m_Layer: 6 m_Layer: 6
m_Name: PlayerRacist m_Name: PlayerRacist
m_TagString: Untagged m_TagString: Untagged
@@ -227,7 +227,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: Reflex::Reflex.Components.GameObjectSelfInjector m_EditorClassIdentifier: Reflex::Reflex.Components.GameObjectSelfInjector
_injectionStrategy: 1 _injectionStrategy: 1
--- !u!114 &383144760231914814 --- !u!114 &7109764327185416190
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -236,9 +236,9 @@ MonoBehaviour:
m_GameObject: {fileID: 3528115384153938697} m_GameObject: {fileID: 3528115384153938697}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f093c913ff54cb99cd22d7e473931e7, type: 3} m_Script: {fileID: 11500000, guid: bad2326aa0f24acb9bdfeb5fb7d3d208, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.Player.PlayerCarControllerRB m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.Player.PlayerRBCarController
control: 0 control: 0
_centerOfMass: {x: 0, y: 0, z: 0} _centerOfMass: {x: 0, y: 0, z: 0}
wheels: wheels:
@@ -262,8 +262,8 @@ MonoBehaviour:
wheelEffectObj: {fileID: 0} wheelEffectObj: {fileID: 0}
smokeParticle: {fileID: 0} smokeParticle: {fileID: 0}
axel: 0 axel: 0
_playerCarInput: {fileID: 1147852963366359813} racer: {fileID: -5481457697853763424}
_playerRacer: {fileID: -5481457697853763424} playerCarInput: {fileID: 1147852963366359813}
--- !u!1 &5960122785618902783 --- !u!1 &5960122785618902783
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -13,6 +13,8 @@ GameObject:
- component: {fileID: 7627056611163543305} - component: {fileID: 7627056611163543305}
- component: {fileID: 796078038095492537} - component: {fileID: 796078038095492537}
- component: {fileID: 692554292036781854} - component: {fileID: 692554292036781854}
- component: {fileID: 8589120347827831812}
- component: {fileID: 6252352675360523403}
m_Layer: 6 m_Layer: 6
m_Name: Racist (1) m_Name: Racist (1)
m_TagString: Untagged m_TagString: Untagged
@@ -65,7 +67,7 @@ Rigidbody:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3528115384153938697} m_GameObject: {fileID: 3528115384153938697}
serializedVersion: 5 serializedVersion: 5
m_Mass: 1 m_Mass: 350
m_LinearDamping: 0 m_LinearDamping: 0
m_AngularDamping: 0.05 m_AngularDamping: 0.05
m_CenterOfMass: {x: 0, y: 0, z: 0} m_CenterOfMass: {x: 0, y: 0, z: 0}
@@ -97,6 +99,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.AI.AIRacerID m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.AI.AIRacerID
carRigidbody: {fileID: 7627056611163543305} carRigidbody: {fileID: 7627056611163543305}
carController: {fileID: 6252352675360523403}
agent: {fileID: 692554292036781854} agent: {fileID: 692554292036781854}
--- !u!114 &692554292036781854 --- !u!114 &692554292036781854
MonoBehaviour: MonoBehaviour:
@@ -111,6 +114,339 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.AI.ID.Behaviours.Seek m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.AI.ID.Behaviours.Seek
agent: {fileID: 796078038095492537} agent: {fileID: 796078038095492537}
--- !u!114 &8589120347827831812
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3528115384153938697}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 20620ae30fdd0164c9bb5bdc717d3ada, type: 3}
m_Name:
m_EditorClassIdentifier: Reflex::Reflex.Components.GameObjectSelfInjector
_injectionStrategy: 0
--- !u!114 &6252352675360523403
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3528115384153938697}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c82b0db1441e417098bccb9ca1575e3e, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Racer.AI.AICarDriver
control: 0
_centerOfMass: {x: 0, y: 0, z: 0}
wheels:
- wheelModel: {fileID: 8729368969798383542}
wheelCollider: {fileID: 8144105419635907097}
wheelEffectObj: {fileID: 0}
smokeParticle: {fileID: 0}
axel: 1
- wheelModel: {fileID: 6461107816748161595}
wheelCollider: {fileID: 4317266266112686591}
wheelEffectObj: {fileID: 0}
smokeParticle: {fileID: 0}
axel: 1
- wheelModel: {fileID: 9202085340256119052}
wheelCollider: {fileID: 5535055008346113829}
wheelEffectObj: {fileID: 0}
smokeParticle: {fileID: 0}
axel: 0
- wheelModel: {fileID: 2733935489236088708}
wheelCollider: {fileID: 3143558317158178472}
wheelEffectObj: {fileID: 0}
smokeParticle: {fileID: 0}
axel: 0
racer: {fileID: 796078038095492537}
--- !u!1 &3534446593392569689
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1859096124284157801}
- component: {fileID: 4317266266112686591}
m_Layer: 8
m_Name: BackWheel_Right005 (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1859096124284157801
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3534446593392569689}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.36718336, y: 0.0000011014357, z: -0.00000079154967}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4892026548519810934}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!146 &4317266266112686591
WheelCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3534446593392569689}
serializedVersion: 2
m_Center: {x: 0, y: 0.15, z: 0}
m_Radius: 0.15
m_SuspensionSpring:
spring: 8000
damper: 2000
targetPosition: 0.5
m_SuspensionDistance: 0.3
m_ForceAppPointDistance: 0
m_Mass: 20
m_WheelDampingRate: 0.25
m_ForwardFriction:
m_ExtremumSlip: 0.4
m_ExtremumValue: 1
m_AsymptoteSlip: 0.8
m_AsymptoteValue: 0.5
m_Stiffness: 2
m_SidewaysFriction:
m_ExtremumSlip: 0.2
m_ExtremumValue: 1
m_AsymptoteSlip: 0.5
m_AsymptoteValue: 0.75
m_Stiffness: 2.4
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_Enabled: 1
m_ProvidesContacts: 0
--- !u!1 &6837791161086186575
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1654622839212079072}
- component: {fileID: 5535055008346113829}
m_Layer: 8
m_Name: FrontWheel_Left005 (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1654622839212079072
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6837791161086186575}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0.34773955, y: -0.0046218513, z: -0.00000081062313}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7249181645305685595}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!146 &5535055008346113829
WheelCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6837791161086186575}
serializedVersion: 2
m_Center: {x: 0, y: 0.15, z: 0}
m_Radius: 0.15
m_SuspensionSpring:
spring: 8000
damper: 2000
targetPosition: 0.5
m_SuspensionDistance: 0.3
m_ForceAppPointDistance: 0
m_Mass: 20
m_WheelDampingRate: 0.25
m_ForwardFriction:
m_ExtremumSlip: 0.4
m_ExtremumValue: 1
m_AsymptoteSlip: 0.8
m_AsymptoteValue: 0.5
m_Stiffness: 2
m_SidewaysFriction:
m_ExtremumSlip: 0.2
m_ExtremumValue: 1
m_AsymptoteSlip: 0.5
m_AsymptoteValue: 0.75
m_Stiffness: 2.4
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_Enabled: 1
m_ProvidesContacts: 0
--- !u!1 &7564518162290785756
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 9028911589292050224}
- component: {fileID: 3143558317158178472}
m_Layer: 8
m_Name: FrontWheel_Right005 (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &9028911589292050224
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7564518162290785756}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.3477394, y: -0.0046219775, z: -0.0000006961822}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7249181645305685595}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!146 &3143558317158178472
WheelCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7564518162290785756}
serializedVersion: 2
m_Center: {x: 0, y: 0.15, z: 0}
m_Radius: 0.15
m_SuspensionSpring:
spring: 8000
damper: 2000
targetPosition: 0.5
m_SuspensionDistance: 0.3
m_ForceAppPointDistance: 0
m_Mass: 20
m_WheelDampingRate: 0.25
m_ForwardFriction:
m_ExtremumSlip: 0.4
m_ExtremumValue: 1
m_AsymptoteSlip: 0.8
m_AsymptoteValue: 0.5
m_Stiffness: 2
m_SidewaysFriction:
m_ExtremumSlip: 0.2
m_ExtremumValue: 1
m_AsymptoteSlip: 0.5
m_AsymptoteValue: 0.75
m_Stiffness: 2.4
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_Enabled: 1
m_ProvidesContacts: 0
--- !u!1 &8186270376470507915
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1012521995377256696}
- component: {fileID: 8144105419635907097}
m_Layer: 8
m_Name: BackWheel_Left005 (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1012521995377256696
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8186270376470507915}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0.36539614, y: 0.0000011335843, z: -0.00000082015987}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4892026548519810934}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!146 &8144105419635907097
WheelCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8186270376470507915}
serializedVersion: 2
m_Center: {x: 0, y: 0.15, z: 0}
m_Radius: 0.15
m_SuspensionSpring:
spring: 8000
damper: 2000
targetPosition: 0.5
m_SuspensionDistance: 0.3
m_ForceAppPointDistance: 0
m_Mass: 20
m_WheelDampingRate: 0.25
m_ForwardFriction:
m_ExtremumSlip: 0.4
m_ExtremumValue: 1
m_AsymptoteSlip: 0.8
m_AsymptoteValue: 0.5
m_Stiffness: 2
m_SidewaysFriction:
m_ExtremumSlip: 0.2
m_ExtremumValue: 1
m_AsymptoteSlip: 0.5
m_AsymptoteValue: 0.75
m_Stiffness: 2.4
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_Enabled: 1
m_ProvidesContacts: 0
--- !u!1001 &4469638725498766166 --- !u!1001 &4469638725498766166
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -119,6 +455,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 6368280859047356381} m_TransformParent: {fileID: 6368280859047356381}
m_Modifications: m_Modifications:
- target: {fileID: 2015285426263110866, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 2103167732552773957, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - target: {fileID: 2103167732552773957, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_LocalPosition.x propertyPath: m_LocalPosition.x
value: 0 value: 0
@@ -159,6 +499,34 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z propertyPath: m_LocalEulerAnglesHint.z
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2614096107231477366, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 3749310403817058378, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 3842982459836588051, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 4734135750271216218, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 5126128193346565344, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 5183655819780912052, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 5382579525804666616, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 6529406856892589325, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - target: {fileID: 6529406856892589325, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_LocalRotation.w propertyPath: m_LocalRotation.w
value: 1 value: 1
@@ -175,10 +543,22 @@ PrefabInstance:
propertyPath: m_LocalRotation.z propertyPath: m_LocalRotation.z
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7398408851264157007, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7470680060075776365, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7987905102581930454, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - target: {fileID: 7987905102581930454, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Sport_Car005 value: Sport_Car005
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 8728832935583085787, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_Layer
value: 6
objectReference: {fileID: 0}
- target: {fileID: 9071552052385199136, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - target: {fileID: 9071552052385199136, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
propertyPath: m_LocalRotation.w propertyPath: m_LocalRotation.w
value: 1 value: 1
@@ -199,11 +579,53 @@ PrefabInstance:
m_RemovedGameObjects: m_RemovedGameObjects:
- {fileID: 3512739049443441074, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - {fileID: 3512739049443441074, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
- {fileID: 1134105389713569786, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} - {fileID: 1134105389713569786, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_AddedGameObjects: [] m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 9071552052385199136, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
insertIndex: 1
addedObject: {fileID: 1012521995377256696}
- targetCorrespondingSourceObject: {fileID: 9071552052385199136, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
insertIndex: -1
addedObject: {fileID: 1859096124284157801}
- targetCorrespondingSourceObject: {fileID: 6529406856892589325, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
insertIndex: 1
addedObject: {fileID: 1654622839212079072}
- targetCorrespondingSourceObject: {fileID: 6529406856892589325, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
insertIndex: -1
addedObject: {fileID: 9028911589292050224}
m_AddedComponents: [] m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
--- !u!1 &2733935489236088708 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 2015285426263110866, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
--- !u!4 &3125071174840196746 stripped --- !u!4 &3125071174840196746 stripped
Transform: Transform:
m_CorrespondingSourceObject: {fileID: 1538299300449525212, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3} m_CorrespondingSourceObject: {fileID: 1538299300449525212, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166} m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!4 &4892026548519810934 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 9071552052385199136, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
--- !u!1 &6461107816748161595 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 7470680060075776365, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7249181645305685595 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6529406856892589325, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
--- !u!1 &8729368969798383542 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 5126128193346565344, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
--- !u!1 &9202085340256119052 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 4734135750271216218, guid: 71ee37e32afb7c40eb75c1f51280dc4a, type: 3}
m_PrefabInstance: {fileID: 4469638725498766166}
m_PrefabAsset: {fileID: 0}
@@ -0,0 +1,21 @@
%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: 17bdede85b436f44e992b27d170ccbc2, type: 3}
m_Name: WinScreen
m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.UI.UIPanelSettingsConfig
Prefab:
m_AssetGUID: f60baf3e133aa2644a106742a1f2c2fb
m_SubObjectName:
m_SubObjectType:
m_SubObjectGUID:
m_EditorAssetChanged: 0
UIPanelType: 4
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 55ccf07d7c51c2a409a42ddcda3b3b30
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,278 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &563384388023074020
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 9032436628175569584}
- component: {fileID: 7900215458417369046}
- component: {fileID: 47264940032724432}
m_Layer: 5
m_Name: WinText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &9032436628175569584
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 563384388023074020}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2931552674433344788}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7900215458417369046
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 563384388023074020}
m_CullTransparentMesh: 1
--- !u!114 &47264940032724432
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 563384388023074020}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: "1 \u0415 \u041C\u0415\u0421\u0422\u041E"
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2}
m_sharedMaterial: {fileID: -7713220333506954542, guid: 3b400196bf40a5c4c8407ff5319add23, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 0}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 290.6
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 18
m_fontSizeMax: 290.6
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &892732023062486793
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2931552674433344788}
- component: {fileID: 538597035855631831}
- component: {fileID: 866246875489756800}
m_Layer: 5
m_Name: WinScreen
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &2931552674433344788
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 892732023062486793}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 827214502232565314}
- {fileID: 9032436628175569584}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &538597035855631831
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 892732023062486793}
m_CullTransparentMesh: 1
--- !u!114 &866246875489756800
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 892732023062486793}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9093110373134c91b06be09705639ddd, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.UI.WinScreen
injectMeSenpai: 0
image: {fileID: 269570106904002326}
winText: {fileID: 47264940032724432}
shownColor: {r: 1, g: 1, b: 1, a: 1}
hiddenColor: {r: 0, g: 0, b: 0, a: 0}
--- !u!1 &2514727900455105673
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 827214502232565314}
- component: {fileID: 7797421599568918290}
- component: {fileID: 269570106904002326}
m_Layer: 5
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &827214502232565314
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2514727900455105673}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2931552674433344788}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7797421599568918290
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2514727900455105673}
m_CullTransparentMesh: 1
--- !u!114 &269570106904002326
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2514727900455105673}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 0}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 2700799b22d90524fa4fa0c4b495bd1a, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f60baf3e133aa2644a106742a1f2c2fb
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -12,6 +12,7 @@ GameObject:
- component: {fileID: 6369431658006781889} - component: {fileID: 6369431658006781889}
- component: {fileID: 2120321735823841993} - component: {fileID: 2120321735823841993}
- component: {fileID: 8571851773565314211} - component: {fileID: 8571851773565314211}
- component: {fileID: 3871130505246621971}
m_Layer: 5 m_Layer: 5
m_Name: SceneSelectPanel m_Name: SceneSelectPanel
m_TagString: Untagged m_TagString: Untagged
@@ -90,6 +91,24 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.UI.Panels.MenuChoosePanel m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.UI.Panels.MenuChoosePanel
injectMeSenpai: 1 injectMeSenpai: 1
sceneChooser: {fileID: 3871130505246621971}
--- !u!114 &3871130505246621971
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1089915617264916434}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 72527bc5589647428bb4575953d13a90, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Debug.SceneChooser
buttons:
- {fileID: 579737973101554674}
- {fileID: 4313233544417918176}
- {fileID: 146892696824304159}
- {fileID: 3792126852517912904}
--- !u!1 &1093110403426315484 --- !u!1 &1093110403426315484
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -176,14 +195,14 @@ MonoBehaviour:
m_PressedTrigger: Pressed m_PressedTrigger: Pressed
m_SelectedTrigger: Selected m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled m_DisabledTrigger: Disabled
m_Interactable: 1 m_Interactable: 0
m_TargetGraphic: {fileID: 317023486902591517} m_TargetGraphic: {fileID: 317023486902591517}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 6730931041094507995} - m_Target: {fileID: 3871130505246621971}
m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp
m_MethodName: ChooseScene m_MethodName: ChooseState
m_Mode: 3 m_Mode: 3
m_Arguments: m_Arguments:
m_ObjectArgument: {fileID: 0} m_ObjectArgument: {fileID: 0}
@@ -476,19 +495,19 @@ MonoBehaviour:
m_PressedTrigger: Pressed m_PressedTrigger: Pressed
m_SelectedTrigger: Selected m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled m_DisabledTrigger: Disabled
m_Interactable: 1 m_Interactable: 0
m_TargetGraphic: {fileID: 2445287286689493625} m_TargetGraphic: {fileID: 2445287286689493625}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 6730931041094507995} - m_Target: {fileID: 3871130505246621971}
m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp
m_MethodName: ChooseScene m_MethodName: ChooseScene
m_Mode: 3 m_Mode: 3
m_Arguments: m_Arguments:
m_ObjectArgument: {fileID: 0} m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 1 m_IntArgument: 2
m_FloatArgument: 0 m_FloatArgument: 0
m_StringArgument: m_StringArgument:
m_BoolArgument: 0 m_BoolArgument: 0
@@ -776,19 +795,19 @@ MonoBehaviour:
m_PressedTrigger: Pressed m_PressedTrigger: Pressed
m_SelectedTrigger: Selected m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled m_DisabledTrigger: Disabled
m_Interactable: 1 m_Interactable: 0
m_TargetGraphic: {fileID: 78065544486671681} m_TargetGraphic: {fileID: 78065544486671681}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 6730931041094507995} - m_Target: {fileID: 3871130505246621971}
m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp
m_MethodName: ChooseScene m_MethodName: ChooseScene
m_Mode: 3 m_Mode: 3
m_Arguments: m_Arguments:
m_ObjectArgument: {fileID: 0} m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 1 m_IntArgument: 2
m_FloatArgument: 0 m_FloatArgument: 0
m_StringArgument: m_StringArgument:
m_BoolArgument: 0 m_BoolArgument: 0
@@ -1076,12 +1095,12 @@ MonoBehaviour:
m_PressedTrigger: Pressed m_PressedTrigger: Pressed
m_SelectedTrigger: Selected m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled m_DisabledTrigger: Disabled
m_Interactable: 1 m_Interactable: 0
m_TargetGraphic: {fileID: 3133211216726431792} m_TargetGraphic: {fileID: 3133211216726431792}
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 6730931041094507995} - m_Target: {fileID: 3871130505246621971}
m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp m_TargetAssemblyTypeName: Code.Debug.SceneChooser, Assembly-CSharp
m_MethodName: SwitchGameplay m_MethodName: SwitchGameplay
m_Mode: 1 m_Mode: 1
@@ -1300,7 +1319,6 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 6442759330551908623} - component: {fileID: 6442759330551908623}
- component: {fileID: 1671088375478468850} - component: {fileID: 1671088375478468850}
- component: {fileID: 6730931041094507995}
m_Layer: 5 m_Layer: 5
m_Name: MenuButtons m_Name: MenuButtons
m_TagString: Untagged m_TagString: Untagged
@@ -1357,15 +1375,3 @@ MonoBehaviour:
m_ChildScaleWidth: 0 m_ChildScaleWidth: 0
m_ChildScaleHeight: 0 m_ChildScaleHeight: 0
m_ReverseArrangement: 0 m_ReverseArrangement: 0
--- !u!114 &6730931041094507995
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9217048466911719828}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 72527bc5589647428bb4575953d13a90, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Debug.SceneChooser
+151 -11
View File
@@ -166,7 +166,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!114 &381252219 --- !u!114 &381252219
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -222,6 +222,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point value: Point
@@ -284,6 +288,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (4) value: Point (4)
@@ -346,6 +354,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (6) value: Point (6)
@@ -408,6 +420,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (2) value: Point (2)
@@ -470,6 +486,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point value: Point
@@ -570,7 +590,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ab7d8da1f0cc44bf99ae978a6b75847a, type: 3} m_Script: {fileID: 11500000, guid: ab7d8da1f0cc44bf99ae978a6b75847a, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.App.SceneInstallers.GameplaySceneInstaller m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.App.SceneInstallers.GameplaySceneInstaller
_raceTrackData: {fileID: 871625797} raceTrackData: {fileID: 871625797}
--- !u!114 &871625796 --- !u!114 &871625796
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -603,15 +623,16 @@ MonoBehaviour:
- {fileID: 1177789147} - {fileID: 1177789147}
- {fileID: 1149209890} - {fileID: 1149209890}
Checkpoints: Checkpoints:
- {fileID: 1168320429} - {fileID: 1168320432}
- {fileID: 406815500} - {fileID: 1034643780}
- {fileID: 731218571} - {fileID: 2093333783}
- {fileID: 1127875945} - {fileID: 1521948147}
- {fileID: 645459053} - {fileID: 1857069074}
- {fileID: 1634664828} - {fileID: 1634664831}
- {fileID: 504733024} - {fileID: 1700113420}
- {fileID: 1605849618} - {fileID: 1605849621}
- {fileID: 614234524} - {fileID: 1087551124}
LapCount: 2
--- !u!1 &872709759 --- !u!1 &872709759
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -724,6 +745,28 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1034643780 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 406815499}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!114 &1087551124 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 614234523}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1 &1104339841 --- !u!1 &1104339841
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -763,6 +806,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (1) value: Point (1)
@@ -853,6 +900,17 @@ Transform:
m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 3906051588974435051} m_PrefabInstance: {fileID: 3906051588974435051}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1168320432 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 3906051588974435051}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1 &1177789146 --- !u!1 &1177789146
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -990,6 +1048,17 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1521948147 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 1127875944}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1001 &1605849617 --- !u!1001 &1605849617
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -998,6 +1067,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (5) value: Point (5)
@@ -1052,6 +1125,17 @@ Transform:
m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 1605849617} m_PrefabInstance: {fileID: 1605849617}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1605849621 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 1605849617}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1001 &1634664827 --- !u!1001 &1634664827
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1060,6 +1144,10 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: _id
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point (3) value: Point (3)
@@ -1114,6 +1202,28 @@ Transform:
m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} m_CorrespondingSourceObject: {fileID: 7887213709667102931, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 1634664827} m_PrefabInstance: {fileID: 1634664827}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1634664831 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 1634664827}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!114 &1700113420 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 504733023}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1 &1738566291 --- !u!1 &1738566291
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1149,6 +1259,17 @@ Transform:
- {fileID: 1149209890} - {fileID: 1149209890}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1857069074 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 645459052}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1 &1941914402 --- !u!1 &1941914402
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1189,6 +1310,17 @@ Transform:
- {fileID: 614234524} - {fileID: 614234524}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &2093333783 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 6491294046861885947, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
m_PrefabInstance: {fileID: 731218570}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4e29d6d9b0342db9cd6bce229fa358d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Example.Race.Track.CheckPoint
--- !u!1001 &3906051588974435051 --- !u!1001 &3906051588974435051
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1197,6 +1329,14 @@ PrefabInstance:
serializedVersion: 3 serializedVersion: 3
m_TransformParent: {fileID: 1941914403} m_TransformParent: {fileID: 1941914403}
m_Modifications: m_Modifications:
- target: {fileID: 1343588019342555726, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4572327094981614325, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3} - target: {fileID: 7201866217592151198, guid: 3f027c18d91ea1fa993a70ae54e6fa82, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Point value: Point
+13 -13
View File
@@ -128,8 +128,8 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 60958143} - component: {fileID: 60958143}
- component: {fileID: 60958142}
- component: {fileID: 60958144} - component: {fileID: 60958144}
- component: {fileID: 60958145}
m_Layer: 0 m_Layer: 0
m_Name: SceneScope m_Name: SceneScope
m_TagString: Untagged m_TagString: Untagged
@@ -137,18 +137,6 @@ GameObject:
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!114 &60958142
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 60958141}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3fd1482e4a9dee141aecc5bcd0a4f0f3, type: 3}
m_Name:
m_EditorClassIdentifier: Reflex::Reflex.Core.SceneScope
--- !u!4 &60958143 --- !u!4 &60958143
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -176,6 +164,18 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 067978788f51445ca3af5381eafec386, type: 3} m_Script: {fileID: 11500000, guid: 067978788f51445ca3af5381eafec386, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.App.SceneInstallers.MainMenuSceneInstaller m_EditorClassIdentifier: Assembly-CSharp::Code.Infrastructure.App.SceneInstallers.MainMenuSceneInstaller
--- !u!114 &60958145
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 60958141}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5312032623c34414a54ea00e35a7eb8e, type: 3}
m_Name:
m_EditorClassIdentifier: Reflex::Reflex.Core.ContainerScope
--- !u!1660057539 &9223372036854775807 --- !u!1660057539 &9223372036854775807
SceneRoots: SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0