0.3.3.2 업데이트
@ -5328,6 +5328,107 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 393212792}
|
||||
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
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -8597,6 +8698,134 @@ RectTransform:
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
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
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10366,6 +10595,7 @@ MonoBehaviour:
|
||||
m_RequiresOpaqueTextureOption: 2
|
||||
m_CameraType: 0
|
||||
m_Cameras:
|
||||
- {fileID: 733323115}
|
||||
- {fileID: 1985878519}
|
||||
- {fileID: 1355183327}
|
||||
m_RendererIndex: -1
|
||||
@ -10475,6 +10705,7 @@ Transform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 733323113}
|
||||
- {fileID: 1355183324}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 9.569, y: 87.98, z: 0}
|
||||
@ -11668,7 +11899,7 @@ MonoBehaviour:
|
||||
_playerBalloonImage: {fileID: 21300000, guid: e7b746bc5bff9d64fb1129b9aa8ccf3e, type: 3}
|
||||
_moveToPlayerDuration: 0.2
|
||||
_moveToCenterDuration: 0.15
|
||||
_centerPosition: {x: -300, y: 0, z: 0}
|
||||
_centerPosition: {x: -340, y: 0, z: 0}
|
||||
_endPositionOffset: {x: 0, y: 20, z: 0}
|
||||
_endScale: {x: 0.3, y: 0.3, z: 0.3}
|
||||
--- !u!1001 &1011627381
|
||||
@ -14412,7 +14643,7 @@ Transform:
|
||||
m_GameObject: {fileID: 1247057678}
|
||||
serializedVersion: 2
|
||||
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_ConstrainProportionsScale: 1
|
||||
m_Children:
|
||||
@ -15579,6 +15810,10 @@ PrefabInstance:
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3040169690825224014, guid: 9a394d3c65c71084d8345c36df67c89c, type: 3}
|
||||
propertyPath: _instanceLocation
|
||||
value:
|
||||
objectReference: {fileID: 410235870}
|
||||
- target: {fileID: 9041926907780427371, guid: 9a394d3c65c71084d8345c36df67c89c, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: NewTycoonMap
|
||||
@ -22534,7 +22769,7 @@ Canvas:
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_RenderMode: 2
|
||||
m_Camera: {fileID: 1355183327}
|
||||
m_Camera: {fileID: 733323115}
|
||||
m_PlaneDistance: 100
|
||||
m_PixelPerfect: 0
|
||||
m_ReceivesEvents: 1
|
||||
@ -29868,7 +30103,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
|
||||
propertyPath: m_ActionEvents.Array.size
|
||||
value: 30
|
||||
value: 31
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6054159730444663926, guid: 9ce588004bafc1e4e9617fdaa2d77c8d, type: 3}
|
||||
propertyPath: m_ActionEvents.Array.data[28].m_ActionId
|
||||
@ -29886,10 +30121,6 @@ PrefabInstance:
|
||||
propertyPath: m_ActionEvents.Array.data[29].m_ActionName
|
||||
value: 'TycoonUi/CancelManual[/Keyboard/q]'
|
||||
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}
|
||||
propertyPath: m_ActionEvents.Array.data[29].m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
|
||||
value: OnCancelManual
|
||||
@ -30781,6 +31012,7 @@ SceneRoots:
|
||||
- {fileID: 1231728096}
|
||||
- {fileID: 1619849090}
|
||||
- {fileID: 1746385717}
|
||||
- {fileID: 410235870}
|
||||
- {fileID: 1049919592}
|
||||
- {fileID: 1896021280}
|
||||
- {fileID: 1395162455}
|
||||
|
@ -213,11 +213,11 @@ namespace BlueWater.Npcs.Customers
|
||||
CurrentLevelData = levelData;
|
||||
_spawnTransform = spawnTransform;
|
||||
|
||||
IdleState = new IdleStateMachine();
|
||||
WalkingState = new WalkingStateMachine();
|
||||
HappyState = new HappyStateMachine();
|
||||
UpsetState = new UpsetStateMachine();
|
||||
VomitState = new VomitStateMachine();
|
||||
IdleState = new IdleState();
|
||||
WalkingState = new WalkingState();
|
||||
HappyState = new HappyState();
|
||||
UpsetState = new UpsetState();
|
||||
VomitState = new VomitState();
|
||||
|
||||
StateMachineController = new StateMachineController<Customer>(this, IdleState);
|
||||
|
||||
@ -257,7 +257,6 @@ namespace BlueWater.Npcs.Customers
|
||||
public void SetTableSeat(TableSeat tableSeat)
|
||||
{
|
||||
CurrentTableSeat = tableSeat;
|
||||
BalloonUi.Initialize(CurrentTableSeat);
|
||||
}
|
||||
|
||||
public void SetCurrentDirection(Vector3 normalDirection) => CurrentDirection = normalDirection;
|
||||
@ -472,7 +471,7 @@ namespace BlueWater.Npcs.Customers
|
||||
|
||||
public bool IsOrderedCocktail()
|
||||
{
|
||||
return CurrentTableSeat && !IsReceivedItem;
|
||||
return CurrentTableSeat && CurrentTableSeat.IsOccupied && !IsReceivedItem;
|
||||
}
|
||||
|
||||
public void TryMatchedServer()
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Npcs.Customers
|
||||
{
|
||||
public class HappyStateMachine : IStateMachine<Customer>
|
||||
public class HappyState : IStateMachine<Customer>
|
||||
{
|
||||
public void EnterState(Customer character)
|
||||
{
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Npcs.Customers
|
||||
{
|
||||
public class IdleStateMachine : IStateMachine<Customer>
|
||||
public class IdleState : IStateMachine<Customer>
|
||||
{
|
||||
public void EnterState(Customer character)
|
||||
{
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Npcs.Customers
|
||||
{
|
||||
public class UpsetStateMachine : IStateMachine<Customer>
|
||||
public class UpsetState : IStateMachine<Customer>
|
||||
{
|
||||
public void EnterState(Customer character)
|
||||
{
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Npcs.Customers
|
||||
{
|
||||
public class VomitStateMachine : IStateMachine<Customer>
|
||||
public class VomitState : IStateMachine<Customer>
|
||||
{
|
||||
private bool _isVomiting;
|
||||
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Npcs.Customers
|
||||
{
|
||||
public class WalkingStateMachine : IStateMachine<Customer>
|
||||
public class WalkingState : IStateMachine<Customer>
|
||||
{
|
||||
public void EnterState(Customer character)
|
||||
{
|
||||
|
@ -1,4 +1,3 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using BlueWater.Audios;
|
||||
using BlueWater.Interfaces;
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class CleaningFloorStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class CleaningFloorState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
if (character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingStateMachine
|
||||
: character.WalkingStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingState
|
||||
: character.WalkingState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingIdleStateMachine
|
||||
: character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingIdleState
|
||||
: character.IdleState, character);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class CleaningTableStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class CleaningTableState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
if (character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingStateMachine
|
||||
: character.WalkingStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingState
|
||||
: character.WalkingState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingIdleStateMachine
|
||||
: character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingIdleState
|
||||
: character.IdleState, character);
|
||||
}
|
||||
}
|
||||
|
||||
|
48
Assets/02.Scripts/Character/Player/Tycoon/State/DashState.cs
Normal 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)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: df6794ea3812a0b4f9b04ad2232167cf
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class IdleStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class IdleState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -13,27 +13,27 @@ namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
if (character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingStateMachine
|
||||
: character.WalkingStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingState
|
||||
: character.WalkingState, character);
|
||||
}
|
||||
else if (character.IsMakingCocktail)
|
||||
{
|
||||
character.TransitionToState(character.MakingCocktailStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
|
||||
}
|
||||
else if (character.IsCleaningFloor)
|
||||
{
|
||||
character.TransitionToState(character.CleaningFloorStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
|
||||
}
|
||||
else if (character.IsCleaningTable)
|
||||
{
|
||||
character.TransitionToState(character.CleaningTableStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
if (character.TycoonPickupHandler.IsPickedUpCocktail())
|
||||
if (character.TycoonPickupHandler.IsPickedUpAnything())
|
||||
{
|
||||
character.TransitionToState(character.ServingIdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.ServingIdleState, character);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class MakingCocktailStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class MakingCocktailState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -15,15 +15,15 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
if (character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingStateMachine
|
||||
: character.WalkingStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingState
|
||||
: character.WalkingState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingIdleStateMachine
|
||||
: character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingIdleState
|
||||
: character.IdleState, character);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class ServingIdleStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class ServingIdleState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -13,27 +13,27 @@ namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
if (character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingStateMachine
|
||||
: character.WalkingStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingState
|
||||
: character.WalkingState, character);
|
||||
}
|
||||
else if (character.IsMakingCocktail)
|
||||
{
|
||||
character.TransitionToState(character.MakingCocktailStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
|
||||
}
|
||||
else if (character.IsCleaningFloor)
|
||||
{
|
||||
character.TransitionToState(character.CleaningFloorStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
|
||||
}
|
||||
else if (character.IsCleaningTable)
|
||||
{
|
||||
character.TransitionToState(character.CleaningTableStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
if (!character.TycoonPickupHandler.IsPickedUpCocktail())
|
||||
if (!character.TycoonPickupHandler.IsPickedUpAnything())
|
||||
{
|
||||
character.TransitionToState(character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.IdleState, character);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class ServingStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class ServingState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -13,28 +13,28 @@ namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
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)
|
||||
{
|
||||
character.TransitionToState(character.MakingCocktailStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
|
||||
}
|
||||
else if (character.IsCleaningFloor)
|
||||
{
|
||||
character.TransitionToState(character.CleaningFloorStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
|
||||
}
|
||||
else if (character.IsCleaningTable)
|
||||
{
|
||||
character.TransitionToState(character.CleaningTableStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingIdleStateMachine
|
||||
: character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingIdleState
|
||||
: character.IdleState, character);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@ using BlueWater.Interfaces;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class WalkingStateMachine : IStateMachine<TycoonPlayer>
|
||||
public class WalkingState : IStateMachine<TycoonPlayer>
|
||||
{
|
||||
public void EnterState(TycoonPlayer character)
|
||||
{
|
||||
@ -13,28 +13,28 @@ namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
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)
|
||||
{
|
||||
character.TransitionToState(character.MakingCocktailStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
|
||||
}
|
||||
else if (character.IsCleaningFloor)
|
||||
{
|
||||
character.TransitionToState(character.CleaningFloorStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
|
||||
}
|
||||
else if (character.IsCleaningTable)
|
||||
{
|
||||
character.TransitionToState(character.CleaningTableStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
|
||||
}
|
||||
else if (!character.TycoonMovement.IsMoving)
|
||||
{
|
||||
character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail()
|
||||
? character.ServingIdleStateMachine
|
||||
: character.IdleStateMachine);
|
||||
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
|
||||
? character.ServingIdleState
|
||||
: character.IdleState, character);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -26,6 +26,7 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
// Events
|
||||
public event Action<Vector2> OnMoveInputReceived;
|
||||
public event Action OnDashInputReceived;
|
||||
|
||||
#endregion
|
||||
|
||||
@ -94,6 +95,14 @@ namespace BlueWater.Players.Tycoons
|
||||
OnMoveInputReceived?.Invoke(movementInput);
|
||||
}
|
||||
|
||||
public void OnDash(InputAction.CallbackContext context)
|
||||
{
|
||||
if (context.performed)
|
||||
{
|
||||
OnDashInputReceived?.Invoke();
|
||||
}
|
||||
}
|
||||
|
||||
public void OnInteraction(InputAction.CallbackContext context)
|
||||
{
|
||||
if (context.performed)
|
||||
|
@ -1,9 +1,13 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using BlueWater.Interfaces;
|
||||
using BlueWater.Utility;
|
||||
using Sirenix.OdinInspector;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
public class TycoonMovement : MonoBehaviour, IPhysicMovable
|
||||
public class TycoonMovement : MonoBehaviour, IDashable, IPhysicMovable
|
||||
{
|
||||
// Variables
|
||||
#region Variables
|
||||
@ -11,7 +15,6 @@ namespace BlueWater.Players.Tycoons
|
||||
// Components
|
||||
public Rigidbody Rigidbody { get; private set; }
|
||||
private Transform _visualLook;
|
||||
private TycoonPickupHandler _tycoonPickupHandler;
|
||||
|
||||
// Move
|
||||
[field: SerializeField, Range(1f, 20f), Tooltip("이동 속도")]
|
||||
@ -23,6 +26,25 @@ namespace BlueWater.Players.Tycoons
|
||||
public bool IsMoveEnabled { get; private set; } = true;
|
||||
|
||||
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;
|
||||
|
||||
@ -41,7 +63,8 @@ namespace BlueWater.Players.Tycoons
|
||||
public Vector3 PushDirection { get; private set; }
|
||||
public float PushPower { get; private set; }
|
||||
public float PushPowerReduction { get; private set; }
|
||||
|
||||
|
||||
private Coroutine _dashInstance;
|
||||
private float _finalSpeed;
|
||||
|
||||
#endregion
|
||||
@ -75,8 +98,6 @@ namespace BlueWater.Players.Tycoons
|
||||
{
|
||||
Rigidbody = GetComponent<Rigidbody>();
|
||||
_visualLook = transform.Find("VisualLook");
|
||||
|
||||
_tycoonPickupHandler = GetComponent<TycoonPickupHandler>();
|
||||
}
|
||||
|
||||
#endregion
|
||||
@ -122,11 +143,13 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
public void SetPush(Vector3 pushDirection, float pushPower)
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void Move()
|
||||
{
|
||||
if (IsDashing) return;
|
||||
|
||||
CurrentDirection = _inputDirection;
|
||||
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
|
||||
}
|
||||
}
|
@ -9,11 +9,11 @@ namespace BlueWater.Players.Tycoons
|
||||
[SerializeField]
|
||||
private SpriteRenderer _itemRenderer;
|
||||
|
||||
[SerializeField]
|
||||
private bool _isUnfinishedCocktailPickedUp;
|
||||
[field: SerializeField]
|
||||
public bool IsUnfinishedCocktailPickedUp { get; private set; }
|
||||
|
||||
[SerializeField]
|
||||
private bool _isPickedUpItem;
|
||||
[field: SerializeField]
|
||||
public bool IsPickedUpItem { get; private set; }
|
||||
|
||||
private IPickup _currentPickupItem;
|
||||
|
||||
@ -42,29 +42,29 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
private void PickupUnfinishedCocktail()
|
||||
{
|
||||
_isUnfinishedCocktailPickedUp = true;
|
||||
IsUnfinishedCocktailPickedUp = true;
|
||||
}
|
||||
|
||||
public void PickupItem(IPickup item, bool isMadePlayer)
|
||||
{
|
||||
if (!isMadePlayer) return;
|
||||
|
||||
if (_isPickedUpItem)
|
||||
if (IsPickedUpItem)
|
||||
{
|
||||
Debug.Log("이미 아이템을 들고 있습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
_isUnfinishedCocktailPickedUp = false;
|
||||
IsUnfinishedCocktailPickedUp = false;
|
||||
_currentPickupItem = item;
|
||||
_itemRenderer.enabled = false;
|
||||
//_itemRenderer.sprite = item.Sprite;
|
||||
_isPickedUpItem = true;
|
||||
IsPickedUpItem = true;
|
||||
}
|
||||
|
||||
public void ServedItem(IPickup item)
|
||||
{
|
||||
if (!_isPickedUpItem || _currentPickupItem == null)
|
||||
if (!IsPickedUpItem || _currentPickupItem == null)
|
||||
{
|
||||
Debug.Log("들고있는 아이템이 없거나, 현재 아이템 데이터가 비어있습니다.");
|
||||
return;
|
||||
@ -72,35 +72,30 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
_currentPickupItem = null;
|
||||
_itemRenderer.sprite = null;
|
||||
_isPickedUpItem = false;
|
||||
IsPickedUpItem = false;
|
||||
}
|
||||
|
||||
public void DiscardItem()
|
||||
{
|
||||
if (!_isPickedUpItem && !_isUnfinishedCocktailPickedUp)
|
||||
if (!IsPickedUpItem && !IsUnfinishedCocktailPickedUp)
|
||||
{
|
||||
Debug.Log("들고있는 아이템이 없습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
_isUnfinishedCocktailPickedUp = false;
|
||||
IsUnfinishedCocktailPickedUp = false;
|
||||
_currentPickupItem = null;
|
||||
_itemRenderer.sprite = null;
|
||||
_isPickedUpItem = false;
|
||||
IsPickedUpItem = false;
|
||||
}
|
||||
|
||||
public IPickup GetCurrentPickupItem() => _currentPickupItem;
|
||||
|
||||
public bool IsServablePickupItem() => _isPickedUpItem && _currentPickupItem.Idx != "Cocktail000";
|
||||
|
||||
/// <summary>
|
||||
/// 완성된 아이템이 있는 경우
|
||||
/// </summary>
|
||||
public bool IsPickedUpItem() => _isPickedUpItem;
|
||||
public bool IsServablePickupItem() => IsPickedUpItem && _currentPickupItem.Idx != "Cocktail000";
|
||||
|
||||
/// <summary>
|
||||
/// 제조중인 칵테일이 있거나, 아이템이 있는 경우
|
||||
/// </summary>
|
||||
public bool IsPickedUpCocktail() => _isPickedUpItem || _isUnfinishedCocktailPickedUp;
|
||||
public bool IsPickedUpAnything() => IsPickedUpItem || IsUnfinishedCocktailPickedUp;
|
||||
}
|
||||
}
|
@ -15,6 +15,7 @@ namespace BlueWater.Players.Tycoons
|
||||
public const string Walking = "Run";
|
||||
public const string ServingIdle = "ServingIdle";
|
||||
public const string Serving = "Serving";
|
||||
public const string Dash = "Dash";
|
||||
public const string CleaningFloor = "CleaningFloor";
|
||||
public const string CleaningTable = "CleaningTable";
|
||||
public const string MakingCocktail = "BeerMaker";
|
||||
@ -65,14 +66,15 @@ namespace BlueWater.Players.Tycoons
|
||||
public bool IsMakingCocktail { get; set; }
|
||||
|
||||
// State
|
||||
public IStateMachine<TycoonPlayer> CurrentStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> IdleStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> WalkingStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> ServingIdleStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> ServingStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> CleaningFloorStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> CleaningTableStateMachine { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> MakingCocktailStateMachine { get; private set; }
|
||||
public StateMachineController<TycoonPlayer> StateMachineController { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> IdleState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> WalkingState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> DashState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> ServingIdleState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> ServingState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> CleaningFloorState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> CleaningTableState { get; private set; }
|
||||
public IStateMachine<TycoonPlayer> MakingCocktailState { get; private set; }
|
||||
|
||||
#endregion
|
||||
|
||||
@ -92,36 +94,36 @@ namespace BlueWater.Players.Tycoons
|
||||
private void Start()
|
||||
{
|
||||
TycoonInput.OnMoveInputReceived += TycoonMovement.HandleInputMovement;
|
||||
TycoonInput.OnDashInputReceived += Dash;
|
||||
|
||||
EventManager.OnDead += Die;
|
||||
EventManager.OnMakeCocktailStarted += MakeCocktailStarted;
|
||||
EventManager.OnMakeCocktailCompleted += MakeCocktailCompleted;
|
||||
EventManager.OnCocktailDiscarded += DiscardCocktail;
|
||||
EventManager.OnCocktailServedToCustomer += ServedCocktail;
|
||||
|
||||
IdleStateMachine = new IdleStateMachine();
|
||||
WalkingStateMachine = new WalkingStateMachine();
|
||||
ServingIdleStateMachine = new ServingIdleStateMachine();
|
||||
ServingStateMachine = new ServingStateMachine();
|
||||
CleaningFloorStateMachine = new CleaningFloorStateMachine();
|
||||
CleaningTableStateMachine = new CleaningTableStateMachine();
|
||||
MakingCocktailStateMachine = new MakingCocktailStateMachine();
|
||||
IdleState = new IdleState();
|
||||
WalkingState = new WalkingState();
|
||||
DashState = new DashState();
|
||||
ServingIdleState = new ServingIdleState();
|
||||
ServingState = new ServingState();
|
||||
CleaningFloorState = new CleaningFloorState();
|
||||
CleaningTableState = new CleaningTableState();
|
||||
MakingCocktailState = new MakingCocktailState();
|
||||
|
||||
CurrentStateMachine = IdleStateMachine;
|
||||
CurrentStateMachine.EnterState(this);
|
||||
StateMachineController = new StateMachineController<TycoonPlayer>(this, IdleState);
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
CurrentStateMachine.UpdateState(this);
|
||||
StateMachineController.UpdateState(this);
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
TycoonInput.OnMoveInputReceived -= TycoonMovement.HandleInputMovement;
|
||||
TycoonInput.OnDashInputReceived -= Dash;
|
||||
|
||||
EventManager.OnDead -= Die;
|
||||
EventManager.OnMakeCocktailStarted -= MakeCocktailStarted;
|
||||
EventManager.OnMakeCocktailCompleted -= MakeCocktailCompleted;
|
||||
EventManager.OnCocktailDiscarded -= DiscardCocktail;
|
||||
EventManager.OnCocktailServedToCustomer -= ServedCocktail;
|
||||
@ -163,18 +165,6 @@ namespace BlueWater.Players.Tycoons
|
||||
var saveGold = TycoonManager.Instance.TycoonStatus.CurrentGold / 2;
|
||||
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)
|
||||
{
|
||||
@ -196,7 +186,15 @@ namespace BlueWater.Players.Tycoons
|
||||
if (!isServedPlayer) return;
|
||||
|
||||
TycoonPickupHandler.ServedItem(cocktailData);
|
||||
InteractionCanvas.BalloonUi.ServedItem();
|
||||
InteractionCanvas.BalloonUi.DiscardItem();
|
||||
}
|
||||
|
||||
private void Dash()
|
||||
{
|
||||
if (!TycoonMovement.CanDash()) return;
|
||||
|
||||
StateMachineController.TransitionToState(DashState, this);
|
||||
TycoonMovement.Dash();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
@ -124,6 +124,42 @@ namespace BlueWater.Players
|
||||
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)
|
||||
{
|
||||
if (SkeletonAnimation == null && _animationState == null) return;
|
||||
|
@ -530,6 +530,15 @@
|
||||
"interactions": "",
|
||||
"initialStateCheck": true
|
||||
},
|
||||
{
|
||||
"name": "Dash",
|
||||
"type": "Button",
|
||||
"id": "34c447c4-c69f-4348-89ba-e1f8585deb95",
|
||||
"expectedControlType": "",
|
||||
"processors": "",
|
||||
"interactions": "",
|
||||
"initialStateCheck": false
|
||||
},
|
||||
{
|
||||
"name": "Interaction",
|
||||
"type": "Button",
|
||||
@ -614,6 +623,17 @@
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"id": "c0999630-d77d-41fb-ac08-e3cb2e0c4bd0",
|
||||
"path": "<Keyboard>/space",
|
||||
"interactions": "",
|
||||
"processors": "",
|
||||
"groups": ";Keyboard&Mouse",
|
||||
"action": "Dash",
|
||||
"isComposite": false,
|
||||
"isPartOfComposite": false
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"id": "8c3121b0-0da8-48fc-9807-9593fdd06e60",
|
||||
|
@ -40,7 +40,6 @@ namespace BlueWater.Tycoons
|
||||
|
||||
private Material _instanceMaterial;
|
||||
|
||||
public event Action<int> OnAmountChanged;
|
||||
public static event Action<Barrel> OnBarrelInteracted;
|
||||
public static event Action OnBarrelCancelInteracted;
|
||||
|
||||
@ -91,7 +90,7 @@ namespace BlueWater.Tycoons
|
||||
/// </summary>
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return IsActivated && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem() && CanConsume(1);
|
||||
return IsActivated && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem && CanConsume(1);
|
||||
}
|
||||
|
||||
public bool CanConsume(int amount)
|
||||
@ -107,7 +106,7 @@ namespace BlueWater.Tycoons
|
||||
}
|
||||
|
||||
var consumeAmount = CurrentAmount - amount;
|
||||
SetCurrentAmount(consumeAmount, true);
|
||||
SetCurrentAmount(consumeAmount);
|
||||
}
|
||||
|
||||
public bool TryConsume(int amount)
|
||||
@ -120,7 +119,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public LiquidData GetLiquidData() => _liquidData;
|
||||
|
||||
public void SetCurrentAmount(int amount, bool isFromAction = false)
|
||||
public void SetCurrentAmount(int amount)
|
||||
{
|
||||
if (CurrentAmount == int.MaxValue)
|
||||
{
|
||||
@ -130,11 +129,6 @@ namespace BlueWater.Tycoons
|
||||
CurrentAmount = amount;
|
||||
var liquidAmount = CurrentAmount / 4000f;
|
||||
_instanceMaterial.SetFloat(LiquidAmountHash, liquidAmount);
|
||||
|
||||
if (!isFromAction)
|
||||
{
|
||||
OnAmountChanged?.Invoke(CurrentAmount);
|
||||
}
|
||||
}
|
||||
|
||||
public void Activate()
|
||||
@ -147,7 +141,7 @@ namespace BlueWater.Tycoons
|
||||
{
|
||||
if (!_isActivated) return;
|
||||
|
||||
SetCurrentAmount(CurrentAmount + addedValue, true);
|
||||
SetCurrentAmount(CurrentAmount + addedValue);
|
||||
}
|
||||
}
|
||||
}
|
@ -23,7 +23,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail();
|
||||
return CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
|
||||
}
|
||||
|
||||
public override bool CanInteractionCrew(Crew crew = null)
|
||||
|
@ -117,7 +117,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public override void Interaction()
|
||||
{
|
||||
if (CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem())
|
||||
if (CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem)
|
||||
{
|
||||
var carriedItemData = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem();
|
||||
if (carriedItemData.Idx == FireWoodIdx)
|
||||
@ -135,7 +135,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
var isCarriedItem = CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem();
|
||||
var isCarriedItem = CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpItem;
|
||||
var isFullFireWood = _currentFireWoodCount >= CookwareDataSo.MaxFireWoodQuantity;
|
||||
var isEmptyFoodData = CurrentDailyFoodUi is null or { FoodData : null };
|
||||
var isEmptyFinishedFood = _cookedFoodDatas is null or { Count : <= 0 };
|
||||
|
77
Assets/02.Scripts/Prop/Tycoon/Pump.cs
Normal 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();
|
||||
}
|
||||
}
|
||||
}
|
2
Assets/02.Scripts/Prop/Tycoon/Pump.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d1e03b5e408ba914193c2c50c8bef052
|
@ -87,7 +87,7 @@ namespace BlueWater.Tycoons
|
||||
{
|
||||
// 1. 테이블에 칵테일이 있고, 플레이어가 칵테일을 들고 있지 않은 경우
|
||||
// 2. 테이블에 칵테일이 없고, 플레이어가 칵테일을 들고 있는 경우 (정상적인 칵테일만)
|
||||
return (CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail()) ||
|
||||
return (CurrentPickupItem != null && !CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything()) ||
|
||||
(CurrentPickupItem == null && CurrentTycoonPlayer.TycoonPickupHandler.IsServablePickupItem());
|
||||
}
|
||||
|
||||
|
@ -146,7 +146,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail() && !IsCleaned;
|
||||
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything() && !IsCleaned;
|
||||
}
|
||||
|
||||
public void ReserveSeat() => IsReserved = true;
|
||||
|
@ -6,15 +6,19 @@ namespace BlueWater.Tycoons
|
||||
{
|
||||
public override void Interaction()
|
||||
{
|
||||
var discardCocktailDataIdx = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem().Idx;
|
||||
var discardCocktailData = ItemManager.Instance.CocktailDataSo.GetDataByIdx(discardCocktailDataIdx);
|
||||
CocktailData discardCocktailData = null;
|
||||
if (!CurrentTycoonPlayer.TycoonPickupHandler.IsUnfinishedCocktailPickedUp)
|
||||
{
|
||||
var discardCocktailDataIdx = CurrentTycoonPlayer.TycoonPickupHandler.GetCurrentPickupItem().Idx;
|
||||
discardCocktailData = ItemManager.Instance.CocktailDataSo.GetDataByIdx(discardCocktailDataIdx);
|
||||
}
|
||||
|
||||
EventManager.InvokeCocktailDiscarded(discardCocktailData, true);
|
||||
}
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail();
|
||||
return CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
|
||||
}
|
||||
}
|
||||
}
|
@ -106,7 +106,7 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpCocktail();
|
||||
return !GameManager.Instance.CurrentTycoonPlayer.TycoonPickupHandler.IsPickedUpAnything();
|
||||
}
|
||||
|
||||
private void Destroy()
|
||||
|
@ -20,7 +20,7 @@ MonoBehaviour:
|
||||
<Type>k__BackingField: 1
|
||||
<Amount>k__BackingField: 99999
|
||||
<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
|
||||
<Value>k__BackingField:
|
||||
<Idx>k__BackingField: LiquidB
|
||||
@ -28,7 +28,7 @@ MonoBehaviour:
|
||||
<Type>k__BackingField: 1
|
||||
<Amount>k__BackingField: 2000
|
||||
<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
|
||||
<Value>k__BackingField:
|
||||
<Idx>k__BackingField: LiquidC
|
||||
@ -36,7 +36,7 @@ MonoBehaviour:
|
||||
<Type>k__BackingField: 1
|
||||
<Amount>k__BackingField: 2000
|
||||
<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
|
||||
<Value>k__BackingField:
|
||||
<Idx>k__BackingField: LiquidD
|
||||
@ -44,7 +44,7 @@ MonoBehaviour:
|
||||
<Type>k__BackingField: 1
|
||||
<Amount>k__BackingField: 2000
|
||||
<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
|
||||
<Value>k__BackingField:
|
||||
<Idx>k__BackingField: LiquidE
|
||||
@ -52,7 +52,7 @@ MonoBehaviour:
|
||||
<Type>k__BackingField: 1
|
||||
<Amount>k__BackingField: 2000
|
||||
<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
|
||||
<Value>k__BackingField:
|
||||
<Idx>k__BackingField: Garnish1
|
||||
|
@ -78,6 +78,8 @@ namespace BlueWater.Tycoons
|
||||
|
||||
public void RemoveInstanceCocktail(CocktailData cocktailData, bool isRemovedPlayer)
|
||||
{
|
||||
if (cocktailData == null) return;
|
||||
|
||||
var idx = cocktailData.Idx;
|
||||
if (InstanceCocktailDatas.ContainsKey(idx))
|
||||
{
|
||||
|
@ -132,7 +132,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentLiquidAmountA = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelA.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelA.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -148,7 +148,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentLiquidAmountB = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelB.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelB.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -164,7 +164,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentLiquidAmountC = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelC.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelC.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -180,7 +180,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentLiquidAmountD = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelD.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelD.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -196,7 +196,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentLiquidAmountE = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelE.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.LiquidBarrelE.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -213,7 +213,7 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentGarnishAmount1 = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel1.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel1.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -229,21 +229,12 @@ namespace BlueWater.Tycoons
|
||||
set
|
||||
{
|
||||
_currentGarnishAmount2 = value;
|
||||
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel2.SetCurrentAmount(value, true);
|
||||
TycoonManager.Instance.TycoonIngredientController.GarnishBarrel2.SetCurrentAmount(value);
|
||||
}
|
||||
}
|
||||
|
||||
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);
|
||||
CurrentLevel = 1;
|
||||
CurrentGold = 0;
|
||||
@ -254,29 +245,6 @@ namespace BlueWater.Tycoons
|
||||
CurrentPlayerHealth = GameManager.Instance.CurrentTycoonPlayer.PlayerHealthPoint.CurrentHealthPoint;
|
||||
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()
|
||||
{
|
||||
|
@ -32,9 +32,7 @@ namespace BlueWater.Uis
|
||||
private bool _isItemReceived;
|
||||
|
||||
private Tween _tween;
|
||||
private TableSeat _tableSeat;
|
||||
private CocktailData _orderCocktailData;
|
||||
private bool _isUnfinishedCocktailPickedUp;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@ -54,20 +52,9 @@ namespace BlueWater.Uis
|
||||
_panel = transform.Find("Panel").gameObject;
|
||||
}
|
||||
|
||||
public void Initialize(TableSeat tableSeat)
|
||||
{
|
||||
_tableSeat = tableSeat;
|
||||
HideUi();
|
||||
}
|
||||
|
||||
public void ShowUi() => _panel.SetActive(true);
|
||||
public void HideUi() => _panel.SetActive(false);
|
||||
|
||||
public void PickupUnfinishedCocktail()
|
||||
{
|
||||
_isUnfinishedCocktailPickedUp = true;
|
||||
}
|
||||
|
||||
public void SetItemImage(IPickup item)
|
||||
{
|
||||
if (!item.Sprite)
|
||||
@ -75,7 +62,6 @@ namespace BlueWater.Uis
|
||||
Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다.");
|
||||
}
|
||||
|
||||
_isUnfinishedCocktailPickedUp = false;
|
||||
SetItemSprite(item.Sprite);
|
||||
ShowUi();
|
||||
}
|
||||
@ -99,14 +85,6 @@ namespace BlueWater.Uis
|
||||
|
||||
public void DiscardItem()
|
||||
{
|
||||
_isUnfinishedCocktailPickedUp = false;
|
||||
HideUi();
|
||||
SetEmpty();
|
||||
}
|
||||
|
||||
public void ServedItem()
|
||||
{
|
||||
_isUnfinishedCocktailPickedUp = false;
|
||||
HideUi();
|
||||
SetEmpty();
|
||||
}
|
||||
|
41
Assets/02.Scripts/Ui/Tycoon/PumpingMessage.cs
Normal 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));
|
||||
}
|
||||
}
|
||||
}
|
2
Assets/02.Scripts/Ui/Tycoon/PumpingMessage.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: da97352cbf8e3a448a46c44b4651f73e
|
Before Width: | Height: | Size: 221 KiB After Width: | Height: | Size: 242 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 236 KiB |
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 213 KiB |
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 243 KiB |
@ -254,8 +254,7 @@ MeshRenderer:
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
|
||||
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
|
||||
- {fileID: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
@ -284,13 +283,13 @@ MonoBehaviour:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 813964778509222274}
|
||||
m_Enabled: 1
|
||||
m_Enabled: 0
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
|
||||
initialSkinName: 01Suit
|
||||
initialSkinName: 01Bar
|
||||
fixPrefabOverrideViaMeshFilter: 2
|
||||
initialFlipX: 0
|
||||
initialFlipY: 0
|
||||
@ -781,9 +780,9 @@ MonoBehaviour:
|
||||
_isRandomRange: 0
|
||||
_randomRange: {x: 0, y: 1}
|
||||
_randomStrings:
|
||||
- 01Maid
|
||||
- 02Maid
|
||||
- 03Maid
|
||||
- 01Bar
|
||||
- 02Bar
|
||||
- 03Bar
|
||||
--- !u!114 &17978457728262906
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -256,6 +256,8 @@ MeshRenderer:
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
|
||||
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
|
||||
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
|
||||
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
@ -290,7 +292,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
|
||||
initialSkinName: 01Suit2
|
||||
initialSkinName: 01Clean
|
||||
fixPrefabOverrideViaMeshFilter: 2
|
||||
initialFlipX: 0
|
||||
initialFlipY: 0
|
||||
@ -781,9 +783,9 @@ MonoBehaviour:
|
||||
_isRandomRange: 0
|
||||
_randomRange: {x: 0, y: 1}
|
||||
_randomStrings:
|
||||
- 01Suit2
|
||||
- 02Suit2
|
||||
- 03Suit2
|
||||
- 01Clean
|
||||
- 02Clean
|
||||
- 03Clean
|
||||
--- !u!114 &17978457728262906
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -254,8 +254,7 @@ MeshRenderer:
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2}
|
||||
- {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2}
|
||||
- {fileID: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
@ -290,7 +289,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2}
|
||||
initialSkinName: 01Maid
|
||||
initialSkinName: 01Serv
|
||||
fixPrefabOverrideViaMeshFilter: 2
|
||||
initialFlipX: 0
|
||||
initialFlipY: 0
|
||||
@ -781,9 +780,9 @@ MonoBehaviour:
|
||||
_isRandomRange: 0
|
||||
_randomRange: {x: 0, y: 1}
|
||||
_randomStrings:
|
||||
- 01Suit
|
||||
- 02Suit
|
||||
- 03Suit
|
||||
- 01Serv
|
||||
- 02Serv
|
||||
- 03Serv
|
||||
--- !u!114 &17978457728262906
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -270,6 +270,7 @@ Transform:
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children:
|
||||
- {fileID: 6509241874729291456}
|
||||
- {fileID: 1310764416167184350}
|
||||
- {fileID: 3452808590865560956}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -540,6 +541,22 @@ MonoBehaviour:
|
||||
m_CallState: 2
|
||||
m_ActionId: c30fb3f3-d280-4b30-af6c-15f7483fd658
|
||||
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_DefaultControlScheme:
|
||||
m_DefaultActionMap: Tycoon
|
||||
@ -632,6 +649,10 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
<MoveSpeed>k__BackingField: 3
|
||||
<MoveSpeedMultiplier>k__BackingField: 1
|
||||
<DashSpeed>k__BackingField: 10
|
||||
<DashTime>k__BackingField: 0.2
|
||||
<DashCooldown>k__BackingField: 5
|
||||
_dashParticle: {fileID: 6534074633252588839}
|
||||
--- !u!114 &909302231676134912
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -645,8 +666,123 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_itemRenderer: {fileID: 5527707380059080408}
|
||||
_isUnfinishedCocktailPickedUp: 0
|
||||
_isPickedUpItem: 0
|
||||
<IsUnfinishedCocktailPickedUp>k__BackingField: 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
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -711,6 +847,10 @@ PrefabInstance:
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0.04999999
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8764364725249863370, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3}
|
||||
propertyPath: m_PresetInfoIsWorld
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
|
@ -368,6 +368,127 @@ BoxCollider:
|
||||
serializedVersion: 3
|
||||
m_Size: {x: 12, y: 3.8, z: 0.20000005}
|
||||
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
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -2749,6 +2870,7 @@ Transform:
|
||||
- {fileID: 1460156631301568417}
|
||||
- {fileID: 249187936443647402}
|
||||
- {fileID: 2435960157213919885}
|
||||
- {fileID: 761558860074504813}
|
||||
- {fileID: 5495525894007307580}
|
||||
- {fileID: 3834249266432028486}
|
||||
- {fileID: 7160680560296398733}
|
||||
@ -4909,6 +5031,7 @@ Transform:
|
||||
- {fileID: 8480552838860958414}
|
||||
- {fileID: 4798925548635759970}
|
||||
- {fileID: 3032369304281183765}
|
||||
- {fileID: 334852209123821565}
|
||||
m_Father: {fileID: 4449232531499695111}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &8697754653569273504
|
||||
@ -6416,6 +6539,68 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1061695247072719575, guid: d4d2c09313763694785f13d2ff8c1303, type: 3}
|
||||
m_PrefabInstance: {fileID: 1080211192036468262}
|
||||
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
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -57,7 +57,7 @@ Transform:
|
||||
m_GameObject: {fileID: 6373979881487551315}
|
||||
serializedVersion: 2
|
||||
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_ConstrainProportionsScale: 1
|
||||
m_Children: []
|
||||
@ -170,6 +170,18 @@ PrefabInstance:
|
||||
propertyPath: m_Name
|
||||
value: BartenderTable02
|
||||
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}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 30
|
||||
|
230
Assets/05.Prefabs/Props/Furniture/Interactions/Pump.prefab
Normal 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:
|
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7947dcd65a3517948a2892d06222f5ae
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -40,10 +40,6 @@ PrefabInstance:
|
||||
propertyPath: m_Sprite
|
||||
value:
|
||||
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}
|
||||
propertyPath: m_WasSpriteAssigned
|
||||
value: 1
|
||||
@ -176,8 +172,7 @@ PrefabInstance:
|
||||
propertyPath: m_WasSpriteAssigned
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents:
|
||||
- {fileID: 1702261025824090784, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents:
|
||||
|
@ -10,7 +10,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 2641341650102689817}
|
||||
- component: {fileID: 2829248495233098512}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: BalloonUi
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
@ -64,7 +64,7 @@ GameObject:
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 674323407039969650}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: Panel
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
@ -104,7 +104,7 @@ GameObject:
|
||||
- component: {fileID: 1610583026884195458}
|
||||
- component: {fileID: 7139087245191076382}
|
||||
- component: {fileID: 4586681201290156434}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: Background
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
@ -179,7 +179,7 @@ GameObject:
|
||||
- component: {fileID: 6400894162898819538}
|
||||
- component: {fileID: 7693093380867172793}
|
||||
- component: {fileID: 8218406547424483500}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: FoodImage
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
@ -254,7 +254,7 @@ GameObject:
|
||||
- component: {fileID: 6751494179874491372}
|
||||
- component: {fileID: 6775969391593346456}
|
||||
- component: {fileID: 2173167918881327799}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: FillImage
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
|
@ -13,7 +13,7 @@ GameObject:
|
||||
- component: {fileID: 8764364725249863370}
|
||||
- component: {fileID: 5028824454365225125}
|
||||
- component: {fileID: 8043919875794167790}
|
||||
m_Layer: 5
|
||||
m_Layer: 19
|
||||
m_Name: InteractionCanvas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
|
193
Assets/05.Prefabs/Uis/Tycoons/PumpingMessage.prefab
Normal 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
|
7
Assets/05.Prefabs/Uis/Tycoons/PumpingMessage.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 206dfaa20a9d03d40a76e55ba01170c8
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,125 +1,146 @@
|
||||
Crew.png
|
||||
size:2033,1924
|
||||
size:1992,1855
|
||||
filter:Linear,Linear
|
||||
Crew01/Eye_Left
|
||||
bounds:555,1485,182,240
|
||||
CrewBar/Face_Bar
|
||||
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
|
||||
Crew01/Eye_Right
|
||||
bounds:1228,1429,185,246
|
||||
CrewBar/Suit_LegLeft
|
||||
bounds:602,1763,90,196
|
||||
rotate:90
|
||||
Crew01/Face
|
||||
bounds:1537,648,521,476
|
||||
CrewBar/Suit_LegRight
|
||||
bounds:800,1763,90,196
|
||||
rotate:90
|
||||
Crew01/Hair_Front
|
||||
bounds:565,439,581,400
|
||||
Crew01/Hair_Left
|
||||
bounds:112,1845,77,488
|
||||
CrewBar/Suit_Pant
|
||||
bounds:1790,1727,200,126
|
||||
CrewMaid/body_maid
|
||||
bounds:2,1019,250,235
|
||||
CrewMaid/pant_maid
|
||||
bounds:204,1619,273,155
|
||||
CrewServ/Body_Serv
|
||||
bounds:1065,1598,163,167
|
||||
rotate:90
|
||||
Crew01/Hair_Right
|
||||
bounds:611,1288,187,572
|
||||
CrewServ/Hand_Left
|
||||
bounds:1442,1408,188,201
|
||||
rotate:90
|
||||
Crew01/Mouse
|
||||
bounds:2,1903,46,19
|
||||
CrewSuit/Suit_Body
|
||||
bounds:277,1682,162,161
|
||||
CrewSuit/Suit_HandLeft
|
||||
bounds:1679,1411,188,201
|
||||
CrewServ/Hand_Right
|
||||
bounds:472,1250,188,201
|
||||
rotate:90
|
||||
CrewSuit/Suit_HandRight
|
||||
bounds:2,1315,188,201
|
||||
CrewServ/Leg_Left
|
||||
bounds:998,1763,90,196
|
||||
rotate:90
|
||||
CrewSuit/Suit_Pant
|
||||
bounds:1409,1796,200,126
|
||||
CrewSuit2/Body
|
||||
bounds:441,1678,163,167
|
||||
CrewServ/Leg_Right
|
||||
bounds:1196,1763,90,196
|
||||
rotate:90
|
||||
CrewSuit2/Hand_Left
|
||||
bounds:1025,1477,188,201
|
||||
rotate:90
|
||||
CrewSuit2/Hand_Right
|
||||
bounds:1476,1411,188,201
|
||||
rotate:90
|
||||
Item/BeerFull
|
||||
bounds:2,140,512,512
|
||||
CrewServ/Pant_Serv
|
||||
bounds:2,1648,200,126
|
||||
Item/Cleaningbroom
|
||||
bounds:1437,1171,238,476
|
||||
bounds:254,996,238,476
|
||||
rotate:90
|
||||
Item/Cleaningbroom3
|
||||
bounds:1478,1601,174,498
|
||||
bounds:192,1440,174,498
|
||||
rotate:90
|
||||
Item/Cleaningstic
|
||||
bounds:232,1495,181,321
|
||||
bounds:1119,1415,181,321
|
||||
rotate:90
|
||||
Item/Shaker
|
||||
bounds:260,984,302,372
|
||||
Item/Shaker2
|
||||
bounds:990,877,302,516
|
||||
rotate:90
|
||||
Item/WoodenBeerMug
|
||||
bounds:2,1047,256,256
|
||||
bounds:732,970,256,256
|
||||
Item/dust2
|
||||
bounds:634,948,338,338
|
||||
crew02/backhair02
|
||||
bounds:516,2,584,435
|
||||
crew02/fronthair02
|
||||
bounds:1148,215,565,431
|
||||
crew02/lefteye02
|
||||
bounds:610,1669,172,222
|
||||
bounds:1508,841,338,338
|
||||
crew01/Eye_Left
|
||||
bounds:2,1256,182,240
|
||||
rotate:90
|
||||
crew02/lefthair02
|
||||
bounds:602,1843,79,302
|
||||
crew01/Eye_Right
|
||||
bounds:878,1228,185,246
|
||||
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
|
||||
bounds:205,1305,188,201
|
||||
bounds:675,1236,188,201
|
||||
rotate:90
|
||||
crew02/leftleg02
|
||||
bounds:906,1832,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
|
||||
bounds:1394,1763,90,196
|
||||
rotate:90
|
||||
crew02/righthand02
|
||||
bounds:408,1295,188,201
|
||||
bounds:1126,1225,188,201
|
||||
rotate:90
|
||||
crew02/rightleg02
|
||||
bounds:1104,1832,90,196
|
||||
bounds:1592,1763,90,196
|
||||
rotate:90
|
||||
crew03/LeftEar
|
||||
bounds:1302,1822,105,100
|
||||
crew03/LeftEye03
|
||||
bounds:1254,1616,178,222
|
||||
crew03/Eye_Left03
|
||||
bounds:895,1418,178,222
|
||||
rotate:90
|
||||
crew03/LeftHair03
|
||||
bounds:1611,1777,145,420
|
||||
crew03/Eye_Right03
|
||||
bounds:1645,1370,181,228
|
||||
rotate:90
|
||||
crew03/LeftHairA03
|
||||
bounds:974,841,328,561
|
||||
crew03/Hair_Left03
|
||||
bounds:479,1616,145,420
|
||||
rotate:90
|
||||
crew03/RightEye03
|
||||
bounds:2,1505,181,228
|
||||
crew03/Hair_LeftA03
|
||||
bounds:2,666,328,561
|
||||
rotate:90
|
||||
crew03/RightHair03
|
||||
bounds:834,1667,163,418
|
||||
crew03/Hair_Rifht03
|
||||
bounds:565,547,328,561
|
||||
rotate:90
|
||||
crew03/RightHairA03
|
||||
bounds:2,654,328,561
|
||||
crew03/Hair_Right03
|
||||
bounds:1234,1598,163,418
|
||||
rotate:90
|
||||
crewMaid/body_maid
|
||||
bounds:1185,1192,250,235
|
||||
crewMaid/pant_maid
|
||||
bounds:2,1688,273,155
|
||||
|
||||
Crew_2.png
|
||||
size:1145,1033
|
||||
size:2032,1642
|
||||
filter:Linear,Linear
|
||||
Crew01/Hair_Back
|
||||
bounds:2,516,622,515
|
||||
Item/Cleaningbroom2
|
||||
bounds:2,2,512,512
|
||||
crew02/face02
|
||||
bounds:516,17,610,437
|
||||
crew03/Face03
|
||||
bounds:626,456,575,517
|
||||
CrewBar/Face_Bar02
|
||||
bounds:2,2,610,437
|
||||
CrewBar/Face_Bar03
|
||||
bounds:2,441,575,517
|
||||
rotate:90
|
||||
CrewServ/Face_Serv
|
||||
bounds:614,10,521,476
|
||||
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
|
||||
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 258 KiB After Width: | Height: | Size: 805 KiB |
@ -28,7 +28,7 @@ TagManager:
|
||||
- DamageableProps
|
||||
- Liquid
|
||||
- Garnish
|
||||
-
|
||||
- BackgroundUi
|
||||
-
|
||||
-
|
||||
-
|
||||
|