Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
855108d88b | ||
|
|
388773129d |
No files matched your search
@@ -15,7 +15,7 @@ MonoBehaviour:
|
|||||||
m_DefaultGroup: d447fc60305c17a17bf20948ab295a45
|
m_DefaultGroup: d447fc60305c17a17bf20948ab295a45
|
||||||
m_currentHash:
|
m_currentHash:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
Hash: adba03da8c5086ecbcf5b8db72996dd1
|
Hash: db97f0adbdaa5d76ea9341571ea44391
|
||||||
m_OptimizeCatalogSize: 0
|
m_OptimizeCatalogSize: 0
|
||||||
m_BuildRemoteCatalog: 0
|
m_BuildRemoteCatalog: 0
|
||||||
m_CatalogRequestsTimeout: 0
|
m_CatalogRequestsTimeout: 0
|
||||||
|
|||||||
+10
-15
@@ -30,6 +30,11 @@ MonoBehaviour:
|
|||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
m_SerializedLabels: []
|
m_SerializedLabels: []
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
|
- m_GUID: 1d4767c722c05b5d6b96bb226d378c65
|
||||||
|
m_Address: Assets/Resources_moved/Prefabs/Player/ArmsMesh.prefab
|
||||||
|
m_ReadOnly: 0
|
||||||
|
m_SerializedLabels: []
|
||||||
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
- m_GUID: 1d7110a045075b22fa27d62bd5f2784e
|
- m_GUID: 1d7110a045075b22fa27d62bd5f2784e
|
||||||
m_Address: 357_shot1
|
m_Address: 357_shot1
|
||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
@@ -60,11 +65,6 @@ MonoBehaviour:
|
|||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
m_SerializedLabels: []
|
m_SerializedLabels: []
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
- m_GUID: 2ed2d93a9f39d4edba511cb7396c7bb6
|
|
||||||
m_Address: Prefabs/Enemies/Cockroach
|
|
||||||
m_ReadOnly: 0
|
|
||||||
m_SerializedLabels: []
|
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
|
||||||
- m_GUID: 2f6134357dc2a5641a846a7478ce4c2c
|
- m_GUID: 2f6134357dc2a5641a846a7478ce4c2c
|
||||||
m_Address: bravo!
|
m_Address: bravo!
|
||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
@@ -95,6 +95,11 @@ MonoBehaviour:
|
|||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
m_SerializedLabels: []
|
m_SerializedLabels: []
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
|
- m_GUID: 751890caa1647ec6689f24933fbcb770
|
||||||
|
m_Address: "Prefabs/Furniture/\u0442\u0440\u0443\u0431\u0430"
|
||||||
|
m_ReadOnly: 0
|
||||||
|
m_SerializedLabels: []
|
||||||
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
- m_GUID: 7c5caf3ceee44f71588860c5c1fbdbe0
|
- m_GUID: 7c5caf3ceee44f71588860c5c1fbdbe0
|
||||||
m_Address: Audio/Dispatcher/take_damage3
|
m_Address: Audio/Dispatcher/take_damage3
|
||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
@@ -145,11 +150,6 @@ MonoBehaviour:
|
|||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
m_SerializedLabels: []
|
m_SerializedLabels: []
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
- m_GUID: b33855c694de89386a25c56cbe463a0e
|
|
||||||
m_Address: Prefabs/Enemies/DrunkenGrandpa
|
|
||||||
m_ReadOnly: 0
|
|
||||||
m_SerializedLabels: []
|
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
|
||||||
- m_GUID: c566fc932edefbbee9e53271eac3c560
|
- m_GUID: c566fc932edefbbee9e53271eac3c560
|
||||||
m_Address: MainMenu
|
m_Address: MainMenu
|
||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
@@ -170,11 +170,6 @@ MonoBehaviour:
|
|||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
m_SerializedLabels: []
|
m_SerializedLabels: []
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
FlaggedDuringContentUpdateRestriction: 0
|
||||||
- m_GUID: f3d7dc64b34919ad7b50a3dd307a935b
|
|
||||||
m_Address: Prefabs/Enemies/Fog
|
|
||||||
m_ReadOnly: 0
|
|
||||||
m_SerializedLabels: []
|
|
||||||
FlaggedDuringContentUpdateRestriction: 0
|
|
||||||
- m_GUID: f4b6fa54ecac6cc418f98824491aa17a
|
- m_GUID: f4b6fa54ecac6cc418f98824491aa17a
|
||||||
m_Address: Audio/Music/SANABI - JUSTICE Is Watching You
|
m_Address: Audio/Music/SANABI - JUSTICE Is Watching You
|
||||||
m_ReadOnly: 0
|
m_ReadOnly: 0
|
||||||
|
|||||||
@@ -1,16 +1,23 @@
|
|||||||
|
using System.Globalization;
|
||||||
|
using System.Reflection.Emit;
|
||||||
using Code.App.StateMachine;
|
using Code.App.StateMachine;
|
||||||
using Code.Audio;
|
using Code.Audio;
|
||||||
using Code.Gameplay.Camera;
|
using Code.Gameplay.Camera;
|
||||||
using Code.Gameplay.Camera.CameraStates;
|
using Code.Gameplay.Camera.CameraStates;
|
||||||
using Code.Gameplay.Character.Core;
|
using Code.Gameplay.Character.Core;
|
||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
using Code.Gameplay.Player;
|
using Code.Gameplay.Player;
|
||||||
using Code.Input;
|
using Code.Input;
|
||||||
using Code.Scenes;
|
using Code.Scenes;
|
||||||
using Code.Scenes.SceneEnvironments;
|
using Code.Scenes.SceneEnvironments;
|
||||||
using Code.StateMachine;
|
using Code.StateMachine;
|
||||||
using Code.UI;
|
using Code.UI;
|
||||||
|
using Code.UI.Panels;
|
||||||
using Cysharp.Threading.Tasks;
|
using Cysharp.Threading.Tasks;
|
||||||
|
using Reflex.Core;
|
||||||
using Reflex.Extensions;
|
using Reflex.Extensions;
|
||||||
|
using Reflex.Injectors;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.InputSystem;
|
using UnityEngine.InputSystem;
|
||||||
using UnityEngine.SceneManagement;
|
using UnityEngine.SceneManagement;
|
||||||
@@ -19,13 +26,13 @@ namespace Code.App.AppStates
|
|||||||
{
|
{
|
||||||
public class GameplayState : BaseState<AppStateMachineContext>
|
public class GameplayState : BaseState<AppStateMachineContext>
|
||||||
{
|
{
|
||||||
// DEBUG
|
|
||||||
private Transform _testSFXTransform;
|
|
||||||
// DEBUG
|
|
||||||
|
|
||||||
private PlayerHealth _playerHealth;
|
private PlayerHealth _playerHealth;
|
||||||
private PlayerMoney _playerMoney;
|
private PlayerMoney _playerMoney;
|
||||||
|
|
||||||
|
private IScoreService _scoreService;
|
||||||
|
private IOrderService _orderService;
|
||||||
|
|
||||||
private CharacterProvider _playerCharacter;
|
private CharacterProvider _playerCharacter;
|
||||||
|
|
||||||
public GameplayState(AppStateMachineContext context) : base(context)
|
public GameplayState(AppStateMachineContext context) : base(context)
|
||||||
@@ -37,98 +44,109 @@ namespace Code.App.AppStates
|
|||||||
Context.UIService.LoadingScreen.Show();
|
Context.UIService.LoadingScreen.Show();
|
||||||
|
|
||||||
_playerMoney = Context.PlayerFactory.CreatePlayerMoney();
|
_playerMoney = Context.PlayerFactory.CreatePlayerMoney();
|
||||||
|
_playerHealth = Context.PlayerFactory.CreatePlayerHealth();
|
||||||
|
|
||||||
//_playerHealth = Context.PlayerProvider.Health;
|
_playerHealth.OnDeath += EndGame;
|
||||||
//_playerHealth.OnDeath += EndGame;
|
|
||||||
|
|
||||||
Context.AudioService.TransitToSnapshot(AudioSnapshotState.Peaceful);
|
Context.AudioService.TransitToSnapshot(AudioSnapshotState.Peaceful);
|
||||||
|
|
||||||
Context.InputService.EnableMap(ActionMappings.Gameplay);
|
Context.InputService.EnableMap(ActionMappings.Gameplay);
|
||||||
|
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, GiveHealth);
|
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, GiveOrderDEBUG);
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, GiveMoney);
|
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, RecieveOrderDEBUG);
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, LooseHealth);
|
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, DeliverOrderDEBUG);
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, LooseMoney);
|
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG);
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, PlayDebugSFX);
|
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube);
|
||||||
Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, PlayDebugDispatcher);
|
// Context.InputService.DebugBindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, PlayDebugDispatcher);
|
||||||
|
|
||||||
#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();
|
WaitForSceneToLoad();
|
||||||
#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 WaitForSceneToLoad()
|
||||||
{
|
{
|
||||||
|
await Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.Gameplay);
|
||||||
|
|
||||||
await UniTask.WhenAll(
|
await UniTask.WhenAll(
|
||||||
Context.SceneLoaderService.LoadSceneAsyncAwaitable((int)SceneIds.Gameplay),
|
|
||||||
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(),
|
||||||
|
// TODO
|
||||||
|
WaitForPlayerArmsToInitialize(),
|
||||||
WaitForPlayerCharacterLoad()
|
WaitForPlayerCharacterLoad()
|
||||||
);
|
);
|
||||||
|
MusicInitialize();
|
||||||
|
|
||||||
_playerHealth = Context.PlayerProvider.Health;
|
Container sceneContainer = SceneManager.GetActiveScene().GetSceneContainer();
|
||||||
_playerHealth.OnDeath += EndGame;
|
|
||||||
|
|
||||||
Context.AudioService.PlayRandomMusicUntilHumanityWillBeDestroyedForTheySins(MusicType.Peaceful);
|
GameplaySceneEnvironment sceneEnvironment = SceneEnvironmentVariables(sceneContainer);
|
||||||
Context.AudioService.PlayRandomMusicUntilHumanityWillBeDestroyedForTheySins(MusicType.Action);
|
|
||||||
|
|
||||||
var sceneEnvironment = ((GameplaySceneEnvironment)SceneManager.GetActiveScene()
|
PlayerInitialize(sceneEnvironment);
|
||||||
.GetSceneContainer().Resolve<CurrentSceneEnvironment>());
|
|
||||||
|
|
||||||
_testSFXTransform = sceneEnvironment.debugSfxTarget;
|
UIInitialize();
|
||||||
|
|
||||||
_playerCharacter.Teleport(sceneEnvironment.playerSpawnPoint.position, sceneEnvironment.playerSpawnPoint.rotation);
|
CameraInitialize();
|
||||||
|
|
||||||
((GameplayPanel)Context.UIService.CurrentPanel).Initialize(_playerMoney, _playerHealth);
|
InputServiceInitialize();
|
||||||
|
|
||||||
Context.CameraStateMachine.SwitchState(CameraMode.FirstPerson);
|
GameplayServicesInitialize(sceneContainer);
|
||||||
|
|
||||||
((BaseCameraState)Context.CameraStateMachine.CurrentBaseState).SetFollowTransform(_playerCharacter.GetFollowTransform());
|
_tickEnabled = true;
|
||||||
|
|
||||||
Context.InputService.EnableMap(ActionMappings.Gameplay);
|
|
||||||
|
|
||||||
Context.UIService.LoadingScreen.Hide();
|
Context.UIService.LoadingScreen.Hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnCharacterSpawn(CharacterProvider characterProvider)
|
private async UniTask WaitForPlayerArmsToInitialize() => _armsMesh = await Context.PlayerFactory.CreateArms(Context.CameraStateMachine.Camera.transform);
|
||||||
{
|
|
||||||
((BaseCameraState)Context.CameraStateMachine.CurrentBaseState).SetFollowTransform(_playerCharacter.GetFollowTransform());
|
|
||||||
}
|
|
||||||
private void PlayDebugSFX(InputAction.CallbackContext context)
|
|
||||||
{
|
|
||||||
Context.AudioService.PlaySFX(SFXSounds.Crowbar, _testSFXTransform.position);
|
|
||||||
}
|
|
||||||
private void PlayDebugDispatcher(InputAction.CallbackContext context)
|
|
||||||
{
|
|
||||||
Context.AudioService.PlayDispatcher(DispatcherSounds.AhFreeman);
|
|
||||||
}
|
|
||||||
private void GiveHealth(InputAction.CallbackContext context)
|
|
||||||
{
|
|
||||||
_playerHealth.GetDamage(-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void LooseHealth(InputAction.CallbackContext context)
|
private void OrderGiven(float time)
|
||||||
{
|
{
|
||||||
_playerHealth.GetDamage(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void GiveMoney(InputAction.CallbackContext context)
|
|
||||||
{
|
|
||||||
_playerMoney.GiveMoney(100);
|
|
||||||
((GameplayPanel)(Context.UIService.CurrentPanel)).SummonDispatcher();
|
|
||||||
}
|
}
|
||||||
|
private void OrderRecieved(float time)
|
||||||
private void LooseMoney(InputAction.CallbackContext context)
|
|
||||||
{
|
{
|
||||||
_playerMoney.LooseMoney(100);
|
Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.Recieve1,(int)DispatcherSounds.Recieve2));
|
||||||
((GameplayPanel)(Context.UIService.CurrentPanel)).CloseDispatcher();
|
}
|
||||||
|
private void OrderDelivered(int score, float time)
|
||||||
|
{
|
||||||
|
if(time < 0f) Context.AudioService.PlayDispatcher((DispatcherSounds)Random.Range((int)DispatcherSounds.Late1,(int)DispatcherSounds.Late2));
|
||||||
|
_playerMoney.GiveMoney(score);
|
||||||
}
|
}
|
||||||
// DEBUG
|
// DEBUG
|
||||||
|
private void GiveOrderDEBUG(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_orderService.OrderGive();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RecieveOrderDEBUG(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_orderService.OrderRecieved();
|
||||||
|
}
|
||||||
|
private void DeliverOrderDEBUG(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_orderService.OrderDelivered();
|
||||||
|
}
|
||||||
|
private void RoomPassedDEBUG(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_orderService.RoomPassed();
|
||||||
|
}
|
||||||
|
private OrderDispenser _debugTube;
|
||||||
|
|
||||||
|
private void Tube(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_debugTube.ThrowOrder();
|
||||||
|
}
|
||||||
|
// DEBUG
|
||||||
|
private bool _tickEnabled;
|
||||||
public override void Tick()
|
public override void Tick()
|
||||||
{
|
{
|
||||||
|
if (!_tickEnabled) return;
|
||||||
|
|
||||||
|
// TODO ГРЯЗь
|
||||||
|
_gameplayPanel.Timer.text = ((int)_orderService.DecreaseTimer(Time.deltaTime)).ToString(CultureInfo.CurrentCulture);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void EndGame()
|
private void EndGame()
|
||||||
@@ -142,21 +160,71 @@ namespace Code.App.AppStates
|
|||||||
_playerHealth = null;
|
_playerHealth = null;
|
||||||
_playerMoney = null;
|
_playerMoney = null;
|
||||||
|
|
||||||
|
_tickEnabled = false;
|
||||||
|
|
||||||
Context.PlayerFactory.ReleasePlayer(_playerCharacter);
|
Context.PlayerFactory.ReleasePlayer(_playerCharacter);
|
||||||
_playerCharacter = null;
|
_playerCharacter = null;
|
||||||
|
Context.PlayerFactory.ReleaseArms(_armsMesh);
|
||||||
|
_armsMesh = null;
|
||||||
|
|
||||||
Context.InputService.DisableMap(ActionMappings.Gameplay);
|
Context.InputService.DisableMap(ActionMappings.Gameplay);
|
||||||
Context.AudioService.GladlyAskToStopMusic(MusicType.Action, callback: Context.AudioFactory.ReleaseActionMusic);
|
Context.AudioService.GladlyAskToStopMusic(MusicType.Action, callback: Context.AudioFactory.ReleaseActionMusic);
|
||||||
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, GiveHealth);
|
|
||||||
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, GiveHealth);
|
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug1, GiveOrderDEBUG);
|
||||||
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, LooseHealth);
|
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug2, RecieveOrderDEBUG);
|
||||||
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, LooseMoney);
|
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug3, DeliverOrderDEBUG);
|
||||||
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, PlayDebugSFX);
|
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug4, RoomPassedDEBUG);
|
||||||
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, PlayDebugDispatcher);
|
Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug5, Tube);
|
||||||
|
// Context.InputService.DebugUnbindAction((int)ActionMappings.Debug, (int)DebugActions.Debug6, PlayDebugDispatcher);
|
||||||
|
|
||||||
base.ExitState();
|
base.ExitState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void InputServiceInitialize()
|
||||||
|
{
|
||||||
|
Context.InputService.EnableMap(ActionMappings.Gameplay);
|
||||||
|
}
|
||||||
|
private void CameraInitialize()
|
||||||
|
{
|
||||||
|
Context.CameraStateMachine.SwitchState(CameraMode.FirstPerson);
|
||||||
|
((BaseCameraState)Context.CameraStateMachine.CurrentBaseState).SetFollowTransform(_playerCharacter.GetFollowTransform());
|
||||||
|
}
|
||||||
|
|
||||||
|
private GameplayPanel _gameplayPanel;
|
||||||
|
private ArmsMeshProvider _armsMesh;
|
||||||
|
|
||||||
|
private void UIInitialize()
|
||||||
|
{
|
||||||
|
_gameplayPanel = (GameplayPanel)Context.UIService.CurrentPanel;
|
||||||
|
_gameplayPanel.Initialize(_playerMoney, _playerHealth);
|
||||||
|
}
|
||||||
|
private void MusicInitialize()
|
||||||
|
{
|
||||||
|
Context.AudioService.PlayRandomMusicUntilHumanityWillBeDestroyedForTheySins(MusicType.Peaceful);
|
||||||
|
Context.AudioService.PlayRandomMusicUntilHumanityWillBeDestroyedForTheySins(MusicType.Action);
|
||||||
|
}
|
||||||
|
private void PlayerInitialize(GameplaySceneEnvironment sceneEnvironment)
|
||||||
|
{
|
||||||
|
_playerCharacter.Teleport(sceneEnvironment.playerSpawnPoint.position, sceneEnvironment.playerSpawnPoint.rotation);
|
||||||
|
_playerCharacter.PlayerAnimator.SetAnimator(_armsMesh.ArmsAnimator);
|
||||||
|
}
|
||||||
|
private void GameplayServicesInitialize(Container sceneContainer)
|
||||||
|
{
|
||||||
|
_scoreService = sceneContainer.Resolve<IScoreService>();
|
||||||
|
_orderService = sceneContainer.Resolve<IOrderService>();
|
||||||
|
|
||||||
|
_orderService.OnOrderGiven += OrderGiven;
|
||||||
|
_orderService.OnOrderRecieved += OrderRecieved;
|
||||||
|
_orderService.OnOrderDelivered += OrderDelivered;
|
||||||
|
}
|
||||||
|
private GameplaySceneEnvironment SceneEnvironmentVariables(Container sceneContainer)
|
||||||
|
{
|
||||||
|
var sceneEnvironment = (GameplaySceneEnvironment)sceneContainer.Resolve<CurrentSceneEnvironment>();
|
||||||
|
|
||||||
|
_debugTube = sceneEnvironment.debugTube;
|
||||||
|
return sceneEnvironment;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3,6 +3,7 @@ using Code.Audio;
|
|||||||
using Code.Configs;
|
using Code.Configs;
|
||||||
using Code.Constants;
|
using Code.Constants;
|
||||||
using Code.Gameplay.Camera;
|
using Code.Gameplay.Camera;
|
||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
using Code.Gameplay.Player;
|
using Code.Gameplay.Player;
|
||||||
using Code.Input;
|
using Code.Input;
|
||||||
using Code.Scenes;
|
using Code.Scenes;
|
||||||
@@ -27,7 +28,6 @@ namespace Code.App
|
|||||||
|
|
||||||
containerBuilder.AddSingleton(typeof(InputService), typeof(IInputService));
|
containerBuilder.AddSingleton(typeof(InputService), typeof(IInputService));
|
||||||
containerBuilder.AddSingleton(typeof(PlayerFactory), typeof(IPlayerFactory));
|
containerBuilder.AddSingleton(typeof(PlayerFactory), typeof(IPlayerFactory));
|
||||||
containerBuilder.AddSingleton(typeof(PlayerProvider), typeof(IPlayerProvider));
|
|
||||||
|
|
||||||
InitializeCamera(containerBuilder, staticDataService);
|
InitializeCamera(containerBuilder, staticDataService);
|
||||||
containerBuilder.AddSingleton(typeof(UIFactory), typeof(IUIFactory));
|
containerBuilder.AddSingleton(typeof(UIFactory), typeof(IUIFactory));
|
||||||
@@ -78,15 +78,14 @@ namespace Code.App
|
|||||||
|
|
||||||
containerBuilder.AddSingleton(staticDataService.UIConfig, typeof(UIConfig));
|
containerBuilder.AddSingleton(staticDataService.UIConfig, typeof(UIConfig));
|
||||||
|
|
||||||
containerBuilder.AddSingleton(staticDataService.DrunkenGrandpaConfig, typeof(DrunkenGrandpaConfig));
|
|
||||||
containerBuilder.AddSingleton(staticDataService.CockroachConfig, typeof(CockroachConfig));
|
|
||||||
containerBuilder.AddSingleton(staticDataService.FogConfig, typeof(FogConfig));
|
|
||||||
|
|
||||||
containerBuilder.AddSingleton(staticDataService.AudioMixerConfig, typeof(AudioMixerConfig));
|
containerBuilder.AddSingleton(staticDataService.AudioMixerConfig, typeof(AudioMixerConfig));
|
||||||
containerBuilder.AddSingleton(staticDataService.SoundtrackListConfig, typeof(SoundtrackListConfig));
|
containerBuilder.AddSingleton(staticDataService.SoundtrackListConfig, typeof(SoundtrackListConfig));
|
||||||
containerBuilder.AddSingleton(staticDataService.SFXListConfig, typeof(SFXListConfig));
|
containerBuilder.AddSingleton(staticDataService.SFXListConfig, typeof(SFXListConfig));
|
||||||
containerBuilder.AddSingleton(staticDataService.DispatcherSoundListConfig, typeof(DispatcherSoundListConfig));
|
containerBuilder.AddSingleton(staticDataService.DispatcherSoundListConfig, typeof(DispatcherSoundListConfig));
|
||||||
containerBuilder.AddSingleton(staticDataService.EnemiesSoundListConfig, typeof(EnemiesSoundListConfig));
|
containerBuilder.AddSingleton(staticDataService.EnemiesSoundListConfig, typeof(EnemiesSoundListConfig));
|
||||||
|
|
||||||
|
containerBuilder.AddSingleton(staticDataService.OrderServiceConfig, typeof(OrderServiceConfig));
|
||||||
|
containerBuilder.AddSingleton(staticDataService.OrderBoxConfig, typeof(OrderBoxConfig));
|
||||||
}
|
}
|
||||||
|
|
||||||
private AppStateMachine _appStateMachine;
|
private AppStateMachine _appStateMachine;
|
||||||
@@ -103,7 +102,6 @@ namespace Code.App
|
|||||||
|
|
||||||
#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
|
||||||
BootstrapFinish(container);
|
BootstrapFinish(container);
|
||||||
|
|
||||||
#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 BootstrapFinish(Container container)
|
private async UniTaskVoid BootstrapFinish(Container container)
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
using Code.Scenes;
|
using Code.Scenes;
|
||||||
using Code.Scenes.SceneEnvironments;
|
using Code.Scenes.SceneEnvironments;
|
||||||
using Reflex.Core;
|
using Reflex.Core;
|
||||||
@@ -12,6 +13,8 @@ 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(OrderService), typeof(IOrderService));
|
||||||
|
|
||||||
containerBuilder.OnContainerBuilt += Initialize;
|
containerBuilder.OnContainerBuilt += Initialize;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ namespace Code.App.StateMachine
|
|||||||
[Inject] public CameraStateMachine CameraStateMachine { get; private set; }
|
[Inject] public CameraStateMachine CameraStateMachine { get; private set; }
|
||||||
[Inject] public IUIService UIService { get; private set; }
|
[Inject] public IUIService UIService { get; private set; }
|
||||||
[Inject] public IPlayerFactory PlayerFactory { get; private set; }
|
[Inject] public IPlayerFactory PlayerFactory { get; private set; }
|
||||||
[Inject] public IPlayerProvider PlayerProvider { get; private set; }
|
|
||||||
[Inject] public IAudioFactory AudioFactory { get; private set; }
|
[Inject] public IAudioFactory AudioFactory { get; private set; }
|
||||||
[Inject] public IAudioService AudioService { get; private set; }
|
[Inject] public IAudioService AudioService { get; private set; }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,17 @@ namespace Code.Audio
|
|||||||
{
|
{
|
||||||
Absolutely,
|
Absolutely,
|
||||||
AbsolutelyNot,
|
AbsolutelyNot,
|
||||||
AhFreeman
|
AhFreeman,
|
||||||
|
Recieve1,
|
||||||
|
Recieve2,
|
||||||
|
TakeDamage1,
|
||||||
|
TakeDamage2,
|
||||||
|
TakeDamage3,
|
||||||
|
TakeDamage4,
|
||||||
|
Late1,
|
||||||
|
Late2,
|
||||||
|
Late3,
|
||||||
|
Late4,
|
||||||
|
Late5
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -62,8 +62,8 @@ namespace Code.Audio
|
|||||||
|
|
||||||
public async UniTask WarmGameplayMusic( )
|
public async UniTask WarmGameplayMusic( )
|
||||||
{
|
{
|
||||||
_actionMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_actionSoundtrack, OnActionTrackLoaded, Addressables.MergeMode.None);
|
_actionMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_actionSoundtrack, OnActionTrackLoaded, Addressables.MergeMode.Union);
|
||||||
_peacefulMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_peacefulSoundtrack, OnPeacefulTrackLoaded, Addressables.MergeMode.None);
|
_peacefulMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_peacefulSoundtrack, OnPeacefulTrackLoaded, Addressables.MergeMode.Union);
|
||||||
|
|
||||||
await UniTask.WhenAll(_actionMusicHandle.ToUniTask(), _peacefulMusicHandle.ToUniTask());
|
await UniTask.WhenAll(_actionMusicHandle.ToUniTask(), _peacefulMusicHandle.ToUniTask());
|
||||||
}
|
}
|
||||||
@@ -79,7 +79,7 @@ namespace Code.Audio
|
|||||||
}
|
}
|
||||||
public async UniTask WarmMenuMusic( )
|
public async UniTask WarmMenuMusic( )
|
||||||
{
|
{
|
||||||
_menuMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_menuSoundtrack, OnMenuTrackLoaded, Addressables.MergeMode.None);
|
_menuMusicHandle = Addressables.LoadAssetsAsync<AudioClip>(_menuSoundtrack, OnMenuTrackLoaded, Addressables.MergeMode.Union);
|
||||||
// foreach (var assetReference in _menuSoundtrack) MenuMusic.Add(await assetReference.LoadAssetAsync<AudioClip>());
|
// foreach (var assetReference in _menuSoundtrack) MenuMusic.Add(await assetReference.LoadAssetAsync<AudioClip>());
|
||||||
await _menuMusicHandle.ToUniTask();
|
await _menuMusicHandle.ToUniTask();
|
||||||
|
|
||||||
@@ -92,7 +92,7 @@ namespace Code.Audio
|
|||||||
}
|
}
|
||||||
public async UniTask WarmSFX( )
|
public async UniTask WarmSFX( )
|
||||||
{
|
{
|
||||||
_SFXHandle = Addressables.LoadAssetsAsync<AudioClip>(_SFX, OnSFXLoaded, Addressables.MergeMode.None);
|
_SFXHandle = Addressables.LoadAssetsAsync<AudioClip>(_SFX, OnSFXLoaded, Addressables.MergeMode.Union);
|
||||||
|
|
||||||
await _SFXHandle.ToUniTask();
|
await _SFXHandle.ToUniTask();
|
||||||
|
|
||||||
@@ -104,7 +104,7 @@ namespace Code.Audio
|
|||||||
}
|
}
|
||||||
public async UniTask WarmEnemies( )
|
public async UniTask WarmEnemies( )
|
||||||
{
|
{
|
||||||
_enemiesHandle = Addressables.LoadAssetsAsync<AudioClip>(_enemies, OnEnemiesLoaded, Addressables.MergeMode.None);
|
_enemiesHandle = Addressables.LoadAssetsAsync<AudioClip>(_enemies, OnEnemiesLoaded, Addressables.MergeMode.Union);
|
||||||
|
|
||||||
await _enemiesHandle.ToUniTask();
|
await _enemiesHandle.ToUniTask();
|
||||||
|
|
||||||
@@ -118,7 +118,7 @@ namespace Code.Audio
|
|||||||
|
|
||||||
public async UniTask WarmDispatcher( )
|
public async UniTask WarmDispatcher( )
|
||||||
{
|
{
|
||||||
_dispatcherHandle = Addressables.LoadAssetsAsync<AudioClip>(_dispatcher, OnDispatcherLoaded, Addressables.MergeMode.None);
|
_dispatcherHandle = Addressables.LoadAssetsAsync<AudioClip>(_dispatcher, OnDispatcherLoaded, Addressables.MergeMode.Union);
|
||||||
|
|
||||||
await _dispatcherHandle.ToUniTask();
|
await _dispatcherHandle.ToUniTask();
|
||||||
|
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AddressableAssets;
|
|
||||||
|
|
||||||
namespace Code.Configs
|
|
||||||
{
|
|
||||||
[CreateAssetMenu(menuName = "Config/Enemies/Cockroach", fileName = "CockroachConfig")]
|
|
||||||
public class CockroachConfig : ScriptableObject
|
|
||||||
{
|
|
||||||
public AssetReference cockroachPrefab;
|
|
||||||
|
|
||||||
public int damage = 2;
|
|
||||||
public float attackCooldown = 1.5f;
|
|
||||||
|
|
||||||
public float detectionRange = 20f;
|
|
||||||
public float attackRange = 1.3f;
|
|
||||||
|
|
||||||
public float speed = 6f;
|
|
||||||
|
|
||||||
public bool isStunnable;
|
|
||||||
public float stunDuration;
|
|
||||||
|
|
||||||
public bool usesIdleMovement = true;
|
|
||||||
public float idleWanderRadius = 3f;
|
|
||||||
public float idleMoveDurationMin = 0.3f;
|
|
||||||
public float idleMoveDurationMax = 1f;
|
|
||||||
public float idlePauseDurationMin = 0.1f;
|
|
||||||
public float idlePauseDurationMax = 0.8f;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 7bc162d3127949aa950d0738beee99a4
|
|
||||||
timeCreated: 1763571220
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AddressableAssets;
|
|
||||||
|
|
||||||
namespace Code.Configs
|
|
||||||
{
|
|
||||||
[CreateAssetMenu(menuName = "Config/Enemies/DrunkenGrandpa", fileName = "DrunkenGrandpaConfig")]
|
|
||||||
public class DrunkenGrandpaConfig : ScriptableObject
|
|
||||||
{
|
|
||||||
public AssetReference drunkenGrandpaPrefab;
|
|
||||||
|
|
||||||
public int damage = 2;
|
|
||||||
public float attackCooldown = 5f;
|
|
||||||
|
|
||||||
public float detectionRange = 10f;
|
|
||||||
public float attackRange = 1.5f;
|
|
||||||
|
|
||||||
public float speed = 3f;
|
|
||||||
|
|
||||||
public bool isStunnable = true;
|
|
||||||
public float stunDuration = 3f;
|
|
||||||
|
|
||||||
public bool usesIdleMovement = true;
|
|
||||||
public float idleWanderRadius = 5f;
|
|
||||||
public float idleMoveDurationMin = 1f;
|
|
||||||
public float idleMoveDurationMax = 5f;
|
|
||||||
public float idlePauseDurationMin = 3f;
|
|
||||||
public float idlePauseDurationMax = 5f;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 4d157e8891074b90957a7434cff0ae71
|
|
||||||
timeCreated: 1763569096
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AddressableAssets;
|
|
||||||
|
|
||||||
namespace Code.Configs
|
|
||||||
{
|
|
||||||
[CreateAssetMenu(menuName = "Config/Enemies/Fog", fileName = "FogConfig")]
|
|
||||||
public class FogConfig : ScriptableObject
|
|
||||||
{
|
|
||||||
public AssetReference fogPrefab;
|
|
||||||
|
|
||||||
public int damage = int.MaxValue;
|
|
||||||
public float attackCooldown;
|
|
||||||
|
|
||||||
public float detectionRange;
|
|
||||||
public float attackRange = 5f;
|
|
||||||
|
|
||||||
public float speed = 1.5f;
|
|
||||||
|
|
||||||
public bool isStunnable;
|
|
||||||
public float stunDuration;
|
|
||||||
|
|
||||||
public bool usesIdleMovement;
|
|
||||||
public float idleWanderRadius;
|
|
||||||
public float idleMoveDurationMin;
|
|
||||||
public float idleMoveDurationMax;
|
|
||||||
public float idlePauseDurationMin;
|
|
||||||
public float idlePauseDurationMax;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: aa4dd2a5cce24902a2918488b5751f2f
|
|
||||||
timeCreated: 1763581410
|
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Configs
|
||||||
|
{
|
||||||
|
[CreateAssetMenu(menuName = "Config/Gameplay/OrderBox", fileName = "OrderBoxConfig")]
|
||||||
|
public class OrderBoxConfig : ScriptableObject
|
||||||
|
{
|
||||||
|
public float activationTime;
|
||||||
|
public AnimationCurve floatingCurve;
|
||||||
|
public float curveLength;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6af4f53d425a41c78ef889fd7e5c3197
|
||||||
|
timeCreated: 1763735968
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Configs
|
||||||
|
{
|
||||||
|
[CreateAssetMenu(fileName = "OrderServiceConfig", menuName = "Config/Gameplay/OrderServiceConfig")]
|
||||||
|
public class OrderServiceConfig : ScriptableObject
|
||||||
|
{
|
||||||
|
public Vector2 timeBounds;
|
||||||
|
public float koefRooms, koefOvertime;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ee2550c3e4874575ac3aecadfcc42475
|
||||||
|
timeCreated: 1763559999
|
||||||
@@ -9,5 +9,6 @@ namespace Code.Configs
|
|||||||
public int maxHealth;
|
public int maxHealth;
|
||||||
|
|
||||||
public AssetReference characterPrefab;
|
public AssetReference characterPrefab;
|
||||||
|
public AssetReference armsMeshPrefab;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -17,6 +17,7 @@ namespace Code.Gameplay.Camera
|
|||||||
CurrentBaseState = States[CameraMode.UltraStatic];
|
CurrentBaseState = States[CameraMode.UltraStatic];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public UnityEngine.Camera Camera => StateMachineContext.Camera;
|
||||||
|
|
||||||
protected override bool CheckTransitionAllowed(CameraMode nextState) => true;
|
protected override bool CheckTransitionAllowed(CameraMode nextState) => true;
|
||||||
|
|
||||||
|
|||||||
-25
@@ -33,11 +33,6 @@ namespace Code.Gameplay.Character.Controller
|
|||||||
private GroundMovementSystem _groundMovement;
|
private GroundMovementSystem _groundMovement;
|
||||||
private AirMovementSystem _airMovement;
|
private AirMovementSystem _airMovement;
|
||||||
|
|
||||||
public bool IsSliding => _slideMechanic.IsSliding;
|
|
||||||
|
|
||||||
private float abilityBlockTimer;
|
|
||||||
private bool isAbilitiesBlocked;
|
|
||||||
|
|
||||||
public void SetPosition(Vector3 position) => motor.SetPosition(position);
|
public void SetPosition(Vector3 position) => motor.SetPosition(position);
|
||||||
public void SetRotation(Quaternion rotation) => motor.SetRotation(rotation);
|
public void SetRotation(Quaternion rotation) => motor.SetRotation(rotation);
|
||||||
|
|
||||||
@@ -141,20 +136,6 @@ namespace Code.Gameplay.Character.Controller
|
|||||||
// Сохраняем текущий режим камеры
|
// Сохраняем текущий режим камеры
|
||||||
_currentCameraMode = inputs.CameraMode;
|
_currentCameraMode = inputs.CameraMode;
|
||||||
|
|
||||||
if (isAbilitiesBlocked)
|
|
||||||
{
|
|
||||||
abilityBlockTimer -= Time.deltaTime;
|
|
||||||
if (abilityBlockTimer <= 0)
|
|
||||||
{
|
|
||||||
isAbilitiesBlocked = false;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
inputs.SprintPressed = false;
|
|
||||||
inputs.SlidePressed = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Обработка слайда
|
// Обработка слайда
|
||||||
_slideMechanic.RequestSlide(inputs.SlidePressed);
|
_slideMechanic.RequestSlide(inputs.SlidePressed);
|
||||||
|
|
||||||
@@ -241,12 +222,6 @@ namespace Code.Gameplay.Character.Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void BlockAbilities(float duration)
|
|
||||||
{
|
|
||||||
isAbilitiesBlocked = true;
|
|
||||||
abilityBlockTimer = duration;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Метод вызывается перед обновлением персонажа (можно использовать для подготовки)
|
// Метод вызывается перед обновлением персонажа (можно использовать для подготовки)
|
||||||
public void BeforeCharacterUpdate(float deltaTime)
|
public void BeforeCharacterUpdate(float deltaTime)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
using Code.Gameplay.Camera;
|
using Code.Gameplay.Camera;
|
||||||
using Code.Gameplay.Camera.CameraStates;
|
using Code.Gameplay.Camera.CameraStates;
|
||||||
using Code.Gameplay.Character.Controller;
|
using Code.Gameplay.Character.Controller;
|
||||||
|
using Code.Gameplay.Player;
|
||||||
using Code.Input;
|
using Code.Input;
|
||||||
using Reflex.Attributes;
|
using Reflex.Attributes;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@@ -18,6 +19,9 @@ namespace Code.Gameplay.Character.Core
|
|||||||
|
|
||||||
[Inject] private IInputService _inputService; // Сервис ввода через DI
|
[Inject] private IInputService _inputService; // Сервис ввода через DI
|
||||||
|
|
||||||
|
[SerializeField] private PlayerAnimator _animator;
|
||||||
|
public PlayerAnimator PlayerAnimator => _animator;
|
||||||
|
|
||||||
public void Teleport(Vector3 position, Quaternion rotation)
|
public void Teleport(Vector3 position, Quaternion rotation)
|
||||||
{
|
{
|
||||||
customCharacterController.SetPosition(position);
|
customCharacterController.SetPosition(position);
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 3b36108558824d748620db29707cd2b1
|
|
||||||
timeCreated: 1763228467
|
|
||||||
@@ -1,202 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AI;
|
|
||||||
using Code.Gameplay.Player;
|
|
||||||
using Code.Gameplay.Character.Controller;
|
|
||||||
using Code.Gameplay.Character.Core;
|
|
||||||
using Reflex.Attributes;
|
|
||||||
using Reflex.Core;
|
|
||||||
using Reflex.Injectors;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Enemies
|
|
||||||
{
|
|
||||||
public abstract class BaseEnemy : MonoBehaviour
|
|
||||||
{
|
|
||||||
[SerializeField] protected NavMeshAgent agent;
|
|
||||||
[SerializeField] protected Collider enemyCollider;
|
|
||||||
|
|
||||||
protected int Damage;
|
|
||||||
protected float AttackCooldown;
|
|
||||||
|
|
||||||
protected float DetectionRange;
|
|
||||||
protected float AttackRange;
|
|
||||||
|
|
||||||
protected float Speed;
|
|
||||||
|
|
||||||
protected bool IsStunnable;
|
|
||||||
protected float StunDuration;
|
|
||||||
|
|
||||||
protected bool UsesIdleMovement;
|
|
||||||
protected float IdleWanderRadius;
|
|
||||||
protected float IdleMoveDurationMin;
|
|
||||||
protected float IdleMoveDurationMax;
|
|
||||||
protected float IdlePauseDurationMin;
|
|
||||||
protected float IdlePauseDurationMax;
|
|
||||||
|
|
||||||
private bool _isStunned;
|
|
||||||
private float _currentStunTimer;
|
|
||||||
|
|
||||||
private bool _canAttack = true;
|
|
||||||
private float _attackCooldownTimer;
|
|
||||||
|
|
||||||
private enum IdleState { Moving, Paused }
|
|
||||||
private IdleState _currentIdleState = IdleState.Paused;
|
|
||||||
private float _idleTimer;
|
|
||||||
private Vector3 _idleTargetPosition;
|
|
||||||
|
|
||||||
[Inject] private IPlayerProvider _playerProvider;
|
|
||||||
protected CharacterProvider Player => _playerProvider?.Character;
|
|
||||||
protected PlayerHealth PlayerHealth => _playerProvider?.Health;
|
|
||||||
protected CustomCharacterController PlayerController => Player?.CustomCharacterController;
|
|
||||||
|
|
||||||
protected virtual void Awake()
|
|
||||||
{
|
|
||||||
if (_playerProvider == null)
|
|
||||||
{
|
|
||||||
AttributeInjector.Inject(this, Container.ProjectContainer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void Update()
|
|
||||||
{
|
|
||||||
if (!Player) return;
|
|
||||||
|
|
||||||
HandleStun();
|
|
||||||
HandleAttackCooldown();
|
|
||||||
if (_isStunned) return;
|
|
||||||
|
|
||||||
HandleMovement();
|
|
||||||
HandleAttack();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void HandleMovement()
|
|
||||||
{
|
|
||||||
if (!Player || !agent) return;
|
|
||||||
|
|
||||||
var distanceToPlayer = Vector3.Distance(transform.position, Player.transform.position);
|
|
||||||
|
|
||||||
if (distanceToPlayer <= DetectionRange)
|
|
||||||
{
|
|
||||||
agent.isStopped = false;
|
|
||||||
agent.SetDestination(Player.transform.position);
|
|
||||||
}
|
|
||||||
else if (UsesIdleMovement)
|
|
||||||
{
|
|
||||||
HandleIdleMovement();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
agent.isStopped = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void HandleIdleMovement()
|
|
||||||
{
|
|
||||||
_idleTimer -= Time.deltaTime;
|
|
||||||
|
|
||||||
switch (_currentIdleState)
|
|
||||||
{
|
|
||||||
case IdleState.Paused:
|
|
||||||
if (_idleTimer <= 0f)
|
|
||||||
{
|
|
||||||
// Start moving to a new random point
|
|
||||||
_currentIdleState = IdleState.Moving;
|
|
||||||
SetNewIdleDestination();
|
|
||||||
_idleTimer = Random.Range(IdleMoveDurationMin, IdleMoveDurationMax);
|
|
||||||
agent.isStopped = false;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case IdleState.Moving:
|
|
||||||
if (_idleTimer <= 0f || HasReachedIdleDestination())
|
|
||||||
{
|
|
||||||
// Stop and pause
|
|
||||||
_currentIdleState = IdleState.Paused;
|
|
||||||
_idleTimer = Random.Range(IdlePauseDurationMin, IdlePauseDurationMax);
|
|
||||||
agent.isStopped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void SetNewIdleDestination()
|
|
||||||
{
|
|
||||||
Vector3 randomPoint = transform.position + Random.insideUnitSphere * IdleWanderRadius;
|
|
||||||
NavMeshHit hit;
|
|
||||||
if (NavMesh.SamplePosition(randomPoint, out hit, 3f, agent.areaMask))
|
|
||||||
{
|
|
||||||
_idleTargetPosition = hit.position;
|
|
||||||
agent.SetDestination(_idleTargetPosition);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Fallback: stay
|
|
||||||
_idleTargetPosition = transform.position;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool HasReachedIdleDestination()
|
|
||||||
{
|
|
||||||
return agent.remainingDistance <= agent.stoppingDistance;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void HandleAttack() { }
|
|
||||||
|
|
||||||
protected virtual void HandleStun()
|
|
||||||
{
|
|
||||||
if (!_isStunned || !IsStunnable) return;
|
|
||||||
|
|
||||||
_currentStunTimer -= Time.deltaTime;
|
|
||||||
|
|
||||||
if (!(_currentStunTimer <= 0)) return;
|
|
||||||
|
|
||||||
_isStunned = false;
|
|
||||||
agent.isStopped = false;
|
|
||||||
enemyCollider.enabled = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void ApplyStun()
|
|
||||||
{
|
|
||||||
_isStunned = true;
|
|
||||||
_currentStunTimer = StunDuration;
|
|
||||||
agent.isStopped = true;
|
|
||||||
enemyCollider.enabled = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void HandleAttackCooldown()
|
|
||||||
{
|
|
||||||
if (!_canAttack)
|
|
||||||
{
|
|
||||||
_attackCooldownTimer -= Time.deltaTime;
|
|
||||||
if (_attackCooldownTimer <= 0)
|
|
||||||
{
|
|
||||||
_canAttack = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void DealDamage()
|
|
||||||
{
|
|
||||||
if (!_canAttack || PlayerHealth == null) return;
|
|
||||||
|
|
||||||
PlayerHealth.GetDamage(Damage);
|
|
||||||
ApplyEffectsToPlayer();
|
|
||||||
|
|
||||||
_canAttack = false;
|
|
||||||
_attackCooldownTimer = AttackCooldown;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected virtual void ApplyEffectsToPlayer()
|
|
||||||
{
|
|
||||||
PlayerController.BlockAbilities(3f);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnDrawGizmosSelected()
|
|
||||||
{
|
|
||||||
Gizmos.color = Color.yellow;
|
|
||||||
Gizmos.DrawWireSphere(transform.position, DetectionRange);
|
|
||||||
|
|
||||||
Gizmos.color = new Color(0.3f, 0.3f, 0.8f, 0.4f);
|
|
||||||
Gizmos.DrawSphere(transform.position, AttackRange);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 691006ba0f69448787db8f350ecf32f4
|
|
||||||
timeCreated: 1763228480
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
using Code.Configs;
|
|
||||||
using Reflex.Attributes;
|
|
||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AI;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Enemies
|
|
||||||
{
|
|
||||||
public class Cockroach : BaseEnemy
|
|
||||||
{
|
|
||||||
[Inject]
|
|
||||||
private void Construct(CockroachConfig cockroachConfig)
|
|
||||||
{
|
|
||||||
Damage = cockroachConfig.damage;
|
|
||||||
AttackCooldown = cockroachConfig.attackCooldown;
|
|
||||||
|
|
||||||
DetectionRange = cockroachConfig.detectionRange;
|
|
||||||
AttackRange = cockroachConfig.attackRange;
|
|
||||||
|
|
||||||
Speed = cockroachConfig.speed;
|
|
||||||
|
|
||||||
IsStunnable = cockroachConfig.isStunnable;
|
|
||||||
StunDuration = cockroachConfig.stunDuration;
|
|
||||||
|
|
||||||
UsesIdleMovement = cockroachConfig.usesIdleMovement;
|
|
||||||
IdleWanderRadius = cockroachConfig.idleWanderRadius;
|
|
||||||
IdleMoveDurationMin = cockroachConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = cockroachConfig.idleMoveDurationMax;
|
|
||||||
IdleMoveDurationMin = cockroachConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = cockroachConfig.idleMoveDurationMax;
|
|
||||||
IdlePauseDurationMin = cockroachConfig.idlePauseDurationMin;
|
|
||||||
IdlePauseDurationMax = cockroachConfig.idlePauseDurationMax;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void Awake()
|
|
||||||
{
|
|
||||||
base.Awake();
|
|
||||||
|
|
||||||
if (agent == null) return;
|
|
||||||
|
|
||||||
var walkableArea = NavMesh.GetAreaFromName("Cockroach");
|
|
||||||
agent.areaMask = 1 << walkableArea;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void HandleAttack()
|
|
||||||
{
|
|
||||||
if (!Player) return;
|
|
||||||
|
|
||||||
var distance = Vector3.Distance(transform.position, Player.transform.position);
|
|
||||||
|
|
||||||
if (!(distance <= AttackRange)) return;
|
|
||||||
|
|
||||||
DealDamage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 119c0b675c944ed7ada6cdc8db4b04aa
|
|
||||||
timeCreated: 1763228933
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
using Code.Configs;
|
|
||||||
using Reflex.Attributes;
|
|
||||||
using UnityEngine;
|
|
||||||
using UnityEngine.AI;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Enemies
|
|
||||||
{
|
|
||||||
public class DrunkenGrandpa : BaseEnemy
|
|
||||||
{
|
|
||||||
[Inject]
|
|
||||||
private void Construct(DrunkenGrandpaConfig drunkenGrandpaConfig)
|
|
||||||
{
|
|
||||||
Damage = drunkenGrandpaConfig.damage;
|
|
||||||
AttackCooldown = drunkenGrandpaConfig.attackCooldown;
|
|
||||||
|
|
||||||
DetectionRange = drunkenGrandpaConfig.detectionRange;
|
|
||||||
AttackRange = drunkenGrandpaConfig.attackRange;
|
|
||||||
|
|
||||||
Speed = drunkenGrandpaConfig.speed;
|
|
||||||
|
|
||||||
IsStunnable = drunkenGrandpaConfig.isStunnable;
|
|
||||||
StunDuration = drunkenGrandpaConfig.stunDuration;
|
|
||||||
|
|
||||||
UsesIdleMovement = drunkenGrandpaConfig.usesIdleMovement;
|
|
||||||
IdleWanderRadius = drunkenGrandpaConfig.idleWanderRadius;
|
|
||||||
IdleMoveDurationMin = drunkenGrandpaConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = drunkenGrandpaConfig.idleMoveDurationMax;
|
|
||||||
IdleMoveDurationMin = drunkenGrandpaConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = drunkenGrandpaConfig.idleMoveDurationMax;
|
|
||||||
IdlePauseDurationMin = drunkenGrandpaConfig.idlePauseDurationMin;
|
|
||||||
IdlePauseDurationMax = drunkenGrandpaConfig.idlePauseDurationMax;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void Awake()
|
|
||||||
{
|
|
||||||
base.Awake();
|
|
||||||
|
|
||||||
if (agent == null) return;
|
|
||||||
|
|
||||||
var walkableArea = NavMesh.GetAreaFromName("Walkable");
|
|
||||||
agent.areaMask = 1 << walkableArea;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void HandleAttack()
|
|
||||||
{
|
|
||||||
if (!Player) return;
|
|
||||||
|
|
||||||
var distance = Vector3.Distance(transform.position, Player.transform.position);
|
|
||||||
|
|
||||||
if (!(distance <= AttackRange)) return;
|
|
||||||
|
|
||||||
if (Player.CustomCharacterController.IsSliding)
|
|
||||||
ApplyStun();
|
|
||||||
else
|
|
||||||
DealDamage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 5e77164596e249bca15e09cdfc9ddac2
|
|
||||||
timeCreated: 1763228910
|
|
||||||
@@ -1,68 +0,0 @@
|
|||||||
using Code.Configs;
|
|
||||||
using Reflex.Attributes;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Enemies
|
|
||||||
{
|
|
||||||
public class Fog : BaseEnemy
|
|
||||||
{
|
|
||||||
[Inject]
|
|
||||||
private void Construct(FogConfig fogConfig)
|
|
||||||
{
|
|
||||||
Damage = fogConfig.damage;
|
|
||||||
AttackCooldown = fogConfig.attackCooldown;
|
|
||||||
|
|
||||||
DetectionRange = fogConfig.detectionRange;
|
|
||||||
AttackRange = fogConfig.attackRange;
|
|
||||||
|
|
||||||
Speed = fogConfig.speed;
|
|
||||||
|
|
||||||
IsStunnable = fogConfig.isStunnable;
|
|
||||||
StunDuration = fogConfig.stunDuration;
|
|
||||||
|
|
||||||
UsesIdleMovement = fogConfig.usesIdleMovement;
|
|
||||||
IdleWanderRadius = fogConfig.idleWanderRadius;
|
|
||||||
IdleMoveDurationMin = fogConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = fogConfig.idleMoveDurationMax;
|
|
||||||
IdleMoveDurationMin = fogConfig.idleMoveDurationMin;
|
|
||||||
IdleMoveDurationMax = fogConfig.idleMoveDurationMax;
|
|
||||||
IdlePauseDurationMin = fogConfig.idlePauseDurationMin;
|
|
||||||
IdlePauseDurationMax = fogConfig.idlePauseDurationMax;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void Awake()
|
|
||||||
{
|
|
||||||
base.Awake();
|
|
||||||
|
|
||||||
if (agent == null) return;
|
|
||||||
agent.enabled = false;
|
|
||||||
Destroy(agent);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void HandleMovement()
|
|
||||||
{
|
|
||||||
if (!Player) return;
|
|
||||||
|
|
||||||
var direction = (Player.transform.position - transform.position).normalized;
|
|
||||||
transform.position += direction * (Speed * Time.deltaTime);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void HandleAttack()
|
|
||||||
{
|
|
||||||
if (!Player || PlayerHealth == null) return;
|
|
||||||
|
|
||||||
var distance = Vector3.Distance(transform.position, Player.transform.position);
|
|
||||||
|
|
||||||
if (!(distance < AttackRange)) return;
|
|
||||||
|
|
||||||
PlayerHealth.GetDamage(PlayerHealth.MaxHealthPoints);
|
|
||||||
base.ApplyEffectsToPlayer();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnDrawGizmosSelected()
|
|
||||||
{
|
|
||||||
Gizmos.color = new Color(0.3f, 0.3f, 0.8f, 0.4f);
|
|
||||||
Gizmos.DrawSphere(transform.position, AttackRange);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 4c70370426e4457aa9a56c77689158ff
|
|
||||||
timeCreated: 1763228955
|
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e41c28f7828a44b7bc26d87886064d99
|
||||||
|
timeCreated: 1763556651
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4911436131e345ada949f2418595bbd8
|
||||||
|
timeCreated: 1763559099
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public interface IOrderService
|
||||||
|
{
|
||||||
|
delegate void OrderProgressDelegate(float time);
|
||||||
|
|
||||||
|
event OrderProgressDelegate OnOrderGiven;
|
||||||
|
event OrderProgressDelegate OnOrderRecieved;
|
||||||
|
|
||||||
|
delegate void OrderDeliveredDelegate(int score, float time);
|
||||||
|
|
||||||
|
event OrderDeliveredDelegate OnOrderDelivered;
|
||||||
|
OrderState OrderState { get; }
|
||||||
|
void RoomPassed();
|
||||||
|
float DecreaseTimer(float delta);
|
||||||
|
void OrderGive();
|
||||||
|
void OrderRecieved();
|
||||||
|
void OrderDelivered();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8b4467951c884c8dafeb633020696c24
|
||||||
|
timeCreated: 1763561686
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public interface IScoreService
|
||||||
|
{
|
||||||
|
int Score { get; }
|
||||||
|
void IncreaseScore(int amount);
|
||||||
|
void DecreaseScore(int amount);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 64668c9ef4c441af84c635365cfbb2de
|
||||||
|
timeCreated: 1763559523
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
using System;
|
||||||
|
using Code.Configs;
|
||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
|
using Cysharp.Threading.Tasks;
|
||||||
|
using Reflex.Attributes;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public class OrderBox : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Inject] private IOrderService _orderService;
|
||||||
|
public Rigidbody rigidbody;
|
||||||
|
[SerializeField] private bool _pickupMode;
|
||||||
|
// [SerializeField] private AnimationCurve debugCurve;
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
// private void Start()
|
||||||
|
// {
|
||||||
|
// _capturedPosition = transform.position;
|
||||||
|
// _floatingCurve = debugCurve;
|
||||||
|
// _curveLength = 1f;
|
||||||
|
// }
|
||||||
|
// DEBUG
|
||||||
|
|
||||||
|
private float _activationTime;
|
||||||
|
[Inject]
|
||||||
|
private void Construct(OrderBoxConfig config)
|
||||||
|
{
|
||||||
|
_floatingCurve = config.floatingCurve;
|
||||||
|
_activationTime = config.activationTime;
|
||||||
|
_curveLength = config.curveLength;
|
||||||
|
}
|
||||||
|
public void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
if (!_pickupMode) return;
|
||||||
|
|
||||||
|
_orderService.OrderRecieved();
|
||||||
|
Destroy(gameObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async UniTaskVoid SwitchMode()
|
||||||
|
{
|
||||||
|
Debug.LogWarning("Activating");
|
||||||
|
await UniTask.WaitForSeconds(_activationTime);
|
||||||
|
Debug.LogWarning("Available");
|
||||||
|
_pickupMode = true;
|
||||||
|
rigidbody.isKinematic = true;
|
||||||
|
_capturedPosition = transform.position;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Vector3 _capturedPosition;
|
||||||
|
private float _timeForMoving;
|
||||||
|
private AnimationCurve _floatingCurve;
|
||||||
|
private float _curveLength;
|
||||||
|
|
||||||
|
private void FixedUpdate()
|
||||||
|
{
|
||||||
|
if (!_pickupMode) return;
|
||||||
|
_timeForMoving += Time.fixedDeltaTime;
|
||||||
|
|
||||||
|
if (_timeForMoving > _curveLength) _timeForMoving = 0;
|
||||||
|
|
||||||
|
transform.position = _capturedPosition + new Vector3(0, _floatingCurve.Evaluate(_timeForMoving), 0);
|
||||||
|
Debug.Log(transform.position);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 067bc72af86a4fb8ac44d0c1fcfd25d5
|
||||||
|
timeCreated: 1763573681
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
using System;
|
||||||
|
using Reflex.Attributes;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public class OrderDeliveryTrigger : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Inject] private IOrderService _orderService;
|
||||||
|
private bool _playerEntered;
|
||||||
|
private void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
if (_playerEntered) return;
|
||||||
|
|
||||||
|
_playerEntered = true;
|
||||||
|
_orderService.OrderDelivered();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 47fbefab729047e5a11d8761e26f75a6
|
||||||
|
timeCreated: 1763737623
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
using DG.Tweening;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public class OrderDispenser : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField] private Transform hatch;
|
||||||
|
[SerializeField] private OrderBox order;
|
||||||
|
|
||||||
|
private bool _activated;
|
||||||
|
public void ThrowOrder()
|
||||||
|
{
|
||||||
|
hatch.DORotate(new Vector3(-130f, 0, 0), 0.2f);
|
||||||
|
|
||||||
|
order.rigidbody.isKinematic = false;
|
||||||
|
order.rigidbody.AddForce(-transform.forward * 10f, ForceMode.Impulse);
|
||||||
|
}
|
||||||
|
|
||||||
|
// DEBUG TODO ДИМКА УДАЛИ И ПРОПИШИ В СВОЕЙ ЛОГИКЕ
|
||||||
|
public void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
if(_activated) return;
|
||||||
|
_activated = true;
|
||||||
|
|
||||||
|
ThrowOrder();
|
||||||
|
order.SwitchMode();
|
||||||
|
}
|
||||||
|
// DEBUG
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e50e3c42f5ee45e0b1087e0dbf7dd0f4
|
||||||
|
timeCreated: 1763556675
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using Reflex.Attributes;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public class OrderGiveTrigger : MonoBehaviour
|
||||||
|
{
|
||||||
|
[Inject] private IOrderService _orderService;
|
||||||
|
private bool _playerEntered;
|
||||||
|
private void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
if (_playerEntered) return;
|
||||||
|
|
||||||
|
_playerEntered = true;
|
||||||
|
_orderService.OrderGive();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d3966e4798d243abba9d85b9ad8aef33
|
||||||
|
timeCreated: 1763742374
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
using Code.Audio;
|
||||||
|
using Code.Configs;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public class OrderService : IOrderService
|
||||||
|
{
|
||||||
|
public event IOrderService.OrderProgressDelegate OnOrderGiven;
|
||||||
|
public event IOrderService.OrderProgressDelegate OnOrderRecieved;
|
||||||
|
public event IOrderService.OrderDeliveredDelegate OnOrderDelivered;
|
||||||
|
|
||||||
|
private OrderState _orderState;
|
||||||
|
public OrderState OrderState => _orderState;
|
||||||
|
|
||||||
|
private float _deliveryTimer = 0.0f;
|
||||||
|
|
||||||
|
private Vector2 _timeBounds;
|
||||||
|
private float _koefRooms, _koefOvertime;
|
||||||
|
|
||||||
|
private int _roomsPassed;
|
||||||
|
|
||||||
|
public OrderService(OrderServiceConfig config)
|
||||||
|
{
|
||||||
|
_orderState = OrderState.Delivered;
|
||||||
|
|
||||||
|
_timeBounds = config.timeBounds;
|
||||||
|
_koefRooms = config.koefRooms;
|
||||||
|
_koefOvertime = config.koefOvertime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RoomPassed() => _roomsPassed++;
|
||||||
|
public float DecreaseTimer(float delta)
|
||||||
|
{
|
||||||
|
return _deliveryTimer -= delta;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OrderGive()
|
||||||
|
{
|
||||||
|
_orderState = OrderState.Given;
|
||||||
|
_roomsPassed = 0;
|
||||||
|
|
||||||
|
_deliveryTimer = Random.Range(_timeBounds.x, _timeBounds.y);
|
||||||
|
OnOrderGiven?.Invoke(_deliveryTimer);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OrderRecieved()
|
||||||
|
{
|
||||||
|
_orderState = OrderState.Recieved;
|
||||||
|
OnOrderRecieved?.Invoke(_deliveryTimer);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OrderDelivered()
|
||||||
|
{
|
||||||
|
_orderState = OrderState.Delivered;
|
||||||
|
|
||||||
|
int score = (int)(_koefRooms * _roomsPassed + _deliveryTimer * _koefOvertime);
|
||||||
|
OnOrderDelivered?.Invoke(score, _deliveryTimer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b324c2a1be1546868cddf779445b286a
|
||||||
|
timeCreated: 1763559110
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
namespace Code.Gameplay.Orders.Order
|
||||||
|
{
|
||||||
|
public enum OrderState
|
||||||
|
{
|
||||||
|
Delivered,
|
||||||
|
Given,
|
||||||
|
Recieved,
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0a8980a0cc034110ab3ccd948d40956b
|
||||||
|
timeCreated: 1763559535
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 619f2425460843aaa1f0f21e302158ce
|
||||||
|
timeCreated: 1763559528
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Gameplay.Player
|
||||||
|
{
|
||||||
|
public class ArmsMeshProvider : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField] public Animator ArmsAnimator;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cfe65f613bc54b4098acdba0d3fdd2a2
|
||||||
|
timeCreated: 1763730814
|
||||||
@@ -11,5 +11,7 @@ namespace Code.Gameplay.Player
|
|||||||
PlayerMoney CreatePlayerMoney(int count = 0);
|
PlayerMoney CreatePlayerMoney(int count = 0);
|
||||||
UniTask<CharacterProvider> CreatePlayer();
|
UniTask<CharacterProvider> CreatePlayer();
|
||||||
void ReleasePlayer(CharacterProvider characterProvider);
|
void ReleasePlayer(CharacterProvider characterProvider);
|
||||||
|
UniTask<ArmsMeshProvider> CreateArms(Transform papochka);
|
||||||
|
void ReleaseArms(ArmsMeshProvider arms);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
using Code.Gameplay.Character.Core;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Player
|
|
||||||
{
|
|
||||||
public interface IPlayerProvider
|
|
||||||
{
|
|
||||||
CharacterProvider Character { get; }
|
|
||||||
PlayerHealth Health { get; }
|
|
||||||
bool IsSpawned { get; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 8fdfaa773e8645d5a2d400c0317b9894
|
|
||||||
timeCreated: 1763237368
|
|
||||||
@@ -7,12 +7,13 @@ namespace Code.Gameplay.Player
|
|||||||
{
|
{
|
||||||
private static readonly int Velocity = Animator.StringToHash("Velocity");
|
private static readonly int Velocity = Animator.StringToHash("Velocity");
|
||||||
|
|
||||||
[SerializeField] private Animator playerAnimator;
|
private Animator _playerAnimator;
|
||||||
|
public void SetAnimator(Animator animator) => _playerAnimator = animator;
|
||||||
[SerializeField] private KinematicCharacterMotor kinematicCharacterMotor;
|
[SerializeField] private KinematicCharacterMotor kinematicCharacterMotor;
|
||||||
|
|
||||||
private void SetVelocity(float velocity)
|
private void SetVelocity(float velocity)
|
||||||
{
|
{
|
||||||
playerAnimator.SetFloat(Velocity, velocity);
|
_playerAnimator.SetFloat(Velocity, velocity);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ namespace Code.Gameplay.Player
|
|||||||
public class PlayerFactory : IPlayerFactory
|
public class PlayerFactory : IPlayerFactory
|
||||||
{
|
{
|
||||||
[Inject] PlayerConfig _playerConfig;
|
[Inject] PlayerConfig _playerConfig;
|
||||||
[Inject] private IPlayerProvider _playerProvider;
|
|
||||||
|
|
||||||
public PlayerHealth CreatePlayerHealth(int count = -1)
|
public PlayerHealth CreatePlayerHealth(int count = -1)
|
||||||
{
|
{
|
||||||
@@ -26,21 +25,18 @@ namespace Code.Gameplay.Player
|
|||||||
|
|
||||||
public async UniTask<CharacterProvider> CreatePlayer()
|
public async UniTask<CharacterProvider> CreatePlayer()
|
||||||
{
|
{
|
||||||
var go = await Addressables.InstantiateAsync(_playerConfig.characterPrefab).ToUniTask();
|
CharacterProvider characterProvider = (await Addressables.InstantiateAsync(_playerConfig.characterPrefab).ToUniTask()).GetComponent<CharacterProvider>();
|
||||||
var provider = go.GetComponent<CharacterProvider>();
|
AttributeInjector.Inject(characterProvider, Container.ProjectContainer);
|
||||||
|
AttributeInjector.Inject(characterProvider.CustomCharacterController, Container.ProjectContainer);
|
||||||
AttributeInjector.Inject(provider, Container.ProjectContainer);
|
return characterProvider;
|
||||||
AttributeInjector.Inject(provider.CustomCharacterController, Container.ProjectContainer);
|
|
||||||
|
|
||||||
((PlayerProvider)_playerProvider).SetPlayer(provider, _playerConfig);
|
|
||||||
|
|
||||||
return provider;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ReleasePlayer(CharacterProvider characterProvider)
|
public void ReleasePlayer(CharacterProvider characterProvider)
|
||||||
{
|
{
|
||||||
((PlayerProvider)_playerProvider).ClearPlayer();
|
|
||||||
Addressables.ReleaseInstance(characterProvider.gameObject);
|
Addressables.ReleaseInstance(characterProvider.gameObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async UniTask<ArmsMeshProvider> CreateArms(Transform papochka) => (await Addressables.InstantiateAsync(_playerConfig.armsMeshPrefab, papochka).ToUniTask()).GetComponent<ArmsMeshProvider>();
|
||||||
|
public void ReleaseArms(ArmsMeshProvider arms) => Addressables.ReleaseInstance(arms.gameObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
using Code.Configs;
|
|
||||||
using Code.Gameplay.Character.Core;
|
|
||||||
|
|
||||||
namespace Code.Gameplay.Player
|
|
||||||
{
|
|
||||||
public class PlayerProvider : IPlayerProvider
|
|
||||||
{
|
|
||||||
public CharacterProvider Character { get; private set; }
|
|
||||||
|
|
||||||
public PlayerHealth Health { get; private set; }
|
|
||||||
|
|
||||||
public bool IsSpawned => Character != null;
|
|
||||||
|
|
||||||
internal void SetPlayer(CharacterProvider character, PlayerConfig config)
|
|
||||||
{
|
|
||||||
Character = character;
|
|
||||||
Health = new PlayerHealth(config.maxHealth);
|
|
||||||
}
|
|
||||||
|
|
||||||
internal void ClearPlayer()
|
|
||||||
{
|
|
||||||
Character = null;
|
|
||||||
Health = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0dbe29c5f0e9431db8c8da25eeb8fa95
|
|
||||||
timeCreated: 1763237388
|
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using Code.Gameplay.Orders.Order;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Serialization;
|
using UnityEngine.Serialization;
|
||||||
|
|
||||||
@@ -8,11 +9,13 @@ namespace Code.Scenes.SceneEnvironments
|
|||||||
{
|
{
|
||||||
[FormerlySerializedAs("sfxTarget")] public Transform debugSfxTarget;
|
[FormerlySerializedAs("sfxTarget")] public Transform debugSfxTarget;
|
||||||
public Transform playerSpawnPoint;
|
public Transform playerSpawnPoint;
|
||||||
|
public OrderDispenser debugTube;
|
||||||
|
|
||||||
public void TransitVariables(GameplaySceneEnvironment env)
|
public void TransitVariables(GameplaySceneEnvironment env)
|
||||||
{
|
{
|
||||||
debugSfxTarget = env.debugSfxTarget;
|
debugSfxTarget = env.debugSfxTarget;
|
||||||
playerSpawnPoint = env.playerSpawnPoint;
|
playerSpawnPoint = env.playerSpawnPoint;
|
||||||
|
debugTube = env.debugTube;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -30,7 +30,7 @@ namespace Code.Scenes
|
|||||||
callBack?.Invoke();
|
callBack?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async UniTask LoadSceneAsyncAwaitable(int sceneId, float waitFor = 0)
|
public async UniTask LoadSceneAsyncAwaitable(int sceneId, float waitFor = 0f)
|
||||||
{
|
{
|
||||||
await UniTask.WhenAll(
|
await UniTask.WhenAll(
|
||||||
UniTask.Delay(TimeSpan.FromSeconds(waitFor)),
|
UniTask.Delay(TimeSpan.FromSeconds(waitFor)),
|
||||||
|
|||||||
@@ -21,9 +21,8 @@ namespace Code.StaticData
|
|||||||
SFXListConfig SFXListConfig { get; }
|
SFXListConfig SFXListConfig { get; }
|
||||||
DispatcherSoundListConfig DispatcherSoundListConfig { get; }
|
DispatcherSoundListConfig DispatcherSoundListConfig { get; }
|
||||||
EnemiesSoundListConfig EnemiesSoundListConfig { get; }
|
EnemiesSoundListConfig EnemiesSoundListConfig { get; }
|
||||||
DrunkenGrandpaConfig DrunkenGrandpaConfig { get; }
|
OrderServiceConfig OrderServiceConfig { get; }
|
||||||
CockroachConfig CockroachConfig { get; }
|
OrderBoxConfig OrderBoxConfig { get; }
|
||||||
FogConfig FogConfig { get; }
|
|
||||||
void Load();
|
void Load();
|
||||||
Task<T> InstantiateAsset<T>(AssetReference assetReference) where T : Behaviour;
|
Task<T> InstantiateAsset<T>(AssetReference assetReference) where T : Behaviour;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,9 +20,8 @@ namespace Code.StaticData
|
|||||||
public SFXListConfig SFXListConfig { get; private set; }
|
public SFXListConfig SFXListConfig { get; private set; }
|
||||||
public DispatcherSoundListConfig DispatcherSoundListConfig { get; private set; }
|
public DispatcherSoundListConfig DispatcherSoundListConfig { get; private set; }
|
||||||
public EnemiesSoundListConfig EnemiesSoundListConfig { get; private set; }
|
public EnemiesSoundListConfig EnemiesSoundListConfig { get; private set; }
|
||||||
public DrunkenGrandpaConfig DrunkenGrandpaConfig {get; private set;}
|
public OrderServiceConfig OrderServiceConfig { get; private set; }
|
||||||
public CockroachConfig CockroachConfig { get; private set; }
|
public OrderBoxConfig OrderBoxConfig { get; private set; }
|
||||||
public FogConfig FogConfig { get; private set; }
|
|
||||||
|
|
||||||
public void Load()
|
public void Load()
|
||||||
{
|
{
|
||||||
@@ -32,9 +31,10 @@ namespace Code.StaticData
|
|||||||
CharacterConfig = Resources.Load<CharacterConfig>(string.Format(StringPaths.ConfigSingle, "App", "CharacterConfig"));
|
CharacterConfig = Resources.Load<CharacterConfig>(string.Format(StringPaths.ConfigSingle, "App", "CharacterConfig"));
|
||||||
UIConfig = Resources.Load<UIConfig>(string.Format(StringPaths.ConfigSingle, "App", "UIConfig"));
|
UIConfig = Resources.Load<UIConfig>(string.Format(StringPaths.ConfigSingle, "App", "UIConfig"));
|
||||||
PlayerConfig = Resources.Load<PlayerConfig>(string.Format(StringPaths.ConfigSingle, "App", "PlayerConfig"));
|
PlayerConfig = Resources.Load<PlayerConfig>(string.Format(StringPaths.ConfigSingle, "App", "PlayerConfig"));
|
||||||
|
OrderServiceConfig = Resources.Load<OrderServiceConfig>(string.Format(StringPaths.ConfigSingle, "Gameplay", "OrderServiceConfig"));
|
||||||
|
OrderBoxConfig = Resources.Load<OrderBoxConfig>(string.Format(StringPaths.ConfigSingle, "Gameplay", "OrderBoxConfig"));
|
||||||
|
|
||||||
LoadAudioConfigs();
|
LoadAudioConfigs();
|
||||||
LoadEnemiesConfigs();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LoadAudioConfigs()
|
private void LoadAudioConfigs()
|
||||||
@@ -46,13 +46,6 @@ namespace Code.StaticData
|
|||||||
EnemiesSoundListConfig = Resources.Load<EnemiesSoundListConfig>(string.Format(StringPaths.ConfigSingle, "Audio", "EnemiesSoundListConfig"));
|
EnemiesSoundListConfig = Resources.Load<EnemiesSoundListConfig>(string.Format(StringPaths.ConfigSingle, "Audio", "EnemiesSoundListConfig"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LoadEnemiesConfigs()
|
|
||||||
{
|
|
||||||
DrunkenGrandpaConfig = Resources.Load<DrunkenGrandpaConfig>(string.Format(StringPaths.ConfigSingle, "Enemies", "DrunkenGrandpaConfig"));
|
|
||||||
CockroachConfig = Resources.Load<CockroachConfig>(string.Format(StringPaths.ConfigSingle, "Enemies", "CockroachConfig"));
|
|
||||||
FogConfig = Resources.Load<FogConfig>(string.Format(StringPaths.ConfigSingle, "Enemies", "FogConfig"));
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task<T> InstantiateAsset<T>(AssetReference assetReference) where T : Behaviour
|
public async Task<T> InstantiateAsset<T>(AssetReference assetReference) where T : Behaviour
|
||||||
{
|
{
|
||||||
return (await Addressables.InstantiateAsync(assetReference).ToUniTask()).GetComponent<T>();
|
return (await Addressables.InstantiateAsync(assetReference).ToUniTask()).GetComponent<T>();
|
||||||
|
|||||||
@@ -2,10 +2,9 @@ using Code.Gameplay.Player;
|
|||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
using TMPro;
|
using TMPro;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Serialization;
|
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
|
||||||
namespace Code.UI
|
namespace Code.UI.Panels
|
||||||
{
|
{
|
||||||
public class GameplayPanel : UIElement
|
public class GameplayPanel : UIElement
|
||||||
{
|
{
|
||||||
@@ -16,6 +15,7 @@ namespace Code.UI
|
|||||||
[SerializeField] private float dispatcherTransitionTime = 0.5f;
|
[SerializeField] private float dispatcherTransitionTime = 0.5f;
|
||||||
[Header("Timer")]
|
[Header("Timer")]
|
||||||
[SerializeField] private TMP_Text timer;
|
[SerializeField] private TMP_Text timer;
|
||||||
|
public TMP_Text Timer => timer;
|
||||||
[Header("HealthBar")]
|
[Header("HealthBar")]
|
||||||
[SerializeField] private Image healthBar;
|
[SerializeField] private Image healthBar;
|
||||||
[Header("MoneyBar")]
|
[Header("MoneyBar")]
|
||||||
@@ -41,11 +41,6 @@ namespace Code.UI
|
|||||||
health.OnDamage += HealthUpdate;
|
health.OnDamage += HealthUpdate;
|
||||||
HealthUpdate(0,health);
|
HealthUpdate(0,health);
|
||||||
}
|
}
|
||||||
private void Update()
|
|
||||||
{
|
|
||||||
timer.text = Time.deltaTime.ToString();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void SummonDispatcher()
|
public void SummonDispatcher()
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
|||||||
@@ -154,6 +154,7 @@ AudioMixerSnapshotController:
|
|||||||
m_SnapshotID: 6d6b0cfa14637d5f0a34277934971c34
|
m_SnapshotID: 6d6b0cfa14637d5f0a34277934971c34
|
||||||
m_FloatValues:
|
m_FloatValues:
|
||||||
b9fc0df121fe7134e9cbd35aa5a65755: -80
|
b9fc0df121fe7134e9cbd35aa5a65755: -80
|
||||||
|
4c469b14481ac855fb9fb2989e6e6b94: -14.221897
|
||||||
ddab7e07de3c686e296ff10b1cd77a47: -80
|
ddab7e07de3c686e296ff10b1cd77a47: -80
|
||||||
m_TransitionOverrides: {}
|
m_TransitionOverrides: {}
|
||||||
--- !u!241 &24100000
|
--- !u!241 &24100000
|
||||||
@@ -189,7 +190,7 @@ AudioMixerController:
|
|||||||
- af6d3dead2e9e4848a2ca2fa55634108
|
- af6d3dead2e9e4848a2ca2fa55634108
|
||||||
name: View
|
name: View
|
||||||
m_CurrentViewIndex: 0
|
m_CurrentViewIndex: 0
|
||||||
m_TargetSnapshot: {fileID: -5566153147845745614}
|
m_TargetSnapshot: {fileID: -1214924791136564940}
|
||||||
--- !u!243 &24300002
|
--- !u!243 &24300002
|
||||||
AudioMixerGroupController:
|
AudioMixerGroupController:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -19,3 +19,9 @@ MonoBehaviour:
|
|||||||
m_SubObjectType:
|
m_SubObjectType:
|
||||||
m_SubObjectGUID:
|
m_SubObjectGUID:
|
||||||
m_EditorAssetChanged: 0
|
m_EditorAssetChanged: 0
|
||||||
|
armsMeshPrefab:
|
||||||
|
m_AssetGUID: 1d4767c722c05b5d6b96bb226d378c65
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
@@ -13,12 +13,32 @@ MonoBehaviour:
|
|||||||
m_Name: SoundtrackListConfig
|
m_Name: SoundtrackListConfig
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.SoundtrackListConfig
|
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.SoundtrackListConfig
|
||||||
peacefulSoundtrack:
|
peacefulSoundtrack:
|
||||||
|
- m_AssetGUID: 803e40b883c823b89a91aa8b9d9fc483
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
|
- m_AssetGUID: ebe18293a5ef86704b23dad3a1786476
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
- m_AssetGUID: 803e40b883c823b89a91aa8b9d9fc483
|
- m_AssetGUID: 803e40b883c823b89a91aa8b9d9fc483
|
||||||
m_SubObjectName:
|
m_SubObjectName:
|
||||||
m_SubObjectType:
|
m_SubObjectType:
|
||||||
m_SubObjectGUID:
|
m_SubObjectGUID:
|
||||||
m_EditorAssetChanged: 0
|
m_EditorAssetChanged: 0
|
||||||
actionSoundtrack:
|
actionSoundtrack:
|
||||||
|
- m_AssetGUID: ebe18293a5ef86704b23dad3a1786476
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
|
- m_AssetGUID: f4b6fa54ecac6cc418f98824491aa17a
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
- m_AssetGUID: ebe18293a5ef86704b23dad3a1786476
|
- m_AssetGUID: ebe18293a5ef86704b23dad3a1786476
|
||||||
m_SubObjectName:
|
m_SubObjectName:
|
||||||
m_SubObjectType:
|
m_SubObjectType:
|
||||||
@@ -35,3 +55,8 @@ MonoBehaviour:
|
|||||||
m_SubObjectType:
|
m_SubObjectType:
|
||||||
m_SubObjectGUID:
|
m_SubObjectGUID:
|
||||||
m_EditorAssetChanged: 0
|
m_EditorAssetChanged: 0
|
||||||
|
- m_AssetGUID: ebe18293a5ef86704b23dad3a1786476
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
%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: 7bc162d3127949aa950d0738beee99a4, type: 3}
|
|
||||||
m_Name: CockroachConfig
|
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.CockroachConfig
|
|
||||||
cockroachPrefab:
|
|
||||||
m_AssetGUID:
|
|
||||||
m_SubObjectName:
|
|
||||||
m_SubObjectType:
|
|
||||||
m_SubObjectGUID:
|
|
||||||
m_EditorAssetChanged: 0
|
|
||||||
damage: 2
|
|
||||||
attackCooldown: 1.5
|
|
||||||
detectionRange: 20
|
|
||||||
attackRange: 1.3
|
|
||||||
speed: 6
|
|
||||||
isStunnable: 0
|
|
||||||
stunDuration: 0
|
|
||||||
usesIdleMovement: 1
|
|
||||||
idleWanderRadius: 3
|
|
||||||
idleMoveDurationMin: 0.3
|
|
||||||
idleMoveDurationMax: 1
|
|
||||||
idlePauseDurationMin: 0.1
|
|
||||||
idlePauseDurationMax: 0.8
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
%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: 4d157e8891074b90957a7434cff0ae71, type: 3}
|
|
||||||
m_Name: DrunkenGrandpaConfig
|
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.DrunkenGrandpaConfig
|
|
||||||
drunkenGrandpaPrefab:
|
|
||||||
m_AssetGUID:
|
|
||||||
m_SubObjectName:
|
|
||||||
m_SubObjectType:
|
|
||||||
m_SubObjectGUID:
|
|
||||||
m_EditorAssetChanged: 0
|
|
||||||
damage: 2
|
|
||||||
attackCooldown: 5
|
|
||||||
detectionRange: 10
|
|
||||||
attackRange: 1.5
|
|
||||||
speed: 3
|
|
||||||
isStunnable: 1
|
|
||||||
stunDuration: 3
|
|
||||||
usesIdleMovement: 1
|
|
||||||
idleWanderRadius: 5
|
|
||||||
idleMoveDurationMin: 1
|
|
||||||
idleMoveDurationMax: 5
|
|
||||||
idlePauseDurationMin: 3
|
|
||||||
idlePauseDurationMax: 5
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
%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: aa4dd2a5cce24902a2918488b5751f2f, type: 3}
|
|
||||||
m_Name: FogConfig
|
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.FogConfig
|
|
||||||
fogPrefab:
|
|
||||||
m_AssetGUID:
|
|
||||||
m_SubObjectName:
|
|
||||||
m_SubObjectType:
|
|
||||||
m_SubObjectGUID:
|
|
||||||
m_EditorAssetChanged: 0
|
|
||||||
damage: 2147483647
|
|
||||||
attackCooldown: 0
|
|
||||||
detectionRange: 0
|
|
||||||
attackRange: 5
|
|
||||||
speed: 1.5
|
|
||||||
isStunnable: 0
|
|
||||||
stunDuration: 0
|
|
||||||
usesIdleMovement: 0
|
|
||||||
idleWanderRadius: 0
|
|
||||||
idleMoveDurationMin: 0
|
|
||||||
idleMoveDurationMax: 0
|
|
||||||
idlePauseDurationMin: 0
|
|
||||||
idlePauseDurationMax: 0
|
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 6e3b9428d285e53a4a265495e70bd230
|
guid: 09d8a07b00c1aa2f883b2aeb975d70e6
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
%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: 6af4f53d425a41c78ef889fd7e5c3197, type: 3}
|
||||||
|
m_Name: OrderBoxConfig
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.OrderBoxConfig
|
||||||
|
activationTime: 2
|
||||||
|
floatingCurve:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Curve:
|
||||||
|
- serializedVersion: 3
|
||||||
|
time: 0
|
||||||
|
value: 0
|
||||||
|
inSlope: 1.4374113
|
||||||
|
outSlope: 1.4374113
|
||||||
|
tangentMode: 34
|
||||||
|
weightedMode: 0
|
||||||
|
inWeight: 0
|
||||||
|
outWeight: 0.33333334
|
||||||
|
- serializedVersion: 3
|
||||||
|
time: 0.48992503
|
||||||
|
value: 0.70422375
|
||||||
|
inSlope: 0.028391719
|
||||||
|
outSlope: 0.028391719
|
||||||
|
tangentMode: 34
|
||||||
|
weightedMode: 0
|
||||||
|
inWeight: 0.33333334
|
||||||
|
outWeight: 0.33333334
|
||||||
|
- serializedVersion: 3
|
||||||
|
time: 1
|
||||||
|
value: 0
|
||||||
|
inSlope: -1.3806279
|
||||||
|
outSlope: -1.3806279
|
||||||
|
tangentMode: 34
|
||||||
|
weightedMode: 0
|
||||||
|
inWeight: 0.33333334
|
||||||
|
outWeight: 0
|
||||||
|
m_PreInfinity: 2
|
||||||
|
m_PostInfinity: 2
|
||||||
|
m_RotationOrder: 4
|
||||||
|
curveLength: 1
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ac804127a406a864f8c178cd56e2b210
|
guid: 15fc4dd72b7b0ac0c9210a07f70b4007
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 11400000
|
mainObjectFileID: 11400000
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
%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: 95639b2744d24b66842ac3d71d056129, type: 3}
|
||||||
|
m_Name: OrderFactoryConfig
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.OrderFactoryConfig
|
||||||
|
orderDispenserPrefab:
|
||||||
|
m_AssetGUID: 751890caa1647ec6689f24933fbcb770
|
||||||
|
m_SubObjectName:
|
||||||
|
m_SubObjectType:
|
||||||
|
m_SubObjectGUID:
|
||||||
|
m_EditorAssetChanged: 0
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: fd5e843255fee395ea687b9d5ad5741d
|
guid: 38984bc3c0ffd57a0a88f0da6f96e470
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 11400000
|
mainObjectFileID: 11400000
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
%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: ee2550c3e4874575ac3aecadfcc42475, type: 3}
|
||||||
|
m_Name: OrderServiceConfig
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Code.Configs.OrderServiceConfig
|
||||||
|
timeBounds: {x: 35, y: 120}
|
||||||
|
koefRooms: 2
|
||||||
|
koefOvertime: 4
|
||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 367017c1e176ddbbd9135cb82dbd94d2
|
guid: a35867b942225319bb9c26db15511aaf
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 11400000
|
mainObjectFileID: 11400000
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: dd66bc1698bb3972b97125d4d6e4ea22
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -1,139 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!114 &-2147114197879300112
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 11
|
|
||||||
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
|
||||||
version: 10
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 8
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: DrunkenGrandpa
|
|
||||||
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
|
||||||
m_Parent: {fileID: 0}
|
|
||||||
m_ModifiedSerializedProperties: 0
|
|
||||||
m_ValidKeywords:
|
|
||||||
- _METALLICSPECGLOSSMAP
|
|
||||||
- _NORMALMAP
|
|
||||||
m_InvalidKeywords: []
|
|
||||||
m_LightmapFlags: 4
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap:
|
|
||||||
RenderType: Opaque
|
|
||||||
disabledShaderPasses:
|
|
||||||
- MOTIONVECTORS
|
|
||||||
m_LockedProperties:
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BaseMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 0a8ed27d17fe9b085834fba6972c0a8a, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 6c92883f2935443458f5dadf53dae100, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 0a8ed27d17fe9b085834fba6972c0a8a, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: bc57aa85d09f3b056ab86a1439ee1e00, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _OcclusionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _ParallaxMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _SpecGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_Lightmaps:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_LightmapsInd:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_ShadowMasks:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
m_Ints: []
|
|
||||||
m_Floats:
|
|
||||||
- _AddPrecomputedVelocity: 0
|
|
||||||
- _AlphaClip: 0
|
|
||||||
- _AlphaToMask: 0
|
|
||||||
- _Blend: 0
|
|
||||||
- _BlendModePreserveSpecular: 1
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _ClearCoatMask: 0
|
|
||||||
- _ClearCoatSmoothness: 0
|
|
||||||
- _Cull: 2
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailAlbedoMapScale: 1
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _DstBlendAlpha: 0
|
|
||||||
- _EnvironmentReflections: 1
|
|
||||||
- _GlossMapScale: 0
|
|
||||||
- _Glossiness: 0
|
|
||||||
- _GlossyReflections: 0
|
|
||||||
- _Metallic: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.005
|
|
||||||
- _QueueOffset: 0
|
|
||||||
- _ReceiveShadows: 1
|
|
||||||
- _Smoothness: 0.5
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _SrcBlendAlpha: 1
|
|
||||||
- _Surface: 0
|
|
||||||
- _WorkflowMode: 1
|
|
||||||
- _XRMotionVectorsPass: 1
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
|
||||||
m_BuildTextureStacks: []
|
|
||||||
m_AllowLocking: 1
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 3d74b98a8711ab75e813aea13cb6211e
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 2100000
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
Binary file not shown.
@@ -1,130 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0a8ed27d17fe9b085834fba6972c0a8a
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable: []
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 13
|
|
||||||
mipmaps:
|
|
||||||
mipMapMode: 0
|
|
||||||
enableMipMap: 1
|
|
||||||
sRGBTexture: 1
|
|
||||||
linearTexture: 0
|
|
||||||
fadeOut: 0
|
|
||||||
borderMipMap: 0
|
|
||||||
mipMapsPreserveCoverage: 0
|
|
||||||
alphaTestReferenceValue: 0.5
|
|
||||||
mipMapFadeDistanceStart: 1
|
|
||||||
mipMapFadeDistanceEnd: 3
|
|
||||||
bumpmap:
|
|
||||||
convertToNormalMap: 0
|
|
||||||
externalNormalMap: 0
|
|
||||||
heightScale: 0.25
|
|
||||||
normalMapFilter: 0
|
|
||||||
flipGreenChannel: 0
|
|
||||||
isReadable: 0
|
|
||||||
streamingMipmaps: 0
|
|
||||||
streamingMipmapsPriority: 0
|
|
||||||
vTOnly: 0
|
|
||||||
ignoreMipmapLimit: 0
|
|
||||||
grayScaleToAlpha: 0
|
|
||||||
generateCubemap: 6
|
|
||||||
cubemapConvolution: 0
|
|
||||||
seamlessCubemap: 0
|
|
||||||
textureFormat: 1
|
|
||||||
maxTextureSize: 2048
|
|
||||||
textureSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
filterMode: 1
|
|
||||||
aniso: 1
|
|
||||||
mipBias: 0
|
|
||||||
wrapU: 0
|
|
||||||
wrapV: 0
|
|
||||||
wrapW: 0
|
|
||||||
nPOTScale: 1
|
|
||||||
lightmap: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
spriteMode: 0
|
|
||||||
spriteExtrude: 1
|
|
||||||
spriteMeshType: 1
|
|
||||||
alignment: 0
|
|
||||||
spritePivot: {x: 0.5, y: 0.5}
|
|
||||||
spritePixelsToUnits: 100
|
|
||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
|
||||||
alphaUsage: 1
|
|
||||||
alphaIsTransparency: 0
|
|
||||||
spriteTessellationDetail: -1
|
|
||||||
textureType: 0
|
|
||||||
textureShape: 1
|
|
||||||
singleChannelComponent: 0
|
|
||||||
flipbookRows: 1
|
|
||||||
flipbookColumns: 1
|
|
||||||
maxTextureSizeSet: 0
|
|
||||||
compressionQualitySet: 0
|
|
||||||
textureFormatSet: 0
|
|
||||||
ignorePngGamma: 0
|
|
||||||
applyGammaDecoding: 0
|
|
||||||
swizzle: 50462976
|
|
||||||
cookieLightType: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Standalone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Android
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites: []
|
|
||||||
outline: []
|
|
||||||
customData:
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID:
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
spriteCustomMetadata:
|
|
||||||
entries: []
|
|
||||||
nameFileIdTable: {}
|
|
||||||
mipmapLimitGroupName:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
BIN
Binary file not shown.
-130
@@ -1,130 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 6c92883f2935443458f5dadf53dae100
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable: []
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 13
|
|
||||||
mipmaps:
|
|
||||||
mipMapMode: 0
|
|
||||||
enableMipMap: 1
|
|
||||||
sRGBTexture: 0
|
|
||||||
linearTexture: 0
|
|
||||||
fadeOut: 0
|
|
||||||
borderMipMap: 0
|
|
||||||
mipMapsPreserveCoverage: 0
|
|
||||||
alphaTestReferenceValue: 0.5
|
|
||||||
mipMapFadeDistanceStart: 1
|
|
||||||
mipMapFadeDistanceEnd: 3
|
|
||||||
bumpmap:
|
|
||||||
convertToNormalMap: 0
|
|
||||||
externalNormalMap: 0
|
|
||||||
heightScale: 0.25
|
|
||||||
normalMapFilter: 0
|
|
||||||
flipGreenChannel: 0
|
|
||||||
isReadable: 0
|
|
||||||
streamingMipmaps: 0
|
|
||||||
streamingMipmapsPriority: 0
|
|
||||||
vTOnly: 0
|
|
||||||
ignoreMipmapLimit: 0
|
|
||||||
grayScaleToAlpha: 0
|
|
||||||
generateCubemap: 6
|
|
||||||
cubemapConvolution: 0
|
|
||||||
seamlessCubemap: 0
|
|
||||||
textureFormat: 1
|
|
||||||
maxTextureSize: 2048
|
|
||||||
textureSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
filterMode: 1
|
|
||||||
aniso: 1
|
|
||||||
mipBias: 0
|
|
||||||
wrapU: 0
|
|
||||||
wrapV: 0
|
|
||||||
wrapW: 0
|
|
||||||
nPOTScale: 1
|
|
||||||
lightmap: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
spriteMode: 0
|
|
||||||
spriteExtrude: 1
|
|
||||||
spriteMeshType: 1
|
|
||||||
alignment: 0
|
|
||||||
spritePivot: {x: 0.5, y: 0.5}
|
|
||||||
spritePixelsToUnits: 100
|
|
||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
|
||||||
alphaUsage: 1
|
|
||||||
alphaIsTransparency: 0
|
|
||||||
spriteTessellationDetail: -1
|
|
||||||
textureType: 1
|
|
||||||
textureShape: 1
|
|
||||||
singleChannelComponent: 0
|
|
||||||
flipbookRows: 1
|
|
||||||
flipbookColumns: 1
|
|
||||||
maxTextureSizeSet: 0
|
|
||||||
compressionQualitySet: 0
|
|
||||||
textureFormatSet: 0
|
|
||||||
ignorePngGamma: 0
|
|
||||||
applyGammaDecoding: 0
|
|
||||||
swizzle: 50462976
|
|
||||||
cookieLightType: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Standalone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Android
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites: []
|
|
||||||
outline: []
|
|
||||||
customData:
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID:
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
spriteCustomMetadata:
|
|
||||||
entries: []
|
|
||||||
nameFileIdTable: {}
|
|
||||||
mipmapLimitGroupName:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
BIN
Binary file not shown.
-130
@@ -1,130 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: bc57aa85d09f3b056ab86a1439ee1e00
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable: []
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 13
|
|
||||||
mipmaps:
|
|
||||||
mipMapMode: 0
|
|
||||||
enableMipMap: 1
|
|
||||||
sRGBTexture: 1
|
|
||||||
linearTexture: 0
|
|
||||||
fadeOut: 0
|
|
||||||
borderMipMap: 0
|
|
||||||
mipMapsPreserveCoverage: 0
|
|
||||||
alphaTestReferenceValue: 0.5
|
|
||||||
mipMapFadeDistanceStart: 1
|
|
||||||
mipMapFadeDistanceEnd: 3
|
|
||||||
bumpmap:
|
|
||||||
convertToNormalMap: 0
|
|
||||||
externalNormalMap: 0
|
|
||||||
heightScale: 0.25
|
|
||||||
normalMapFilter: 0
|
|
||||||
flipGreenChannel: 0
|
|
||||||
isReadable: 0
|
|
||||||
streamingMipmaps: 0
|
|
||||||
streamingMipmapsPriority: 0
|
|
||||||
vTOnly: 0
|
|
||||||
ignoreMipmapLimit: 0
|
|
||||||
grayScaleToAlpha: 0
|
|
||||||
generateCubemap: 6
|
|
||||||
cubemapConvolution: 0
|
|
||||||
seamlessCubemap: 0
|
|
||||||
textureFormat: 1
|
|
||||||
maxTextureSize: 2048
|
|
||||||
textureSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
filterMode: 1
|
|
||||||
aniso: 1
|
|
||||||
mipBias: 0
|
|
||||||
wrapU: 0
|
|
||||||
wrapV: 0
|
|
||||||
wrapW: 0
|
|
||||||
nPOTScale: 1
|
|
||||||
lightmap: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
spriteMode: 0
|
|
||||||
spriteExtrude: 1
|
|
||||||
spriteMeshType: 1
|
|
||||||
alignment: 0
|
|
||||||
spritePivot: {x: 0.5, y: 0.5}
|
|
||||||
spritePixelsToUnits: 100
|
|
||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
|
||||||
alphaUsage: 1
|
|
||||||
alphaIsTransparency: 0
|
|
||||||
spriteTessellationDetail: -1
|
|
||||||
textureType: 0
|
|
||||||
textureShape: 1
|
|
||||||
singleChannelComponent: 0
|
|
||||||
flipbookRows: 1
|
|
||||||
flipbookColumns: 1
|
|
||||||
maxTextureSizeSet: 0
|
|
||||||
compressionQualitySet: 0
|
|
||||||
textureFormatSet: 0
|
|
||||||
ignorePngGamma: 0
|
|
||||||
applyGammaDecoding: 0
|
|
||||||
swizzle: 50462976
|
|
||||||
cookieLightType: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Standalone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 4
|
|
||||||
buildTarget: Android
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
ignorePlatformSupport: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites: []
|
|
||||||
outline: []
|
|
||||||
customData:
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID:
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
spriteCustomMetadata:
|
|
||||||
entries: []
|
|
||||||
nameFileIdTable: {}
|
|
||||||
mipmapLimitGroupName:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
Binary file not shown.
Binary file not shown.
+3
-3
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: b85158e4bf04f7c4b88db54b3d980351
|
guid: 7df3c003de36ea5608ec08e077590a09
|
||||||
ModelImporter:
|
ModelImporter:
|
||||||
serializedVersion: 24200
|
serializedVersion: 24200
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
@@ -92,7 +92,7 @@ ModelImporter:
|
|||||||
legStretch: 0.05
|
legStretch: 0.05
|
||||||
feetSpacing: 0
|
feetSpacing: 0
|
||||||
globalScale: 1
|
globalScale: 1
|
||||||
rootMotionBoneName: root
|
rootMotionBoneName:
|
||||||
hasTranslationDoF: 0
|
hasTranslationDoF: 0
|
||||||
hasExtraRoot: 0
|
hasExtraRoot: 0
|
||||||
skeletonHasParents: 1
|
skeletonHasParents: 1
|
||||||
@@ -100,7 +100,7 @@ ModelImporter:
|
|||||||
autoGenerateAvatarMappingIfUnspecified: 1
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
animationType: 2
|
animationType: 2
|
||||||
humanoidOversampling: 1
|
humanoidOversampling: 1
|
||||||
avatarSetup: 1
|
avatarSetup: 0
|
||||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
importBlendShapeDeformPercent: 1
|
importBlendShapeDeformPercent: 1
|
||||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
Binary file not shown.
@@ -0,0 +1,110 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 332f301c5f054a7df80785fdefd47cb4
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 24200
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 0
|
||||||
|
motionNodeName:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
importAnimatedCustomProperties: 0
|
||||||
|
importConstraints: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
extraUserProperties: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 0
|
||||||
|
importLights: 0
|
||||||
|
nodeNameCollisionStrategy: 1
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
generateMeshLods: 0
|
||||||
|
meshLodGenerationFlags: 0
|
||||||
|
maximumMeshLod: -1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
normalCalculationMode: 4
|
||||||
|
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||||
|
blendShapeNormalImportMode: 1
|
||||||
|
normalSmoothingSource: 0
|
||||||
|
referencedClips: []
|
||||||
|
importAnimation: 1
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 3
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
globalScale: 1
|
||||||
|
rootMotionBoneName:
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
|
animationType: 2
|
||||||
|
humanoidOversampling: 1
|
||||||
|
avatarSetup: 0
|
||||||
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 1
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 89b8ea3befbb7ac3d9998f40fc1bb119
|
guid: 6ba8e76344dabbf13af813f7bea7f6e6
|
||||||
ModelImporter:
|
ModelImporter:
|
||||||
serializedVersion: 24200
|
serializedVersion: 24200
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
Binary file not shown.
@@ -0,0 +1,110 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8c44268c921316e02b33de5f8fbaefbd
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 24200
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 0
|
||||||
|
motionNodeName:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
importAnimatedCustomProperties: 0
|
||||||
|
importConstraints: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
extraUserProperties: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 0
|
||||||
|
importLights: 0
|
||||||
|
nodeNameCollisionStrategy: 1
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
generateMeshLods: 0
|
||||||
|
meshLodGenerationFlags: 0
|
||||||
|
maximumMeshLod: -1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
normalCalculationMode: 4
|
||||||
|
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||||
|
blendShapeNormalImportMode: 1
|
||||||
|
normalSmoothingSource: 0
|
||||||
|
referencedClips: []
|
||||||
|
importAnimation: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 3
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
globalScale: 1
|
||||||
|
rootMotionBoneName:
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 1
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
avatarSetup: 0
|
||||||
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 1
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -1,5 +1,57 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1102 &-7043403378478565280
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: mp_clapping
|
||||||
|
m_Speed: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions: []
|
||||||
|
m_StateMachineBehaviours: []
|
||||||
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
|
m_IKOnFeet: 0
|
||||||
|
m_WriteDefaultValues: 1
|
||||||
|
m_Mirror: 0
|
||||||
|
m_SpeedParameterActive: 0
|
||||||
|
m_MirrorParameterActive: 0
|
||||||
|
m_CycleOffsetParameterActive: 0
|
||||||
|
m_TimeParameterActive: 0
|
||||||
|
m_Motion: {fileID: 3547499754263378043, guid: fdcbb8593657d506fabab9c7ff1b24d0, type: 3}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
|
--- !u!1102 &-2520237455980583399
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: mp_gun_volley_2
|
||||||
|
m_Speed: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions: []
|
||||||
|
m_StateMachineBehaviours: []
|
||||||
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
|
m_IKOnFeet: 0
|
||||||
|
m_WriteDefaultValues: 1
|
||||||
|
m_Mirror: 0
|
||||||
|
m_SpeedParameterActive: 0
|
||||||
|
m_MirrorParameterActive: 0
|
||||||
|
m_CycleOffsetParameterActive: 0
|
||||||
|
m_TimeParameterActive: 0
|
||||||
|
m_Motion: {fileID: 5024885288434809407, guid: fae7e38c4cf16670996b82c8355e269a, type: 3}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
--- !u!91 &9100000
|
--- !u!91 &9100000
|
||||||
AnimatorController:
|
AnimatorController:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -37,7 +89,7 @@ BlendTree:
|
|||||||
m_Name: MovementBlendTree
|
m_Name: MovementBlendTree
|
||||||
m_Childs:
|
m_Childs:
|
||||||
- serializedVersion: 2
|
- serializedVersion: 2
|
||||||
m_Motion: {fileID: -8439424969872400937, guid: a7e412e490909bf47af7fe22cd5bd0bf, type: 3}
|
m_Motion: {fileID: 9017035348754885801, guid: 6dd32929f788d35afba7c6c6c124a92d, type: 3}
|
||||||
m_Threshold: 0
|
m_Threshold: 0
|
||||||
m_Position: {x: 0, y: 0}
|
m_Position: {x: 0, y: 0}
|
||||||
m_TimeScale: 1
|
m_TimeScale: 1
|
||||||
@@ -45,8 +97,8 @@ BlendTree:
|
|||||||
m_DirectBlendParameter: Blend
|
m_DirectBlendParameter: Blend
|
||||||
m_Mirror: 0
|
m_Mirror: 0
|
||||||
- serializedVersion: 2
|
- serializedVersion: 2
|
||||||
m_Motion: {fileID: 1770808807073381973, guid: 6ed541dfed802de44928541e1857e4c0, type: 3}
|
m_Motion: {fileID: -4320063115943924929, guid: 02296f680a0e6ed48a92d690d2d82b6e, type: 3}
|
||||||
m_Threshold: 1
|
m_Threshold: 10
|
||||||
m_Position: {x: 0, y: 0}
|
m_Position: {x: 0, y: 0}
|
||||||
m_TimeScale: 1
|
m_TimeScale: 1
|
||||||
m_CycleOffset: 0
|
m_CycleOffset: 0
|
||||||
@@ -55,10 +107,36 @@ BlendTree:
|
|||||||
m_BlendParameter: Velocity
|
m_BlendParameter: Velocity
|
||||||
m_BlendParameterY: Blend
|
m_BlendParameterY: Blend
|
||||||
m_MinThreshold: 0
|
m_MinThreshold: 0
|
||||||
m_MaxThreshold: 1
|
m_MaxThreshold: 10
|
||||||
m_UseAutomaticThresholds: 1
|
m_UseAutomaticThresholds: 1
|
||||||
m_NormalizedBlendValues: 0
|
m_NormalizedBlendValues: 0
|
||||||
m_BlendType: 0
|
m_BlendType: 0
|
||||||
|
--- !u!1102 &4001842930699683769
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: mp_getriddy_2
|
||||||
|
m_Speed: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions: []
|
||||||
|
m_StateMachineBehaviours: []
|
||||||
|
m_Position: {x: 50, y: 50, z: 0}
|
||||||
|
m_IKOnFeet: 0
|
||||||
|
m_WriteDefaultValues: 1
|
||||||
|
m_Mirror: 0
|
||||||
|
m_SpeedParameterActive: 0
|
||||||
|
m_MirrorParameterActive: 0
|
||||||
|
m_CycleOffsetParameterActive: 0
|
||||||
|
m_TimeParameterActive: 0
|
||||||
|
m_Motion: {fileID: -7308155286946282308, guid: 8c55cfe0387fb209d9487e7b2ed30842, type: 3}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
--- !u!1107 &4749464319161710948
|
--- !u!1107 &4749464319161710948
|
||||||
AnimatorStateMachine:
|
AnimatorStateMachine:
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
@@ -71,6 +149,15 @@ AnimatorStateMachine:
|
|||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: 8889563492703692874}
|
m_State: {fileID: 8889563492703692874}
|
||||||
m_Position: {x: 250, y: 90, z: 0}
|
m_Position: {x: 250, y: 90, z: 0}
|
||||||
|
- serializedVersion: 1
|
||||||
|
m_State: {fileID: -2520237455980583399}
|
||||||
|
m_Position: {x: 250, y: 330, z: 0}
|
||||||
|
- serializedVersion: 1
|
||||||
|
m_State: {fileID: 4001842930699683769}
|
||||||
|
m_Position: {x: 250, y: 400, z: 0}
|
||||||
|
- serializedVersion: 1
|
||||||
|
m_State: {fileID: -7043403378478565280}
|
||||||
|
m_Position: {x: 250, y: 260, z: 0}
|
||||||
m_ChildStateMachines: []
|
m_ChildStateMachines: []
|
||||||
m_AnyStateTransitions: []
|
m_AnyStateTransitions: []
|
||||||
m_EntryTransitions: []
|
m_EntryTransitions: []
|
||||||
|
|||||||
Binary file not shown.
@@ -31,7 +31,7 @@ ModelImporter:
|
|||||||
extraUserProperties: []
|
extraUserProperties: []
|
||||||
clipAnimations:
|
clipAnimations:
|
||||||
- serializedVersion: 16
|
- serializedVersion: 16
|
||||||
name: running
|
name: Running
|
||||||
takeName: root|root|root|Armature.002|mixamo.com|Layer0_remap
|
takeName: root|root|root|Armature.002|mixamo.com|Layer0_remap
|
||||||
internalID: -4320063115943924929
|
internalID: -4320063115943924929
|
||||||
firstFrame: 0
|
firstFrame: 0
|
||||||
@@ -39,11 +39,11 @@ ModelImporter:
|
|||||||
wrapMode: 0
|
wrapMode: 0
|
||||||
orientationOffsetY: 0
|
orientationOffsetY: 0
|
||||||
level: 0
|
level: 0
|
||||||
cycleOffset: 0
|
cycleOffset: 0.567
|
||||||
loop: 0
|
loop: 0
|
||||||
hasAdditiveReferencePose: 0
|
hasAdditiveReferencePose: 0
|
||||||
loopTime: 1
|
loopTime: 1
|
||||||
loopBlend: 1
|
loopBlend: 0
|
||||||
loopBlendOrientation: 0
|
loopBlendOrientation: 0
|
||||||
loopBlendPositionY: 0
|
loopBlendPositionY: 0
|
||||||
loopBlendPositionXZ: 0
|
loopBlendPositionXZ: 0
|
||||||
@@ -125,11 +125,11 @@ ModelImporter:
|
|||||||
hasTranslationDoF: 0
|
hasTranslationDoF: 0
|
||||||
hasExtraRoot: 0
|
hasExtraRoot: 0
|
||||||
skeletonHasParents: 1
|
skeletonHasParents: 1
|
||||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 6dd32929f788d35afba7c6c6c124a92d, type: 3}
|
||||||
autoGenerateAvatarMappingIfUnspecified: 1
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
animationType: 2
|
animationType: 2
|
||||||
humanoidOversampling: 1
|
humanoidOversampling: 1
|
||||||
avatarSetup: 1
|
avatarSetup: 2
|
||||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
importBlendShapeDeformPercent: 1
|
importBlendShapeDeformPercent: 1
|
||||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
|||||||
Binary file not shown.
Loaded 100 of 173 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user