0.3.2.5 버전 업데이트

This commit is contained in:
Nam Tae Gun 2024-10-27 18:44:22 +09:00
parent b54b4a8b43
commit 87f6ddf1ea
32 changed files with 326 additions and 172 deletions

View File

@ -20747,7 +20747,7 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
version: 1073741824 version: 1073741824
data: data:
dataString: UEsDBBQAAAgIAABIIeyASX/muwIAAAEGAAALACQAZ3JhcGgwLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFlVE1v4jAQ/SvI56VKoKVlb7tA2z20RaWrHjY9OPGEWBg78keBVvz3HTuGBEBIid58vXkzk2/CpamhsEo/aM6eFAPys0f8O/nRa42PsKVLJRf8Cw4+75zZyjvR4PNKLVeIpz7MqDVYzYtfcim8c4Kgk7xUej1jS5goYw3CJRUG0KSV9dESoe8e2caAXXx++Wdvj28FSAv60qufXKXRsZ8Or8bhFyKcLARd18A88zZwcIgcNIkl9hQ9kqsbX0kJwU2kROyuDi1PaG0cNoQOjFNsMZBpilfAl5W9TPBSlgYaPPEGTXdTrlGwJjn5rRoV19SsGoKfVDhfbnh3Hcg1mZ8u7KPGXGq1fjwUTxPfma14sXqlu4Ia25G5C09b/mnQaUPFiuYC3iuQz+pBKycZGq12PtQZGEw7qY7tTSooVq1fw/UMdPXlyNJ2sPvQ/XZhoX5sRbxu0b8GzEKoMIOY0lsiMvYpQeME/2A/YY9MLISo54jxb3TZXbhouOfaWDRFPhH1vnOcEDCQBUTd+95Benq5ctrnIrPA1Yvh7ERpCQGOBGuQVNjdHDPaky24tHV4nVnuqb+9yC7aDid1FhLg1j9JzkxztTkOW+MOm7DYh7d/H34IplKbJzDVi7OCy47a3vCMAk+UlM3mdsU8hC2cLmnRCbOwtU7DlFoaqiEdXDDWDUUtQ4R0QvhdDg0ERtiA/394fSuKdUWAybOS4QBPnoH+0nF2eiEkobd0zPLyZpDmo9u7vD/Mh5AXMMyTEYPROCXhhLhEuamYN3rFKeF2ybYXiefiM76CsdRpKsPkmaabB/61Vp3Jc1mqRaEB5EuT4dgsaCyCXxk2YxzbXIC1XIa9JN8ZEapYAcuOibIg7GxrNc3aLBmp+aeyHsnIJHwPM+Lh40Xi6n5y2PjiJ8lA4OiAvXEBa1p7U7In+/9QSwMEFAAACAgAAEgh7P2jyVJrAAAAdwAAAAkAJABtZXRhLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQGrVipLLSrOzM9TslIw1TPUM9RRUEovSizIKAYKgDmlmSkgdrSSQaJ5omVKUpqpkWGSmblFkq5xknFqUnKqcZKBWUqqmaWhUixQfUllQapfYm4qRE9AYklGWmZeSmZeup57UWaKO8hopdhaAFBLAQItABQAAAgIAABIIeyASX/muwIAAAEGAAALACQAAAAAAAAAAAAAAAAAAABncmFwaDAuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAVBLAQItABQAAAgIAABIIez9o8lSawAAAHcAAAAJACQAAAAAAAAAAAAAAAgDAABtZXRhLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFQSwUGAAAAAAIAAgC4AAAAvgMAAAAA dataString: UEsDBBQAAAgIAABIIeyIBIXztwIAAPUFAAALACQAZ3JhcGgwLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFlVE1v4jAQ/SvI56WC0tKyt12g7R7aotJVD0sPTjwhFsaO/FGgFf99ZxxDApUiJXrzZubNV76Y1K6C3Bt7b6V4NALYzw6jb/aj0xgfYMuXRs/lJxw4b1L4kkg8cl64lwbxPrk5swZvZf5LLxWRewgGLQtj11OxhLFx3iFccOUATdZ48tYIfXXYNjns0vuT3p09fuWgPdjvrG7vop+I3dHFdeQGnSu+rkCQ5salf5N8RpGlsZhEqGPkRinpkhbmd1WsdcwrF7ASJAjJsbaogvglyGXpo/t12/25KBz4pNHy3URabFIdl/02defW3K1qaR9cBco0uL2Kuuqwj9/sw9pcWLN+OGTu9yiHL2W+euG7nDvfam0bnpxKD3rD1YpnCt5K0E/m3pqgBRq9DeQaHFxOWqGOtY1LyFcNr9Z6Bobq+5j6zTD3sfrt3EP10HTwqkH/OnBzZWL7U0iyJGREIcHi8P5gPXF3XEqEKGlE/1e+bC9ZMtxJ6zyakp6EEneGEwIBOofU9y4RNMnLTLAUi02jVmpG8GNjNUQ4CaxAc+V3M4zoz1fgzNbSdWa543RvSV2yHc7ozCXCDb/XOzPNzOY4bIvr6+JOH77+vdMQXGk2j+DK5+CV1K1uk+EJGzw2Wteb227mwW0ebMHzlpuHrQ8WJtzzmA3l4IKJtiv2MnrooBTtciwgKsIC6Hmn/pYc86oIsyej4+2dvKP8ZZDi9EJYj9/wkciK68t+Nry5zbqDbABZDoOsNxQwHPVZPCGpsd1czep+pSnhdummFo3nQhFfwHkeLNdx8sLyzb38XJvW5KUuzDy3APq5jnAsFiwmwR+MmAqJZc7Be6njXrKvBVMmX4FYHAMtYmOnW2/5oomyYJX8MJ6QBRvHf+CCEXy8SFzdDwkbSn4SDBSODsSrVLDmFZl6e7b/D1BLAwQUAAAICAAASCHs/aPJUmsAAAB3AAAACQAkAG1ldGEuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAatWKkstKs7Mz1OyUjDVM9Qz1FFQSi9KLMgoBgqAOaWZKSB2tJJBonmiZUpSmqmRYZKZuUWSrnGScWpScqpxkoFZSqqZpaFSLFB9SWVBql9ibipET0BiSUZaZl5KZl66nntRZoo7yGil2FoAUEsBAi0AFAAACAgAAEgh7IgEhfO3AgAA9QUAAAsAJAAAAAAAAAAAAAAAAAAAAGdyYXBoMC5qc29uCgAgAAAAAAABABgAAIA+1d6xnQEAgD7V3rGdAQCAPtXesZ0BUEsBAi0AFAAACAgAAEgh7P2jyVJrAAAAdwAAAAkAJAAAAAAAAAAAAAAABAMAAG1ldGEuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAVBLBQYAAAAAAgACALgAAAC6AwAAAAA=
file_cachedStartup: {fileID: 0} file_cachedStartup: {fileID: 0}
cacheStartup: 0 cacheStartup: 0
showNavGraphs: 1 showNavGraphs: 1

View File

@ -21,7 +21,7 @@ namespace BlueWater.BehaviorTrees.Actions
var orderedCustomer = tycoonManager.CustomerController.FindCustomerMatchingItem(_serverCrew.CurrentPickupItem); var orderedCustomer = tycoonManager.CustomerController.FindCustomerMatchingItem(_serverCrew.CurrentPickupItem);
if (orderedCustomer) if (orderedCustomer)
{ {
_serverCrew.OnMission(orderedCustomer, orderedCustomer); _serverCrew.OnMission(orderedCustomer, orderedCustomer, ActionType.ServingToCustomer);
return TaskStatus.Success; return TaskStatus.Success;
} }
@ -29,8 +29,7 @@ namespace BlueWater.BehaviorTrees.Actions
var emptyServingTable = tycoonManager.ServingTableController.FindEmptyServingTable(); var emptyServingTable = tycoonManager.ServingTableController.FindEmptyServingTable();
if (emptyServingTable) if (emptyServingTable)
{ {
_serverCrew.OnMission(emptyServingTable); _serverCrew.OnMission(emptyServingTable, null, ActionType.PlaceOnServingTable);
_serverCrew.AIMovement.Move(emptyServingTable.CenterTransform.position);
return TaskStatus.Success; return TaskStatus.Success;
} }

View File

@ -23,7 +23,7 @@ namespace BlueWater.BehaviorTrees.Actions
public override TaskStatus OnUpdate() public override TaskStatus OnUpdate()
{ {
if (_crew.CrewInteraction == null || !_crew.CrewInteraction.CanInteractionCrew()) if (_crew.CrewInteraction == null || !_crew.CrewInteraction.CanInteractionCrew(_crew))
{ {
_crew.AIMovement.StopMove(); _crew.AIMovement.StopMove();
_crew.ResetMission(); _crew.ResetMission();

View File

@ -29,7 +29,7 @@ namespace BlueWater.BehaviorTrees.Actions
public override TaskStatus OnUpdate() public override TaskStatus OnUpdate()
{ {
if (!_serverCrew.CrewInteraction.CanInteractionCrew()) if (!_serverCrew.CrewInteraction.CanInteractionCrew(_serverCrew))
{ {
_serverCrew.AIMovement.StopMove(); _serverCrew.AIMovement.StopMove();
_serverCrew.CanNotServing(); _serverCrew.CanNotServing();

View File

@ -15,7 +15,7 @@ namespace BlueWater.BehaviorTrees.Actions
public override void OnStart() public override void OnStart()
{ {
if (_serverCrew.CrewInteraction != null && _serverCrew.CurrentPickupItem == null) if (_serverCrew.CrewInteraction != null)
{ {
_serverCrew.AIMovement.Move(_serverCrew.CrewInteraction.CenterTransform.position); _serverCrew.AIMovement.Move(_serverCrew.CrewInteraction.CenterTransform.position);
} }
@ -25,7 +25,8 @@ namespace BlueWater.BehaviorTrees.Actions
{ {
if (_serverCrew.CurrentPickupItem != null) return TaskStatus.Success; if (_serverCrew.CurrentPickupItem != null) return TaskStatus.Success;
if (_serverCrew.CrewInteraction == null || !_serverCrew.CrewInteraction.CanInteractionCrew() || !_serverCrew.OrderedCustomer.CanInteractionCrew()) if (_serverCrew.CrewInteraction == null || !_serverCrew.CrewInteraction.CanInteractionCrew(_serverCrew) ||
_serverCrew.OrderedCustomer == null || !_serverCrew.OrderedCustomer.CanInteractionCrew())
{ {
_serverCrew.AIMovement.StopMove(); _serverCrew.AIMovement.StopMove();
_serverCrew.ResetMission(); _serverCrew.ResetMission();

View File

@ -3,11 +3,21 @@ using BlueWater.Npcs.Customers;
namespace BlueWater.Npcs.Crews.Server namespace BlueWater.Npcs.Crews.Server
{ {
public enum ActionType
{
None = 0,
Patrol,
TakeCocktail,
PlaceOnServingTable,
ServingToCustomer
}
public class ServerCrew : Crew public class ServerCrew : Crew
{ {
public Customer OrderedCustomer { get; private set; } public Customer OrderedCustomer { get; private set; }
public IPickup CurrentPickupItem { get; private set; } public IPickup CurrentPickupItem { get; private set; }
public bool IsServing { get; private set; } public bool IsServing { get; private set; }
public ActionType CurrentActionType { get; private set; }
public StateMachineController<ServerCrew> StateMachineController { get; private set; } public StateMachineController<ServerCrew> StateMachineController { get; private set; }
public IStateMachine<ServerCrew> IdleState { get; private set; } public IStateMachine<ServerCrew> IdleState { get; private set; }
@ -22,6 +32,7 @@ namespace BlueWater.Npcs.Crews.Server
public override void Initialize() public override void Initialize()
{ {
CurrentActionType = ActionType.Patrol;
IdleState = new IdleState(); IdleState = new IdleState();
WalkingState = new WalkingState(); WalkingState = new WalkingState();
ServingState = new ServingState(); ServingState = new ServingState();
@ -33,6 +44,8 @@ namespace BlueWater.Npcs.Crews.Server
public override void ResetMission() public override void ResetMission()
{ {
CurrentActionType = ActionType.Patrol;
CrewInteraction = null; CrewInteraction = null;
IsOnMission = false; IsOnMission = false;
BalloonUi.DiscardItem(); BalloonUi.DiscardItem();
@ -53,10 +66,11 @@ namespace BlueWater.Npcs.Crews.Server
return CrewInteraction == null && !OrderedCustomer && CurrentPickupItem == null && !IsServing; return CrewInteraction == null && !OrderedCustomer && CurrentPickupItem == null && !IsServing;
} }
public void OnMission(ICrewInteraction crewInteraction, Customer orderedCustomer) public void OnMission(ICrewInteraction crewInteraction, Customer orderedCustomer, ActionType actionType)
{ {
base.OnMission(crewInteraction); base.OnMission(crewInteraction);
OrderedCustomer = orderedCustomer; OrderedCustomer = orderedCustomer;
CurrentActionType = actionType;
} }
public void TakeFromServingTable(IPickup pickupItem, Customer orderedCustomer) public void TakeFromServingTable(IPickup pickupItem, Customer orderedCustomer)

View File

@ -339,9 +339,9 @@ namespace BlueWater.Npcs.Customers
throw new NotImplementedException(); throw new NotImplementedException();
} }
public bool CanInteractionCrew() public bool CanInteractionCrew(Crew crew = null)
{ {
return !IsReceivedItem; return !IsReceivedItem && CurrentTableSeat;
} }
public virtual void ShowInteractionUi() public virtual void ShowInteractionUi()

View File

@ -133,13 +133,6 @@ namespace BlueWater
OnPlaceOnServingTable?.Invoke(); OnPlaceOnServingTable?.Invoke();
} }
// 플레이어가 서빙테이블에 있는 칵테일을 가져오는 이벤트
public static Action OnTakeFromServingTable;
public static void InvokeTakeFromServingTable()
{
OnTakeFromServingTable?.Invoke();
}
// Npc // Npc
// 손님 생성 이벤트 // 손님 생성 이벤트
public static Action OnCreateCustomer; public static Action OnCreateCustomer;

View File

@ -14,7 +14,7 @@ namespace BlueWater.Interfaces
void InteractionCrew(Crew crew); void InteractionCrew(Crew crew);
void CancelInteractionCrew(); void CancelInteractionCrew();
bool CanInteractionCrew(); bool CanInteractionCrew(Crew crew = null);
event Action OnInteractionCompleted; event Action OnInteractionCompleted;
} }

View File

@ -1,6 +1,5 @@
using System; using System;
using BlueWater.Items; using BlueWater.Items;
using BlueWater.Players.Tycoons;
using Sirenix.OdinInspector; using Sirenix.OdinInspector;
using UnityEngine; using UnityEngine;
@ -25,9 +24,19 @@ namespace BlueWater.Tycoons
[field: SerializeField] [field: SerializeField]
public int CurrentAmount { get; private set; } public int CurrentAmount { get; private set; }
[field: SerializeField] [SerializeField]
public bool IsActivated { get; private set; } private bool _isActivated;
public bool IsActivated
{
get => _isActivated;
private set
{
_isActivated = value;
_liquidImage.sprite = _isActivated ? _liquidData.Sprite : DataManager.Instance.SpriteDataSo.Lock;
}
}
private Material _instanceMaterial; private Material _instanceMaterial;
@ -49,10 +58,12 @@ namespace BlueWater.Tycoons
SetCurrentAmount(0); SetCurrentAmount(0);
} }
private void Start() protected override void Start()
{ {
base.Start();
_liquidImage.sprite = _isActivated ? _liquidData.Sprite : DataManager.Instance.SpriteDataSo.Lock;
InteractionMessage = $"{_liquidData.Name} 따르기"; InteractionMessage = $"{_liquidData.Name} 따르기";
_liquidImage.sprite = _liquidData.Sprite;
_instanceMaterial.SetColor(LiquidColorHash, _liquidData.Color * _colorIntensity); _instanceMaterial.SetColor(LiquidColorHash, _liquidData.Color * _colorIntensity);
} }

View File

@ -1,4 +1,7 @@
using System;
using BlueWater.Interfaces; using BlueWater.Interfaces;
using BlueWater.Npcs.Crews;
using BlueWater.Npcs.Crews.Server;
namespace BlueWater.Tycoons namespace BlueWater.Tycoons
{ {
@ -9,12 +12,12 @@ namespace BlueWater.Tycoons
// 테이블의 칵테일을 가져가는 경우 // 테이블의 칵테일을 가져가는 경우
if (CurrentPickupItem != null) if (CurrentPickupItem != null)
{ {
EventManager.InvokeTakeFromServingTable();
CurrentTycoonPlayer.TycoonPickupHandler.PickupItem(CurrentPickupItem); CurrentTycoonPlayer.TycoonPickupHandler.PickupItem(CurrentPickupItem);
CurrentTycoonPlayer.InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem); CurrentTycoonPlayer.InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem);
CocktailGlassImage.enabled = false; CocktailGlassImage.enabled = false;
InteractionCanvas.BalloonUi.DiscardItem(); InteractionCanvas.BalloonUi.DiscardItem();
CurrentPickupItem = null; CurrentPickupItem = null;
OrderedCustomer = null;
} }
} }
@ -23,9 +26,15 @@ namespace BlueWater.Tycoons
return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail(); return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail();
} }
public override bool CanInteractionCrew() public override bool CanInteractionCrew(Crew crew = null)
{ {
return CurrentPickupItem != null && _orderedCustomer != null; var servingCrew = (ServerCrew)crew;
if (!servingCrew)
{
throw new Exception("상호작용 오브젝트 오류");
}
return servingCrew.CurrentActionType == ActionType.TakeCocktail && CurrentPickupItem != null && OrderedCustomer;
} }
public void CompleteMakingCocktail(IPickup cocktailData) public void CompleteMakingCocktail(IPickup cocktailData)

View File

@ -36,9 +36,10 @@ namespace BlueWater.Tycoons
protected bool IsOpened; protected bool IsOpened;
protected TycoonPlayer CurrentTycoonPlayer; protected TycoonPlayer CurrentTycoonPlayer;
protected Material OriginalMaterial;
protected bool IsQuitting; protected bool IsQuitting;
protected bool IsShowing; protected bool IsShowing;
protected Material OriginalMaterial; protected float HoldingElapsedTime;
private void OnDrawGizmosSelected() private void OnDrawGizmosSelected()
{ {
@ -61,6 +62,11 @@ namespace BlueWater.Tycoons
RegisterPlayerInteraction(); RegisterPlayerInteraction();
} }
protected virtual void Start()
{
}
protected virtual void OnDisable() protected virtual void OnDisable()
{ {
@ -101,6 +107,7 @@ namespace BlueWater.Tycoons
{ {
VisualLook.material = OutlineMaterial; VisualLook.material = OutlineMaterial;
EventManager.InvokeShowInteractionUi(InteractionMessage); EventManager.InvokeShowInteractionUi(InteractionMessage);
EventManager.InvokeHoldInteracting(HoldingElapsedTime);
IsShowing = true; IsShowing = true;
} }

View File

@ -45,10 +45,10 @@ namespace BlueWater.Tycoons
} }
} }
protected Customer OrderedCustomer;
private Material _originalCocktailGlassMaterial; private Material _originalCocktailGlassMaterial;
private Coroutine _findCustomerMatchingItemInstance; private Coroutine _findCustomerMatchingItemInstance;
private Coroutine _findServerCrewInstance; private Coroutine _findServerCrewInstance;
protected Customer _orderedCustomer;
public event Action OnInteractionCompleted; public event Action OnInteractionCompleted;
@ -64,21 +64,21 @@ namespace BlueWater.Tycoons
// 테이블의 칵테일을 가져가는 경우 // 테이블의 칵테일을 가져가는 경우
if (CurrentPickupItem != null) if (CurrentPickupItem != null)
{ {
EventManager.InvokeTakeFromServingTable();
CurrentTycoonPlayer.TycoonPickupHandler.PickupItem(CurrentPickupItem); CurrentTycoonPlayer.TycoonPickupHandler.PickupItem(CurrentPickupItem);
CurrentTycoonPlayer.InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem); CurrentTycoonPlayer.InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem);
CocktailGlassImage.enabled = false; CocktailGlassImage.enabled = false;
InteractionCanvas.BalloonUi.DiscardItem(); InteractionCanvas.BalloonUi.DiscardItem();
CurrentPickupItem = null; CurrentPickupItem = null;
OrderedCustomer = null;
} }
// 테이블에 칵테일을 놓는 경우 // 테이블에 칵테일을 놓는 경우
else else
{ {
EventManager.InvokePlaceOnServingTable(); EventManager.InvokePlaceOnServingTable();
CurrentPickupItem = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem(); CurrentPickupItem = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem();
CurrentTycoonPlayer.TycoonPickupHandler.GiveItem(CurrentPickupItem);
CurrentTycoonPlayer.InteractionCanvas.BalloonUi.DiscardItem();
InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem); InteractionCanvas.BalloonUi.SetItemImage(CurrentPickupItem);
CurrentTycoonPlayer.TycoonPickupHandler.DiscardItem();
CurrentTycoonPlayer.InteractionCanvas.BalloonUi.DiscardItem();
CocktailGlassImage.enabled = true; CocktailGlassImage.enabled = true;
} }
} }
@ -108,15 +108,17 @@ namespace BlueWater.Tycoons
public void InteractionCrew(Crew crew) public void InteractionCrew(Crew crew)
{ {
// 테이블의 칵테일을 가져가는 경우 // 종업원이 테이블의 칵테일을 가져가는 경우
if (CurrentPickupItem != null) if (CurrentPickupItem != null)
{ {
var serverCrew = (ServerCrew)crew; var serverCrew = (ServerCrew)crew;
serverCrew.TakeFromServingTable(CurrentPickupItem, _orderedCustomer); serverCrew.TakeFromServingTable(CurrentPickupItem, OrderedCustomer);
CocktailGlassImage.enabled = false; CocktailGlassImage.enabled = false;
InteractionCanvas.BalloonUi.DiscardItem(); InteractionCanvas.BalloonUi.DiscardItem();
CurrentPickupItem = null; CurrentPickupItem = null;
OrderedCustomer = null;
} }
// 종업원이 테이블에 칵테일을 놓는 경우
else else
{ {
var serverCrew = (ServerCrew)crew; var serverCrew = (ServerCrew)crew;
@ -132,10 +134,16 @@ namespace BlueWater.Tycoons
throw new NotImplementedException(); throw new NotImplementedException();
} }
public virtual bool CanInteractionCrew() public virtual bool CanInteractionCrew(Crew crew = null)
{ {
return (CurrentPickupItem != null && _orderedCustomer != null) || var servingCrew = (ServerCrew)crew;
CurrentPickupItem == null; if (!servingCrew)
{
throw new Exception("상호작용 오브젝트 오류");
}
return (servingCrew.CurrentActionType == ActionType.TakeCocktail && CurrentPickupItem != null && OrderedCustomer) ||
servingCrew.CurrentActionType == ActionType.PlaceOnServingTable && CurrentPickupItem == null;
} }
private IEnumerator FindCustomerMatchingItem() private IEnumerator FindCustomerMatchingItem()
@ -143,12 +151,13 @@ namespace BlueWater.Tycoons
var waitTime = new WaitForSeconds(2f); var waitTime = new WaitForSeconds(2f);
while (true) while (true)
{ {
_orderedCustomer = TycoonManager.Instance.CustomerController.FindCustomerMatchingItem(_currentPickupItem); OrderedCustomer = TycoonManager.Instance.CustomerController.FindCustomerMatchingItem(_currentPickupItem);
if (_orderedCustomer && _orderedCustomer.CanInteractionCrew()) if (OrderedCustomer && OrderedCustomer.CanInteractionCrew())
{ {
var crewController = TycoonManager.Instance.CrewController; var crewController = TycoonManager.Instance.CrewController;
Utils.StartUniqueCoroutine(this, ref _findServerCrewInstance, Utils.StartUniqueCoroutine(this, ref _findServerCrewInstance,
crewController.FindClosestCrewCoroutine(CenterTransform.position, crewController.ServerCrews, crew => crew.OnMission(this, _orderedCustomer))); crewController.FindClosestCrewCoroutine(CenterTransform.position, crewController.ServerCrews,
crew => crew.OnMission(this, OrderedCustomer, ActionType.TakeCocktail)));
} }
yield return waitTime; yield return waitTime;

View File

@ -1,6 +1,4 @@
using System; using System;
using System.Collections;
using System.Linq;
using BlueWater.Interfaces; using BlueWater.Interfaces;
using BlueWater.Npcs.Crews; using BlueWater.Npcs.Crews;
using BlueWater.Npcs.Crews.Cleaner; using BlueWater.Npcs.Crews.Cleaner;
@ -32,21 +30,15 @@ namespace BlueWater.Tycoons
[field: SerializeField] [field: SerializeField]
public int TableNumber; public int TableNumber;
[SerializeField]
private Sprite _foodImage;
[SerializeField]
private Sprite _dirtyImage;
[SerializeField] [SerializeField]
private float _interactionHoldingTime = 3f; private float _interactionHoldingTime = 3f;
private Sprite _fullBeerGlass;
private Sprite _emptyBeerGlass;
private Coroutine _findCleanerCrewInstance; private Coroutine _findCleanerCrewInstance;
private bool _isPlayerInteracting; private bool _isPlayerInteracting;
private bool _isCrewInteracting; private bool _isCrewInteracting;
private float _playerElapsedTime;
private float _crewElapsedTime;
public event Action OnInteractionCompleted; public event Action OnInteractionCompleted;
@ -57,6 +49,14 @@ namespace BlueWater.Tycoons
Initialize(); Initialize();
} }
protected override void Start()
{
base.Start();
_fullBeerGlass = DataManager.Instance.SpriteDataSo.FullBeerGlass;
_emptyBeerGlass = DataManager.Instance.SpriteDataSo.EmptyBeerGlass;
}
private void Update() private void Update()
{ {
if (InteractionCanvas.BalloonUi.IsWaitTimeOver()) if (InteractionCanvas.BalloonUi.IsWaitTimeOver())
@ -65,28 +65,13 @@ namespace BlueWater.Tycoons
damageable?.TakeDamage(1); damageable?.TakeDamage(1);
CleanTable(); CleanTable();
} }
if (_isPlayerInteracting)
{
if (_playerElapsedTime > _interactionHoldingTime)
{
CleanTable();
}
_playerElapsedTime += Time.deltaTime; if (IsCleaned) return;
}
else
{
if (_playerElapsedTime > 0f)
{
_playerElapsedTime -= Time.deltaTime;
}
}
var holdingGauge = 0f; var holdingGauge = 0f;
if (_playerElapsedTime > 0f) if (HoldingElapsedTime > 0f)
{ {
holdingGauge = Mathf.Clamp(_playerElapsedTime / _interactionHoldingTime, 0f, 1f); holdingGauge = Mathf.Clamp(HoldingElapsedTime / _interactionHoldingTime, 0f, 1f);
} }
if (IsShowing) if (IsShowing)
@ -94,16 +79,32 @@ namespace BlueWater.Tycoons
EventManager.InvokeHoldInteracting(holdingGauge); EventManager.InvokeHoldInteracting(holdingGauge);
} }
if (_isCrewInteracting) if (HoldingElapsedTime > _interactionHoldingTime)
{ {
if (_crewElapsedTime > _interactionHoldingTime) if (_isCrewInteracting)
{ {
OnInteractionCompleted?.Invoke(); OnInteractionCompleted?.Invoke();
OnInteractionCompleted = null; OnInteractionCompleted = null;
CleanTable();
} }
CleanTable();
}
if (_isPlayerInteracting)
{
HoldingElapsedTime += Time.deltaTime;
}
if (_isCrewInteracting)
{
HoldingElapsedTime += Time.deltaTime;
}
_crewElapsedTime += Time.deltaTime; if (!_isPlayerInteracting && !_isCrewInteracting)
{
if (HoldingElapsedTime > 0f)
{
HoldingElapsedTime -= Time.deltaTime;
}
} }
} }
@ -120,7 +121,7 @@ namespace BlueWater.Tycoons
public void SetFood() public void SetFood()
{ {
Food.sprite = _foodImage; Food.sprite = _fullBeerGlass;
Food.enabled = true; Food.enabled = true;
} }
@ -155,14 +156,14 @@ namespace BlueWater.Tycoons
_isCrewInteracting = false; _isCrewInteracting = false;
InteractionCanvas.BalloonUi.HideUi(); InteractionCanvas.BalloonUi.HideUi();
InteractionCanvas.BalloonUi.ResetUi(); InteractionCanvas.BalloonUi.ResetUi();
_playerElapsedTime = 0f; HoldingElapsedTime = 0f;
} }
public void DirtyTable() public void DirtyTable()
{ {
Food.sprite = _dirtyImage; Food.sprite = _emptyBeerGlass;
Food.enabled = true; Food.enabled = true;
InteractionCanvas.BalloonUi.OrderItem(_dirtyImage, 0, TycoonManager.Instance.TycoonStageController.StageDataSo.DirtyTableWaitTime); InteractionCanvas.BalloonUi.OrderItem(_emptyBeerGlass, 0, TycoonManager.Instance.TycoonStageController.StageDataSo.DirtyTableWaitTime);
IsCleaned = false; IsCleaned = false;
var crewController = TycoonManager.Instance.CrewController; var crewController = TycoonManager.Instance.CrewController;
@ -172,20 +173,18 @@ namespace BlueWater.Tycoons
public void InteractionCrew(Crew crew) public void InteractionCrew(Crew crew)
{ {
_crewElapsedTime = 0f;
_isCrewInteracting = true; _isCrewInteracting = true;
((CleanerCrew)crew).SetIsCleaningTable(true); ((CleanerCrew)crew).SetIsCleaningTable(true);
} }
public void CancelInteractionCrew() public void CancelInteractionCrew()
{ {
_crewElapsedTime = 0f;
_isCrewInteracting = false; _isCrewInteracting = false;
} }
public bool CanInteractionCrew() public bool CanInteractionCrew(Crew crew = null)
{ {
return !_isPlayerInteracting; return !IsCleaned;
} }
} }
} }

View File

@ -17,8 +17,6 @@ namespace BlueWater.Tycoons
private Coroutine _findCleanerCrewInstance; private Coroutine _findCleanerCrewInstance;
private bool _isPlayerInteracting; private bool _isPlayerInteracting;
private bool _isCrewInteracting; private bool _isCrewInteracting;
private float _playerElapsedTime;
private float _crewElapsedTime;
public event Action OnInteractionCompleted; public event Action OnInteractionCompleted;
@ -38,27 +36,10 @@ namespace BlueWater.Tycoons
Destroy(); Destroy();
} }
if (_isPlayerInteracting)
{
if (_playerElapsedTime > _interactionHoldingTime)
{
Destroy();
}
_playerElapsedTime += Time.deltaTime;
}
else
{
if (_playerElapsedTime > 0f)
{
_playerElapsedTime -= Time.deltaTime;
}
}
var holdingGauge = 0f; var holdingGauge = 0f;
if (_playerElapsedTime > 0f) if (HoldingElapsedTime > 0f)
{ {
holdingGauge = Mathf.Clamp(_playerElapsedTime / _interactionHoldingTime, 0f, 1f); holdingGauge = Mathf.Clamp(HoldingElapsedTime / _interactionHoldingTime, 0f, 1f);
} }
if (IsShowing) if (IsShowing)
@ -66,16 +47,32 @@ namespace BlueWater.Tycoons
EventManager.InvokeHoldInteracting(holdingGauge); EventManager.InvokeHoldInteracting(holdingGauge);
} }
if (_isCrewInteracting) if (HoldingElapsedTime > _interactionHoldingTime)
{ {
if (_crewElapsedTime > _interactionHoldingTime) if (_isCrewInteracting)
{ {
OnInteractionCompleted?.Invoke(); OnInteractionCompleted?.Invoke();
OnInteractionCompleted = null; OnInteractionCompleted = null;
Destroy();
} }
Destroy();
}
if (_isPlayerInteracting)
{
HoldingElapsedTime += Time.deltaTime;
}
if (_isCrewInteracting)
{
HoldingElapsedTime += Time.deltaTime;
}
_crewElapsedTime += Time.deltaTime; if (!_isPlayerInteracting && !_isCrewInteracting)
{
if (HoldingElapsedTime > 0f)
{
HoldingElapsedTime -= Time.deltaTime;
}
} }
} }
@ -123,9 +120,9 @@ namespace BlueWater.Tycoons
_isCrewInteracting = false; _isCrewInteracting = false;
} }
public bool CanInteractionCrew() public bool CanInteractionCrew(Crew crew = null)
{ {
return !_isPlayerInteracting; return true;
} }
} }
} }

View File

@ -13,3 +13,6 @@ MonoBehaviour:
m_Name: SpriteData m_Name: SpriteData
m_EditorClassIdentifier: m_EditorClassIdentifier:
<Gold>k__BackingField: {fileID: 21300000, guid: 51c11bee66d04f64d8d44afcb9975321, type: 3} <Gold>k__BackingField: {fileID: 21300000, guid: 51c11bee66d04f64d8d44afcb9975321, type: 3}
<EmptyBeerGlass>k__BackingField: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3}
<FullBeerGlass>k__BackingField: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3}
<Lock>k__BackingField: {fileID: 21300000, guid: 8ef64d8ac85ff4681987c8b621bef86b, type: 3}

View File

@ -9,6 +9,12 @@ namespace BlueWater
public Sprite Gold { get; private set; } public Sprite Gold { get; private set; }
[field: SerializeField] [field: SerializeField]
public Sprite UnfinishedCocktail { get; private set; } public Sprite EmptyBeerGlass { get; private set; }
[field: SerializeField]
public Sprite FullBeerGlass { get; private set; }
[field: SerializeField]
public Sprite Lock { get; private set; }
} }
} }

View File

@ -136,12 +136,12 @@ namespace BlueWater.Tycoons
{ {
foreach (var element in BartenderCrews) foreach (var element in BartenderCrews)
{ {
if (orderedCustomer.IsReceivedItem) yield break; if (element.MyBartenderTable.CurrentPickupItem != null || element.IsOnMission) continue;
var orderedCocktailIngredients = orderedCustomer.OrderedCocktailData.ValidIngredients; var orderedCocktailIngredients = orderedCustomer.OrderedCocktailData.ValidIngredients;
if (!tycoonIngredientController.IsMakingCocktail(orderedCocktailIngredients)) break; if (!tycoonIngredientController.IsMakingCocktail(orderedCocktailIngredients)) break;
if (element.MyBartenderTable.CurrentPickupItem != null || element.IsOnMission) continue; if (orderedCustomer.IsReceivedItem || orderedCustomer.IsMatchedServer) yield break;
element.SetOrderedCustomer(orderedCustomer); element.SetOrderedCustomer(orderedCustomer);
tycoonIngredientController.ConsumeMakingCocktailIngredient(orderedCocktailIngredients); tycoonIngredientController.ConsumeMakingCocktailIngredient(orderedCocktailIngredients);

View File

@ -69,18 +69,11 @@ namespace BlueWater.Uis
public void SetItemImage(IPickup item) public void SetItemImage(IPickup item)
{ {
//_orderItemData = ItemManager.Instance.GetItemDataByIdx(foodIdx);
// if (_orderItemData == null)
// {
// Debug.LogError($"{foodIdx} 해당 음식을 등록할 수 없습니다.");
// return;
// }
if (!item.Sprite) if (!item.Sprite)
{ {
Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다."); Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다.");
} }
_isUnfinishedCocktailPickedUp = false; _isUnfinishedCocktailPickedUp = false;
SetItemSprite(item.Sprite); SetItemSprite(item.Sprite);
ShowUi(); ShowUi();

View File

@ -85,6 +85,7 @@ namespace BlueWater
private void OnDestroy() private void OnDestroy()
{ {
_slider.onValueChanged.RemoveListener(OnSliderValueChanged); _slider.onValueChanged.RemoveListener(OnSliderValueChanged);
DOTween.Kill(_rect);
} }
private void OnSliderValueChanged(float value) private void OnSliderValueChanged(float value)
@ -94,6 +95,8 @@ namespace BlueWater
public void Move(BillInfo billInfo) public void Move(BillInfo billInfo)
{ {
if (!_rect) return;
if (CurrentBillInfo != null) if (CurrentBillInfo != null)
{ {
CurrentBillInfo.IsEmpty = true; CurrentBillInfo.IsEmpty = true;
@ -119,6 +122,8 @@ namespace BlueWater
private void OnArrivedTarget() private void OnArrivedTarget()
{ {
if (!_rect) return;
CurrentBillInfo.IsMoving = false; CurrentBillInfo.IsMoving = false;
var randomZ = Random.Range(-15f, 15f); var randomZ = Random.Range(-15f, 15f);
var arrivedSequence = DOTween.Sequence(); var arrivedSequence = DOTween.Sequence();

View File

@ -200,6 +200,7 @@ GameObject:
- component: {fileID: 479823629690914954} - component: {fileID: 479823629690914954}
- component: {fileID: 2588384133887034894} - component: {fileID: 2588384133887034894}
- component: {fileID: 2961986041977982893} - component: {fileID: 2961986041977982893}
- component: {fileID: 2322101151879677010}
m_Layer: 14 m_Layer: 14
m_Name: VisualLook m_Name: VisualLook
m_TagString: Untagged m_TagString: Untagged
@ -319,6 +320,18 @@ MonoBehaviour:
_animationName: Idle _animationName: Idle
loop: 1 loop: 1
timeScale: 1 timeScale: 1
--- !u!210 &2322101151879677010
SortingGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 813964778509222274}
m_Enabled: 1
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 5
m_SortAtRoot: 0
--- !u!1 &2781393898199067900 --- !u!1 &2781393898199067900
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -604,13 +617,13 @@ CapsuleCollider:
m_Bits: 0 m_Bits: 0
m_ExcludeLayers: m_ExcludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 0 m_Bits: 256
m_LayerOverridePriority: 0 m_LayerOverridePriority: 0
m_IsTrigger: 0 m_IsTrigger: 0
m_ProvidesContacts: 0 m_ProvidesContacts: 0
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_Radius: 0.1 m_Radius: 0.25
m_Height: 0.5 m_Height: 0.5
m_Direction: 1 m_Direction: 1
m_Center: {x: 0, y: 0.25, z: 0} m_Center: {x: 0, y: 0.25, z: 0}
@ -655,7 +668,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
version: 1073741824 version: 1073741824
radius: 0.1 radius: 0.25
height: 0.5 height: 0.5
canMove: 1 canMove: 1
maxSpeed: 2 maxSpeed: 2
@ -663,7 +676,7 @@ MonoBehaviour:
groundMask: groundMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
endReachedDistance: 0.5 endReachedDistance: 0.2
whenCloseToDestination: 0 whenCloseToDestination: 0
rvoDensityBehavior: rvoDensityBehavior:
enabled: 1 enabled: 1

View File

@ -200,6 +200,7 @@ GameObject:
- component: {fileID: 479823629690914954} - component: {fileID: 479823629690914954}
- component: {fileID: 2588384133887034894} - component: {fileID: 2588384133887034894}
- component: {fileID: 2961986041977982893} - component: {fileID: 2961986041977982893}
- component: {fileID: 1143287283172291005}
m_Layer: 14 m_Layer: 14
m_Name: VisualLook m_Name: VisualLook
m_TagString: Untagged m_TagString: Untagged
@ -319,6 +320,18 @@ MonoBehaviour:
_animationName: Idle _animationName: Idle
loop: 1 loop: 1
timeScale: 1 timeScale: 1
--- !u!210 &1143287283172291005
SortingGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 813964778509222274}
m_Enabled: 1
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 5
m_SortAtRoot: 0
--- !u!1 &2781393898199067900 --- !u!1 &2781393898199067900
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -604,13 +617,13 @@ CapsuleCollider:
m_Bits: 0 m_Bits: 0
m_ExcludeLayers: m_ExcludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 0 m_Bits: 256
m_LayerOverridePriority: 0 m_LayerOverridePriority: 0
m_IsTrigger: 0 m_IsTrigger: 0
m_ProvidesContacts: 0 m_ProvidesContacts: 0
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_Radius: 0.1 m_Radius: 0.25
m_Height: 0.5 m_Height: 0.5
m_Direction: 1 m_Direction: 1
m_Center: {x: 0, y: 0.25, z: 0} m_Center: {x: 0, y: 0.25, z: 0}
@ -655,7 +668,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
version: 1073741824 version: 1073741824
radius: 0.1 radius: 0.25
height: 0.5 height: 0.5
canMove: 1 canMove: 1
maxSpeed: 2 maxSpeed: 2
@ -663,7 +676,7 @@ MonoBehaviour:
groundMask: groundMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
endReachedDistance: 0.5 endReachedDistance: 0.2
whenCloseToDestination: 0 whenCloseToDestination: 0
rvoDensityBehavior: rvoDensityBehavior:
enabled: 1 enabled: 1

View File

@ -200,6 +200,7 @@ GameObject:
- component: {fileID: 479823629690914954} - component: {fileID: 479823629690914954}
- component: {fileID: 2588384133887034894} - component: {fileID: 2588384133887034894}
- component: {fileID: 2961986041977982893} - component: {fileID: 2961986041977982893}
- component: {fileID: 1333026624613754047}
m_Layer: 14 m_Layer: 14
m_Name: VisualLook m_Name: VisualLook
m_TagString: Untagged m_TagString: Untagged
@ -319,6 +320,18 @@ MonoBehaviour:
_animationName: Idle _animationName: Idle
loop: 1 loop: 1
timeScale: 1 timeScale: 1
--- !u!210 &1333026624613754047
SortingGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 813964778509222274}
m_Enabled: 1
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 5
m_SortAtRoot: 0
--- !u!1 &2781393898199067900 --- !u!1 &2781393898199067900
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -604,13 +617,13 @@ CapsuleCollider:
m_Bits: 0 m_Bits: 0
m_ExcludeLayers: m_ExcludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 0 m_Bits: 256
m_LayerOverridePriority: 0 m_LayerOverridePriority: 0
m_IsTrigger: 0 m_IsTrigger: 0
m_ProvidesContacts: 0 m_ProvidesContacts: 0
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_Radius: 0.1 m_Radius: 0.25
m_Height: 0.5 m_Height: 0.5
m_Direction: 1 m_Direction: 1
m_Center: {x: 0, y: 0.25, z: 0} m_Center: {x: 0, y: 0.25, z: 0}
@ -655,7 +668,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
version: 1073741824 version: 1073741824
radius: 0.1 radius: 0.25
height: 0.5 height: 0.5
canMove: 1 canMove: 1
maxSpeed: 2 maxSpeed: 2
@ -663,7 +676,7 @@ MonoBehaviour:
groundMask: groundMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
endReachedDistance: 0.5 endReachedDistance: 0.2
whenCloseToDestination: 0 whenCloseToDestination: 0
rvoDensityBehavior: rvoDensityBehavior:
enabled: 1 enabled: 1

View File

@ -200,6 +200,7 @@ GameObject:
- component: {fileID: 479823629690914954} - component: {fileID: 479823629690914954}
- component: {fileID: 2588384133887034894} - component: {fileID: 2588384133887034894}
- component: {fileID: 2961986041977982893} - component: {fileID: 2961986041977982893}
- component: {fileID: 4034770193240481967}
m_Layer: 14 m_Layer: 14
m_Name: VisualLook m_Name: VisualLook
m_TagString: Untagged m_TagString: Untagged
@ -318,6 +319,18 @@ MonoBehaviour:
_animationName: Idle _animationName: Idle
loop: 1 loop: 1
timeScale: 1 timeScale: 1
--- !u!210 &4034770193240481967
SortingGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 813964778509222274}
m_Enabled: 1
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 5
m_SortAtRoot: 0
--- !u!1 &2781393898199067900 --- !u!1 &2781393898199067900
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -913,13 +926,13 @@ CapsuleCollider:
m_Bits: 0 m_Bits: 0
m_ExcludeLayers: m_ExcludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 0 m_Bits: 256
m_LayerOverridePriority: 0 m_LayerOverridePriority: 0
m_IsTrigger: 0 m_IsTrigger: 0
m_ProvidesContacts: 0 m_ProvidesContacts: 0
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_Radius: 0.1 m_Radius: 0.25
m_Height: 0.5 m_Height: 0.5
m_Direction: 1 m_Direction: 1
m_Center: {x: 0, y: 0.25, z: 0} m_Center: {x: 0, y: 0.25, z: 0}
@ -964,7 +977,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
version: 1073741824 version: 1073741824
radius: 0.1 radius: 0.25
height: 0.5 height: 0.5
canMove: 1 canMove: 1
maxSpeed: 2 maxSpeed: 2
@ -972,7 +985,7 @@ MonoBehaviour:
groundMask: groundMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
endReachedDistance: 0.5 endReachedDistance: 0.2
whenCloseToDestination: 0 whenCloseToDestination: 0
rvoDensityBehavior: rvoDensityBehavior:
enabled: 1 enabled: 1
@ -1134,16 +1147,19 @@ MonoBehaviour:
<Name>k__BackingField: <Name>k__BackingField:
<RatioRange>k__BackingField: 0 <RatioRange>k__BackingField: 0
<IngredientIdx1>k__BackingField: <IngredientIdx1>k__BackingField:
<IngredientAmount1>k__BackingField: 0 <IngredientRatio1>k__BackingField: 0
<IngredientIdx2>k__BackingField: <IngredientIdx2>k__BackingField:
<IngredientAmount2>k__BackingField: 0 <IngredientRatio2>k__BackingField: 0
<IngredientIdx3>k__BackingField: <IngredientIdx3>k__BackingField:
<IngredientAmount3>k__BackingField: 0 <IngredientRatio3>k__BackingField: 0
<IngredientIdx4>k__BackingField: <IngredientIdx4>k__BackingField:
<IngredientAmount4>k__BackingField: 0 <IngredientRatio4>k__BackingField: 0
<IngredientIdx5>k__BackingField: <IngredientIdx5>k__BackingField:
<IngredientAmount5>k__BackingField: 0 <IngredientRatio5>k__BackingField: 0
<Sprite>k__BackingField: {fileID: 0} <Sprite>k__BackingField: {fileID: 0}
<ValidIngredients>k__BackingField: []
<CurrentBill>k__BackingField: {fileID: 0}
<IsMatchedServer>k__BackingField: 0
<IsReceivedItem>k__BackingField: 0 <IsReceivedItem>k__BackingField: 0
<IsOrderedSucceed>k__BackingField: 0 <IsOrderedSucceed>k__BackingField: 0
_customerInteractionType: 0 _customerInteractionType: 0

View File

@ -320,9 +320,9 @@ CapsuleCollider:
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_Radius: 0.25 m_Radius: 0.25
m_Height: 1 m_Height: 0.5
m_Direction: 1 m_Direction: 1
m_Center: {x: 0, y: 0.5, z: 0} m_Center: {x: 0, y: 0.25, z: 0}
--- !u!114 &6054159730444663926 --- !u!114 &6054159730444663926
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -585,7 +585,9 @@ MonoBehaviour:
_replacementMaterial: {fileID: 0} _replacementMaterial: {fileID: 0}
_initialSkinName: Basic _initialSkinName: Basic
_isRandomSkin: 0 _isRandomSkin: 0
_isRandomRange: 0
_randomRange: {x: 0, y: 0} _randomRange: {x: 0, y: 0}
_randomStrings: []
--- !u!114 &3359549505901716120 --- !u!114 &3359549505901716120
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -107,7 +107,7 @@ SpriteRenderer:
m_SortingLayerID: 0 m_SortingLayerID: 0
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 6 m_SortingOrder: 6
m_Sprite: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3} m_Sprite: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1} m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0 m_FlipX: 0
m_FlipY: 0 m_FlipY: 0

View File

@ -53,7 +53,7 @@ MonoBehaviour:
<InteractionCanvas>k__BackingField: {fileID: 3099553823688037663} <InteractionCanvas>k__BackingField: {fileID: 3099553823688037663}
<OutlineMaterial>k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2} <OutlineMaterial>k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2}
<EnableInteraction>k__BackingField: 1 <EnableInteraction>k__BackingField: 1
<InteractionRadius>k__BackingField: 0.7 <InteractionRadius>k__BackingField: 0.5
<InteractionMessage>k__BackingField: <InteractionMessage>k__BackingField:
IsOpened: 0 IsOpened: 0
<IsOccupied>k__BackingField: 0 <IsOccupied>k__BackingField: 0
@ -63,8 +63,6 @@ MonoBehaviour:
<Food>k__BackingField: {fileID: 8752266548893034047} <Food>k__BackingField: {fileID: 8752266548893034047}
TableDirection: {x: -1, y: 0, z: 0} TableDirection: {x: -1, y: 0, z: 0}
TableNumber: 0 TableNumber: 0
_foodImage: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3}
_dirtyImage: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3}
_interactionHoldingTime: 3 _interactionHoldingTime: 3
--- !u!1 &1352874222752200122 --- !u!1 &1352874222752200122
GameObject: GameObject:
@ -380,7 +378,7 @@ MonoBehaviour:
<InteractionCanvas>k__BackingField: {fileID: 1675779991655778469} <InteractionCanvas>k__BackingField: {fileID: 1675779991655778469}
<OutlineMaterial>k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2} <OutlineMaterial>k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2}
<EnableInteraction>k__BackingField: 1 <EnableInteraction>k__BackingField: 1
<InteractionRadius>k__BackingField: 0.7 <InteractionRadius>k__BackingField: 0.5
<InteractionMessage>k__BackingField: <InteractionMessage>k__BackingField:
IsOpened: 0 IsOpened: 0
<IsOccupied>k__BackingField: 0 <IsOccupied>k__BackingField: 0
@ -390,8 +388,6 @@ MonoBehaviour:
<Food>k__BackingField: {fileID: 4724775134085759924} <Food>k__BackingField: {fileID: 4724775134085759924}
TableDirection: {x: 1, y: 0, z: 0} TableDirection: {x: 1, y: 0, z: 0}
TableNumber: 0 TableNumber: 0
_foodImage: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3}
_dirtyImage: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3}
_interactionHoldingTime: 3 _interactionHoldingTime: 3
--- !u!1 &6493535781353555306 --- !u!1 &6493535781353555306
GameObject: GameObject:
@ -741,7 +737,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2234961990804426782, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} - target: {fileID: 2234961990804426782, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Center.z propertyPath: m_Center.z
value: 0.2 value: 0.15
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} - target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.x propertyPath: m_LocalScale.x

View File

@ -76,7 +76,7 @@ SpriteRenderer:
m_SortingLayerID: 0 m_SortingLayerID: 0
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 6 m_SortingOrder: 6
m_Sprite: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3} m_Sprite: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1} m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0 m_FlipX: 0
m_FlipY: 0 m_FlipY: 0
@ -103,6 +103,10 @@ PrefabInstance:
propertyPath: m_IsActive propertyPath: m_IsActive
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2234961990804426782, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Center.z
value: 0.2
objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} - target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.x propertyPath: m_LocalScale.x
value: 1 value: 1

View File

@ -18,7 +18,7 @@ Material:
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: 3000
stringTagMap: {} stringTagMap: {}
disabledShaderPasses: [] disabledShaderPasses: []
m_LockedProperties: m_LockedProperties:

View File

@ -18,7 +18,7 @@ Material:
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: 3000
stringTagMap: {} stringTagMap: {}
disabledShaderPasses: [] disabledShaderPasses: []
m_LockedProperties: m_LockedProperties:

View File

@ -1,9 +1,16 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 8ef64d8ac85ff4681987c8b621bef86b guid: 8ef64d8ac85ff4681987c8b621bef86b
AssetOrigin:
serializedVersion: 1
productId: 154574
packageName: Ultimate Clean GUI Pack
packageVersion: 2.1.3
assetPath: Assets/UltimateCleanGUIPack/Common/Sprites/Icons Colored/Basic/Lock.png
uploadId: 621733
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 13
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -20,9 +27,12 @@ TextureImporter:
externalNormalMap: 0 externalNormalMap: 0
heightScale: 0.25 heightScale: 0.25
normalMapFilter: 0 normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0 isReadable: 0
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -31,9 +41,9 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: -1 filterMode: 1
aniso: -1 aniso: 1
mipBias: -100 mipBias: 0
wrapU: 1 wrapU: 1
wrapV: 1 wrapV: 1
wrapW: 1 wrapW: 1
@ -43,9 +53,9 @@ TextureImporter:
spriteMode: 1 spriteMode: 1
spriteExtrude: 1 spriteExtrude: 1
spriteMeshType: 1 spriteMeshType: 1
alignment: 0 alignment: 7
spritePivot: {x: 0.5, y: 0.5} spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100 spritePixelsToUnits: 256
spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1 spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1 alphaUsage: 1
@ -54,12 +64,17 @@ TextureImporter:
textureType: 8 textureType: 8
textureShape: 1 textureShape: 1
singleChannelComponent: 0 singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0 maxTextureSizeSet: 0
compressionQualitySet: 0 compressionQualitySet: 0
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 4
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -69,12 +84,53 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 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
- serializedVersion: 4
buildTarget: WindowsStoreApps
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
outline: [] outline: []
customData:
physicsShape: [] physicsShape: []
bones: [] bones: []
spriteID: 5e97eb03825dee720800000000000000 spriteID: 5e97eb03825dee720800000000000000
@ -84,16 +140,11 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
spritePackingTag: spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 154574
packageName: Ultimate Clean GUI Pack
packageVersion: 2.1.3
assetPath: Assets/UltimateCleanGUIPack/Common/Sprites/Icons Colored/Basic/Lock.png
uploadId: 621733

View File

@ -140,7 +140,7 @@ PlayerSettings:
loadStoreDebugModeEnabled: 0 loadStoreDebugModeEnabled: 0
visionOSBundleVersion: 1.0 visionOSBundleVersion: 1.0
tvOSBundleVersion: 1.0 tvOSBundleVersion: 1.0
bundleVersion: 0.3.2.0 bundleVersion: 0.3.2.5
preloadedAssets: preloadedAssets:
- {fileID: -944628639613478452, guid: 4ed6540e2f7ce234888adf8deff1f241, type: 3} - {fileID: -944628639613478452, guid: 4ed6540e2f7ce234888adf8deff1f241, type: 3}
metroInputSource: 0 metroInputSource: 0