Загрузчик не юзлес + больше интерфейса

This commit is contained in:
ThomasCharester committed 2025-11-23 15:06:35 +03:00
1 parent f3a83eb909
commit cd384239ff
28 files changed
+379 -1758

No files matched your search

@@ -1,8 +1,14 @@
using Code.App.Loading; using Code.App.StateMachine;
using Code.App.StateMachine; using Code.Gameplay.Player;
using Code.Input;
using Code.StateMachine; using Code.StateMachine;
using Code.UI; using Code.UI;
using Cysharp.Threading.Tasks; using Cysharp.Threading.Tasks;
using Reflex.Core;
using Reflex.Extensions;
using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.SceneManagement;
namespace Code.App.AppStates namespace Code.App.AppStates
{ {
@@ -11,24 +17,35 @@ namespace Code.App.AppStates
public GameOverState(AppStateMachineContext context) : base(context) public GameOverState(AppStateMachineContext context) : base(context)
{ {
} }
private IPlayerScore _playerScore;
private float damnTimer = 3f; // TODO Удалить при первой возможности
private GameOverPanel _gameOverPanel;
public override void EnterState() public override void EnterState()
{ {
Container sceneContainer = SceneManager.GetActiveScene().GetSceneContainer();
_playerScore = sceneContainer.Resolve<IPlayerScore>();
_scoreCounter = 0;
Context.InputService.EnableMap(ActionMappings.UI);
Context.InputService.DebugBindAction((int)ActionMappings.UI,(int)UIActions.Continue, TryToExit);
GameOver(); GameOver();
base.EnterState(); base.EnterState();
} }
private void TryToExit(InputAction.CallbackContext context)
{
ToMainMenu();
}
private async UniTaskVoid GameOver() private async UniTaskVoid GameOver()
{ {
await UniTask.WhenAll( await Context.UIService.AsyncSwitchPanelTo(UIPanel.GameOver);
Context.UIService.AsyncSwitchPanelTo(UIPanel.GameOver),
UniTask.WaitForSeconds(damnTimer) _gameOverPanel = (GameOverPanel)Context.UIService.CurrentPanel;
);
ToMainMenu();
} }
private void ToMainMenu() private void ToMainMenu()
@@ -36,16 +53,24 @@ namespace Code.App.AppStates
Context.StateMachine.SwitchState(AppState.MainMenu) Context.StateMachine.SwitchState(AppState.MainMenu)
.AllowStateTransition(AppState.Gameplay); .AllowStateTransition(AppState.Gameplay);
} }
private float _scoreCounter;
// public override void Tick() public override void Tick()
// {
// damnTimer -= Time.deltaTime;
// if (damnTimer <= float.Epsilon) ToMainMenu();
// }
public override void ExitState()
{ {
damnTimer = 5f; if (!_gameOverPanel) return;
_scoreCounter += Time.deltaTime * 100;
// UnityEngine.Debug.Log($"Score: {_scoreCounter}");
if((int)_scoreCounter >= _playerScore.Score)
{
_gameOverPanel.UpdateScoreText(_playerScore.Score);
}
else _gameOverPanel.UpdateScoreText((int)_scoreCounter);
}
public override void ExitState()
{
Context.InputService.DisableMap(ActionMappings.UI);
Context.InputService.DebugUnbindAction((int)ActionMappings.UI,(int)UIActions.Continue, TryToExit);
base.ExitState(); base.ExitState();
} }
} }
@@ -1,5 +1,6 @@
using System.Globalization; using System.Globalization;
using System.Reflection.Emit; using System.Reflection.Emit;
using System.Threading.Tasks;
using Code.App.Loading; using Code.App.Loading;
using Code.App.StateMachine; using Code.App.StateMachine;
using Code.Audio; using Code.Audio;
@@ -29,9 +30,8 @@ namespace Code.App.AppStates
{ {
private PlayerHealth _playerHealth; private PlayerHealth _playerHealth;
private PlayerMoney _playerMoney; private IPlayerScore _playerScore;
private IScoreService _scoreService;
private IOrderService _orderService; private IOrderService _orderService;
private CharacterProvider _playerCharacter; private CharacterProvider _playerCharacter;
@@ -44,12 +44,10 @@ namespace Code.App.AppStates
{ {
Context.LoadingManager Context.LoadingManager
.RegisterLoading(LoadingWork.LoadScene) .RegisterLoading(LoadingWork.LoadScene)
.RegisterLoading(LoadingWork.WaitForSceneInstaller)
.RegisterLoading(LoadingWork.LoadUI) .RegisterLoading(LoadingWork.LoadUI)
.RegisterLoading(LoadingWork.LoadModelResource) // .RegisterLoading(LoadingWork.LoadModelResource)
.RegisterLoading(LoadingWork.LoadAudio); .RegisterLoading(LoadingWork.LoadAudio);
_playerMoney = Context.PlayerFactory.CreatePlayerMoney();
_playerHealth = Context.PlayerFactory.CreatePlayerHealth(); _playerHealth = Context.PlayerFactory.CreatePlayerHealth();
_playerHealth.OnDamage += PlayerDamageTaken; _playerHealth.OnDamage += PlayerDamageTaken;
@@ -59,35 +57,59 @@ namespace Code.App.AppStates
Context.InputService.EnableMap(ActionMappings.Gameplay); Context.InputService.EnableMap(ActionMappings.Gameplay);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, GiveOrderDEBUG); Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, InstaKillDEBUG);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, RecieveOrderDEBUG);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, DeliverOrderDEBUG);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG); Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube); Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube);
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, TakeDamageDEBUG);
Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.Gameplay);
Context.LoadingManager.OnLoadingEnded += AfterSceneLoaded;
#pragma warning disable CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed #pragma warning disable CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed
WaitForSceneToLoad(); WaitForLoad();
#pragma warning restore CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed #pragma warning restore CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed
} }
private async UniTask WaitForPlayerCharacterLoad() => _playerCharacter = await Context.PlayerFactory.CreatePlayer(); private async UniTask WaitForPlayerCharacterLoad() => _playerCharacter = await Context.PlayerFactory.CreatePlayer();
private async UniTaskVoid WaitForSceneToLoad() private async UniTaskVoid WaitForLoad()
{ {
await Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.Gameplay);
await UniTask.WhenAll( await UniTask.WhenAll(
Context.UIService.AsyncSwitchPanelTo(UIPanel.Gameplay), Context.UIService.AsyncSwitchPanelTo(UIPanel.Gameplay),
// TODO
Context.AudioFactory.WarmGameplayMusic(), Context.AudioFactory.WarmGameplayMusic(),
Context.AudioFactory.WarmSFX(), Context.AudioFactory.WarmSFX(),
Context.AudioFactory.WarmDispatcher(), Context.AudioFactory.WarmDispatcher()
// TODO
WaitForPlayerArmsToInitialize(),
WaitForPlayerCharacterLoad()
); );
Container sceneContainer = SceneManager.GetActiveScene().GetSceneContainer(); Context.LoadingManager
.UnregisterLoading(LoadingWork.LoadUI)
.UnregisterLoading(LoadingWork.LoadAudio);
InputServiceInitialize();
MusicInitialize();
}
private async void AfterSceneLoaded()
{
Context.LoadingManager
.RegisterLoading(LoadingWork.LoadModelResource);
Context.LoadingManager.OnLoadingEnded -= AfterSceneLoaded;
Context.LoadingManager.OnLoadingEnded += AfterPlayerLoaded;
await UniTask.WhenAll(
WaitForPlayerArmsToInitialize(),
WaitForPlayerCharacterLoad()
);
Context.LoadingManager
.UnregisterLoading(LoadingWork.LoadModelResource);
}
private void AfterPlayerLoaded()
{
Container sceneContainer = SceneManager.GetActiveScene().GetSceneContainer();
_playerScore = sceneContainer.Resolve<IPlayerScore>();
GameplaySceneEnvironment sceneEnvironment = SceneEnvironmentVariables(sceneContainer); GameplaySceneEnvironment sceneEnvironment = SceneEnvironmentVariables(sceneContainer);
@@ -95,22 +117,13 @@ namespace Code.App.AppStates
CameraInitialize(); CameraInitialize();
InputServiceInitialize();
GameplayServicesInitialize(sceneContainer); GameplayServicesInitialize(sceneContainer);
MusicInitialize();
UIInitialize(); UIInitialize();
_tickEnabled = true; Context.LoadingManager.OnLoadingEnded -= AfterPlayerLoaded;
Context.LoadingManager _tickEnabled = true;
.UnregisterLoading(LoadingWork.LoadScene)
.UnregisterLoading(LoadingWork.LoadUI)
.UnregisterLoading(LoadingWork.LoadModelResource)
.UnregisterLoading(LoadingWork.LoadAudio);
// Context.UIService.LoadingScreen.Hide();
} }
private async UniTask WaitForPlayerArmsToInitialize() => _armsMesh = await Context.PlayerFactory.CreateArms(Context.CameraStateMachine.Camera.transform); private async UniTask WaitForPlayerArmsToInitialize() => _armsMesh = await Context.PlayerFactory.CreateArms(Context.CameraStateMachine.Camera.transform);
@@ -133,7 +146,7 @@ namespace Code.App.AppStates
_gameplayPanel.HideTimer(); _gameplayPanel.HideTimer();
if(time < 0f) Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.Late1,(int)DispatcherSounds.Late2)); if(time < 0f) Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.Late1,(int)DispatcherSounds.Late2));
_playerMoney.GiveMoney(score); _playerScore.UpdateScore(score);
Context.AudioService.TransitToSnapshot(AudioSnapshotState.Peaceful); Context.AudioService.TransitToSnapshot(AudioSnapshotState.Peaceful);
} }
@@ -143,21 +156,9 @@ namespace Code.App.AppStates
Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.TakeDamage1,(int)DispatcherSounds.TakeDamage4)); Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.TakeDamage1,(int)DispatcherSounds.TakeDamage4));
} }
// DEBUG // DEBUG
private void GiveOrderDEBUG(InputAction.CallbackContext context) private void InstaKillDEBUG(InputAction.CallbackContext context)
{ {
_orderService.OrderGive(); _playerHealth.InstaKill();
}
private void TakeDamageDEBUG(InputAction.CallbackContext context)
{
_playerHealth.GetDamage(1);
}
private void RecieveOrderDEBUG(InputAction.CallbackContext context)
{
_orderService.OrderRecieved();
}
private void DeliverOrderDEBUG(InputAction.CallbackContext context)
{
_orderService.OrderDelivered();
} }
private void RoomPassedDEBUG(InputAction.CallbackContext context) private void RoomPassedDEBUG(InputAction.CallbackContext context)
{ {
@@ -187,7 +188,7 @@ namespace Code.App.AppStates
public override void ExitState() public override void ExitState()
{ {
_playerHealth = null; _playerHealth = null;
_playerMoney = null; _playerScore = null;
_tickEnabled = false; _tickEnabled = false;
@@ -205,12 +206,9 @@ namespace Code.App.AppStates
Context.AudioService.GladlyAskToStopMusic(MusicType.Peaceful, callback: Context.AudioFactory.ReleasePeacefulMusic); Context.AudioService.GladlyAskToStopMusic(MusicType.Peaceful, callback: Context.AudioFactory.ReleasePeacefulMusic);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, GiveOrderDEBUG); Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, InstaKillDEBUG);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, RecieveOrderDEBUG);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, DeliverOrderDEBUG);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG); Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube); Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube);
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, TakeDamageDEBUG);
base.ExitState(); base.ExitState();
} }
@@ -231,7 +229,7 @@ namespace Code.App.AppStates
private void UIInitialize() private void UIInitialize()
{ {
_gameplayPanel = (GameplayPanel)Context.UIService.CurrentPanel; _gameplayPanel = (GameplayPanel)Context.UIService.CurrentPanel;
_gameplayPanel.Initialize(_playerMoney, _playerHealth, _orderService); _gameplayPanel.Initialize(_playerScore, _playerHealth, _orderService);
Context.AudioService.OnDispatcherStarted += _gameplayPanel.SummonDispatcher; Context.AudioService.OnDispatcherStarted += _gameplayPanel.SummonDispatcher;
Context.AudioService.OnDispatcherEnded += _gameplayPanel.CloseDispatcher; Context.AudioService.OnDispatcherEnded += _gameplayPanel.CloseDispatcher;
} }
@@ -247,8 +245,7 @@ namespace Code.App.AppStates
_playerCharacter.PlayerAnimator.SetAnimator(_armsMesh.ArmsAnimator); _playerCharacter.PlayerAnimator.SetAnimator(_armsMesh.ArmsAnimator);
} }
private void GameplayServicesInitialize(Container sceneContainer) private void GameplayServicesInitialize(Container sceneContainer)
{ {
_scoreService = sceneContainer.Resolve<IScoreService>();
_orderService = sceneContainer.Resolve<IOrderService>(); _orderService = sceneContainer.Resolve<IOrderService>();
_orderService.OnOrderGiven += OrderGiven; _orderService.OnOrderGiven += OrderGiven;
@@ -27,43 +27,46 @@ namespace Code.App.AppStates
{ {
Context.LoadingManager Context.LoadingManager
.RegisterLoading(LoadingWork.LoadScene) .RegisterLoading(LoadingWork.LoadScene)
.RegisterLoading(LoadingWork.WaitForSceneInstaller)
.RegisterLoading(LoadingWork.LoadUI) .RegisterLoading(LoadingWork.LoadUI)
.RegisterLoading(LoadingWork.LoadAudio); .RegisterLoading(LoadingWork.LoadAudio);
// Context.UIService.LoadingScreen.Show(); // Context.UIService.LoadingScreen.Show();
Context.CameraStateMachine.SwitchState(CameraMode.MainMenu); Context.CameraStateMachine.SwitchState(CameraMode.MainMenu);
Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.MainMenu);
Context.LoadingManager.OnLoadingEnded += AfterSceneLoaded;
#pragma warning disable CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed #pragma warning disable CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed
WaitForSceneToLoad(); WaitForLoad();
#pragma warning restore CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed #pragma warning restore CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed
} }
private async UniTaskVoid WaitForSceneToLoad() private async UniTaskVoid WaitForLoad()
{ {
await UniTask.WhenAll( await UniTask.WhenAll(
Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.MainMenu),
Context.UIService.AsyncSwitchPanelTo(UIPanel.MainMenu), Context.UIService.AsyncSwitchPanelTo(UIPanel.MainMenu),
Context.AudioFactory.WarmMenuMusic() Context.AudioFactory.WarmMenuMusic()
); );
Context.LoadingManager Context.LoadingManager
.UnregisterLoading(LoadingWork.LoadScene)
.UnregisterLoading(LoadingWork.LoadUI) .UnregisterLoading(LoadingWork.LoadUI)
.UnregisterLoading(LoadingWork.LoadAudio); .UnregisterLoading(LoadingWork.LoadAudio);
InitializeAudio(); InitializeAudio();
InitializeInput();
}
private void AfterSceneLoaded()
{
var mainMenuEnvironment = (MainMenuEnvironment)SceneManager.GetActiveScene() var mainMenuEnvironment = (MainMenuEnvironment)SceneManager.GetActiveScene()
.GetSceneContainer().Resolve<CurrentSceneEnvironment>(); .GetSceneContainer().Resolve<CurrentSceneEnvironment>();
InitializeUI(mainMenuEnvironment); InitializeUI(mainMenuEnvironment);
InitializeCamera(mainMenuEnvironment); InitializeCamera(mainMenuEnvironment);
InitializeInput();
// Context.UIService.LoadingScreen.Hide(); Context.LoadingManager.OnLoadingEnded -= AfterSceneLoaded;
} }
private void InitializeCamera(MainMenuEnvironment mainMenuEnvironment) private void InitializeCamera(MainMenuEnvironment mainMenuEnvironment)
@@ -1,4 +1,5 @@
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using Cysharp.Threading.Tasks;
namespace Code.App.Loading namespace Code.App.Loading
{ {
@@ -10,6 +11,6 @@ namespace Code.App.Loading
event OnLoadingDelegate OnLoadingEnded; event OnLoadingDelegate OnLoadingEnded;
ReadOnlyCollection<LoadingWork> LoadingThings { get; } ReadOnlyCollection<LoadingWork> LoadingThings { get; }
LoadingManager RegisterLoading(LoadingWork loadingThingName); LoadingManager RegisterLoading(LoadingWork loadingThingName);
LoadingManager UnregisterLoading(LoadingWork loadingThingName); LoadingManager UnregisterLoading(LoadingWork loadingThingName);
} }
} }
@@ -1,5 +1,6 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using Cysharp.Threading.Tasks;
namespace Code.App.Loading namespace Code.App.Loading
{ {
@@ -27,7 +28,7 @@ namespace Code.App.Loading
return this; return this;
} }
} }
// public static class LoadingManagerExtensions // public static class LoadingManagerExtensions
@@ -7,7 +7,6 @@ namespace Code.App.Loading
LoadAudio, LoadAudio,
LoadScene, LoadScene,
LoadModelResource, LoadModelResource,
WaitForSceneInstaller,
WaitingForTime WaitingForTime
} }
} }
@@ -1,9 +1,11 @@
using Code.App.Loading; using Code.App.Loading;
using Code.Gameplay.Orders.Order; using Code.Gameplay.Orders.Order;
using Code.Gameplay.Player;
using Code.Scenes; using Code.Scenes;
using Code.Scenes.SceneEnvironments; using Code.Scenes.SceneEnvironments;
using Reflex.Core; using Reflex.Core;
using UnityEngine; using UnityEngine;
using IPlayerScore = Code.Gameplay.Player.IPlayerScore;
namespace Code.App.SceneInstallers namespace Code.App.SceneInstallers
{ {
@@ -14,7 +16,7 @@ namespace Code.App.SceneInstallers
public void InstallBindings(ContainerBuilder containerBuilder) public void InstallBindings(ContainerBuilder containerBuilder)
{ {
containerBuilder.AddScoped(typeof(GameplaySceneEnvironment), typeof(CurrentSceneEnvironment)); containerBuilder.AddScoped(typeof(GameplaySceneEnvironment), typeof(CurrentSceneEnvironment));
containerBuilder.AddScoped(typeof(ScoreService), typeof(IScoreService)); containerBuilder.AddScoped(typeof(PlayerScore), typeof(IPlayerScore));
containerBuilder.AddScoped(typeof(OrderService), typeof(IOrderService)); containerBuilder.AddScoped(typeof(OrderService), typeof(IOrderService));
containerBuilder.OnContainerBuilt += Initialize; containerBuilder.OnContainerBuilt += Initialize;
@@ -28,7 +30,8 @@ namespace Code.App.SceneInstallers
env.TransitVariables(_gameplaySceneEnvironment); env.TransitVariables(_gameplaySceneEnvironment);
loadingManager.UnregisterLoading(LoadingWork.WaitForSceneInstaller); loadingManager
.UnregisterLoading(LoadingWork.LoadScene);
} }
} }
} }
@@ -25,7 +25,8 @@ namespace Code.App.SceneInstallers
ILoadingManager loadingManager = container.Resolve<ILoadingManager>(); ILoadingManager loadingManager = container.Resolve<ILoadingManager>();
loadingManager.UnregisterLoading(LoadingWork.WaitForSceneInstaller); loadingManager
.UnregisterLoading(LoadingWork.LoadScene);
} }
} }
} }
@@ -1,9 +0,0 @@
namespace Code.Gameplay.Orders.Order
{
public interface IScoreService
{
int Score { get; }
void IncreaseScore(int amount);
void DecreaseScore(int amount);
}
}
@@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: 64668c9ef4c441af84c635365cfbb2de
timeCreated: 1763559523
@@ -1,11 +0,0 @@
namespace Code.Gameplay.Orders.Order
{
public class ScoreService : IScoreService
{
private int _score;
public int Score => _score;
public void IncreaseScore(int amount) => _score += amount;
public void DecreaseScore(int amount) => _score -= amount;
}
}
@@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: 619f2425460843aaa1f0f21e302158ce
timeCreated: 1763559528
@@ -7,8 +7,7 @@ namespace Code.Gameplay.Player
{ {
public interface IPlayerFactory public interface IPlayerFactory
{ {
PlayerHealth CreatePlayerHealth(int count = -1); PlayerHealth CreatePlayerHealth(int count = -1);
PlayerMoney CreatePlayerMoney(int count = 0);
UniTask<CharacterProvider> CreatePlayer(); UniTask<CharacterProvider> CreatePlayer();
void ReleasePlayer(CharacterProvider characterProvider); void ReleasePlayer(CharacterProvider characterProvider);
UniTask<ArmsMeshProvider> CreateArms(Transform papochka); UniTask<ArmsMeshProvider> CreateArms(Transform papochka);
@@ -0,0 +1,10 @@
namespace Code.Gameplay.Player
{
public interface IPlayerScore
{
event PlayerScore.OnScoreGetDelegate OnScoreGet;
event PlayerScore.OnScoreLooseDelegate OnScoreLoose;
int Score { get; }
void UpdateScore(int amount);
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 5084b2568ebd4cddaef2154e5ad1f870
timeCreated: 1763890486
@@ -20,8 +20,7 @@ namespace Code.Gameplay.Player
if (count < 0) count = _playerConfig.maxHealth; if (count < 0) count = _playerConfig.maxHealth;
return new(count); return new(count);
} }
public PlayerMoney CreatePlayerMoney(int count = 0) => new(count);
public async UniTask<CharacterProvider> CreatePlayer() public async UniTask<CharacterProvider> CreatePlayer()
{ {
@@ -1,26 +0,0 @@
namespace Code.Gameplay.Player
{
public class PlayerMoney
{
public delegate void OnMoneyGetDelegate(int count, int money);
public event OnMoneyGetDelegate OnMoneyGet;
public delegate void OnMoneyLooseDelegate(int count, int money);
public event OnMoneyLooseDelegate OnMoneyLoose;
private int _money;
public int Money => _money;
public void GiveMoney(int amount)
{
_money += amount;
OnMoneyGet?.Invoke(amount, _money);
}
public void LooseMoney(int amount)
{
_money -= amount;
OnMoneyLoose?.Invoke(amount, _money);
}
public PlayerMoney(int money) => _money = money;
}
}
@@ -0,0 +1,24 @@
namespace Code.Gameplay.Player
{
public class PlayerScore : IPlayerScore
{
public delegate void OnScoreGetDelegate(int count, int score);
public event OnScoreGetDelegate OnScoreGet;
public delegate void OnScoreLooseDelegate(int count, int score);
public event OnScoreLooseDelegate OnScoreLoose;
private int _score;
public int Score => _score;
public void UpdateScore(int amount)
{
_score += amount;
if (amount > 0) OnScoreGet?.Invoke(amount, _score);
else OnScoreLoose?.Invoke(amount, _score);
}
}
}
@@ -2,6 +2,6 @@ namespace Code.Input
{ {
public enum UIActions public enum UIActions
{ {
Continue
} }
} }
@@ -1,3 +1,4 @@
using TMPro;
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
@@ -5,16 +6,24 @@ namespace Code.UI
{ {
public class GameOverPanel : UIElement public class GameOverPanel : UIElement
{ {
[SerializeField] private TMP_Text scoreText;
[SerializeField] private TMP_Text gameOverText;
[SerializeField] private Image _background; [SerializeField] private Image _background;
public void UpdateScoreText(int score) => scoreText.text = score.ToString();
public override void Hide() public override void Hide()
{ {
_background.enabled = false; _background.enabled = false;
scoreText.enabled = false;
gameOverText.enabled = false;
base.Hide(); base.Hide();
} }
public override void Show() public override void Show()
{ {
_background.enabled = true; _background.enabled = true;
scoreText.enabled = true;
gameOverText.enabled = true;
base.Show(); base.Show();
} }
} }
@@ -26,7 +26,7 @@ namespace Code.UI.Panels
[Header("MoneyBar")] [Header("MoneyBar")]
[SerializeField] private TMP_Text moneyText; [SerializeField] private TMP_Text moneyText;
private void MoneyUpdate(int count, int money) private void ScoreUpdate(int count, int money)
{ {
// TODO Анимация получения\потери // TODO Анимация получения\потери
moneyText.text = money.ToString(); moneyText.text = money.ToString();
@@ -39,11 +39,11 @@ namespace Code.UI.Panels
} }
private IOrderService _orderService; private IOrderService _orderService;
public void Initialize(PlayerMoney money, PlayerHealth health, IOrderService orderService) public void Initialize(IPlayerScore score, PlayerHealth health, IOrderService orderService)
{ {
money.OnMoneyGet += MoneyUpdate; score.OnScoreGet += ScoreUpdate;
money.OnMoneyLoose += MoneyUpdate; score.OnScoreLoose += ScoreUpdate;
MoneyUpdate(0,money.Money); ScoreUpdate(0,score.Score);
health.OnDamage += HealthUpdate; health.OnDamage += HealthUpdate;
HealthUpdate(0,health); HealthUpdate(0,health);
@@ -0,0 +1,30 @@
using TMPro;
using UnityEngine;
using UnityEngine.UI;
namespace Code.UI
{
public class SettingsPanel : UIElement
{
[SerializeField] private TMP_Text scoreText;
[SerializeField] private TMP_Text gameOverText;
[SerializeField] private Image _background;
public void UpdateScoreText(int score) => scoreText.text = score.ToString();
public override void Hide()
{
_background.enabled = false;
scoreText.enabled = false;
gameOverText.enabled = false;
base.Hide();
}
public override void Show()
{
_background.enabled = true;
scoreText.enabled = true;
gameOverText.enabled = true;
base.Show();
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 31187576397b467a92a2f6a0fb383c9b
timeCreated: 1763899490
@@ -12,9 +12,9 @@ Texture2D:
Hash: 00000000000000000000000000000000 Hash: 00000000000000000000000000000000
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 4 serializedVersion: 4
m_Width: 1024 m_Width: 1
m_Height: 1024 m_Height: 1
m_CompleteImageSize: 1048576 m_CompleteImageSize: 1
m_MipsStripped: 0 m_MipsStripped: 0
m_TextureFormat: 1 m_TextureFormat: 1
m_MipCount: 1 m_MipCount: 1
@@ -39,8 +39,8 @@ Texture2D:
m_LightmapFormat: 0 m_LightmapFormat: 0
m_ColorSpace: 1 m_ColorSpace: 1
m_PlatformBlob: m_PlatformBlob:
image data: 1048576 image data: 1
_typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406070a0d0e0e0d0c0906050300000000000000000000000000000000010406070a0d0e0e0d0c0906050300000000000000000000000000000000010406070a0d0e0e0d0c090806030000000000000000000000000000000000020507080a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08070502000000000000000000000000000000000000000000000000000000000000000000010406070809090a0a09090807060401000000000000000000000000000000000000000000000000000000000000000105090b0c13131313131313131313131312110e0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707090a0a09080706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090b0c13131313131313131313131312110e09040000000000000000000000000205070813131313131313131313131310100d0a0500000000000000000000000000000000000000000000000000000000000005090d0f1013131313131313131313130f0e0c08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306070809090a0a090908060503000000000000000000000000000000000000000000000000000000000000000000000004090c0e0f11111111111111111111110c0c0a060200000000000000000000000000000000000000000000000003080b0d0e11111111111111111111110d0d0b07020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d10131417191a1b1a191613120f0b0600000000000000000000000001070d11131417191a1b1a191613120f0b0600000000000000000000000001080d11131417191a1b1a191615130f0a040000000000000000000000000002090e1214151616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161514120e0902000000000000000000000000000000000000000000000000000002050708070d11131415151616171616151413110d070906050300000000000000000000000000000000000000000000000000060c111518182020202020202020202020201f1d1a150f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004060709080d11131416161616151413100c07060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c111518182020202020202020202020201f1d1a150f0800000000000000000002090e1114142020202020202020202020201d1c1a16110a030000000000000000000000000000Line truncated _typelessdata: 00
m_StreamData: m_StreamData:
serializedVersion: 2 serializedVersion: 2
offset: 0 offset: 0
@@ -106,445 +106,8 @@ MonoBehaviour:
m_SourceFontFilePath: m_SourceFontFilePath:
m_AtlasPopulationMode: 1 m_AtlasPopulationMode: 1
InternalDynamicOS: 0 InternalDynamicOS: 0
m_GlyphTable: m_GlyphTable: []
- m_Index: 659 m_CharacterTable: []
m_Metrics:
m_Width: 74.265625
m_Height: 14.015625
m_HorizontalBearingX: 8.265625
m_HorizontalBearingY: 13.40625
m_HorizontalAdvance: 90.875
m_GlyphRect:
m_X: 10
m_Y: 10
m_Width: 75
m_Height: 15
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 64
m_Metrics:
m_Width: 45.875
m_Height: 4.484375
m_HorizontalBearingX: -0.4375
m_HorizontalBearingY: -6.765625
m_HorizontalAdvance: 45
m_GlyphRect:
m_X: 104
m_Y: 10
m_Width: 47
m_Height: 6
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 472
m_Metrics:
m_Width: 48.125
m_Height: 63.375
m_HorizontalBearingX: 1.453125
m_HorizontalBearingY: 62.09375
m_HorizontalAdvance: 53.484375
m_GlyphRect:
m_X: 170
m_Y: 10
m_Width: 49
m_Height: 65
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 465
m_Metrics:
m_Width: 56.421875
m_Height: 60.828125
m_HorizontalBearingX: 1.1875
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 58.75
m_GlyphRect:
m_X: 10
m_Y: 44
m_Width: 57
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 468
m_Metrics:
m_Width: 39.421875
m_Height: 60.828125
m_HorizontalBearingX: 5.578125
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 46.796875
m_GlyphRect:
m_X: 104
m_Y: 35
m_Width: 40
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 481
m_Metrics:
m_Width: 44.421875
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 54.453125
m_GlyphRect:
m_X: 238
m_Y: 10
m_Width: 46
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 484
m_Metrics:
m_Width: 53.1875
m_Height: 62.109375
m_HorizontalBearingX: 1.53125
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 55.453125
m_GlyphRect:
m_X: 303
m_Y: 10
m_Width: 54
m_Height: 63
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 475
m_Metrics:
m_Width: 46.3125
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 56.515625
m_GlyphRect:
m_X: 376
m_Y: 10
m_Width: 47
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 483
m_Metrics:
m_Width: 49.84375
m_Height: 60.828125
m_HorizontalBearingX: 1.53125
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 52.90625
m_GlyphRect:
m_X: 442
m_Y: 10
m_Width: 51
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 479
m_Metrics:
m_Width: 52.375
m_Height: 63.375
m_HorizontalBearingX: 3.78125
m_HorizontalBearingY: 62.09375
m_HorizontalAdvance: 59.9375
m_GlyphRect:
m_X: 512
m_Y: 10
m_Width: 54
m_Height: 65
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 490
m_Metrics:
m_Width: 76.03125
m_Height: 71.640625
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 83.796875
m_GlyphRect:
m_X: 376
m_Y: 90
m_Width: 77
m_Height: 72
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 470
m_Metrics:
m_Width: 39.5
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 50.5
m_GlyphRect:
m_X: 238
m_Y: 90
m_Width: 41
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 478
m_Metrics:
m_Width: 48.78125
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 61.921875
m_GlyphRect:
m_X: 163
m_Y: 94
m_Width: 50
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 1
m_Metrics:
m_Width: 0
m_Height: 0
m_HorizontalBearingX: 0
m_HorizontalBearingY: 0
m_HorizontalAdvance: 21.625
m_GlyphRect:
m_X: 0
m_Y: 0
m_Width: 0
m_Height: 0
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 15
m_Metrics:
m_Width: 14.328125
m_Height: 14.015625
m_HorizontalBearingX: 5.671875
m_HorizontalBearingY: 13.40625
m_HorizontalAdvance: 25.671875
m_GlyphRect:
m_X: 472
m_Y: 90
m_Width: 15
m_Height: 15
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 482
m_Metrics:
m_Width: 51.859375
m_Height: 63.375
m_HorizontalBearingX: 4.21875
m_HorizontalBearingY: 62.09375
m_HorizontalAdvance: 58.578125
m_GlyphRect:
m_X: 86
m_Y: 115
m_Width: 53
m_Height: 65
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 474
m_Metrics:
m_Width: 48.5625
m_Height: 79.109375
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 79.109375
m_HorizontalAdvance: 61.75
m_GlyphRect:
m_X: 10
m_Y: 124
m_Width: 50
m_Height: 80
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 473
m_Metrics:
m_Width: 48.5625
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 61.75
m_GlyphRect:
m_X: 298
m_Y: 92
m_Width: 50
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 467
m_Metrics:
m_Width: 46.578125
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 57.046875
m_GlyphRect:
m_X: 232
m_Y: 172
m_Width: 48
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 492
m_Metrics:
m_Width: 66.484375
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 79.625
m_GlyphRect:
m_X: 79
m_Y: 199
m_Width: 68
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 486
m_Metrics:
m_Width: 53.953125
m_Height: 60.828125
m_HorizontalBearingX: 1.28125
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 56.515625
m_GlyphRect:
m_X: 299
m_Y: 172
m_Width: 55
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 469
m_Metrics:
m_Width: 57.484375
m_Height: 71.640625
m_HorizontalBearingX: 1.1875
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 59.859375
m_GlyphRect:
m_X: 585
m_Y: 10
m_Width: 58
m_Height: 72
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 493
m_Metrics:
m_Width: 45.4375
m_Height: 60.828125
m_HorizontalBearingX: 6.59375
m_HorizontalBearingY: 60.828125
m_HorizontalAdvance: 55.453125
m_GlyphRect:
m_X: 166
m_Y: 174
m_Width: 47
m_Height: 61
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
m_CharacterTable:
- m_ElementType: 1
m_Unicode: 8230
m_GlyphIndex: 659
m_Scale: 1
- m_ElementType: 1
m_Unicode: 95
m_GlyphIndex: 64
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1047
m_GlyphIndex: 472
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1040
m_GlyphIndex: 465
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1043
m_GlyphIndex: 468
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1056
m_GlyphIndex: 481
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1059
m_GlyphIndex: 484
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1050
m_GlyphIndex: 475
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1058
m_GlyphIndex: 483
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1054
m_GlyphIndex: 479
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1065
m_GlyphIndex: 490
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1045
m_GlyphIndex: 470
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1053
m_GlyphIndex: 478
m_Scale: 1
- m_ElementType: 1
m_Unicode: 32
m_GlyphIndex: 1
m_Scale: 1
- m_ElementType: 1
m_Unicode: 46
m_GlyphIndex: 15
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1057
m_GlyphIndex: 482
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1049
m_GlyphIndex: 474
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1048
m_GlyphIndex: 473
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1042
m_GlyphIndex: 467
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1067
m_GlyphIndex: 492
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1061
m_GlyphIndex: 486
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1044
m_GlyphIndex: 469
m_Scale: 1
- m_ElementType: 1
m_Unicode: 1068
m_GlyphIndex: 493
m_Scale: 1
m_AtlasTextures: m_AtlasTextures:
- {fileID: -680064802141868518} - {fileID: -680064802141868518}
m_AtlasTextureIndex: 0 m_AtlasTextureIndex: 0
@@ -555,176 +118,12 @@ MonoBehaviour:
m_AtlasHeight: 1024 m_AtlasHeight: 1024
m_AtlasPadding: 9 m_AtlasPadding: 9
m_AtlasRenderMode: 4165 m_AtlasRenderMode: 4165
m_UsedGlyphRects: m_UsedGlyphRects: []
- m_X: 0
m_Y: 0
m_Width: 94
m_Height: 34
- m_X: 94
m_Y: 0
m_Width: 66
m_Height: 25
- m_X: 160
m_Y: 0
m_Width: 68
m_Height: 84
- m_X: 0
m_Y: 34
m_Width: 76
m_Height: 80
- m_X: 94
m_Y: 25
m_Width: 59
m_Height: 80
- m_X: 228
m_Y: 0
m_Width: 65
m_Height: 80
- m_X: 293
m_Y: 0
m_Width: 73
m_Height: 82
- m_X: 366
m_Y: 0
m_Width: 66
m_Height: 80
- m_X: 432
m_Y: 0
m_Width: 70
m_Height: 80
- m_X: 502
m_Y: 0
m_Width: 73
m_Height: 84
- m_X: 366
m_Y: 80
m_Width: 96
m_Height: 91
- m_X: 228
m_Y: 80
m_Width: 60
m_Height: 80
- m_X: 153
m_Y: 84
m_Width: 69
m_Height: 80
- m_X: 462
m_Y: 80
m_Width: 34
m_Height: 34
- m_X: 76
m_Y: 105
m_Width: 72
m_Height: 84
- m_X: 0
m_Y: 114
m_Width: 69
m_Height: 99
- m_X: 288
m_Y: 82
m_Width: 69
m_Height: 80
- m_X: 222
m_Y: 162
m_Width: 67
m_Height: 80
- m_X: 69
m_Y: 189
m_Width: 87
m_Height: 80
- m_X: 289
m_Y: 162
m_Width: 74
m_Height: 80
- m_X: 575
m_Y: 0
m_Width: 77
m_Height: 91
- m_X: 156
m_Y: 164
m_Width: 66
m_Height: 80
m_FreeGlyphRects: m_FreeGlyphRects:
- m_X: 153
m_Y: 25
m_Width: 7
m_Height: 59
- m_X: 462
m_Y: 114
m_Width: 561
m_Height: 909
- m_X: 496
m_Y: 80
m_Width: 6
m_Height: 943
- m_X: 76
m_Y: 34
m_Width: 18
m_Height: 71
- m_X: 288
m_Y: 80
m_Width: 5
m_Height: 2
- m_X: 222
m_Y: 84
m_Width: 6
m_Height: 78
- m_X: 222
m_Y: 160
m_Width: 66
m_Height: 2
- m_X: 148
m_Y: 105
m_Width: 5
m_Height: 84
- m_X: 69
m_Y: 114
m_Width: 7
m_Height: 75
- m_X: 0 - m_X: 0
m_Y: 269
m_Width: 1023
m_Height: 754
- m_X: 0
m_Y: 213
m_Width: 69
m_Height: 810
- m_X: 357
m_Y: 82
m_Width: 9
m_Height: 80
- m_X: 363
m_Y: 82
m_Width: 3
m_Height: 941
- m_X: 363
m_Y: 171
m_Width: 660
m_Height: 852
- m_X: 652
m_Y: 0 m_Y: 0
m_Width: 371 m_Width: 1023
m_Height: 1023 m_Height: 1023
- m_X: 496
m_Y: 91
m_Width: 527
m_Height: 932
- m_X: 496
m_Y: 84
m_Width: 79
m_Height: 939
- m_X: 148
m_Y: 164
m_Width: 8
m_Height: 25
- m_X: 156
m_Y: 244
m_Width: 867
m_Height: 779
- m_X: 222
m_Y: 242
m_Width: 801
m_Height: 781
m_FontFeatureTable: m_FontFeatureTable:
m_MultipleSubstitutionRecords: [] m_MultipleSubstitutionRecords: []
m_LigatureSubstitutionRecords: [] m_LigatureSubstitutionRecords: []
@@ -60,388 +60,8 @@ MonoBehaviour:
m_SourceFontFilePath: m_SourceFontFilePath:
m_AtlasPopulationMode: 1 m_AtlasPopulationMode: 1
InternalDynamicOS: 0 InternalDynamicOS: 0
m_GlyphTable: m_GlyphTable: []
- m_Index: 185 m_CharacterTable: []
m_Metrics:
m_Width: 43.953125
m_Height: 8.796875
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 13.1875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 10
m_Y: 10
m_Width: 45
m_Height: 10
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 66
m_Metrics:
m_Width: 52.734375
m_Height: 8.796875
m_HorizontalBearingX: 0
m_HorizontalBearingY: 8.796875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 74
m_Y: 10
m_Width: 53
m_Height: 9
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 22
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 146
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 26
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 74
m_Y: 38
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 24
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 10
m_Y: 39
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 21
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 210
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 28
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 274
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 19
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 338
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 16
m_Metrics:
m_Width: 35.15625
m_Height: 8.78125
m_HorizontalBearingX: 8.796875
m_HorizontalBearingY: 39.546875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 402
m_Y: 10
m_Width: 36
m_Height: 10
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 20
m_Metrics:
m_Width: 26.359375
m_Height: 61.53125
m_HorizontalBearingX: 13.1875
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 457
m_Y: 10
m_Width: 27
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 23
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 503
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 42
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 567
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 36
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 631
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 48
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 695
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 40
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 759
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 50
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 823
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 57
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 887
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 53
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 951
m_Y: 10
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 25
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 138
m_Y: 91
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
- m_Index: 27
m_Metrics:
m_Width: 43.953125
m_Height: 61.53125
m_HorizontalBearingX: 4.390625
m_HorizontalBearingY: 65.921875
m_HorizontalAdvance: 52.734375
m_GlyphRect:
m_X: 74
m_Y: 119
m_Width: 45
m_Height: 62
m_Scale: 1
m_AtlasIndex: 0
m_ClassDefinitionType: 0
m_CharacterTable:
- m_ElementType: 1
m_Unicode: 8230
m_GlyphIndex: 185
m_Scale: 1
- m_ElementType: 1
m_Unicode: 95
m_GlyphIndex: 66
m_Scale: 1
- m_ElementType: 1
m_Unicode: 51
m_GlyphIndex: 22
m_Scale: 1
- m_ElementType: 1
m_Unicode: 55
m_GlyphIndex: 26
m_Scale: 1
- m_ElementType: 1
m_Unicode: 53
m_GlyphIndex: 24
m_Scale: 1
- m_ElementType: 1
m_Unicode: 50
m_GlyphIndex: 21
m_Scale: 1
- m_ElementType: 1
m_Unicode: 57
m_GlyphIndex: 28
m_Scale: 1
- m_ElementType: 1
m_Unicode: 48
m_GlyphIndex: 19
m_Scale: 1
- m_ElementType: 1
m_Unicode: 45
m_GlyphIndex: 16
m_Scale: 1
- m_ElementType: 1
m_Unicode: 49
m_GlyphIndex: 20
m_Scale: 1
- m_ElementType: 1
m_Unicode: 52
m_GlyphIndex: 23
m_Scale: 1
- m_ElementType: 1
m_Unicode: 71
m_GlyphIndex: 42
m_Scale: 1
- m_ElementType: 1
m_Unicode: 65
m_GlyphIndex: 36
m_Scale: 1
- m_ElementType: 1
m_Unicode: 77
m_GlyphIndex: 48
m_Scale: 1
- m_ElementType: 1
m_Unicode: 69
m_GlyphIndex: 40
m_Scale: 1
- m_ElementType: 1
m_Unicode: 79
m_GlyphIndex: 50
m_Scale: 1
- m_ElementType: 1
m_Unicode: 86
m_GlyphIndex: 57
m_Scale: 1
- m_ElementType: 1
m_Unicode: 82
m_GlyphIndex: 53
m_Scale: 1
- m_ElementType: 1
m_Unicode: 54
m_GlyphIndex: 25
m_Scale: 1
- m_ElementType: 1
m_Unicode: 56
m_GlyphIndex: 27
m_Scale: 1
m_AtlasTextures: m_AtlasTextures:
- {fileID: 948717598527772745} - {fileID: 948717598527772745}
m_AtlasTextureIndex: 0 m_AtlasTextureIndex: 0
@@ -452,116 +72,12 @@ MonoBehaviour:
m_AtlasHeight: 1024 m_AtlasHeight: 1024
m_AtlasPadding: 9 m_AtlasPadding: 9
m_AtlasRenderMode: 4165 m_AtlasRenderMode: 4165
m_UsedGlyphRects: m_UsedGlyphRects: []
- m_X: 0
m_Y: 0
m_Width: 64
m_Height: 29
- m_X: 64
m_Y: 0
m_Width: 72
m_Height: 28
- m_X: 136
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 64
m_Y: 28
m_Width: 64
m_Height: 81
- m_X: 0
m_Y: 29
m_Width: 64
m_Height: 81
- m_X: 200
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 264
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 328
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 392
m_Y: 0
m_Width: 55
m_Height: 29
- m_X: 447
m_Y: 0
m_Width: 46
m_Height: 81
- m_X: 493
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 557
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 621
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 685
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 749
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 813
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 877
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 941
m_Y: 0
m_Width: 64
m_Height: 81
- m_X: 128
m_Y: 81
m_Width: 64
m_Height: 81
- m_X: 64
m_Y: 109
m_Width: 64
m_Height: 81
m_FreeGlyphRects: m_FreeGlyphRects:
- m_X: 392 - m_X: 0
m_Y: 29
m_Width: 55
m_Height: 994
- m_X: 1005
m_Y: 0 m_Y: 0
m_Width: 18
m_Height: 1023
- m_X: 192
m_Y: 81
m_Width: 831
m_Height: 942
- m_X: 128
m_Y: 28
m_Width: 8
m_Height: 53
- m_X: 0
m_Y: 190
m_Width: 1023 m_Width: 1023
m_Height: 833 m_Height: 1023
- m_X: 128
m_Y: 162
m_Width: 895
m_Height: 861
- m_X: 0
m_Y: 110
m_Width: 64
m_Height: 913
m_FontFeatureTable: m_FontFeatureTable:
m_MultipleSubstitutionRecords: [] m_MultipleSubstitutionRecords: []
m_LigatureSubstitutionRecords: m_LigatureSubstitutionRecords:
@@ -643,9 +159,9 @@ Texture2D:
Hash: 00000000000000000000000000000000 Hash: 00000000000000000000000000000000
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 4 serializedVersion: 4
m_Width: 1024 m_Width: 1
m_Height: 1024 m_Height: 1
m_CompleteImageSize: 1048576 m_CompleteImageSize: 1
m_MipsStripped: 0 m_MipsStripped: 0
m_TextureFormat: 1 m_TextureFormat: 1
m_MipCount: 1 m_MipCount: 1
@@ -670,8 +186,8 @@ Texture2D:
m_LightmapFormat: 0 m_LightmapFormat: 0
m_ColorSpace: 1 m_ColorSpace: 1
m_PlatformBlob: m_PlatformBlob:
image data: 1048576 image data: 1
_typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e0807050200000306070e0e0e0e0e0e0e0e0c0c0a0602000407090a0e0e0e0e0e0e0e0e090806030000000000000000000000050a0f121313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313100f0d0905000000000000000000000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a08050000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0908060300000000000000000000000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a080500000000000000000000000000000000000000000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a08050000000000000000000000000000000000000000000001040607090909090909090909090909090909090909090909090909090909090909090909090909070300000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000020507080e0e0e0e0e0e0e0e0b0a080500000000000000000000000000000000000000000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a08050000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e08070502000000000000000000000000000000000000000407090a0e0e0e0e0e0e0e0e090806030000000000000000000000000005080a0b0e0e0e0e0e0e0e0e08070502000000000000000000000000000000000000000407090a0e0e0e0e0e0e0e0e090806030000000000000000000000000005080a0b0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0908060300000000000000000000000000000000000000000002060a0c0d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000306070e0e0e0e0e0e0e0e0c0c0a060200000000000000000000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e08070502000000000000000000000000000000000000000407090a0e0e0e0e0e0e0e0e09080603000000000000000000000000000000000000000000000000000000000000060c111517181b1b1b1b1b1b1b1b1514120e090c1012131b1b1b1b1b1b1b1b191816120d0b101416171b1b1b1b1b1b1b1b1615130f0a0400000000000000010910161b1e20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201d1c1915100a030000000000000000000000000000000000070d121619191b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b171714110c05000000000000000000000000000000000000060c111517181b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1615130f0a04000000000000000000000000000000000000070d121619191b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b171714110c05000000000000000000000000000000000000000000000000000000070d121619191b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b171714110c0500000000000000000000000000000000000001070d111314161616161616161616161616161616161616161616161616161616161616161616161615130f0a04Line truncated _typelessdata: 00
m_StreamData: m_StreamData:
serializedVersion: 2 serializedVersion: 2
offset: 0 offset: 0
@@ -32,11 +32,11 @@ RectTransform:
m_Children: [] m_Children: []
m_Father: {fileID: 2606207159731526013} m_Father: {fileID: 2606207159731526013}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 508.57898}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 1}
--- !u!222 &3854552811963077917 --- !u!222 &3854552811963077917
CanvasRenderer: CanvasRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -92,12 +92,12 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 380 m_fontSize: 409.6
m_fontSizeBase: 380 m_fontSizeBase: 380
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 0 m_enableAutoSizing: 1
m_fontSizeMin: 18 m_fontSizeMin: 18
m_fontSizeMax: 72 m_fontSizeMax: 515.9
m_fontStyle: 0 m_fontStyle: 0
m_HorizontalAlignment: 2 m_HorizontalAlignment: 2
m_VerticalAlignment: 512 m_VerticalAlignment: 512
@@ -168,6 +168,7 @@ RectTransform:
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 6611561882260570556} - {fileID: 6611561882260570556}
- {fileID: 4806830893428282057}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
@@ -225,4 +226,142 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ecbe291069244405ac22e5470f3ba62b, type: 3} m_Script: {fileID: 11500000, guid: ecbe291069244405ac22e5470f3ba62b, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.UI.GameOverPanel m_EditorClassIdentifier: Assembly-CSharp::Code.UI.GameOverPanel
scoreText: {fileID: 5350930698879384645}
gameOverText: {fileID: 838910581382061681}
_background: {fileID: 7415774796514587984} _background: {fileID: 7415774796514587984}
--- !u!1 &8911038110136270418
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4806830893428282057}
- component: {fileID: 8342357230783705335}
- component: {fileID: 5350930698879384645}
m_Layer: 5
m_Name: ScoreText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4806830893428282057
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8911038110136270418}
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: 2606207159731526013}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0}
m_AnchorMax: {x: 0.5, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 733.7283, y: 571.42}
m_Pivot: {x: 0.5, y: 0}
--- !u!222 &8342357230783705335
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8911038110136270418}
m_CullTransparentMesh: 1
--- !u!114 &5350930698879384645
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8911038110136270418}
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: TEXTHERE
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a3ba170dcd95c5776a5c39de19dff119, type: 2}
m_sharedMaterial: {fileID: 8532510215145708138, guid: a3ba170dcd95c5776a5c39de19dff119, 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: 1}
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: 156.5
m_fontSizeBase: 379.37
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 18
m_fontSizeMax: 368.7
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
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}
@@ -13,512 +13,24 @@
"id": "272f6d14-89ba-496f-b7ff-215263d3219f", "id": "272f6d14-89ba-496f-b7ff-215263d3219f",
"actions": [ "actions": [
{ {
"name": "Navigate", "name": "Continue",
"type": "PassThrough",
"id": "c95b2375-e6d9-4b88-9c4c-c5e76515df4b",
"expectedControlType": "Vector2",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "Submit",
"type": "Button", "type": "Button",
"id": "7607c7b6-cd76-4816-beef-bd0341cfe950", "id": "56901f7b-7c04-4890-b395-6e030fd5693b",
"expectedControlType": "Button", "expectedControlType": "",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "Cancel",
"type": "Button",
"id": "15cef263-9014-4fd5-94d9-4e4a6234a6ef",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "Point",
"type": "PassThrough",
"id": "32b35790-4ed0-4e9a-aa41-69ac6d629449",
"expectedControlType": "Vector2",
"processors": "",
"interactions": "",
"initialStateCheck": true
},
{
"name": "Click",
"type": "PassThrough",
"id": "3c7022bf-7922-4f7c-a998-c437916075ad",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": true
},
{
"name": "RightClick",
"type": "PassThrough",
"id": "44b200b1-1557-4083-816c-b22cbdf77ddf",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "MiddleClick",
"type": "PassThrough",
"id": "dad70c86-b58c-4b17-88ad-f5e53adf419e",
"expectedControlType": "Button",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "ScrollWheel",
"type": "PassThrough",
"id": "0489e84a-4833-4c40-bfae-cea84b696689",
"expectedControlType": "Vector2",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "TrackedDevicePosition",
"type": "PassThrough",
"id": "24908448-c609-4bc3-a128-ea258674378a",
"expectedControlType": "Vector3",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{
"name": "TrackedDeviceOrientation",
"type": "PassThrough",
"id": "9caa3d8a-6b2f-4e8e-8bad-6ede561bd9be",
"expectedControlType": "Quaternion",
"processors": "", "processors": "",
"interactions": "", "interactions": "",
"initialStateCheck": false "initialStateCheck": false
} }
], ],
"bindings": [ "bindings": [
{
"name": "Gamepad",
"id": "809f371f-c5e2-4e7a-83a1-d867598f40dd",
"path": "2DVector",
"interactions": "",
"processors": "",
"groups": "",
"action": "Navigate",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "14a5d6e8-4aaf-4119-a9ef-34b8c2c548bf",
"path": "<Gamepad>/leftStick/up",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "up",
"id": "9144cbe6-05e1-4687-a6d7-24f99d23dd81",
"path": "<Gamepad>/rightStick/up",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "2db08d65-c5fb-421b-983f-c71163608d67",
"path": "<Gamepad>/leftStick/down",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "58748904-2ea9-4a80-8579-b500e6a76df8",
"path": "<Gamepad>/rightStick/down",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "8ba04515-75aa-45de-966d-393d9bbd1c14",
"path": "<Gamepad>/leftStick/left",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "712e721c-bdfb-4b23-a86c-a0d9fcfea921",
"path": "<Gamepad>/rightStick/left",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "fcd248ae-a788-4676-a12e-f4d81205600b",
"path": "<Gamepad>/leftStick/right",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "1f04d9bc-c50b-41a1-bfcc-afb75475ec20",
"path": "<Gamepad>/rightStick/right",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{ {
"name": "", "name": "",
"id": "fb8277d4-c5cd-4663-9dc7-ee3f0b506d90", "id": "4f031740-09f5-4013-99fa-477fa832edfe",
"path": "<Gamepad>/dpad", "path": "<Keyboard>/anyKey",
"interactions": "",
"processors": "",
"groups": ";Gamepad",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "Joystick",
"id": "e25d9774-381c-4a61-b47c-7b6b299ad9f9",
"path": "2DVector",
"interactions": "",
"processors": "",
"groups": "",
"action": "Navigate",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "3db53b26-6601-41be-9887-63ac74e79d19",
"path": "<Joystick>/stick/up",
"interactions": "",
"processors": "",
"groups": "Joystick",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "0cb3e13e-3d90-4178-8ae6-d9c5501d653f",
"path": "<Joystick>/stick/down",
"interactions": "",
"processors": "",
"groups": "Joystick",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "0392d399-f6dd-4c82-8062-c1e9c0d34835",
"path": "<Joystick>/stick/left",
"interactions": "",
"processors": "",
"groups": "Joystick",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "942a66d9-d42f-43d6-8d70-ecb4ba5363bc",
"path": "<Joystick>/stick/right",
"interactions": "",
"processors": "",
"groups": "Joystick",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "Keyboard",
"id": "ff527021-f211-4c02-933e-5976594c46ed",
"path": "2DVector",
"interactions": "",
"processors": "",
"groups": "",
"action": "Navigate",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "563fbfdd-0f09-408d-aa75-8642c4f08ef0",
"path": "<Keyboard>/w",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "up",
"id": "eb480147-c587-4a33-85ed-eb0ab9942c43",
"path": "<Keyboard>/upArrow",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "2bf42165-60bc-42ca-8072-8c13ab40239b",
"path": "<Keyboard>/s",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "85d264ad-e0a0-4565-b7ff-1a37edde51ac",
"path": "<Keyboard>/downArrow",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "74214943-c580-44e4-98eb-ad7eebe17902",
"path": "<Keyboard>/a",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "cea9b045-a000-445b-95b8-0c171af70a3b",
"path": "<Keyboard>/leftArrow",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "8607c725-d935-4808-84b1-8354e29bab63",
"path": "<Keyboard>/d",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "4cda81dc-9edd-4e03-9d7c-a71a14345d0b",
"path": "<Keyboard>/rightArrow",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "",
"id": "9e92bb26-7e3b-4ec4-b06b-3c8f8e498ddc",
"path": "*/{Submit}",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse;Gamepad;Touch;Joystick;XR",
"action": "Submit",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "82627dcc-3b13-4ba9-841d-e4b746d6553e",
"path": "*/{Cancel}",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse;Gamepad;Touch;Joystick;XR",
"action": "Cancel",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "c52c8e0b-8179-41d3-b8a1-d149033bbe86",
"path": "<Mouse>/position",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Point",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "e1394cbc-336e-44ce-9ea8-6007ed6193f7",
"path": "<Pen>/position",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "Point",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "5693e57a-238a-46ed-b5ae-e64e6e574302",
"path": "<Touchscreen>/touch*/position",
"interactions": "",
"processors": "",
"groups": "Touch",
"action": "Point",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "4faf7dc9-b979-4210-aa8c-e808e1ef89f5",
"path": "<Mouse>/leftButton",
"interactions": "", "interactions": "",
"processors": "", "processors": "",
"groups": ";Keyboard&Mouse", "groups": ";Keyboard&Mouse",
"action": "Click", "action": "Continue",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "8d66d5ba-88d7-48e6-b1cd-198bbfef7ace",
"path": "<Pen>/tip",
"interactions": "",
"processors": "",
"groups": ";Keyboard&Mouse",
"action": "Click",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "47c2a644-3ebc-4dae-a106-589b7ca75b59",
"path": "<Touchscreen>/touch*/press",
"interactions": "",
"processors": "",
"groups": "Touch",
"action": "Click",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "bb9e6b34-44bf-4381-ac63-5aa15d19f677",
"path": "<XRController>/trigger",
"interactions": "",
"processors": "",
"groups": "XR",
"action": "Click",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "38c99815-14ea-4617-8627-164d27641299",
"path": "<Mouse>/scroll",
"interactions": "",
"processors": "",
"groups": ";Keyboard&Mouse",
"action": "ScrollWheel",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "4c191405-5738-4d4b-a523-c6a301dbf754",
"path": "<Mouse>/rightButton",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "RightClick",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "24066f69-da47-44f3-a07e-0015fb02eb2e",
"path": "<Mouse>/middleButton",
"interactions": "",
"processors": "",
"groups": "Keyboard&Mouse",
"action": "MiddleClick",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "7236c0d9-6ca3-47cf-a6ee-a97f5b59ea77",
"path": "<XRController>/devicePosition",
"interactions": "",
"processors": "",
"groups": "XR",
"action": "TrackedDevicePosition",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "23e01e3a-f935-4948-8d8b-9bcac77714fb",
"path": "<XRController>/deviceRotation",
"interactions": "",
"processors": "",
"groups": "XR",
"action": "TrackedDeviceOrientation",
"isComposite": false, "isComposite": false,
"isPartOfComposite": false "isPartOfComposite": false
} }