0.3.3.2 업데이트

This commit is contained in:
NTG_Lenovo 2024-11-04 21:22:07 +09:00
parent aae5bef8f0
commit c5887fcbec
61 changed files with 1614 additions and 341 deletions

View File

@ -5328,6 +5328,107 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 393212792} m_GameObject: {fileID: 393212792}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &410235866
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 410235870}
- component: {fileID: 410235869}
- component: {fileID: 410235868}
- component: {fileID: 410235867}
m_Layer: 0
m_Name: WorldCanvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &410235867
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410235866}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 2148532223
--- !u!114 &410235868
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410235866}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 1
--- !u!223 &410235869
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410235866}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 1
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 5
m_TargetDisplay: 0
--- !u!224 &410235870
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410235866}
m_LocalRotation: {x: 0.3420201, y: 0, z: 0, w: 0.9396927}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 40, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 1920, y: 1080}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &414363377 --- !u!1 &414363377
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -8597,6 +8698,134 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &733323112
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 733323113}
- component: {fileID: 733323115}
- component: {fileID: 733323114}
m_Layer: 0
m_Name: BackgroundUiCamera
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &733323113
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 733323112}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 873223992}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &733323114
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 733323112}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_RenderShadows: 1
m_RequiresDepthTextureOption: 2
m_RequiresOpaqueTextureOption: 2
m_CameraType: 1
m_Cameras: []
m_RendererIndex: -1
m_VolumeLayerMask:
serializedVersion: 2
m_Bits: 1
m_VolumeTrigger: {fileID: 0}
m_VolumeFrameworkUpdateModeOption: 2
m_RenderPostProcessing: 0
m_Antialiasing: 0
m_AntialiasingQuality: 2
m_StopNaN: 0
m_Dithering: 0
m_ClearDepth: 1
m_AllowXRRendering: 1
m_AllowHDROutput: 1
m_UseScreenCoordOverride: 0
m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
m_RequiresDepthTexture: 0
m_RequiresColorTexture: 0
m_Version: 2
m_TaaSettings:
m_Quality: 3
m_FrameInfluence: 0.1
m_JitterScale: 1
m_MipBias: 0
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
--- !u!20 &733323115
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 733323112}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 4
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
m_projectionMatrixMode: 1
m_GateFitMode: 2
m_FOVAxisMode: 0
m_Iso: 200
m_ShutterSpeed: 0.005
m_Aperture: 16
m_FocusDistance: 10
m_FocalLength: 50
m_BladeCount: 5
m_Curvature: {x: 2, y: 11}
m_BarrelClipping: 0.25
m_Anamorphism: 0
m_SensorSize: {x: 36, y: 24}
m_LensShift: {x: 0, y: 0}
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.01
far clip plane: 300
field of view: 60
orthographic: 0
orthographic size: 5
m_Depth: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 524288
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 0
m_AllowMSAA: 1
m_AllowDynamicResolution: 0
m_ForceIntoRT: 0
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!1001 &738295682 --- !u!1001 &738295682
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -10366,6 +10595,7 @@ MonoBehaviour:
m_RequiresOpaqueTextureOption: 2 m_RequiresOpaqueTextureOption: 2
m_CameraType: 0 m_CameraType: 0
m_Cameras: m_Cameras:
- {fileID: 733323115}
- {fileID: 1985878519} - {fileID: 1985878519}
- {fileID: 1355183327} - {fileID: 1355183327}
m_RendererIndex: -1 m_RendererIndex: -1
@ -10475,6 +10705,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 733323113}
- {fileID: 1355183324} - {fileID: 1355183324}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 9.569, y: 87.98, z: 0} m_LocalEulerAnglesHint: {x: 9.569, y: 87.98, z: 0}
@ -11668,7 +11899,7 @@ MonoBehaviour:
_playerBalloonImage: {fileID: 21300000, guid: e7b746bc5bff9d64fb1129b9aa8ccf3e, type: 3} _playerBalloonImage: {fileID: 21300000, guid: e7b746bc5bff9d64fb1129b9aa8ccf3e, type: 3}
_moveToPlayerDuration: 0.2 _moveToPlayerDuration: 0.2
_moveToCenterDuration: 0.15 _moveToCenterDuration: 0.15
_centerPosition: {x: -300, y: 0, z: 0} _centerPosition: {x: -340, y: 0, z: 0}
_endPositionOffset: {x: 0, y: 20, z: 0} _endPositionOffset: {x: 0, y: 20, z: 0}
_endScale: {x: 0.3, y: 0.3, z: 0.3} _endScale: {x: 0.3, y: 0.3, z: 0.3}
--- !u!1001 &1011627381 --- !u!1001 &1011627381
@ -14412,7 +14643,7 @@ Transform:
m_GameObject: {fileID: 1247057678} m_GameObject: {fileID: 1247057678}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -300, y: 0, z: 0} m_LocalPosition: {x: -340, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1 m_ConstrainProportionsScale: 1
m_Children: m_Children:
@ -15579,6 +15810,10 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z propertyPath: m_LocalEulerAnglesHint.z
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 3040169690825224014, guid: 9a394d3c65c71084d8345c36df67c89c, type: 3}
propertyPath: _instanceLocation
value:
objectReference: {fileID: 410235870}
- target: {fileID: 9041926907780427371, guid: 9a394d3c65c71084d8345c36df67c89c, type: 3} - target: {fileID: 9041926907780427371, guid: 9a394d3c65c71084d8345c36df67c89c, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: NewTycoonMap value: NewTycoonMap
@ -22534,7 +22769,7 @@ Canvas:
m_Enabled: 1 m_Enabled: 1
serializedVersion: 3 serializedVersion: 3
m_RenderMode: 2 m_RenderMode: 2
m_Camera: {fileID: 1355183327} m_Camera: {fileID: 733323115}
m_PlaneDistance: 100 m_PlaneDistance: 100
m_PixelPerfect: 0 m_PixelPerfect: 0
m_ReceivesEvents: 1 m_ReceivesEvents: 1
@ -29868,7 +30103,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3} - target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
propertyPath: m_ActionEvents.Array.size propertyPath: m_ActionEvents.Array.size
value: 30 value: 31
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3} - target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
propertyPath: m_ActionEvents.Array.data[28].m_ActionId propertyPath: m_ActionEvents.Array.data[28].m_ActionId
@ -29886,10 +30121,6 @@ PrefabInstance:
propertyPath: m_ActionEvents.Array.data[29].m_ActionName propertyPath: m_ActionEvents.Array.data[29].m_ActionName
value: 'TycoonUi/CancelManual[/Keyboard/q]' value: 'TycoonUi/CancelManual[/Keyboard/q]'
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
propertyPath: m_ActionEvents.Array.data[28].m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: OnManual
objectReference: {fileID: 0}
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3} - target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
propertyPath: m_ActionEvents.Array.data[29].m_PersistentCalls.m_Calls.Array.data[0].m_MethodName propertyPath: m_ActionEvents.Array.data[29].m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: OnCancelManual value: OnCancelManual
@ -30781,6 +31012,7 @@ SceneRoots:
- {fileID: 1231728096} - {fileID: 1231728096}
- {fileID: 1619849090} - {fileID: 1619849090}
- {fileID: 1746385717} - {fileID: 1746385717}
- {fileID: 410235870}
- {fileID: 1049919592} - {fileID: 1049919592}
- {fileID: 1896021280} - {fileID: 1896021280}
- {fileID: 1395162455} - {fileID: 1395162455}

View File

@ -213,11 +213,11 @@ namespace BlueWater.Npcs.Customers
CurrentLevelData = levelData; CurrentLevelData = levelData;
_spawnTransform = spawnTransform; _spawnTransform = spawnTransform;
IdleState = new IdleStateMachine(); IdleState = new IdleState();
WalkingState = new WalkingStateMachine(); WalkingState = new WalkingState();
HappyState = new HappyStateMachine(); HappyState = new HappyState();
UpsetState = new UpsetStateMachine(); UpsetState = new UpsetState();
VomitState = new VomitStateMachine(); VomitState = new VomitState();
StateMachineController = new StateMachineController<Customer>(this, IdleState); StateMachineController = new StateMachineController<Customer>(this, IdleState);
@ -257,7 +257,6 @@ namespace BlueWater.Npcs.Customers
public void SetTableSeat(TableSeat tableSeat) public void SetTableSeat(TableSeat tableSeat)
{ {
CurrentTableSeat = tableSeat; CurrentTableSeat = tableSeat;
BalloonUi.Initialize(CurrentTableSeat);
} }
public void SetCurrentDirection(Vector3 normalDirection) => CurrentDirection = normalDirection; public void SetCurrentDirection(Vector3 normalDirection) => CurrentDirection = normalDirection;
@ -472,7 +471,7 @@ namespace BlueWater.Npcs.Customers
public bool IsOrderedCocktail() public bool IsOrderedCocktail()
{ {
return CurrentTableSeat && !IsReceivedItem; return CurrentTableSeat && CurrentTableSeat.IsOccupied && !IsReceivedItem;
} }
public void TryMatchedServer() public void TryMatchedServer()

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers namespace BlueWater.Npcs.Customers
{ {
public class HappyStateMachine : IStateMachine<Customer> public class HappyState : IStateMachine<Customer>
{ {
public void EnterState(Customer character) public void EnterState(Customer character)
{ {

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers namespace BlueWater.Npcs.Customers
{ {
public class IdleStateMachine : IStateMachine<Customer> public class IdleState : IStateMachine<Customer>
{ {
public void EnterState(Customer character) public void EnterState(Customer character)
{ {

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers namespace BlueWater.Npcs.Customers
{ {
public class UpsetStateMachine : IStateMachine<Customer> public class UpsetState : IStateMachine<Customer>
{ {
public void EnterState(Customer character) public void EnterState(Customer character)
{ {

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers namespace BlueWater.Npcs.Customers
{ {
public class VomitStateMachine : IStateMachine<Customer> public class VomitState : IStateMachine<Customer>
{ {
private bool _isVomiting; private bool _isVomiting;

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers namespace BlueWater.Npcs.Customers
{ {
public class WalkingStateMachine : IStateMachine<Customer> public class WalkingState : IStateMachine<Customer>
{ {
public void EnterState(Customer character) public void EnterState(Customer character)
{ {

View File

@ -1,4 +1,3 @@
using System;
using System.Collections; using System.Collections;
using BlueWater.Audios; using BlueWater.Audios;
using BlueWater.Interfaces; using BlueWater.Interfaces;

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class CleaningFloorStateMachine : IStateMachine<TycoonPlayer> public class CleaningFloorState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingStateMachine ? character.ServingState
: character.WalkingStateMachine); : character.WalkingState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleStateMachine ? character.ServingIdleState
: character.IdleStateMachine); : character.IdleState, character);
} }
} }

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class CleaningTableStateMachine : IStateMachine<TycoonPlayer> public class CleaningTableState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingStateMachine ? character.ServingState
: character.WalkingStateMachine); : character.WalkingState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleStateMachine ? character.ServingIdleState
: character.IdleStateMachine); : character.IdleState, character);
} }
} }

View File

@ -0,0 +1,48 @@
using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons
{
public class DashState : IStateMachine<TycoonPlayer>
{
public void EnterState(TycoonPlayer character)
{
var dashSpeed = character.TycoonMovement.DashTime;
character.SpineController.PlayAnimationDuration(TycoonPlayerSpineAnimation.Dash, false, dashSpeed);
}
public void UpdateState(TycoonPlayer character)
{
if (character.TycoonMovement.IsDashing) return;
if (character.TycoonMovement.IsMoving)
{
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingState
: character.WalkingState, character);
}
else if (character.IsMakingCocktail)
{
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
}
else if (character.IsCleaningFloor)
{
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
}
else if (character.IsCleaningTable)
{
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
}
else if (!character.TycoonMovement.IsMoving)
{
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleState
: character.IdleState, character);
}
}
public void ExitState(TycoonPlayer character)
{
}
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: df6794ea3812a0b4f9b04ad2232167cf

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class IdleStateMachine : IStateMachine<TycoonPlayer> public class IdleState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -13,27 +13,27 @@ namespace BlueWater.Players.Tycoons
{ {
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingStateMachine ? character.ServingState
: character.WalkingStateMachine); : character.WalkingState, character);
} }
else if (character.IsMakingCocktail) else if (character.IsMakingCocktail)
{ {
character.TransitionToState(character.MakingCocktailStateMachine); character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
} }
else if (character.IsCleaningFloor) else if (character.IsCleaningFloor)
{ {
character.TransitionToState(character.CleaningFloorStateMachine); character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
} }
else if (character.IsCleaningTable) else if (character.IsCleaningTable)
{ {
character.TransitionToState(character.CleaningTableStateMachine); character.StateMachineController.TransitionToState(character.CleaningTableState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
if (character.TycoonPickupHandler.IsPickedUpCocktail()) if (character.TycoonPickupHandler.IsPickedUpAnything())
{ {
character.TransitionToState(character.ServingIdleStateMachine); character.StateMachineController.TransitionToState(character.ServingIdleState, character);
} }
} }
} }

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class MakingCocktailStateMachine : IStateMachine<TycoonPlayer> public class MakingCocktailState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingStateMachine ? character.ServingState
: character.WalkingStateMachine); : character.WalkingState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleStateMachine ? character.ServingIdleState
: character.IdleStateMachine); : character.IdleState, character);
} }
} }

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class ServingIdleStateMachine : IStateMachine<TycoonPlayer> public class ServingIdleState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -13,27 +13,27 @@ namespace BlueWater.Players.Tycoons
{ {
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingStateMachine ? character.ServingState
: character.WalkingStateMachine); : character.WalkingState, character);
} }
else if (character.IsMakingCocktail) else if (character.IsMakingCocktail)
{ {
character.TransitionToState(character.MakingCocktailStateMachine); character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
} }
else if (character.IsCleaningFloor) else if (character.IsCleaningFloor)
{ {
character.TransitionToState(character.CleaningFloorStateMachine); character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
} }
else if (character.IsCleaningTable) else if (character.IsCleaningTable)
{ {
character.TransitionToState(character.CleaningTableStateMachine); character.StateMachineController.TransitionToState(character.CleaningTableState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
if (!character.TycoonPickupHandler.IsPickedUpCocktail()) if (!character.TycoonPickupHandler.IsPickedUpAnything())
{ {
character.TransitionToState(character.IdleStateMachine); character.StateMachineController.TransitionToState(character.IdleState, character);
} }
} }
} }

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class ServingStateMachine : IStateMachine<TycoonPlayer> public class ServingState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -13,28 +13,28 @@ namespace BlueWater.Players.Tycoons
{ {
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
if (!character.TycoonPickupHandler.IsPickedUpCocktail()) if (!character.TycoonPickupHandler.IsPickedUpAnything())
{ {
character.TransitionToState(character.WalkingStateMachine); character.StateMachineController.TransitionToState(character.WalkingState, character);
} }
} }
else if (character.IsMakingCocktail) else if (character.IsMakingCocktail)
{ {
character.TransitionToState(character.MakingCocktailStateMachine); character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
} }
else if (character.IsCleaningFloor) else if (character.IsCleaningFloor)
{ {
character.TransitionToState(character.CleaningFloorStateMachine); character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
} }
else if (character.IsCleaningTable) else if (character.IsCleaningTable)
{ {
character.TransitionToState(character.CleaningTableStateMachine); character.StateMachineController.TransitionToState(character.CleaningTableState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleStateMachine ? character.ServingIdleState
: character.IdleStateMachine); : character.IdleState, character);
} }
} }

View File

@ -2,7 +2,7 @@ using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class WalkingStateMachine : IStateMachine<TycoonPlayer> public class WalkingState : IStateMachine<TycoonPlayer>
{ {
public void EnterState(TycoonPlayer character) public void EnterState(TycoonPlayer character)
{ {
@ -13,28 +13,28 @@ namespace BlueWater.Players.Tycoons
{ {
if (character.TycoonMovement.IsMoving) if (character.TycoonMovement.IsMoving)
{ {
if (character.TycoonPickupHandler.IsPickedUpCocktail()) if (character.TycoonPickupHandler.IsPickedUpAnything())
{ {
character.TransitionToState(character.ServingStateMachine); character.StateMachineController.TransitionToState(character.ServingState, character);
} }
} }
else if (character.IsMakingCocktail) else if (character.IsMakingCocktail)
{ {
character.TransitionToState(character.MakingCocktailStateMachine); character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
} }
else if (character.IsCleaningFloor) else if (character.IsCleaningFloor)
{ {
character.TransitionToState(character.CleaningFloorStateMachine); character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
} }
else if (character.IsCleaningTable) else if (character.IsCleaningTable)
{ {
character.TransitionToState(character.CleaningTableStateMachine); character.StateMachineController.TransitionToState(character.CleaningTableState, character);
} }
else if (!character.TycoonMovement.IsMoving) else if (!character.TycoonMovement.IsMoving)
{ {
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingIdleStateMachine ? character.ServingIdleState
: character.IdleStateMachine); : character.IdleState, character);
} }
} }

View File

@ -26,6 +26,7 @@ namespace BlueWater.Players.Tycoons
// Events // Events
public event Action<Vector2> OnMoveInputReceived; public event Action<Vector2> OnMoveInputReceived;
public event Action OnDashInputReceived;
#endregion #endregion
@ -94,6 +95,14 @@ namespace BlueWater.Players.Tycoons
OnMoveInputReceived?.Invoke(movementInput); OnMoveInputReceived?.Invoke(movementInput);
} }
public void OnDash(InputAction.CallbackContext context)
{
if (context.performed)
{
OnDashInputReceived?.Invoke();
}
}
public void OnInteraction(InputAction.CallbackContext context) public void OnInteraction(InputAction.CallbackContext context)
{ {
if (context.performed) if (context.performed)

View File

@ -1,9 +1,13 @@
using System;
using System.Collections;
using BlueWater.Interfaces; using BlueWater.Interfaces;
using BlueWater.Utility;
using Sirenix.OdinInspector;
using UnityEngine; using UnityEngine;
namespace BlueWater.Players.Tycoons namespace BlueWater.Players.Tycoons
{ {
public class TycoonMovement : MonoBehaviour, IPhysicMovable public class TycoonMovement : MonoBehaviour, IDashable, IPhysicMovable
{ {
// Variables // Variables
#region Variables #region Variables
@ -11,7 +15,6 @@ namespace BlueWater.Players.Tycoons
// Components // Components
public Rigidbody Rigidbody { get; private set; } public Rigidbody Rigidbody { get; private set; }
private Transform _visualLook; private Transform _visualLook;
private TycoonPickupHandler _tycoonPickupHandler;
// Move // Move
[field: SerializeField, Range(1f, 20f), Tooltip("이동 속도")] [field: SerializeField, Range(1f, 20f), Tooltip("이동 속도")]
@ -23,6 +26,25 @@ namespace BlueWater.Players.Tycoons
public bool IsMoveEnabled { get; private set; } = true; public bool IsMoveEnabled { get; private set; } = true;
public bool IsMoving { get; private set; } public bool IsMoving { get; private set; }
// Dash
[field: Title("대쉬")]
[field: SerializeField, Range(1f, 50f), Tooltip("대쉬 속도")]
public float DashSpeed { get; private set; } = 20f;
[field: SerializeField, Range(0.1f, 1f), Tooltip("대쉬 시간")]
public float DashTime { get; private set; } = 0.2f;
[field: SerializeField, Range(0f, 5f), Tooltip("대쉬 쿨타임")]
public float DashCooldown { get; private set; } = 0.5f;
[SerializeField]
private ParticleSystem _dashParticle;
public bool IsDashEnabled { get; private set; } = true;
public bool IsDashing { get; private set; }
public bool IsDashCoolDownActive { get; private set; }
private Vector3 _inputDirection; private Vector3 _inputDirection;
@ -41,7 +63,8 @@ namespace BlueWater.Players.Tycoons
public Vector3 PushDirection { get; private set; } public Vector3 PushDirection { get; private set; }
public float PushPower { get; private set; } public float PushPower { get; private set; }
public float PushPowerReduction { get; private set; } public float PushPowerReduction { get; private set; }
private Coroutine _dashInstance;
private float _finalSpeed; private float _finalSpeed;
#endregion #endregion
@ -75,8 +98,6 @@ namespace BlueWater.Players.Tycoons
{ {
Rigidbody = GetComponent<Rigidbody>(); Rigidbody = GetComponent<Rigidbody>();
_visualLook = transform.Find("VisualLook"); _visualLook = transform.Find("VisualLook");
_tycoonPickupHandler = GetComponent<TycoonPickupHandler>();
} }
#endregion #endregion
@ -122,11 +143,13 @@ namespace BlueWater.Players.Tycoons
public void SetPush(Vector3 pushDirection, float pushPower) public void SetPush(Vector3 pushDirection, float pushPower)
{ {
throw new System.NotImplementedException(); throw new NotImplementedException();
} }
public void Move() public void Move()
{ {
if (IsDashing) return;
CurrentDirection = _inputDirection; CurrentDirection = _inputDirection;
IsMoving = _inputDirection != Vector3.zero; IsMoving = _inputDirection != Vector3.zero;
@ -137,6 +160,60 @@ namespace BlueWater.Players.Tycoons
} }
} }
// Dash
public bool CanDash()
{
if (!IsDashEnabled || IsDashing || IsDashCoolDownActive) return false;
return true;
}
public void Dash()
{
Utils.StartUniqueCoroutine(this, ref _dashInstance, DashCoroutine());
}
private IEnumerator DashCoroutine()
{
IsDashing = true;
IsDashCoolDownActive = true;
if (_dashParticle)
{
_dashParticle.Play();
}
var dashDirection = _inputDirection;
if (dashDirection == Vector3.zero)
{
dashDirection = CurrentDirection;
}
var elapsedTime = 0f;
while (elapsedTime <= DashTime)
{
var finalVelocity = dashDirection * DashSpeed;
Rigidbody.linearVelocity = finalVelocity;
elapsedTime += Time.fixedDeltaTime;
yield return new WaitForFixedUpdate();
}
EndDash(DashCooldown);
}
public void EndDash(float dashCooldown = float.PositiveInfinity)
{
Utils.EndUniqueCoroutine(this, ref _dashInstance);
Rigidbody.linearVelocity = Vector3.zero;
IsDashing = false;
if (float.IsPositiveInfinity(dashCooldown))
{
dashCooldown = DashCooldown;
}
StartCoroutine(Utils.CoolDownCoroutine(dashCooldown, () => IsDashCoolDownActive = false));
}
#endregion #endregion
} }
} }

View File

@ -9,11 +9,11 @@ namespace BlueWater.Players.Tycoons
[SerializeField] [SerializeField]
private SpriteRenderer _itemRenderer; private SpriteRenderer _itemRenderer;
[SerializeField] [field: SerializeField]
private bool _isUnfinishedCocktailPickedUp; public bool IsUnfinishedCocktailPickedUp { get; private set; }
[SerializeField] [field: SerializeField]
private bool _isPickedUpItem; public bool IsPickedUpItem { get; private set; }
private IPickup _currentPickupItem; private IPickup _currentPickupItem;
@ -42,29 +42,29 @@ namespace BlueWater.Players.Tycoons
private void PickupUnfinishedCocktail() private void PickupUnfinishedCocktail()
{ {
_isUnfinishedCocktailPickedUp = true; IsUnfinishedCocktailPickedUp = true;
} }
public void PickupItem(IPickup item, bool isMadePlayer) public void PickupItem(IPickup item, bool isMadePlayer)
{ {
if (!isMadePlayer) return; if (!isMadePlayer) return;
if (_isPickedUpItem) if (IsPickedUpItem)
{ {
Debug.Log("이미 아이템을 들고 있습니다."); Debug.Log("이미 아이템을 들고 있습니다.");
return; return;
} }
_isUnfinishedCocktailPickedUp = false; IsUnfinishedCocktailPickedUp = false;
_currentPickupItem = item; _currentPickupItem = item;
_itemRenderer.enabled = false; _itemRenderer.enabled = false;
//_itemRenderer.sprite = item.Sprite; //_itemRenderer.sprite = item.Sprite;
_isPickedUpItem = true; IsPickedUpItem = true;
} }
public void ServedItem(IPickup item) public void ServedItem(IPickup item)
{ {
if (!_isPickedUpItem || _currentPickupItem == null) if (!IsPickedUpItem || _currentPickupItem == null)
{ {
Debug.Log("들고있는 아이템이 없거나, 현재 아이템 데이터가 비어있습니다."); Debug.Log("들고있는 아이템이 없거나, 현재 아이템 데이터가 비어있습니다.");
return; return;
@ -72,35 +72,30 @@ namespace BlueWater.Players.Tycoons
_currentPickupItem = null; _currentPickupItem = null;
_itemRenderer.sprite = null; _itemRenderer.sprite = null;
_isPickedUpItem = false; IsPickedUpItem = false;
} }
public void DiscardItem() public void DiscardItem()
{ {
if (!_isPickedUpItem && !_isUnfinishedCocktailPickedUp) if (!IsPickedUpItem && !IsUnfinishedCocktailPickedUp)
{ {
Debug.Log("들고있는 아이템이 없습니다."); Debug.Log("들고있는 아이템이 없습니다.");
return; return;
} }
_isUnfinishedCocktailPickedUp = false; IsUnfinishedCocktailPickedUp = false;
_currentPickupItem = null; _currentPickupItem = null;
_itemRenderer.sprite = null; _itemRenderer.sprite = null;
_isPickedUpItem = false; IsPickedUpItem = false;
} }
public IPickup GetCurrentPickupItem() => _currentPickupItem; public IPickup GetCurrentPickupItem() => _currentPickupItem;
public bool IsServablePickupItem() => _isPickedUpItem && _currentPickupItem.Idx != "Cocktail000"; public bool IsServablePickupItem() => IsPickedUpItem && _currentPickupItem.Idx != "Cocktail000";
/// <summary>
/// 완성된 아이템이 있는 경우
/// </summary>
public bool IsPickedUpItem() => _isPickedUpItem;
/// <summary> /// <summary>
/// 제조중인 칵테일이 있거나, 아이템이 있는 경우 /// 제조중인 칵테일이 있거나, 아이템이 있는 경우
/// </summary> /// </summary>
public bool IsPickedUpCocktail() => _isPickedUpItem || _isUnfinishedCocktailPickedUp; public bool IsPickedUpAnything() => IsPickedUpItem || IsUnfinishedCocktailPickedUp;
} }
} }

View File

@ -15,6 +15,7 @@ namespace BlueWater.Players.Tycoons
public const string Walking = "Run"; public const string Walking = "Run";
public const string ServingIdle = "ServingIdle"; public const string ServingIdle = "ServingIdle";
public const string Serving = "Serving"; public const string Serving = "Serving";
public const string Dash = "Dash";
public const string CleaningFloor = "CleaningFloor"; public const string CleaningFloor = "CleaningFloor";
public const string CleaningTable = "CleaningTable"; public const string CleaningTable = "CleaningTable";
public const string MakingCocktail = "BeerMaker"; public const string MakingCocktail = "BeerMaker";
@ -65,14 +66,15 @@ namespace BlueWater.Players.Tycoons
public bool IsMakingCocktail { get; set; } public bool IsMakingCocktail { get; set; }
// State // State
public IStateMachine<TycoonPlayer> CurrentStateMachine { get; private set; } public StateMachineController<TycoonPlayer> StateMachineController { get; private set; }
public IStateMachine<TycoonPlayer> IdleStateMachine { get; private set; } public IStateMachine<TycoonPlayer> IdleState { get; private set; }
public IStateMachine<TycoonPlayer> WalkingStateMachine { get; private set; } public IStateMachine<TycoonPlayer> WalkingState { get; private set; }
public IStateMachine<TycoonPlayer> ServingIdleStateMachine { get; private set; } public IStateMachine<TycoonPlayer> DashState { get; private set; }
public IStateMachine<TycoonPlayer> ServingStateMachine { get; private set; } public IStateMachine<TycoonPlayer> ServingIdleState { get; private set; }
public IStateMachine<TycoonPlayer> CleaningFloorStateMachine { get; private set; } public IStateMachine<TycoonPlayer> ServingState { get; private set; }
public IStateMachine<TycoonPlayer> CleaningTableStateMachine { get; private set; } public IStateMachine<TycoonPlayer> CleaningFloorState { get; private set; }
public IStateMachine<TycoonPlayer> MakingCocktailStateMachine { get; private set; } public IStateMachine<TycoonPlayer> CleaningTableState { get; private set; }
public IStateMachine<TycoonPlayer> MakingCocktailState { get; private set; }
#endregion #endregion
@ -92,36 +94,36 @@ namespace BlueWater.Players.Tycoons
private void Start() private void Start()
{ {
TycoonInput.OnMoveInputReceived += TycoonMovement.HandleInputMovement; TycoonInput.OnMoveInputReceived += TycoonMovement.HandleInputMovement;
TycoonInput.OnDashInputReceived += Dash;
EventManager.OnDead += Die; EventManager.OnDead += Die;
EventManager.OnMakeCocktailStarted += MakeCocktailStarted;
EventManager.OnMakeCocktailCompleted += MakeCocktailCompleted; EventManager.OnMakeCocktailCompleted += MakeCocktailCompleted;
EventManager.OnCocktailDiscarded += DiscardCocktail; EventManager.OnCocktailDiscarded += DiscardCocktail;
EventManager.OnCocktailServedToCustomer += ServedCocktail; EventManager.OnCocktailServedToCustomer += ServedCocktail;
IdleStateMachine = new IdleStateMachine(); IdleState = new IdleState();
WalkingStateMachine = new WalkingStateMachine(); WalkingState = new WalkingState();
ServingIdleStateMachine = new ServingIdleStateMachine(); DashState = new DashState();
ServingStateMachine = new ServingStateMachine(); ServingIdleState = new ServingIdleState();
CleaningFloorStateMachine = new CleaningFloorStateMachine(); ServingState = new ServingState();
CleaningTableStateMachine = new CleaningTableStateMachine(); CleaningFloorState = new CleaningFloorState();
MakingCocktailStateMachine = new MakingCocktailStateMachine(); CleaningTableState = new CleaningTableState();
MakingCocktailState = new MakingCocktailState();
CurrentStateMachine = IdleStateMachine; StateMachineController = new StateMachineController<TycoonPlayer>(this, IdleState);
CurrentStateMachine.EnterState(this);
} }
private void Update() private void Update()
{ {
CurrentStateMachine.UpdateState(this); StateMachineController.UpdateState(this);
} }
private void OnDestroy() private void OnDestroy()
{ {
TycoonInput.OnMoveInputReceived -= TycoonMovement.HandleInputMovement; TycoonInput.OnMoveInputReceived -= TycoonMovement.HandleInputMovement;
TycoonInput.OnDashInputReceived -= Dash;
EventManager.OnDead -= Die; EventManager.OnDead -= Die;
EventManager.OnMakeCocktailStarted -= MakeCocktailStarted;
EventManager.OnMakeCocktailCompleted -= MakeCocktailCompleted; EventManager.OnMakeCocktailCompleted -= MakeCocktailCompleted;
EventManager.OnCocktailDiscarded -= DiscardCocktail; EventManager.OnCocktailDiscarded -= DiscardCocktail;
EventManager.OnCocktailServedToCustomer -= ServedCocktail; EventManager.OnCocktailServedToCustomer -= ServedCocktail;
@ -163,18 +165,6 @@ namespace BlueWater.Players.Tycoons
var saveGold = TycoonManager.Instance.TycoonStatus.CurrentGold / 2; var saveGold = TycoonManager.Instance.TycoonStatus.CurrentGold / 2;
ES3.Save("Gold", saveGold); ES3.Save("Gold", saveGold);
} }
public void TransitionToState(IStateMachine<TycoonPlayer> newStateMachine)
{
CurrentStateMachine.ExitState(this);
CurrentStateMachine = newStateMachine;
CurrentStateMachine.EnterState(this);
}
public void MakeCocktailStarted()
{
InteractionCanvas.BalloonUi.PickupUnfinishedCocktail();
}
public void MakeCocktailCompleted(CocktailData cocktailData, bool isMadePlayer) public void MakeCocktailCompleted(CocktailData cocktailData, bool isMadePlayer)
{ {
@ -196,7 +186,15 @@ namespace BlueWater.Players.Tycoons
if (!isServedPlayer) return; if (!isServedPlayer) return;
TycoonPickupHandler.ServedItem(cocktailData); TycoonPickupHandler.ServedItem(cocktailData);
InteractionCanvas.BalloonUi.ServedItem(); InteractionCanvas.BalloonUi.DiscardItem();
}
private void Dash()
{
if (!TycoonMovement.CanDash()) return;
StateMachineController.TransitionToState(DashState, this);
TycoonMovement.Dash();
} }
#endregion #endregion

View File

@ -124,6 +124,42 @@ namespace BlueWater.Players
return trackEntry; return trackEntry;
} }
public TrackEntry PlayAnimationDuration(string animationName, bool isLoopActive, float duration, bool isReverse = false, int trackIndex = 0)
{
if (!SkeletonAnimation || _animationState == null) return null;
if (string.IsNullOrEmpty(animationName))
{
Debug.LogError($"{animationName}의 애니메이션은 존재하지 않습니다.");
return null;
}
// 중복 체크
var currentTrackEntry = _animationState.GetCurrent(trackIndex);
if (currentTrackEntry != null && currentTrackEntry.Animation.Name == animationName)
{
return currentTrackEntry;
}
var findAnimation = SkeletonAnimation.Skeleton.Data.FindAnimation(animationName);
if (findAnimation == null)
{
Debug.LogError($"{animationName} 애니메이션을 찾을 수 없습니다.");
return null;
}
var speed = findAnimation.Duration / duration;
_animationState.TimeScale = isReverse ? -Mathf.Abs(speed) : Mathf.Abs(speed);
var trackEntry = _animationState.SetAnimation(trackIndex, animationName, isLoopActive);
if (isReverse)
{
trackEntry.TrackTime = trackEntry.AnimationEnd;
}
return trackEntry;
}
public void SetSkin(string skinName) public void SetSkin(string skinName)
{ {
if (SkeletonAnimation == null && _animationState == null) return; if (SkeletonAnimation == null && _animationState == null) return;

View File

@ -530,6 +530,15 @@
"interactions": "", "interactions": "",
"initialStateCheck": true "initialStateCheck": true
}, },
{
"name": "Dash",
"type": "Button",
"id": "34c447c4-c69f-4348-89ba-e1f8585deb95",
"expectedControlType": "",
"processors": "",
"interactions": "",
"initialStateCheck": false
},
{ {
"name": "Interaction", "name": "Interaction",
"type": "Button", "type": "Button",
@ -614,6 +623,17 @@
"isComposite": false, "isComposite": false,
"isPartOfComposite": true "isPartOfComposite": true
}, },
{
"name": "",
"id": "c0999630-d77d-41fb-ac08-e3cb2e0c4bd0",
"path": "<Keyboard>/space",
"interactions": "",
"processors": "",
"groups": ";Keyboard&Mouse",
"action": "Dash",
"isComposite": false,
"isPartOfComposite": false
},
{ {
"name": "", "name": "",
"id": "8c3121b0-0da8-48fc-9807-9593fdd06e60", "id": "8c3121b0-0da8-48fc-9807-9593fdd06e60",

View File

@ -40,7 +40,6 @@ namespace BlueWater.Tycoons
private Material _instanceMaterial; private Material _instanceMaterial;
public event Action<int> OnAmountChanged;
public static event Action<Barrel> OnBarrelInteracted; public static event Action<Barrel> OnBarrelInteracted;
public static event Action OnBarrelCancelInteracted; public static event Action OnBarrelCancelInteracted;
@ -91,7 +90,7 @@ namespace BlueWater.Tycoons
/// </summary> /// </summary>
public override bool CanInteraction() public override bool CanInteraction()
{ {
return IsActivated && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem() && CanConsume(1); return IsActivated && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem && CanConsume(1);
} }
public bool CanConsume(int amount) public bool CanConsume(int amount)
@ -107,7 +106,7 @@ namespace BlueWater.Tycoons
} }
var consumeAmount = CurrentAmount - amount; var consumeAmount = CurrentAmount - amount;
SetCurrentAmount(consumeAmount, true); SetCurrentAmount(consumeAmount);
} }
public bool TryConsume(int amount) public bool TryConsume(int amount)
@ -120,7 +119,7 @@ namespace BlueWater.Tycoons
public LiquidData GetLiquidData() => _liquidData; public LiquidData GetLiquidData() => _liquidData;
public void SetCurrentAmount(int amount, bool isFromAction = false) public void SetCurrentAmount(int amount)
{ {
if (CurrentAmount == int.MaxValue) if (CurrentAmount == int.MaxValue)
{ {
@ -130,11 +129,6 @@ namespace BlueWater.Tycoons
CurrentAmount = amount; CurrentAmount = amount;
var liquidAmount = CurrentAmount / 4000f; var liquidAmount = CurrentAmount / 4000f;
_instanceMaterial.SetFloat(LiquidAmountHash, liquidAmount); _instanceMaterial.SetFloat(LiquidAmountHash, liquidAmount);
if (!isFromAction)
{
OnAmountChanged?.Invoke(CurrentAmount);
}
} }
public void Activate() public void Activate()
@ -147,7 +141,7 @@ namespace BlueWater.Tycoons
{ {
if (!_isActivated) return; if (!_isActivated) return;
SetCurrentAmount(CurrentAmount + addedValue, true); SetCurrentAmount(CurrentAmount + addedValue);
} }
} }
} }

View File

@ -23,7 +23,7 @@ namespace BlueWater.Tycoons
public override bool CanInteraction() public override bool CanInteraction()
{ {
return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail(); return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
} }
public override bool CanInteractionCrew(Crew crew = null) public override bool CanInteractionCrew(Crew crew = null)

View File

@ -117,7 +117,7 @@ namespace BlueWater.Tycoons
public override void Interaction() public override void Interaction()
{ {
if (CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem()) if (CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem)
{ {
var carriedItemData = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem(); var carriedItemData = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem();
if (carriedItemData.Idx == FireWoodIdx) if (carriedItemData.Idx == FireWoodIdx)
@ -135,7 +135,7 @@ namespace BlueWater.Tycoons
public override bool CanInteraction() public override bool CanInteraction()
{ {
var isCarriedItem = CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem(); var isCarriedItem = CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem;
var isFullFireWood = _currentFireWoodCount >= CookwareDataSo.MaxFireWoodQuantity; var isFullFireWood = _currentFireWoodCount >= CookwareDataSo.MaxFireWoodQuantity;
var isEmptyFoodData = CurrentDailyFoodUi is null or { FoodData : null }; var isEmptyFoodData = CurrentDailyFoodUi is null or { FoodData : null };
var isEmptyFinishedFood = _cookedFoodDatas is null or { Count : <= 0 }; var isEmptyFinishedFood = _cookedFoodDatas is null or { Count : <= 0 };

View File

@ -0,0 +1,77 @@
using System;
using UnityEngine;
namespace BlueWater.Tycoons
{
[Serializable]
public class Pump : InteractionFurniture
{
[SerializeField]
private float _interactionHoldingTime = 1f;
[SerializeField]
private PumpingMessage _pumpingMessageObject;
[SerializeField]
private Transform _instanceLocation;
[SerializeField]
private Vector3 _offset;
[SerializeField, Range(0, 1000)]
private int addedLiquid = 400;
private bool _isPlayerInteracting;
private void Update()
{
var holdingGauge = 0f;
if (HoldingElapsedTime > 0f)
{
holdingGauge = Mathf.Clamp(HoldingElapsedTime / _interactionHoldingTime, 0f, 1f);
}
if (IsShowing)
{
EventManager.InvokeHoldInteracting(holdingGauge);
}
if (HoldingElapsedTime > _interactionHoldingTime)
{
HoldingElapsedTime -= _interactionHoldingTime;
EventManager.InvokeAddBarrels(addedLiquid);
var pumpingMessage = Instantiate(_pumpingMessageObject, transform.position + _offset,
Quaternion.identity, _instanceLocation);
pumpingMessage.Initialize(addedLiquid);
}
if (_isPlayerInteracting)
{
HoldingElapsedTime += Time.deltaTime;
}
else
{
if (HoldingElapsedTime > 0f)
{
HoldingElapsedTime -= Time.deltaTime;
}
}
}
public override void Interaction()
{
_isPlayerInteracting = true;
}
public override void CancelInteraction()
{
_isPlayerInteracting = false;
}
public override bool CanInteraction()
{
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
}
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d1e03b5e408ba914193c2c50c8bef052

View File

@ -87,7 +87,7 @@ namespace BlueWater.Tycoons
{ {
// 1. 테이블에 칵테일이 있고, 플레이어가 칵테일을 들고 있지 않은 경우 // 1. 테이블에 칵테일이 있고, 플레이어가 칵테일을 들고 있지 않은 경우
// 2. 테이블에 칵테일이 없고, 플레이어가 칵테일을 들고 있는 경우 (정상적인 칵테일만) // 2. 테이블에 칵테일이 없고, 플레이어가 칵테일을 들고 있는 경우 (정상적인 칵테일만)
return (CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail()) || return (CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything()) ||
(CurrentPickupItem == null && CurrentTycoonPlayer.TycoonPickupHandler.IsServablePickupItem()); (CurrentPickupItem == null && CurrentTycoonPlayer.TycoonPickupHandler.IsServablePickupItem());
} }

View File

@ -146,7 +146,7 @@ namespace BlueWater.Tycoons
public override bool CanInteraction() public override bool CanInteraction()
{ {
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail() && !IsCleaned; return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything() && !IsCleaned;
} }
public void ReserveSeat() => IsReserved = true; public void ReserveSeat() => IsReserved = true;

View File

@ -6,15 +6,19 @@ namespace BlueWater.Tycoons
{ {
public override void Interaction() public override void Interaction()
{ {
var discardCocktailDataIdx = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem().Idx; CocktailData discardCocktailData = null;
var discardCocktailData = ItemManager.Instance.CocktailDataSo.GetDataByIdx(discardCocktailDataIdx); if (!CurrentTycoonPlayer.TycoonPickupHandler.IsUnfinishedCocktailPickedUp)
{
var discardCocktailDataIdx = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem().Idx;
discardCocktailData = ItemManager.Instance.CocktailDataSo.GetDataByIdx(discardCocktailDataIdx);
}
EventManager.InvokeCocktailDiscarded(discardCocktailData, true); EventManager.InvokeCocktailDiscarded(discardCocktailData, true);
} }
public override bool CanInteraction() public override bool CanInteraction()
{ {
return CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail(); return CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
} }
} }
} }

View File

@ -106,7 +106,7 @@ namespace BlueWater.Tycoons
public override bool CanInteraction() public override bool CanInteraction()
{ {
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail(); return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
} }
private void Destroy() private void Destroy()

View File

@ -20,7 +20,7 @@ MonoBehaviour:
<Type>k__BackingField: 1 <Type>k__BackingField: 1
<Amount>k__BackingField: 99999 <Amount>k__BackingField: 99999
<Sprite>k__BackingField: {fileID: 21300000, guid: a8c45767f0a3ec245a47087c7ada2b50, type: 3} <Sprite>k__BackingField: {fileID: 21300000, guid: a8c45767f0a3ec245a47087c7ada2b50, type: 3}
<Color>k__BackingField: {r: 1, g: 0, b: 0, a: 1} <Color>k__BackingField: {r: 1, g: 0.21960784, b: 0, a: 1}
- <Key>k__BackingField: LiquidB - <Key>k__BackingField: LiquidB
<Value>k__BackingField: <Value>k__BackingField:
<Idx>k__BackingField: LiquidB <Idx>k__BackingField: LiquidB
@ -28,7 +28,7 @@ MonoBehaviour:
<Type>k__BackingField: 1 <Type>k__BackingField: 1
<Amount>k__BackingField: 2000 <Amount>k__BackingField: 2000
<Sprite>k__BackingField: {fileID: 21300000, guid: 216cb30d7010e95499c22161ccfde634, type: 3} <Sprite>k__BackingField: {fileID: 21300000, guid: 216cb30d7010e95499c22161ccfde634, type: 3}
<Color>k__BackingField: {r: 1, g: 0.5019608, b: 0, a: 1} <Color>k__BackingField: {r: 0.12156863, g: 1, b: 0, a: 1}
- <Key>k__BackingField: LiquidC - <Key>k__BackingField: LiquidC
<Value>k__BackingField: <Value>k__BackingField:
<Idx>k__BackingField: LiquidC <Idx>k__BackingField: LiquidC
@ -36,7 +36,7 @@ MonoBehaviour:
<Type>k__BackingField: 1 <Type>k__BackingField: 1
<Amount>k__BackingField: 2000 <Amount>k__BackingField: 2000
<Sprite>k__BackingField: {fileID: 21300000, guid: 404e93e2e77f60b49bbcbf1df18904d3, type: 3} <Sprite>k__BackingField: {fileID: 21300000, guid: 404e93e2e77f60b49bbcbf1df18904d3, type: 3}
<Color>k__BackingField: {r: 1, g: 1, b: 0, a: 1} <Color>k__BackingField: {r: 0, g: 0.23921569, b: 1, a: 1}
- <Key>k__BackingField: LiquidD - <Key>k__BackingField: LiquidD
<Value>k__BackingField: <Value>k__BackingField:
<Idx>k__BackingField: LiquidD <Idx>k__BackingField: LiquidD
@ -44,7 +44,7 @@ MonoBehaviour:
<Type>k__BackingField: 1 <Type>k__BackingField: 1
<Amount>k__BackingField: 2000 <Amount>k__BackingField: 2000
<Sprite>k__BackingField: {fileID: 21300000, guid: a575a803ef0529e43bcbbe8ccdbb34b2, type: 3} <Sprite>k__BackingField: {fileID: 21300000, guid: a575a803ef0529e43bcbbe8ccdbb34b2, type: 3}
<Color>k__BackingField: {r: 0, g: 1, b: 0, a: 1} <Color>k__BackingField: {r: 1, g: 0, b: 0.6666667, a: 1}
- <Key>k__BackingField: LiquidE - <Key>k__BackingField: LiquidE
<Value>k__BackingField: <Value>k__BackingField:
<Idx>k__BackingField: LiquidE <Idx>k__BackingField: LiquidE
@ -52,7 +52,7 @@ MonoBehaviour:
<Type>k__BackingField: 1 <Type>k__BackingField: 1
<Amount>k__BackingField: 2000 <Amount>k__BackingField: 2000
<Sprite>k__BackingField: {fileID: 21300000, guid: 2fc24dca6ce6ac94da0187dfce24fa3a, type: 3} <Sprite>k__BackingField: {fileID: 21300000, guid: 2fc24dca6ce6ac94da0187dfce24fa3a, type: 3}
<Color>k__BackingField: {r: 0, g: 0, b: 1, a: 1} <Color>k__BackingField: {r: 0.9843137, g: 1, b: 0, a: 1}
- <Key>k__BackingField: Garnish1 - <Key>k__BackingField: Garnish1
<Value>k__BackingField: <Value>k__BackingField:
<Idx>k__BackingField: Garnish1 <Idx>k__BackingField: Garnish1

View File

@ -78,6 +78,8 @@ namespace BlueWater.Tycoons
public void RemoveInstanceCocktail(CocktailData cocktailData, bool isRemovedPlayer) public void RemoveInstanceCocktail(CocktailData cocktailData, bool isRemovedPlayer)
{ {
if (cocktailData == null) return;
var idx = cocktailData.Idx; var idx = cocktailData.Idx;
if (InstanceCocktailDatas.ContainsKey(idx)) if (InstanceCocktailDatas.ContainsKey(idx))
{ {

View File

@ -132,7 +132,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentLiquidAmountA = value; _currentLiquidAmountA = value;
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelA.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.LiquidBarrelA.SetCurrentAmount(value);
} }
} }
@ -148,7 +148,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentLiquidAmountB = value; _currentLiquidAmountB = value;
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelB.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.LiquidBarrelB.SetCurrentAmount(value);
} }
} }
@ -164,7 +164,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentLiquidAmountC = value; _currentLiquidAmountC = value;
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelC.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.LiquidBarrelC.SetCurrentAmount(value);
} }
} }
@ -180,7 +180,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentLiquidAmountD = value; _currentLiquidAmountD = value;
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelD.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.LiquidBarrelD.SetCurrentAmount(value);
} }
} }
@ -196,7 +196,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentLiquidAmountE = value; _currentLiquidAmountE = value;
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelE.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.LiquidBarrelE.SetCurrentAmount(value);
} }
} }
@ -213,7 +213,7 @@ namespace BlueWater.Tycoons
set set
{ {
_currentGarnishAmount1 = value; _currentGarnishAmount1 = value;
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel1.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.GarnishBarrel1.SetCurrentAmount(value);
} }
} }
@ -229,21 +229,12 @@ namespace BlueWater.Tycoons
set set
{ {
_currentGarnishAmount2 = value; _currentGarnishAmount2 = value;
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel2.SetCurrentAmount(value, true); TycoonManager.Instance.TycoonIngredientController.GarnishBarrel2.SetCurrentAmount(value);
} }
} }
public void Initialize() public void Initialize()
{ {
var ingredientController = TycoonManager.Instance.TycoonIngredientController;
ingredientController.LiquidBarrelA.OnAmountChanged += UpdateLiquidA;
ingredientController.LiquidBarrelB.OnAmountChanged += UpdateLiquidB;
ingredientController.LiquidBarrelC.OnAmountChanged += UpdateLiquidC;
ingredientController.LiquidBarrelD.OnAmountChanged += UpdateLiquidD;
ingredientController.LiquidBarrelE.OnAmountChanged += UpdateLiquidE;
ingredientController.GarnishBarrel1.OnAmountChanged += UpdateGarnish1;
ingredientController.GarnishBarrel2.OnAmountChanged += UpdateGarnish2;
MaxLevel = int.Parse(TycoonManager.Instance.LevelDataSo.GetData().Last().Value.Idx); MaxLevel = int.Parse(TycoonManager.Instance.LevelDataSo.GetData().Last().Value.Idx);
CurrentLevel = 1; CurrentLevel = 1;
CurrentGold = 0; CurrentGold = 0;
@ -254,29 +245,6 @@ namespace BlueWater.Tycoons
CurrentPlayerHealth = GameManager.Instance.CurrentTycoonPlayer.PlayerHealthPoint.CurrentHealthPoint; CurrentPlayerHealth = GameManager.Instance.CurrentTycoonPlayer.PlayerHealthPoint.CurrentHealthPoint;
PlayerMoveSpeedMultiplier = GameManager.Instance.CurrentTycoonPlayer.TycoonMovement.MoveSpeedMultiplier; PlayerMoveSpeedMultiplier = GameManager.Instance.CurrentTycoonPlayer.TycoonMovement.MoveSpeedMultiplier;
} }
private void OnDestroy()
{
var ingredientController = TycoonManager.Instance.TycoonIngredientController;
if (ingredientController != null)
{
ingredientController.LiquidBarrelA.OnAmountChanged -= UpdateLiquidA;
ingredientController.LiquidBarrelB.OnAmountChanged -= UpdateLiquidB;
ingredientController.LiquidBarrelC.OnAmountChanged -= UpdateLiquidC;
ingredientController.LiquidBarrelD.OnAmountChanged -= UpdateLiquidD;
ingredientController.LiquidBarrelE.OnAmountChanged -= UpdateLiquidE;
ingredientController.GarnishBarrel1.OnAmountChanged -= UpdateGarnish1;
ingredientController.GarnishBarrel2.OnAmountChanged -= UpdateGarnish2;
}
}
private void UpdateLiquidA(int amount) => CurrentLiquidAmountA += amount;
private void UpdateLiquidB(int amount) => CurrentLiquidAmountB += amount;
private void UpdateLiquidC(int amount) => CurrentLiquidAmountC += amount;
private void UpdateLiquidD(int amount) => CurrentLiquidAmountD += amount;
private void UpdateLiquidE(int amount) => CurrentLiquidAmountE += amount;
private void UpdateGarnish1(int amount) => CurrentGarnishAmount1 += amount;
private void UpdateGarnish2(int amount) => CurrentGarnishAmount2 += amount;
private void LevelUp() private void LevelUp()
{ {

View File

@ -32,9 +32,7 @@ namespace BlueWater.Uis
private bool _isItemReceived; private bool _isItemReceived;
private Tween _tween; private Tween _tween;
private TableSeat _tableSeat;
private CocktailData _orderCocktailData; private CocktailData _orderCocktailData;
private bool _isUnfinishedCocktailPickedUp;
private void Awake() private void Awake()
{ {
@ -54,20 +52,9 @@ namespace BlueWater.Uis
_panel = transform.Find("Panel").gameObject; _panel = transform.Find("Panel").gameObject;
} }
public void Initialize(TableSeat tableSeat)
{
_tableSeat = tableSeat;
HideUi();
}
public void ShowUi() => _panel.SetActive(true); public void ShowUi() => _panel.SetActive(true);
public void HideUi() => _panel.SetActive(false); public void HideUi() => _panel.SetActive(false);
public void PickupUnfinishedCocktail()
{
_isUnfinishedCocktailPickedUp = true;
}
public void SetItemImage(IPickup item) public void SetItemImage(IPickup item)
{ {
if (!item.Sprite) if (!item.Sprite)
@ -75,7 +62,6 @@ namespace BlueWater.Uis
Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다."); Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다.");
} }
_isUnfinishedCocktailPickedUp = false;
SetItemSprite(item.Sprite); SetItemSprite(item.Sprite);
ShowUi(); ShowUi();
} }
@ -99,14 +85,6 @@ namespace BlueWater.Uis
public void DiscardItem() public void DiscardItem()
{ {
_isUnfinishedCocktailPickedUp = false;
HideUi();
SetEmpty();
}
public void ServedItem()
{
_isUnfinishedCocktailPickedUp = false;
HideUi(); HideUi();
SetEmpty(); SetEmpty();
} }

View File

@ -0,0 +1,41 @@
using DG.Tweening;
using TMPro;
using UnityEngine;
namespace BlueWater
{
public class PumpingMessage : MonoBehaviour
{
[SerializeField]
private RectTransform _rect;
[SerializeField]
private TMP_Text _text;
[SerializeField]
private float _offsetY = 1f;
[SerializeField]
private float _duration = 2f;
[SerializeField]
private float _shakeAmount = 0.1f;
[SerializeField]
private int _shakeVibrato = 4;
public void Initialize(int addedLiquid)
{
_text.text = $"+{addedLiquid}ml";
_rect.localRotation = Quaternion.identity;
var endPosition = _rect.localPosition + new Vector3(0, _offsetY, 0);
var tween = DOTween.Sequence().SetAutoKill(true);
tween.Append(_rect.DOLocalMoveY(endPosition.y, _duration).SetEase(Ease.InOutSine));
tween.Join(_rect.DOScale(Vector3.zero, _duration).SetEase(Ease.InBack));
tween.OnComplete(() => Destroy(gameObject));
}
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: da97352cbf8e3a448a46c44b4651f73e

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 KiB

After

Width:  |  Height:  |  Size: 236 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 KiB

After

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 236 KiB

After

Width:  |  Height:  |  Size: 243 KiB

View File

@ -254,8 +254,7 @@ MeshRenderer:
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2} - {fileID: 0}
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@ -284,13 +283,13 @@ MonoBehaviour:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 813964778509222274} m_GameObject: {fileID: 813964778509222274}
m_Enabled: 1 m_Enabled: 0
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3} m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2} skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
initialSkinName: 01Suit initialSkinName: 01Bar
fixPrefabOverrideViaMeshFilter: 2 fixPrefabOverrideViaMeshFilter: 2
initialFlipX: 0 initialFlipX: 0
initialFlipY: 0 initialFlipY: 0
@ -781,9 +780,9 @@ MonoBehaviour:
_isRandomRange: 0 _isRandomRange: 0
_randomRange: {x: 0, y: 1} _randomRange: {x: 0, y: 1}
_randomStrings: _randomStrings:
- 01Maid - 01Bar
- 02Maid - 02Bar
- 03Maid - 03Bar
--- !u!114 &17978457728262906 --- !u!114 &17978457728262906
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -256,6 +256,8 @@ MeshRenderer:
m_Materials: m_Materials:
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2} - {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2} - {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@ -290,7 +292,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2} skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
initialSkinName: 01Suit2 initialSkinName: 01Clean
fixPrefabOverrideViaMeshFilter: 2 fixPrefabOverrideViaMeshFilter: 2
initialFlipX: 0 initialFlipX: 0
initialFlipY: 0 initialFlipY: 0
@ -781,9 +783,9 @@ MonoBehaviour:
_isRandomRange: 0 _isRandomRange: 0
_randomRange: {x: 0, y: 1} _randomRange: {x: 0, y: 1}
_randomStrings: _randomStrings:
- 01Suit2 - 01Clean
- 02Suit2 - 02Clean
- 03Suit2 - 03Clean
--- !u!114 &17978457728262906 --- !u!114 &17978457728262906
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -254,8 +254,7 @@ MeshRenderer:
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2} - {fileID: 0}
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@ -290,7 +289,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2} skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
initialSkinName: 01Maid initialSkinName: 01Serv
fixPrefabOverrideViaMeshFilter: 2 fixPrefabOverrideViaMeshFilter: 2
initialFlipX: 0 initialFlipX: 0
initialFlipY: 0 initialFlipY: 0
@ -781,9 +780,9 @@ MonoBehaviour:
_isRandomRange: 0 _isRandomRange: 0
_randomRange: {x: 0, y: 1} _randomRange: {x: 0, y: 1}
_randomStrings: _randomStrings:
- 01Suit - 01Serv
- 02Suit - 02Serv
- 03Suit - 03Serv
--- !u!114 &17978457728262906 --- !u!114 &17978457728262906
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -270,6 +270,7 @@ Transform:
m_ConstrainProportionsScale: 1 m_ConstrainProportionsScale: 1
m_Children: m_Children:
- {fileID: 6509241874729291456} - {fileID: 6509241874729291456}
- {fileID: 1310764416167184350}
- {fileID: 3452808590865560956} - {fileID: 3452808590865560956}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -540,6 +541,22 @@ MonoBehaviour:
m_CallState: 2 m_CallState: 2
m_ActionId: c30fb3f3-d280-4b30-af6c-15f7483fd658 m_ActionId: c30fb3f3-d280-4b30-af6c-15f7483fd658
m_ActionName: 'TycoonUi/CancelManual[/Keyboard/q]' m_ActionName: 'TycoonUi/CancelManual[/Keyboard/q]'
- m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1674052485383758547}
m_TargetAssemblyTypeName: BlueWater.Players.Tycoons.TycoonInput, Assembly-CSharp
m_MethodName: OnDash
m_Mode: 0
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
m_ActionId: 34c447c4-c69f-4348-89ba-e1f8585deb95
m_ActionName: 'Tycoon/Dash[/Keyboard/space]'
m_NeverAutoSwitchControlSchemes: 0 m_NeverAutoSwitchControlSchemes: 0
m_DefaultControlScheme: m_DefaultControlScheme:
m_DefaultActionMap: Tycoon m_DefaultActionMap: Tycoon
@ -632,6 +649,10 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
<MoveSpeed>k__BackingField: 3 <MoveSpeed>k__BackingField: 3
<MoveSpeedMultiplier>k__BackingField: 1 <MoveSpeedMultiplier>k__BackingField: 1
<DashSpeed>k__BackingField: 10
<DashTime>k__BackingField: 0.2
<DashCooldown>k__BackingField: 5
_dashParticle: {fileID: 6534074633252588839}
--- !u!114 &909302231676134912 --- !u!114 &909302231676134912
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -645,8 +666,123 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
_itemRenderer: {fileID: 5527707380059080408} _itemRenderer: {fileID: 5527707380059080408}
_isUnfinishedCocktailPickedUp: 0 <IsUnfinishedCocktailPickedUp>k__BackingField: 0
_isPickedUpItem: 0 <IsPickedUpItem>k__BackingField: 0
--- !u!1 &6770728712927323782
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1310764416167184350}
m_Layer: 9
m_Name: Particles
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1310764416167184350
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6770728712927323782}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1223910344527447426}
m_Father: {fileID: 2798544366308408093}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &1498444826951423489
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 1310764416167184350}
m_Modifications:
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalScale.x
value: 0.3
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalScale.y
value: 0.3
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalScale.z
value: 0.3
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7071068
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalRotation.x
value: -0.7071068
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: -90
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4202938607248792743, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_SortingOrder
value: 5
objectReference: {fileID: 0}
- target: {fileID: 6303706055160295254, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
propertyPath: m_Name
value: DashParticle
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
--- !u!4 &1223910344527447426 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 303914191248036739, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
m_PrefabInstance: {fileID: 1498444826951423489}
m_PrefabAsset: {fileID: 0}
--- !u!198 &6534074633252588839 stripped
ParticleSystem:
m_CorrespondingSourceObject: {fileID: 5649266429755611942, guid: a833011c24a0166499bb1482b1f3b2e5, type: 3}
m_PrefabInstance: {fileID: 1498444826951423489}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &8027897071964512356 --- !u!1001 &8027897071964512356
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -711,6 +847,10 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y propertyPath: m_AnchoredPosition.y
value: 0.04999999 value: 0.04999999
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 8764364725249863370, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3}
propertyPath: m_PresetInfoIsWorld
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects: []

View File

@ -368,6 +368,127 @@ BoxCollider:
serializedVersion: 3 serializedVersion: 3
m_Size: {x: 12, y: 3.8, z: 0.20000005} m_Size: {x: 12, y: 3.8, z: 0.20000005}
m_Center: {x: 0, y: 0, z: 0.1} m_Center: {x: 0, y: 0, z: 0.1}
--- !u!1 &833462480456262630
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 761558860074504813}
- component: {fileID: 1240065722795991527}
- component: {fileID: 8016003909017665317}
m_Layer: 0
m_Name: Point Light (20)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &761558860074504813
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 833462480456262630}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 4.18, y: 4.46, z: -0.94}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 3965676124384496161}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!108 &1240065722795991527
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 833462480456262630}
m_Enabled: 1
serializedVersion: 11
m_Type: 2
m_Color: {r: 0.27865788, g: 0.5032396, b: 0.5849056, a: 1}
m_Intensity: 45
m_Range: 6.89
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ForceVisible: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
m_LightUnit: 1
m_LuxAtDistance: 1
m_EnableSpotReflector: 1
--- !u!114 &8016003909017665317
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 833462480456262630}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0
--- !u!1 &867242612611201267 --- !u!1 &867242612611201267
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2749,6 +2870,7 @@ Transform:
- {fileID: 1460156631301568417} - {fileID: 1460156631301568417}
- {fileID: 249187936443647402} - {fileID: 249187936443647402}
- {fileID: 2435960157213919885} - {fileID: 2435960157213919885}
- {fileID: 761558860074504813}
- {fileID: 5495525894007307580} - {fileID: 5495525894007307580}
- {fileID: 3834249266432028486} - {fileID: 3834249266432028486}
- {fileID: 7160680560296398733} - {fileID: 7160680560296398733}
@ -4909,6 +5031,7 @@ Transform:
- {fileID: 8480552838860958414} - {fileID: 8480552838860958414}
- {fileID: 4798925548635759970} - {fileID: 4798925548635759970}
- {fileID: 3032369304281183765} - {fileID: 3032369304281183765}
- {fileID: 334852209123821565}
m_Father: {fileID: 4449232531499695111} m_Father: {fileID: 4449232531499695111}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &8697754653569273504 --- !u!1 &8697754653569273504
@ -6416,6 +6539,68 @@ Transform:
m_CorrespondingSourceObject: {fileID: 1061695247072719575, guid: d4d2c09313763694785f13d2ff8c1303, type: 3} m_CorrespondingSourceObject: {fileID: 1061695247072719575, guid: d4d2c09313763694785f13d2ff8c1303, type: 3}
m_PrefabInstance: {fileID: 1080211192036468262} m_PrefabInstance: {fileID: 1080211192036468262}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1001 &1123846822714628895
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 1402113424960589398}
m_Modifications:
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalPosition.x
value: 4.191
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalPosition.z
value: -4.908
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5897095096647521783, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
propertyPath: m_Name
value: Pump
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
--- !u!4 &334852209123821565 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 809828747251277026, guid: 7947dcd65a3517948a2892d06222f5ae, type: 3}
m_PrefabInstance: {fileID: 1123846822714628895}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &1129546663280585032 --- !u!1001 &1129546663280585032
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -57,7 +57,7 @@ Transform:
m_GameObject: {fileID: 6373979881487551315} m_GameObject: {fileID: 6373979881487551315}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.679, z: -0} m_LocalPosition: {x: 0, y: 0.438, z: 0}
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
m_ConstrainProportionsScale: 1 m_ConstrainProportionsScale: 1
m_Children: [] m_Children: []
@ -170,6 +170,18 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: BartenderTable02 value: BartenderTable02
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 5953080908505751474, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7122983875714221022, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7122983875714221022, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_AnchoredPosition.y
value: 1.3
objectReference: {fileID: 0}
- target: {fileID: 7438534416270888028, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} - target: {fileID: 7438534416270888028, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.x propertyPath: m_LocalEulerAnglesHint.x
value: 30 value: 30

View File

@ -0,0 +1,230 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &7343451337687172630
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1180174675498993111, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 40
objectReference: {fileID: 0}
- target: {fileID: 2106642157007834423, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2234961990804426782, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_IsTrigger
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.z
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 2301048832536013177, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_AnchoredPosition.y
value: 80
objectReference: {fileID: 0}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: f91087f473887fc43bd9641a69852f3c, type: 3}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_SortingOrder
value: 5
objectReference: {fileID: 0}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_WasSpriteAssigned
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: 'm_Materials.Array.data[0]'
value:
objectReference: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
- target: {fileID: 3764902268943045601, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Name
value: Pump
objectReference: {fileID: 0}
- target: {fileID: 5024482427928425524, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5953080908505751474, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: a327d1fc80d90bd438cfcd1ad2b219c7, type: 3}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Color.b
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Color.g
value: 0.026785713
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Color.r
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_FillAmount
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_FillMethod
value: 4
objectReference: {fileID: 0}
- target: {fileID: 6365458266480896368, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_FillOrigin
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7122983875714221022, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7122983875714221022, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_AnchoredPosition.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7438534416270888028, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 90
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.x
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalScale.z
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8780093359852370517, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: b93d1d9adc811a74fb4192ade70fd3cc, type: 3}
- target: {fileID: 9047629830516719732, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: f91087f473887fc43bd9641a69852f3c, type: 3}
- target: {fileID: 9047629830516719732, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_WasSpriteAssigned
value: 1
objectReference: {fileID: 0}
m_RemovedComponents:
- {fileID: 2234961990804426782, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 3764902268943045601, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
insertIndex: -1
addedObject: {fileID: 2713540284264789073}
m_SourcePrefab: {fileID: 100100000, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
--- !u!1 &5897095096647521783 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 3764902268943045601, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_PrefabInstance: {fileID: 7343451337687172630}
m_PrefabAsset: {fileID: 0}
--- !u!114 &2713540284264789073
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5897095096647521783}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d1e03b5e408ba914193c2c50c8bef052, type: 3}
m_Name:
m_EditorClassIdentifier:
<CenterTransform>k__BackingField: {fileID: 5927803667513949971}
<VisualLook>k__BackingField: {fileID: 6077686033771388879}
<InteractionCanvas>k__BackingField: {fileID: 6533109861150454071}
<OutlineMaterial>k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2}
<EnableInteraction>k__BackingField: 1
<InteractionRadius>k__BackingField: 1
<InteractionMessage>k__BackingField: "\uD38C\uD504 \uC791\uB3D9"
IsOpened: 0
_interactionHoldingTime: 1
_pumpingMessageObject: {fileID: 7690724424382746193, guid: 206dfaa20a9d03d40a76e55ba01170c8, type: 3}
_instanceLocation: {fileID: 0}
_offset: {x: 0, y: 1.5, z: 0}
addedLiquid: 400
--- !u!4 &5927803667513949971 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4011269187381704965, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_PrefabInstance: {fileID: 7343451337687172630}
m_PrefabAsset: {fileID: 0}
--- !u!212 &6077686033771388879 stripped
SpriteRenderer:
m_CorrespondingSourceObject: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_PrefabInstance: {fileID: 7343451337687172630}
m_PrefabAsset: {fileID: 0}
--- !u!114 &6533109861150454071 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 4558604739080582945, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_PrefabInstance: {fileID: 7343451337687172630}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9ebe6250da0dfa044937230037499988, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 7947dcd65a3517948a2892d06222f5ae
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -40,10 +40,6 @@ PrefabInstance:
propertyPath: m_Sprite propertyPath: m_Sprite
value: value:
objectReference: {fileID: 21300000, guid: ca9bef724b43e0b489043b7f18d4eddb, type: 3} objectReference: {fileID: 21300000, guid: ca9bef724b43e0b489043b7f18d4eddb, type: 3}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_SortingOrder
value: 5
objectReference: {fileID: 0}
- target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} - target: {fileID: 3580758810857167321, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
propertyPath: m_WasSpriteAssigned propertyPath: m_WasSpriteAssigned
value: 1 value: 1
@ -176,8 +172,7 @@ PrefabInstance:
propertyPath: m_WasSpriteAssigned propertyPath: m_WasSpriteAssigned
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: m_RemovedComponents: []
- {fileID: 1702261025824090784, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects: []
m_AddedComponents: m_AddedComponents:

View File

@ -10,7 +10,7 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 2641341650102689817} - component: {fileID: 2641341650102689817}
- component: {fileID: 2829248495233098512} - component: {fileID: 2829248495233098512}
m_Layer: 5 m_Layer: 19
m_Name: BalloonUi m_Name: BalloonUi
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@ -64,7 +64,7 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 674323407039969650} - component: {fileID: 674323407039969650}
m_Layer: 5 m_Layer: 19
m_Name: Panel m_Name: Panel
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@ -104,7 +104,7 @@ GameObject:
- component: {fileID: 1610583026884195458} - component: {fileID: 1610583026884195458}
- component: {fileID: 7139087245191076382} - component: {fileID: 7139087245191076382}
- component: {fileID: 4586681201290156434} - component: {fileID: 4586681201290156434}
m_Layer: 5 m_Layer: 19
m_Name: Background m_Name: Background
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@ -179,7 +179,7 @@ GameObject:
- component: {fileID: 6400894162898819538} - component: {fileID: 6400894162898819538}
- component: {fileID: 7693093380867172793} - component: {fileID: 7693093380867172793}
- component: {fileID: 8218406547424483500} - component: {fileID: 8218406547424483500}
m_Layer: 5 m_Layer: 19
m_Name: FoodImage m_Name: FoodImage
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
@ -254,7 +254,7 @@ GameObject:
- component: {fileID: 6751494179874491372} - component: {fileID: 6751494179874491372}
- component: {fileID: 6775969391593346456} - component: {fileID: 6775969391593346456}
- component: {fileID: 2173167918881327799} - component: {fileID: 2173167918881327799}
m_Layer: 5 m_Layer: 19
m_Name: FillImage m_Name: FillImage
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}

View File

@ -13,7 +13,7 @@ GameObject:
- component: {fileID: 8764364725249863370} - component: {fileID: 8764364725249863370}
- component: {fileID: 5028824454365225125} - component: {fileID: 5028824454365225125}
- component: {fileID: 8043919875794167790} - component: {fileID: 8043919875794167790}
m_Layer: 5 m_Layer: 19
m_Name: InteractionCanvas m_Name: InteractionCanvas
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}

View File

@ -0,0 +1,193 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &2379458115270995891
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4263453522541274833}
- component: {fileID: 6537350187525403080}
- component: {fileID: 2174299769799152740}
m_Layer: 0
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4263453522541274833
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2379458115270995891}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1935399254430362859}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6537350187525403080
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2379458115270995891}
m_CullTransparentMesh: 1
--- !u!114 &2174299769799152740
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2379458115270995891}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: 300ml
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: dabfdeb80b25d44b4ace56414d0eb4ad, type: 2}
m_sharedMaterial: {fileID: 5657039867100983486, guid: dabfdeb80b25d44b4ace56414d0eb4ad, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 0.3
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 0.1
m_fontSizeMax: 0.3
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 0
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &2453692009421858588
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1935399254430362859}
- component: {fileID: 7690724424382746193}
m_Layer: 0
m_Name: PumpingMessage
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1935399254430362859
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2453692009421858588}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 4263453522541274833}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 2, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &7690724424382746193
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2453692009421858588}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: da97352cbf8e3a448a46c44b4651f73e, type: 3}
m_Name:
m_EditorClassIdentifier:
_rect: {fileID: 1935399254430362859}
_text: {fileID: 2174299769799152740}
_offsetY: 1
_duration: 2
_shakeAmount: 0.1
_shakeVibrato: 4

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 206dfaa20a9d03d40a76e55ba01170c8
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,125 +1,146 @@
Crew.png Crew.png
size:2033,1924 size:1992,1855
filter:Linear,Linear filter:Linear,Linear
Crew01/Eye_Left CrewBar/Face_Bar
bounds:555,1485,182,240 bounds:2,188,521,476
CrewBar/Suit_Body
bounds:901,1600,162,161
CrewBar/Suit_HandLeft
bounds:2,1445,188,201
CrewBar/Suit_HandRight
bounds:692,1426,188,201
rotate:90 rotate:90
Crew01/Eye_Right CrewBar/Suit_LegLeft
bounds:1228,1429,185,246 bounds:602,1763,90,196
rotate:90 rotate:90
Crew01/Face CrewBar/Suit_LegRight
bounds:1537,648,521,476 bounds:800,1763,90,196
rotate:90 rotate:90
Crew01/Hair_Front CrewBar/Suit_Pant
bounds:565,439,581,400 bounds:1790,1727,200,126
Crew01/Hair_Left CrewMaid/body_maid
bounds:112,1845,77,488 bounds:2,1019,250,235
CrewMaid/pant_maid
bounds:204,1619,273,155
CrewServ/Body_Serv
bounds:1065,1598,163,167
rotate:90 rotate:90
Crew01/Hair_Right CrewServ/Hand_Left
bounds:611,1288,187,572 bounds:1442,1408,188,201
rotate:90 rotate:90
Crew01/Mouse CrewServ/Hand_Right
bounds:2,1903,46,19 bounds:472,1250,188,201
CrewSuit/Suit_Body
bounds:277,1682,162,161
CrewSuit/Suit_HandLeft
bounds:1679,1411,188,201
rotate:90 rotate:90
CrewSuit/Suit_HandRight CrewServ/Leg_Left
bounds:2,1315,188,201 bounds:998,1763,90,196
rotate:90 rotate:90
CrewSuit/Suit_Pant CrewServ/Leg_Right
bounds:1409,1796,200,126 bounds:1196,1763,90,196
CrewSuit2/Body
bounds:441,1678,163,167
rotate:90 rotate:90
CrewSuit2/Hand_Left CrewServ/Pant_Serv
bounds:1025,1477,188,201 bounds:2,1648,200,126
rotate:90
CrewSuit2/Hand_Right
bounds:1476,1411,188,201
rotate:90
Item/BeerFull
bounds:2,140,512,512
Item/Cleaningbroom Item/Cleaningbroom
bounds:1437,1171,238,476 bounds:254,996,238,476
rotate:90 rotate:90
Item/Cleaningbroom3 Item/Cleaningbroom3
bounds:1478,1601,174,498 bounds:192,1440,174,498
rotate:90 rotate:90
Item/Cleaningstic Item/Cleaningstic
bounds:232,1495,181,321 bounds:1119,1415,181,321
rotate:90 rotate:90
Item/Shaker Item/Shaker2
bounds:260,984,302,372 bounds:990,877,302,516
rotate:90 rotate:90
Item/WoodenBeerMug Item/WoodenBeerMug
bounds:2,1047,256,256 bounds:732,970,256,256
Item/dust2 Item/dust2
bounds:634,948,338,338 bounds:1508,841,338,338
crew02/backhair02 crew01/Eye_Left
bounds:516,2,584,435 bounds:2,1256,182,240
crew02/fronthair02
bounds:1148,215,565,431
crew02/lefteye02
bounds:610,1669,172,222
rotate:90 rotate:90
crew02/lefthair02 crew01/Eye_Right
bounds:602,1843,79,302 bounds:878,1228,185,246
rotate:90 rotate:90
crew01/Hair_Front
bounds:1128,439,581,400
crew01/Hair_Left
bounds:112,1776,77,488
rotate:90
crew01/Hair_Right
bounds:1329,1181,187,572
rotate:90
crew01/Mouse
bounds:2,1834,46,19
crew02/02Hair_Front
bounds:525,114,565,431
crew02/Eye_Left02
bounds:1654,1553,172,222
rotate:90
crew02/Eye_Right02
bounds:244,1256,182,226
rotate:90
crew02/Hair_back02
bounds:1092,2,584,435
crew02/Mouse02
bounds:50,1830,60,23
crew03/Mouse03
bounds:50,1830,60,23
crew02/lefthand02 crew02/lefthand02
bounds:205,1305,188,201 bounds:675,1236,188,201
rotate:90 rotate:90
crew02/leftleg02 crew02/leftleg02
bounds:906,1832,90,196 bounds:1394,1763,90,196
rotate:90
crew02/mouse02
bounds:50,1899,60,23
crew03/Mouse03
bounds:50,1899,60,23
crew02/righteye02
bounds:797,1483,182,226
rotate:90 rotate:90
crew02/righthand02 crew02/righthand02
bounds:408,1295,188,201 bounds:1126,1225,188,201
rotate:90 rotate:90
crew02/rightleg02 crew02/rightleg02
bounds:1104,1832,90,196 bounds:1592,1763,90,196
rotate:90 rotate:90
crew03/LeftEar crew03/Eye_Left03
bounds:1302,1822,105,100 bounds:895,1418,178,222
crew03/LeftEye03
bounds:1254,1616,178,222
rotate:90 rotate:90
crew03/LeftHair03 crew03/Eye_Right03
bounds:1611,1777,145,420 bounds:1645,1370,181,228
rotate:90 rotate:90
crew03/LeftHairA03 crew03/Hair_Left03
bounds:974,841,328,561 bounds:479,1616,145,420
rotate:90 rotate:90
crew03/RightEye03 crew03/Hair_LeftA03
bounds:2,1505,181,228 bounds:2,666,328,561
rotate:90 rotate:90
crew03/RightHair03 crew03/Hair_Rifht03
bounds:834,1667,163,418 bounds:565,547,328,561
rotate:90 rotate:90
crew03/RightHairA03 crew03/Hair_Right03
bounds:2,654,328,561 bounds:1234,1598,163,418
rotate:90 rotate:90
crewMaid/body_maid
bounds:1185,1192,250,235
crewMaid/pant_maid
bounds:2,1688,273,155
Crew_2.png Crew_2.png
size:1145,1033 size:2032,1642
filter:Linear,Linear filter:Linear,Linear
Crew01/Hair_Back CrewBar/Face_Bar02
bounds:2,516,622,515 bounds:2,2,610,437
Item/Cleaningbroom2 CrewBar/Face_Bar03
bounds:2,2,512,512 bounds:2,441,575,517
crew02/face02 rotate:90
bounds:516,17,610,437 CrewServ/Face_Serv
crew03/Face03 bounds:614,10,521,476
bounds:626,456,575,517 CrewServ/Face_Serv03
bounds:519,1065,575,517
rotate:90
Item/BeerFull
bounds:1040,689,512,512
Item/Cleaningbroom2
bounds:1137,166,512,512
crew01/Hair_Back
bounds:2,1018,622,515
rotate:90
crew01/Kao
bounds:1554,680,521,476
rotate:90
crew02/Face02
bounds:1038,1203,610,437
crew03/Face03
bounds:521,488,575,517
rotate:90 rotate:90

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 KiB

After

Width:  |  Height:  |  Size: 805 KiB

View File

@ -28,7 +28,7 @@ TagManager:
- DamageableProps - DamageableProps
- Liquid - Liquid
- Garnish - Garnish
- - BackgroundUi
- -
- -
- -