diff --git a/Assets/01.Scenes/01.Tycoon.unity b/Assets/01.Scenes/01.Tycoon.unity index 6da8dd5a1..d9c40dff6 100644 --- a/Assets/01.Scenes/01.Tycoon.unity +++ b/Assets/01.Scenes/01.Tycoon.unity @@ -9264,6 +9264,37 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 15c02fef22ba8d0488bd2517167c117c, type: 3} +--- !u!1 &887608711 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 887608712} + m_Layer: 0 + m_Name: CleanerSpawn + m_TagString: Untagged + m_Icon: {fileID: -964228994112308473, guid: 0000000000000000d000000000000000, type: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &887608712 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 887608711} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -7} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1665075868} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &891021167 GameObject: m_ObjectHideFlags: 0 @@ -15138,7 +15169,7 @@ Transform: m_GameObject: {fileID: 1400792457} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -1} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 16, y: 2, z: 10} m_ConstrainProportionsScale: 0 m_Children: [] @@ -18392,6 +18423,7 @@ GameObject: - component: {fileID: 1665075870} - component: {fileID: 1665075872} - component: {fileID: 1665075873} + - component: {fileID: 1665075874} m_Layer: 0 m_Name: TycoonManager m_TagString: Untagged @@ -18411,7 +18443,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 887608712} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1665075869 @@ -18430,6 +18463,7 @@ MonoBehaviour: k__BackingField: {fileID: 1665075870} k__BackingField: {fileID: 1665075872} k__BackingField: {fileID: 1665075873} + k__BackingField: {fileID: 0} _dailyBgm: TycoonDailyBgm1 k__BackingField: _maxLevel: 0 @@ -18498,6 +18532,28 @@ MonoBehaviour: k__BackingField: {fileID: 1814475234} k__BackingField: {fileID: 350928419} k__BackingField: {fileID: 911535447} +--- !u!114 &1665075874 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1665075867} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f6bfcc5a4ee0dbf4392ae05fd1c81877, type: 3} + m_Name: + m_EditorClassIdentifier: + _cleanerCrewPrefab: {fileID: 3226241112093390236, guid: fb1e288d64b813b4a9929ba9ece44956, type: 3} + _servingCrewPrefab: {fileID: 0} + _bartenderCrewPrefab: {fileID: 0} + _cleanerCrewSpawnTransform: {fileID: 887608712} + _servingCrewSpawnTransform: {fileID: 0} + _bartenderCrewSpawnTransform: {fileID: 0} + k__BackingField: [] + k__BackingField: [] + k__BackingField: [] + k__BackingField: [] --- !u!1 &1670140492 GameObject: m_ObjectHideFlags: 0 @@ -19870,7 +19926,7 @@ MonoBehaviour: m_EditorClassIdentifier: version: 1073741824 data: - dataString: UEsDBBQAAAgIAABIIez0cEmDtAIAAPQFAAALACQAZ3JhcGgwLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFlVFtP4kAU/itknldTRFH3bRdQ90El4saHxYdp55ROGGaauQho/O97znQoBRKSlu/cvu9c+sWkdjUU3th7K8WjEcB+9hi9sx+9vfEBNnxh9Ex+ws7nTQpfkROPPi/cS4N4n8KcWYG3svilF4qcMwSDlqWxq4lYwMg47xAuuXKAJms8RWuEvnpskwK26flJz943vhWgPdhTr7PsvH/gGHSh+KoGQYT3/sNdwGXjplFK8sjOr6iAUUq6xIT5bR2VjnjtAupAByE5KoscqGIFclH59KcNfi5LBz4mvaCslm/H0mKPmsTst2kat+Ju2ZD74CpQqcHNZSTW5H08sQ8bc2nN6qEtnZEqX8li+cK3BXe+09kuPD7kHvSaqyXPFbxVoJ/MvTVBCzR6Gyg0OLgYd1K18kYVFMu9X8P1CAz16ZQ6I/qO6jczD3WrIzu/3KN/HbiZMrH/KSVZEnJLKcHi9P6gnrg6LhVClDhi/CtfdHcsGe6kdR5NiU9CyXeKEwIBuoDU9zNy0EQvN8FSLjaJXKkZwY+M1RDhRLAGzZXfTjGjP9iCU1uH15HljtO5JXbJtruio5AI7/2z7Mg0Net22Bb318Wl3r39e6chuMqsH8FVz8ErqTvdJsMTNnhktG42t9vMXdgs2JIXnTAPGx8sjLnnsRrSwQUT3VDsZYzQQSna5SggMkIB9Hun/lYc66oIsyej4/EdPCP9RZDi8EJYxq/5rcjLq4t+Pry+yc8G+QDyAgZ5NhQwvO2zeEJSY7u5mjb9SlPC7dJ7LRrPhTK+gPM8WK7j5IXl63v5uTKdyUtdmllhAfRzk6EVCxaL4BdGTIREmTPwXuq4l+xrzpQpliDmbaJ5bOxk4y2f77PMWS0/jCdkzkbxEzhnBLcXiav7IWFNxQ+SgcLRgXiVCla8JlP2zb7/A1BLAwQUAAAICAAASCHs/aPJUmsAAAB3AAAACQAkAG1ldGEuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAatWKkstKs7Mz1OyUjDVM9Qz1FFQSi9KLMgoBgqAOaWZKSB2tJJBonmiZUpSmqmRYZKZuUWSrnGScWpScqpxkoFZSqqZpaFSLFB9SWVBql9ibipET0BiSUZaZl5KZl66nntRZoo7yGil2FoAUEsBAi0AFAAACAgAAEgh7PRwSYO0AgAA9AUAAAsAJAAAAAAAAAAAAAAAAAAAAGdyYXBoMC5qc29uCgAgAAAAAAABABgAAIA+1d6xnQEAgD7V3rGdAQCAPtXesZ0BUEsBAi0AFAAACAgAAEgh7P2jyVJrAAAAdwAAAAkAJAAAAAAAAAAAAAAAAQMAAG1ldGEuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAVBLBQYAAAAAAgACALgAAAC3AwAAAAA= + dataString: UEsDBBQAAAgIAABIIeyASX/muwIAAAEGAAALACQAZ3JhcGgwLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFlVE1v4jAQ/SvI56VKoKVlb7tA2z20RaWrHjY9OPGEWBg78keBVvz3HTuGBEBIid58vXkzk2/CpamhsEo/aM6eFAPys0f8O/nRa42PsKVLJRf8Cw4+75zZyjvR4PNKLVeIpz7MqDVYzYtfcim8c4Kgk7xUej1jS5goYw3CJRUG0KSV9dESoe8e2caAXXx++Wdvj28FSAv60qufXKXRsZ8Or8bhFyKcLARd18A88zZwcIgcNIkl9hQ9kqsbX0kJwU2kROyuDi1PaG0cNoQOjFNsMZBpilfAl5W9TPBSlgYaPPEGTXdTrlGwJjn5rRoV19SsGoKfVDhfbnh3Hcg1mZ8u7KPGXGq1fjwUTxPfma14sXqlu4Ia25G5C09b/mnQaUPFiuYC3iuQz+pBKycZGq12PtQZGEw7qY7tTSooVq1fw/UMdPXlyNJ2sPvQ/XZhoX5sRbxu0b8GzEKoMIOY0lsiMvYpQeME/2A/YY9MLISo54jxb3TZXbhouOfaWDRFPhH1vnOcEDCQBUTd+95Benq5ctrnIrPA1Yvh7ERpCQGOBGuQVNjdHDPaky24tHV4nVnuqb+9yC7aDid1FhLg1j9JzkxztTkOW+MOm7DYh7d/H34IplKbJzDVi7OCy47a3vCMAk+UlM3mdsU8hC2cLmnRCbOwtU7DlFoaqiEdXDDWDUUtQ4R0QvhdDg0ERtiA/394fSuKdUWAybOS4QBPnoH+0nF2eiEkobd0zPLyZpDmo9u7vD/Mh5AXMMyTEYPROCXhhLhEuamYN3rFKeF2ybYXiefiM76CsdRpKsPkmaabB/61Vp3Jc1mqRaEB5EuT4dgsaCyCXxk2YxzbXIC1XIa9JN8ZEapYAcuOibIg7GxrNc3aLBmp+aeyHsnIJHwPM+Lh40Xi6n5y2PjiJ8lA4OiAvXEBa1p7U7In+/9QSwMEFAAACAgAAEgh7P2jyVJrAAAAdwAAAAkAJABtZXRhLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQGrVipLLSrOzM9TslIw1TPUM9RRUEovSizIKAYKgDmlmSkgdrSSQaJ5omVKUpqpkWGSmblFkq5xknFqUnKqcZKBWUqqmaWhUixQfUllQapfYm4qRE9AYklGWmZeSmZeup57UWaKO8hopdhaAFBLAQItABQAAAgIAABIIeyASX/muwIAAAEGAAALACQAAAAAAAAAAAAAAAAAAABncmFwaDAuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAVBLAQItABQAAAgIAABIIez9o8lSawAAAHcAAAAJACQAAAAAAAAAAAAAAAgDAABtZXRhLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFQSwUGAAAAAAIAAgC4AAAAvgMAAAAA file_cachedStartup: {fileID: 0} cacheStartup: 0 showNavGraphs: 1 diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew.meta new file mode 100644 index 000000000..10cd395e4 --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 003e4e69fadb8774693fc568ae7e6fd9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action.meta new file mode 100644 index 000000000..ad4538bec --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d0420dec8bd4132489c4d18a858678f8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs new file mode 100644 index 000000000..ab569abb3 --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs @@ -0,0 +1,26 @@ +using BehaviorDesigner.Runtime.Tasks; +using BlueWater.Npcs.Crews; + +namespace BlueWater.BehaviorTrees.Actions +{ + [TaskCategory("Custom/Npc/Crew/Cleaner")] + public class CompleteCleaning : Action + { + private CleanerCrew _cleanerCrew; + + public override void OnAwake() + { + _cleanerCrew = GetComponent(); + } + + public override TaskStatus OnUpdate() + { + if (_cleanerCrew.CrewInteraction == null && _cleanerCrew.IsCleaningFloor == false && _cleanerCrew.IsCleaningTable == false) + { + return TaskStatus.Success; + } + + return TaskStatus.Running; + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs.meta new file mode 100644 index 000000000..1a154f95b --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/CompleteCleaning.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 7a5758d3ca050374696590a038036208 diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs new file mode 100644 index 000000000..b9c451c57 --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs @@ -0,0 +1,32 @@ +using BehaviorDesigner.Runtime.Tasks; +using BlueWater.Npcs.Crews; + +namespace BlueWater.BehaviorTrees.Actions +{ + [TaskCategory("Custom/Npc/Crew/Cleaner")] + public class MoveToRandomPositionInRange : Action + { + private CleanerCrew _cleanerCrew; + + public override void OnAwake() + { + _cleanerCrew = GetComponent(); + } + + public override void OnStart() + { + _cleanerCrew.AIMovement.MoveToRandomPositionInRange(10f); + } + + public override TaskStatus OnUpdate() + { + if (_cleanerCrew.AIMovement.HasReachedDestination()) + { + _cleanerCrew.AIMovement.StopMove(); + return TaskStatus.Success; + } + + return TaskStatus.Running; + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs.meta new file mode 100644 index 000000000..ded1d51fb --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Action/MoveToRandomPositionInRange.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: ca9fffaeb6bce054686ef67595d97551 diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional.meta new file mode 100644 index 000000000..4f8c8dc82 --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 485b07da4fe97544b827ee1cba56bf13 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs new file mode 100644 index 000000000..f68f27db9 --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs @@ -0,0 +1,21 @@ +using BehaviorDesigner.Runtime.Tasks; +using BlueWater.Npcs.Crews; + +namespace BlueWater.BehaviorTrees.Actions +{ + [TaskCategory("Custom/Npc/Crew/Cleaner")] + public class CheckCleaning : Conditional + { + private CleanerCrew _cleanerCrew; + + public override void OnAwake() + { + _cleanerCrew = GetComponent(); + } + + public override TaskStatus OnUpdate() + { + return _cleanerCrew.IsOnMission ? TaskStatus.Success : TaskStatus.Failure; + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs.meta new file mode 100644 index 000000000..df599f86b --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/CheckCleaning.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 0936ca1602c0a42489390972e882bbc6 diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs new file mode 100644 index 000000000..aeea2cedf --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs @@ -0,0 +1,47 @@ +using BehaviorDesigner.Runtime.Tasks; +using BlueWater.Npcs.Crews; + +namespace BlueWater.BehaviorTrees.Actions +{ + [TaskCategory("Custom/Npc/Crew/Cleaner")] + public class Cleaning : Conditional + { + private CleanerCrew _cleanerCrew; + + public override void OnAwake() + { + _cleanerCrew = GetComponent(); + } + + public override void OnStart() + { + if (_cleanerCrew.CrewInteraction != null) + { + _cleanerCrew.AIMovement.Move(_cleanerCrew.CrewInteraction.CenterTransform.position); + } + } + + public override TaskStatus OnUpdate() + { + if (_cleanerCrew.CrewInteraction == null) + { + _cleanerCrew.AIMovement.StopMove(); + _cleanerCrew.ResetMission(); + return TaskStatus.Failure; + } + + if (!_cleanerCrew.CrewInteraction.CanInteractionCrew()) + { + _cleanerCrew.AIMovement.StopMove(); + return TaskStatus.Failure; + } + + if (!_cleanerCrew.CanInteractionPosition()) return TaskStatus.Running; + + _cleanerCrew.AIMovement.StopMove(); + _cleanerCrew.CrewInteraction.InteractionCrew(_cleanerCrew); + + return TaskStatus.Success; + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs.meta b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs.meta new file mode 100644 index 000000000..48fd31fda --- /dev/null +++ b/Assets/02.Scripts/BehaviorTree/Npc/Crew/Conditional/Cleaning.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 91159dfe89789d147b17eb265e452f0a diff --git a/Assets/02.Scripts/Character/AiMovement.cs b/Assets/02.Scripts/Character/AiMovement.cs index 2b14cca13..ac52d0f14 100644 --- a/Assets/02.Scripts/Character/AiMovement.cs +++ b/Assets/02.Scripts/Character/AiMovement.cs @@ -115,6 +115,30 @@ namespace BlueWater.Enemies // return PathUtilities.IsPathPossible(startNode, endNode); } + public void MoveToRandomPositionInRange(float range, int graphIndex = 0) + { + Vector3 randomPosition; + var isMovable = false; + var graphBounds = AstarPath.active.graphs[0].bounds; + + do + { + var randomDirection = Random.insideUnitCircle.normalized; + var randomOffset = new Vector3(randomDirection.x, 0, randomDirection.y) * Random.Range(0, range); + + randomPosition = _iAstarAi.position + randomOffset; + if (!graphBounds.Contains(randomPosition)) + { + continue; + } + + isMovable = IsPositionMovable(randomPosition); + + } while (!isMovable); + + Move(randomPosition); + } + #endregion } } \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew.meta b/Assets/02.Scripts/Character/Npc/Crew.meta new file mode 100644 index 000000000..f4a1818a9 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eddd9c5b1ff350843be2bdc82984eda8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs b/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs new file mode 100644 index 000000000..9efab0fc9 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace BlueWater.Npcs.Crews +{ + public class BartenderCrew: Crew + { + + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs.meta new file mode 100644 index 000000000..556642c14 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/BartenderCrew.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 787288dc6b6ba3a47b6deca211317c89 diff --git a/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs b/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs new file mode 100644 index 000000000..605345f00 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs @@ -0,0 +1,39 @@ +using BlueWater.Interfaces; +using UnityEngine; + +namespace BlueWater.Npcs.Crews +{ + public class CleanerCrew: Crew + { + public void OnMission(ICrewInteraction crewInteraction) + { + CrewInteraction = crewInteraction; + CrewInteraction.OnInteractionCompleted += InteractionCompleted; + IsOnMission = true; + } + + public void ResetMission() + { + CrewInteraction = null; + IsOnMission = false; + IsCleaningFloor = false; + IsCleaningTable = false; + } + + public bool CanInteractionPosition() + { + if (CrewInteraction.CenterTransform == null) return false; + + return AIMovement.HasReachedDestination() || + Vector3.Distance(CrewInteraction.CenterTransform.position, transform.position) <= + CrewInteraction.InteractionRadius; + } + + private void InteractionCompleted() + { + CrewInteraction.OnInteractionCompleted -= InteractionCompleted; + + ResetMission(); + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs.meta new file mode 100644 index 000000000..698c8350b --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/CleanerCrew.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 9cf18446a5e200f40b666b079ae87895 \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew/Crew.cs b/Assets/02.Scripts/Character/Npc/Crew/Crew.cs new file mode 100644 index 000000000..e19cc08c0 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/Crew.cs @@ -0,0 +1,203 @@ +using BehaviorDesigner.Runtime; +using BlueWater.Enemies; +using BlueWater.Interfaces; +using BlueWater.Players; +using BlueWater.Uis; +using Pathfinding; +using PixelCrushers.DialogueSystem; +using Sirenix.OdinInspector; +using UnityEngine; + +namespace BlueWater.Npcs.Crews +{ + public static class CrewSpineAnimation + { + public const string Idle = "Idle"; + public const string Walk = "Run"; + public const string Serving = "Serving"; + public const string CleaningFloor = "CleaningFloor"; + public const string CleaningTable = "CleaningTable"; + public const string MakingCocktail = "BeerMaker"; + } + + public class Crew : MonoBehaviour + { + // Variables + + #region Variables + + // Components + [field: SerializeField] + public Transform CenterTransform { get; private set; } + + [field: SerializeField] + public Rigidbody Rigidbody { get; private set; } + + [field: SerializeField] + public CapsuleCollider CharacterCollider { get; private set; } + + [field: SerializeField] + public BehaviorTree BehaviorTree { get; private set; } + + [field: SerializeField] + public Transform VisualLook { get; private set; } + + [field: SerializeField] + public MeshRenderer MeshRenderer { get; private set; } + + [field: SerializeField] + public BarkTrigger BarkTrigger { get; private set; } + + [field: SerializeField] + public InteractionCanvas InteractionCanvas { get; private set; } + + [field: SerializeField] + public BalloonUi BalloonUi { get; private set; } + + // Classes + [field: SerializeField, Required] + public SpineController SpineController { get; private set; } + + [field: SerializeField, Required] + public AiMovement AIMovement { get; private set; } + + public bool IsMoving { get; protected set; } + + private Vector3 _currentDirection = Vector3.right; + public Vector3 CurrentDirection + { + get => _currentDirection; + set + { + if (value == Vector3.zero) return; + + _currentDirection = value; + } + } + + public ICrewInteraction CrewInteraction { get; protected set; } + public bool IsOnMission { get; set; } + public bool IsCleaningFloor { get; set; } + public bool IsCleaningTable { get; set; } + public bool IsServing { get; set; } + public bool IsMakingCocktail { get; set; } + + private IAstarAI _astarAi; + private Transform _spawnTransform; + + // State + public IState CurrentState { get; private set; } + public IState IdleState { get; private set; } + public IState WalkingState { get; private set; } + public IState CleaningFloorState { get; private set; } + public IState CleaningTableState { get; private set; } + public IState ServingState { get; private set; } + public IState MakingCocktailState { get; private set; } + + #endregion + + // Unity events + + #region Unity events + + private void Awake() + { + InitializeComponents(); + } + + protected virtual void Update() + { + CurrentState.UpdateState(this); + HandleMovement(); + FlipVisualLook(); + } + + #endregion + + // Initialize methods + + #region Initialize methods + + [Button("컴포넌트 초기화")] + protected virtual void InitializeComponents() + { + CenterTransform = transform; + Rigidbody = GetComponent(); + CharacterCollider = GetComponent(); + BehaviorTree = GetComponent(); + VisualLook = transform.Find("VisualLook"); + MeshRenderer = VisualLook.GetComponent(); + BarkTrigger = transform.Find("DialogueSystem").GetComponent(); + InteractionCanvas = transform.GetComponentInChildren(); + BalloonUi = InteractionCanvas.transform.GetComponentInChildren(); + + SpineController = GetComponent(); + AIMovement = GetComponent(); + + _astarAi = GetComponent(); + } + + public virtual void Initialize() + { + IdleState = new IdleState(); + WalkingState = new WalkingState(); + ServingState = new ServingState(); + CleaningFloorState = new CleaningFloorState(); + CleaningTableState = new CleaningTableState(); + MakingCocktailState = new MakingCocktailState(); + + CurrentState = IdleState; + CurrentState.EnterState(this); + + BehaviorTree.EnableBehavior(); + } + + #endregion + + // Methods + + #region Methods + + private void HandleMovement() + { + if (!_astarAi.canMove || _astarAi.isStopped) + { + IsMoving = false; + return; + } + + CurrentDirection = _astarAi.velocity.normalized; + IsMoving = _astarAi.velocity != Vector3.zero || _astarAi.velocity != Vector3.positiveInfinity; + } + + private void FlipVisualLook() + { + var localScale = VisualLook.localScale; + localScale.x = CurrentDirection.x switch + { + > 0.01f => -Mathf.Abs(localScale.x), + < -0.01f => Mathf.Abs(localScale.x), + _ => localScale.x + }; + VisualLook.localScale = localScale; + } + + public void Bark(string conversation, BarkOrder barkOrder = BarkOrder.Random) + { + if (string.IsNullOrEmpty(conversation)) return; + + BarkTrigger.barkOrder = barkOrder; + BarkTrigger.conversation = conversation; + BarkTrigger.OnUse(); + } + + public void TransitionToState(IState newState) + { + CurrentState.ExitState(this); + CurrentState = newState; + CurrentState.EnterState(this); + } + + #endregion + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew/Crew.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/Crew.cs.meta new file mode 100644 index 000000000..10b0b2464 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/Crew.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: b8fc2b4d5591253448b766c9c2f82cd3 diff --git a/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs b/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs new file mode 100644 index 000000000..6d411e52f --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs @@ -0,0 +1,9 @@ +using UnityEngine; + +namespace BlueWater.Npcs.Crews +{ + public class ServingCrew: Crew + { + + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs.meta new file mode 100644 index 000000000..02054b3a3 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/ServingCrew.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 005338f1228de6148ac3211b067122cb diff --git a/Assets/02.Scripts/Character/Npc/Crew/State.meta b/Assets/02.Scripts/Character/Npc/Crew/State.meta new file mode 100644 index 000000000..ee615a733 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 450cffaed5c49b8499f147ecdce7f455 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs new file mode 100644 index 000000000..40567efda --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs @@ -0,0 +1,31 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class CleaningFloorState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.CleaningFloor, true); + } + + public void UpdateState(Crew character) + { + if (character.IsCleaningFloor) return; + + if (character.IsMoving) + { + character.TransitionToState(character.WalkingState); + } + else if (!character.IsMoving) + { + character.TransitionToState(character.IdleState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs.meta new file mode 100644 index 000000000..55d5c8a88 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningFloorState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 94d2c976ba1f55a4eb19e4c2eba709c0 diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs new file mode 100644 index 000000000..542ed958e --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs @@ -0,0 +1,31 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class CleaningTableState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.CleaningTable, true); + } + + public void UpdateState(Crew character) + { + if (character.IsCleaningTable) return; + + if (character.IsMoving) + { + character.TransitionToState(character.WalkingState); + } + else if (!character.IsMoving) + { + character.TransitionToState(character.IdleState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs.meta new file mode 100644 index 000000000..d5b086173 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/CleaningTableState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 4c889d22e0f875e45b83640fa73f028c diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs new file mode 100644 index 000000000..c6322a924 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs @@ -0,0 +1,41 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class IdleState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.Idle, true); + } + + public void UpdateState(Crew character) + { + if (character.IsMoving) + { + character.TransitionToState(character.WalkingState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (character.IsServing) + { + character.TransitionToState(character.ServingState); + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs.meta new file mode 100644 index 000000000..d6839c07e --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/IdleState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5ea7af5ba692a3e46a919e89ca81bfb1 diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs new file mode 100644 index 000000000..c283e787b --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs @@ -0,0 +1,31 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class MakingCocktailState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.MakingCocktail, true); + } + + public void UpdateState(Crew character) + { + if (character.IsMakingCocktail) return; + + if (character.IsMoving) + { + character.TransitionToState(character.WalkingState); + } + else if (!character.IsMoving) + { + character.TransitionToState(character.IdleState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs.meta new file mode 100644 index 000000000..8d4544bfe --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/MakingCocktailState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 49f22fb3486c24146abf333ebbbe3f43 diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs new file mode 100644 index 000000000..24b53d79b --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs @@ -0,0 +1,31 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class ServingState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.Serving, true); + } + + public void UpdateState(Crew character) + { + if (character.IsServing) return; + + if (character.IsMoving) + { + character.TransitionToState(character.WalkingState); + } + else if (!character.IsMoving) + { + character.TransitionToState(character.IdleState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs.meta new file mode 100644 index 000000000..c914c0f34 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/ServingState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 76314f5de62015f46877cf31ddfc0535 diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs b/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs new file mode 100644 index 000000000..2e56d2b2f --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs @@ -0,0 +1,41 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Npcs.Crews +{ + public class WalkingState : IState + { + public void EnterState(Crew character) + { + character.SpineController.PlayAnimation(CrewSpineAnimation.Walk, true); + } + + public void UpdateState(Crew character) + { + if (!character.IsMoving) + { + character.TransitionToState(character.IdleState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (character.IsServing) + { + character.TransitionToState(character.ServingState); + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + } + + public void ExitState(Crew character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs.meta b/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs.meta new file mode 100644 index 000000000..1e7764039 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Crew/State/WalkingState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: de36f1e222d989a44ad2ad9d7d4560c8 diff --git a/Assets/02.Scripts/Character/Npc/Customer.meta b/Assets/02.Scripts/Character/Npc/Customer.meta new file mode 100644 index 000000000..db5254d97 --- /dev/null +++ b/Assets/02.Scripts/Character/Npc/Customer.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a7ba7d84709b95246937df89d27f95d4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/Character/Npc/Customer.cs b/Assets/02.Scripts/Character/Npc/Customer/Customer.cs similarity index 98% rename from Assets/02.Scripts/Character/Npc/Customer.cs rename to Assets/02.Scripts/Character/Npc/Customer/Customer.cs index 5c5762ddc..760c3507f 100644 --- a/Assets/02.Scripts/Character/Npc/Customer.cs +++ b/Assets/02.Scripts/Character/Npc/Customer/Customer.cs @@ -18,6 +18,10 @@ namespace BlueWater.Npcs.Customers { public const string Idle = "Idle"; public const string Walk = "Run"; + public const string Happy = "Happy"; + public const string HappyRun = "HappyRun"; + public const string Upset = "Upset"; + public const string UpsetRun = "UpsetRun"; } public enum CustomerInteractionType @@ -161,7 +165,7 @@ namespace BlueWater.Npcs.Customers { InitializeComponents(); } - + private void OnApplicationQuit() { _isQuitting = true; @@ -374,6 +378,7 @@ namespace BlueWater.Npcs.Customers var gold = (int)(CurrentLevelData.Gold * TycoonManager.Instance.TycoonStatus.GoldMultiplier); PayMoneyParticle.Play(); + PayMoneyUi.PayMoney(gold); TycoonManager.Instance.TycoonStatus.CurrentExp += exp; TycoonManager.Instance.TycoonStatus.CurrentGold += gold; } diff --git a/Assets/02.Scripts/Character/Npc/Customer.cs.meta b/Assets/02.Scripts/Character/Npc/Customer/Customer.cs.meta similarity index 100% rename from Assets/02.Scripts/Character/Npc/Customer.cs.meta rename to Assets/02.Scripts/Character/Npc/Customer/Customer.cs.meta diff --git a/Assets/02.Scripts/Character/Npc/CustomerData.cs b/Assets/02.Scripts/Character/Npc/Customer/CustomerData.cs similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerData.cs rename to Assets/02.Scripts/Character/Npc/Customer/CustomerData.cs diff --git a/Assets/02.Scripts/Character/Npc/CustomerData.cs.meta b/Assets/02.Scripts/Character/Npc/Customer/CustomerData.cs.meta similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerData.cs.meta rename to Assets/02.Scripts/Character/Npc/Customer/CustomerData.cs.meta diff --git a/Assets/02.Scripts/Character/Npc/CustomerDataSo.cs b/Assets/02.Scripts/Character/Npc/Customer/CustomerDataSo.cs similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerDataSo.cs rename to Assets/02.Scripts/Character/Npc/Customer/CustomerDataSo.cs diff --git a/Assets/02.Scripts/Character/Npc/CustomerDataSo.cs.meta b/Assets/02.Scripts/Character/Npc/Customer/CustomerDataSo.cs.meta similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerDataSo.cs.meta rename to Assets/02.Scripts/Character/Npc/Customer/CustomerDataSo.cs.meta diff --git a/Assets/02.Scripts/Character/Npc/CustomerVisitInfo.cs b/Assets/02.Scripts/Character/Npc/Customer/CustomerVisitInfo.cs similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerVisitInfo.cs rename to Assets/02.Scripts/Character/Npc/Customer/CustomerVisitInfo.cs diff --git a/Assets/02.Scripts/Character/Npc/CustomerVisitInfo.cs.meta b/Assets/02.Scripts/Character/Npc/Customer/CustomerVisitInfo.cs.meta similarity index 100% rename from Assets/02.Scripts/Character/Npc/CustomerVisitInfo.cs.meta rename to Assets/02.Scripts/Character/Npc/Customer/CustomerVisitInfo.cs.meta diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State.meta b/Assets/02.Scripts/Character/Player/Tycoon/State.meta new file mode 100644 index 000000000..8d467af85 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9908695ac6a8d144e8b7a5912cf84d1e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs new file mode 100644 index 000000000..159760253 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs @@ -0,0 +1,35 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class CleaningFloorState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.CleaningFloor, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.IsCleaningFloor) return; + + if (character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingState + : character.WalkingState); + } + else if (!character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingIdleState + : character.IdleState); + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs.meta new file mode 100644 index 000000000..a2297113d --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningFloorState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 9065ba3166960104ea1715dba2ec1747 diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs new file mode 100644 index 000000000..cf4c4c399 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs @@ -0,0 +1,35 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class CleaningTableState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.CleaningTable, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.IsCleaningTable) return; + + if (character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingState + : character.WalkingState); + } + else if (!character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingIdleState + : character.IdleState); + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs.meta new file mode 100644 index 000000000..2a76c947d --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/CleaningTableState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 36ffcbf803ac0c4488a1ebd0bc1bf893 diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs new file mode 100644 index 000000000..98be959f1 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs @@ -0,0 +1,46 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class IdleState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingState + : character.WalkingState); + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (!character.TycoonMovement.IsMoving) + { + if (character.TycoonPickupHandler.IsPickedUpCocktail()) + { + character.TransitionToState(character.ServingIdleState); + } + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs.meta new file mode 100644 index 000000000..c9f0470a4 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 9413163fe318fef4e932902226eb29b3 \ No newline at end of file diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs new file mode 100644 index 000000000..e5ae1e37c --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs @@ -0,0 +1,35 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class MakingCocktailState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.MakingCocktail, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.IsMakingCocktail) return; + + if (character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingState + : character.WalkingState); + } + else if (!character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingIdleState + : character.IdleState); + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs.meta new file mode 100644 index 000000000..aefe6d1e1 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/MakingCocktailState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: ac7339b414b7c484daf1222ae15414d6 diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs new file mode 100644 index 000000000..fa282e924 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs @@ -0,0 +1,46 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class ServingIdleState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.ServingIdle, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingState + : character.WalkingState); + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (!character.TycoonMovement.IsMoving) + { + if (!character.TycoonPickupHandler.IsPickedUpCocktail()) + { + character.TransitionToState(character.IdleState); + } + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs.meta new file mode 100644 index 000000000..0f04887cb --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingIdleState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: d1fc2d984ba7abe4b8c03f3185042c8a diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs new file mode 100644 index 000000000..491cf87f9 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs @@ -0,0 +1,46 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class ServingState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Serving, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.TycoonMovement.IsMoving) + { + if (!character.TycoonPickupHandler.IsPickedUpCocktail()) + { + character.TransitionToState(character.WalkingState); + } + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (!character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingIdleState + : character.IdleState); + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs.meta new file mode 100644 index 000000000..19217ab2f --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/ServingState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 8095077d57ce80644b938bc37f010bcc diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs b/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs new file mode 100644 index 000000000..cc94823cd --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs @@ -0,0 +1,46 @@ +using BlueWater.Interfaces; + +namespace BlueWater.Players.Tycoons +{ + public class WalkingState : IState + { + public void EnterState(TycoonPlayer character) + { + character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Walking, true); + } + + public void UpdateState(TycoonPlayer character) + { + if (character.TycoonMovement.IsMoving) + { + if (character.TycoonPickupHandler.IsPickedUpCocktail()) + { + character.TransitionToState(character.ServingState); + } + } + else if (character.IsMakingCocktail) + { + character.TransitionToState(character.MakingCocktailState); + } + else if (character.IsCleaningFloor) + { + character.TransitionToState(character.CleaningFloorState); + } + else if (character.IsCleaningTable) + { + character.TransitionToState(character.CleaningTableState); + } + else if (!character.TycoonMovement.IsMoving) + { + character.TransitionToState(character.TycoonPickupHandler.IsPickedUpCocktail() + ? character.ServingIdleState + : character.IdleState); + } + } + + public void ExitState(TycoonPlayer character) + { + + } + } +} diff --git a/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs.meta b/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs.meta new file mode 100644 index 000000000..9caf5f145 --- /dev/null +++ b/Assets/02.Scripts/Character/Player/Tycoon/State/WalkingState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 482f14ef34055d5409c9db98dab96ffa diff --git a/Assets/02.Scripts/Character/Player/Tycoon/TycoonMovement.cs b/Assets/02.Scripts/Character/Player/Tycoon/TycoonMovement.cs index f6443c8b3..6587aaf15 100644 --- a/Assets/02.Scripts/Character/Player/Tycoon/TycoonMovement.cs +++ b/Assets/02.Scripts/Character/Player/Tycoon/TycoonMovement.cs @@ -11,7 +11,6 @@ namespace BlueWater.Players.Tycoons // Components public Rigidbody Rigidbody { get; private set; } private Transform _visualLook; - private SpineController _spineController; private TycoonPickupHandler _tycoonPickupHandler; // Move @@ -22,33 +21,8 @@ namespace BlueWater.Players.Tycoons public float MoveSpeedMultiplier { get; private set; } = 1f; public bool IsMoveEnabled { get; private set; } = true; - - private bool _isMoving; - public bool IsMoving - { - get => _isMoving; - private set - { - _isMoving = value; - string animationName; - if (_isMoving) - { - animationName = TycoonPlayerSpineAnimation.Walk; - //animationName = _tycoonPickupHandler.IsPickedUpItem() ? TycoonPlayerSpineAnimation.ServingSide : TycoonPlayerSpineAnimation.RunSide; - } - else - { - animationName = TycoonPlayerSpineAnimation.Idle; - //animationName = _tycoonPickupHandler.IsPickedUpItem() ? TycoonPlayerSpineAnimation.IdleServingUpside : TycoonPlayerSpineAnimation.IdleSide; - } - - if (animationName == _previousAnimationName) return; - - _previousAnimationName = animationName; - _spineController.PlayAnimation(animationName, true); - } - } + public bool IsMoving { get; private set; } private Vector3 _inputDirection; @@ -67,9 +41,8 @@ namespace BlueWater.Players.Tycoons public Vector3 PushDirection { get; private set; } public float PushPower { get; private set; } public float PushPowerReduction { get; private set; } - + private float _finalSpeed; - private string _previousAnimationName; #endregion @@ -78,8 +51,7 @@ namespace BlueWater.Players.Tycoons private void Awake() { - _spineController = GetComponent(); - _tycoonPickupHandler = GetComponent(); + InitializeComponents(); } private void Update() @@ -99,10 +71,12 @@ namespace BlueWater.Players.Tycoons // Initialize Methods #region Initialize Methods - public void InitializeComponents(Rigidbody rigidbody, Transform visualLook) + private void InitializeComponents() { - Rigidbody = rigidbody; - _visualLook = visualLook; + Rigidbody = GetComponent(); + _visualLook = transform.Find("VisualLook"); + + _tycoonPickupHandler = GetComponent(); } #endregion diff --git a/Assets/02.Scripts/Character/Player/Tycoon/TycoonPlayer.cs b/Assets/02.Scripts/Character/Player/Tycoon/TycoonPlayer.cs index f35617b1d..b93f60da6 100644 --- a/Assets/02.Scripts/Character/Player/Tycoon/TycoonPlayer.cs +++ b/Assets/02.Scripts/Character/Player/Tycoon/TycoonPlayer.cs @@ -1,3 +1,4 @@ +using BlueWater.Interfaces; using BlueWater.Uis; using Sirenix.OdinInspector; using Spine.Unity; @@ -8,11 +9,13 @@ namespace BlueWater.Players.Tycoons { public static class TycoonPlayerSpineAnimation { - public const string Cleaning = "Cleaning"; public const string Idle = "Idle"; - public const string MakeCocktail = "BeerMaker"; - public const string Run = "Run"; - public const string Walk = "RunSlow"; + public const string Walking = "Run"; + public const string ServingIdle = "ServingIdle"; + public const string Serving = "Serving"; + public const string CleaningFloor = "CleaningFloor"; + public const string CleaningTable = "CleaningTable"; + public const string MakingCocktail = "BeerMaker"; } [DefaultExecutionOrder(-1)] @@ -55,6 +58,20 @@ namespace BlueWater.Players.Tycoons [field: SerializeField] public TycoonPickupHandler TycoonPickupHandler { get; private set; } + public bool IsCleaningFloor { get; set; } + public bool IsCleaningTable { get; set; } + public bool IsMakingCocktail { get; set; } + + // State + public IState CurrentState { get; private set; } + public IState IdleState { get; private set; } + public IState WalkingState { get; private set; } + public IState ServingIdleState { get; private set; } + public IState ServingState { get; private set; } + public IState CleaningFloorState { get; private set; } + public IState CleaningTableState { get; private set; } + public IState MakingCocktailState { get; private set; } + #endregion // Unity events @@ -63,7 +80,6 @@ namespace BlueWater.Players.Tycoons private void Awake() { InitializeComponents(); - InitializeChileComponents(); if (!GameManager.Instance.CurrentTycoonPlayer) { @@ -73,12 +89,42 @@ namespace BlueWater.Players.Tycoons private void Start() { - SubscribeEvents(); + TycoonInput.OnMoveInputReceived += TycoonMovement.HandleInputMovement; + + EventManager.OnDead += Die; + var balloonUi = InteractionCanvas.BalloonUi; + EventManager.OnCocktailStarted += balloonUi.PickupUnfinishedCocktail; + EventManager.OnCocktailCompleted += balloonUi.SetItemImage; + EventManager.OnCocktailDiscarded += balloonUi.DiscardItem; + EventManager.OnCocktailServedToCustomer += balloonUi.GiveItem; + + IdleState = new IdleState(); + WalkingState = new WalkingState(); + ServingIdleState = new ServingIdleState(); + ServingState = new ServingState(); + CleaningFloorState = new CleaningFloorState(); + CleaningTableState = new CleaningTableState(); + MakingCocktailState = new MakingCocktailState(); + + CurrentState = IdleState; + CurrentState.EnterState(this); + } + + private void Update() + { + CurrentState.UpdateState(this); } private void OnDestroy() { - UnSubscribeEvents(); + TycoonInput.OnMoveInputReceived -= TycoonMovement.HandleInputMovement; + + EventManager.OnDead -= Die; + var balloonUi = InteractionCanvas.BalloonUi; + EventManager.OnCocktailStarted -= balloonUi.PickupUnfinishedCocktail; + EventManager.OnCocktailCompleted -= balloonUi.SetItemImage; + EventManager.OnCocktailDiscarded -= balloonUi.DiscardItem; + EventManager.OnCocktailServedToCustomer -= balloonUi.GiveItem; } #endregion @@ -107,46 +153,22 @@ namespace BlueWater.Players.Tycoons renderer.sortingOrder = 5; } - private void InitializeChileComponents() - { - TycoonMovement.InitializeComponents(Rigidbody, VisualLook); - } - #endregion // Methods #region Methods - - private void SubscribeEvents() - { - // Input - TycoonInput.OnMoveInputReceived += TycoonMovement.HandleInputMovement; - - EventManager.OnDead += Die; - var balloonUi = InteractionCanvas.BalloonUi; - EventManager.OnCocktailStarted += balloonUi.PickupUnfinishedCocktail; - EventManager.OnCocktailCompleted += balloonUi.SetItemImage; - EventManager.OnCocktailDiscarded += balloonUi.DiscardItem; - EventManager.OnCocktailServedToCustomer += balloonUi.GiveItem; - } - - private void UnSubscribeEvents() - { - // Input - TycoonInput.OnMoveInputReceived -= TycoonMovement.HandleInputMovement; - - EventManager.OnDead -= Die; - var balloonUi = InteractionCanvas.BalloonUi; - EventManager.OnCocktailStarted -= balloonUi.PickupUnfinishedCocktail; - EventManager.OnCocktailCompleted -= balloonUi.SetItemImage; - EventManager.OnCocktailDiscarded -= balloonUi.DiscardItem; - EventManager.OnCocktailServedToCustomer -= balloonUi.GiveItem; - } private void Die() { VisualFeedbackManager.Instance.SetBaseTimeScale(0f); } + + public void TransitionToState(IState newState) + { + CurrentState.ExitState(this); + CurrentState = newState; + CurrentState.EnterState(this); + } #endregion } diff --git a/Assets/02.Scripts/Character/SpineController.cs b/Assets/02.Scripts/Character/SpineController.cs index eb865325b..b0f51d49e 100644 --- a/Assets/02.Scripts/Character/SpineController.cs +++ b/Assets/02.Scripts/Character/SpineController.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using Sirenix.OdinInspector; using Spine; using Spine.Unity; @@ -30,10 +31,16 @@ namespace BlueWater.Players [SerializeField] private bool _isRandomSkin; - + [SerializeField, ShowIf("@_isRandomSkin")] + private bool _isRandomRange; + + [SerializeField, ShowIf("@_isRandomSkin && _isRandomRange")] private Vector2 _randomRange; + [SerializeField, ShowIf("@_isRandomSkin && !_isRandomRange")] + private List _randomStrings; + private bool _previousEnabled; #endregion @@ -64,7 +71,14 @@ namespace BlueWater.Players if (_isRandomSkin) { - SetRandomSkin(); + if (_isRandomRange) + { + SetRandomSkin(); + } + else + { + SetRandomStringListSkin(); + } } else { @@ -82,7 +96,7 @@ namespace BlueWater.Players /// 애니메이션 속도 양수값 /// true인 경우 자동으로 speed에 음수값을 넣음 /// - public TrackEntry PlayAnimation(string animationName, bool isLoopActive, float speed = 1f, bool isReverse = false) + public TrackEntry PlayAnimation(string animationName, bool isLoopActive, float speed = 1f, bool isReverse = false, int trackIndex = 0) { if (!SkeletonAnimation || _animationState == null) return null; @@ -92,8 +106,15 @@ namespace BlueWater.Players return null; } + // 중복 체크 + var currentTrackEntry = _animationState.GetCurrent(trackIndex); + if (currentTrackEntry != null && currentTrackEntry.Animation.Name == animationName) + { + return currentTrackEntry; + } + _animationState.TimeScale = isReverse ? -Mathf.Abs(speed) : Mathf.Abs(speed); - var trackEntry = _animationState.SetAnimation(0, animationName, isLoopActive); + var trackEntry = _animationState.SetAnimation(trackIndex, animationName, isLoopActive); if (isReverse) { @@ -103,6 +124,11 @@ namespace BlueWater.Players return trackEntry; } + public void ClearTrack(int trackIndex = 0) + { + _animationState.ClearTrack(trackIndex); + } + public void SetSkin(string skinName) { if (SkeletonAnimation == null && _animationState == null) return; @@ -128,6 +154,21 @@ namespace BlueWater.Players SetSkin(randomSkinName); } + public void SetRandomStringListSkin() + { + if (SkeletonAnimation == null || SkeletonAnimation.Skeleton == null) return; + + if (_randomStrings == null || _randomStrings.Count <= 0) + { + Debug.LogError("_randomStrings 설정 오류"); + return; + } + + var randomSkin = Random.Range(0, _randomStrings.Count); + var randomSkinName = _randomStrings[randomSkin]; + SetSkin(randomSkinName); + } + public async Awaitable WaitForAnimationCompletion(TrackEntry trackEntry, bool isReverse = false) { if (isReverse) diff --git a/Assets/02.Scripts/EventManager.cs b/Assets/02.Scripts/EventManager.cs index 1a22860af..14b555ed9 100644 --- a/Assets/02.Scripts/EventManager.cs +++ b/Assets/02.Scripts/EventManager.cs @@ -1,5 +1,6 @@ using System; using BlueWater.Items; +using BlueWater.Npcs.Crews; using BlueWater.Npcs.Customers; using UnityEngine; @@ -161,6 +162,25 @@ namespace BlueWater { OnOrderResult?.Invoke(orderedCustomer, orderedSucceed); } + + // Crews + public static Func OnCreateCleanerCrew; + public static void InvokeCreateCleanerCrew() + { + OnCreateCleanerCrew?.Invoke(); + } + + public static Func OnCreateServingCrew; + public static void InvokeCreateServingCrew() + { + OnCreateServingCrew?.Invoke(); + } + + public static Func OnCreateBartenderCrew; + public static void InvokeCreateBartenderCrew() + { + OnCreateBartenderCrew?.Invoke(); + } #endregion } diff --git a/Assets/02.Scripts/Interface/IAnimationState.cs b/Assets/02.Scripts/Interface/IAnimationState.cs new file mode 100644 index 000000000..ec8293184 --- /dev/null +++ b/Assets/02.Scripts/Interface/IAnimationState.cs @@ -0,0 +1,11 @@ +using UnityEngine; + +namespace BlueWater.Interfaces +{ + public interface IState where T : MonoBehaviour + { + void EnterState(T character); + void UpdateState(T character); + void ExitState(T character); + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Interface/IAnimationState.cs.meta b/Assets/02.Scripts/Interface/IAnimationState.cs.meta new file mode 100644 index 000000000..8e09bf694 --- /dev/null +++ b/Assets/02.Scripts/Interface/IAnimationState.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: df274f9b1b3270341a9617048bda26b6 +timeCreated: 1716899052 diff --git a/Assets/02.Scripts/Interface/ICrewInteraction.cs b/Assets/02.Scripts/Interface/ICrewInteraction.cs new file mode 100644 index 000000000..f0e69c519 --- /dev/null +++ b/Assets/02.Scripts/Interface/ICrewInteraction.cs @@ -0,0 +1,21 @@ +using System; +using BlueWater.Npcs.Crews; +using BlueWater.Uis; +using UnityEngine; + +namespace BlueWater.Interfaces +{ + public interface ICrewInteraction + { + Transform CenterTransform { get; } + InteractionCanvas InteractionCanvas { get; } + bool EnableInteraction { get; } + float InteractionRadius { get; } + + void InteractionCrew(Crew crew); + void CancelInteractionCrew(); + bool CanInteractionCrew(); + + event Action OnInteractionCompleted; + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Interface/ICrewInteraction.cs.meta b/Assets/02.Scripts/Interface/ICrewInteraction.cs.meta new file mode 100644 index 000000000..40b339265 --- /dev/null +++ b/Assets/02.Scripts/Interface/ICrewInteraction.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5e04ccf271e94b448ad576a16c69d4b3 +timeCreated: 1716899052 diff --git a/Assets/02.Scripts/Prop/Tycoon/Barrel.cs b/Assets/02.Scripts/Prop/Tycoon/Barrel.cs index c073c6718..1cfb4cf5a 100644 --- a/Assets/02.Scripts/Prop/Tycoon/Barrel.cs +++ b/Assets/02.Scripts/Prop/Tycoon/Barrel.cs @@ -59,15 +59,13 @@ namespace BlueWater.Tycoons public override void Interaction() { OnBarrelInteracted?.Invoke(this); - GameManager.Instance.CurrentTycoonPlayer.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.MakeCocktail, true); - //_liquidController.ActiveIsPouring(this); + GameManager.Instance.CurrentTycoonPlayer.IsMakingCocktail = true; } public override void CancelInteraction() { OnBarrelCancelInteracted?.Invoke(); - GameManager.Instance.CurrentTycoonPlayer.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true); - //_liquidController.InActiveIsPouring(); + GameManager.Instance.CurrentTycoonPlayer.IsMakingCocktail = false; } /// diff --git a/Assets/02.Scripts/Prop/Tycoon/TableSeat.cs b/Assets/02.Scripts/Prop/Tycoon/TableSeat.cs index e6fab8cfb..c98ba2c5b 100644 --- a/Assets/02.Scripts/Prop/Tycoon/TableSeat.cs +++ b/Assets/02.Scripts/Prop/Tycoon/TableSeat.cs @@ -1,11 +1,15 @@ using System; +using System.Collections; +using System.Linq; using BlueWater.Interfaces; +using BlueWater.Npcs.Crews; +using BlueWater.Utility; using UnityEngine; namespace BlueWater.Tycoons { [Serializable] - public class TableSeat : InteractionFurniture + public class TableSeat : InteractionFurniture, ICrewInteraction { [field: SerializeField] public bool IsOccupied { get; private set; } @@ -33,9 +37,17 @@ namespace BlueWater.Tycoons [SerializeField] private Sprite _dirtyImage; + + [SerializeField] + private float _interactionHoldingTime = 3f; - private bool _isInteracting; - private float _elapsedTime; + private Coroutine _findCleanerCrewInstance; + private bool _isPlayerInteracting; + private bool _isCrewInteracting; + private float _playerElapsedTime; + private float _crewElapsedTime; + + public event Action OnInteractionCompleted; protected override void OnEnable() { @@ -46,23 +58,34 @@ namespace BlueWater.Tycoons private void Update() { - if (_isInteracting) + if (InteractionCanvas.BalloonUi.IsWaitTimeOver()) { - if (InteractionCanvas.BalloonUi.IsWaitTimeOver()) - { - var damageable = GameManager.Instance.CurrentTycoonPlayer.GetComponent(); - damageable?.TakeDamage(1); - CleanTable(); - } - - var clamp = Mathf.Clamp(_elapsedTime / 3f, 0f, 1f); + var damageable = GameManager.Instance.CurrentTycoonPlayer.GetComponent(); + damageable?.TakeDamage(1); + CleanTable(); + } + + if (_isPlayerInteracting) + { + var clamp = Mathf.Clamp(_playerElapsedTime / _interactionHoldingTime, 0f, 1f); EventManager.OnInteracting?.Invoke(clamp); - if (_elapsedTime > 3f) + if (_playerElapsedTime > _interactionHoldingTime) { CleanTable(); } - _elapsedTime += Time.deltaTime; + _playerElapsedTime += Time.deltaTime; + } + + if (_isCrewInteracting) + { + if (_crewElapsedTime > _interactionHoldingTime) + { + OnInteractionCompleted?.Invoke(); + CleanTable(); + } + + _crewElapsedTime += Time.deltaTime; } } @@ -74,6 +97,38 @@ namespace BlueWater.Tycoons Food.enabled = false; InteractionMessage = "치우기"; } + + private IEnumerator FindCleanerCrewCoroutine() + { + var waitTime = new WaitForSeconds(2f); + while (true) + { + var cleaners = TycoonManager.Instance.CrewController.CleanerCrews; + if (cleaners == null || cleaners.Count == 0) + { + yield return waitTime; + continue; + } + + var closestCleaners = cleaners.OrderBy(element => + Vector3.Distance(element.transform.position, transform.position)).ToList(); + var isFound = false; + + foreach (var element in closestCleaners.Where(element => !element.IsOnMission)) + { + element.OnMission(this); + isFound = true; + break; + } + + if (isFound) + { + break; + } + + yield return waitTime; + } + } public void SetTableNumber(int number) => TableNumber = number; @@ -85,16 +140,16 @@ namespace BlueWater.Tycoons public override void Interaction() { - _elapsedTime = 0f; - EventManager.OnInteracting?.Invoke(_elapsedTime); - _isInteracting = true; + _playerElapsedTime = 0f; + EventManager.OnInteracting?.Invoke(_playerElapsedTime); + _isPlayerInteracting = true; } public override void CancelInteraction() { - _elapsedTime = 0f; - EventManager.OnInteracting?.Invoke(_elapsedTime); - _isInteracting = false; + _playerElapsedTime = 0f; + EventManager.OnInteracting?.Invoke(_playerElapsedTime); + _isPlayerInteracting = false; } public override bool CanInteraction() @@ -112,8 +167,9 @@ namespace BlueWater.Tycoons Food.sprite = null; Food.enabled = false; IsCleaned = true; - _isInteracting = false; + _isPlayerInteracting = false; InteractionCanvas.BalloonUi.HideUi(); + InteractionCanvas.BalloonUi.ResetUi(); } public void DirtyTable() @@ -122,6 +178,26 @@ namespace BlueWater.Tycoons Food.enabled = true; InteractionCanvas.BalloonUi.OrderItem(_dirtyImage, 0, TycoonManager.Instance.TycoonStageController.StageDataSo.DirtyTableWaitTime); IsCleaned = false; + + Utils.StartUniqueCoroutine(this, ref _findCleanerCrewInstance, FindCleanerCrewCoroutine()); + } + + public void InteractionCrew(Crew crew) + { + _crewElapsedTime = 0f; + _isCrewInteracting = true; + crew.IsCleaningTable = true; + } + + public void CancelInteractionCrew() + { + _crewElapsedTime = 0f; + _isCrewInteracting = false; + } + + public bool CanInteractionCrew() + { + return !_isPlayerInteracting; } } } \ No newline at end of file diff --git a/Assets/02.Scripts/Prop/Tycoon/Vomiting.cs b/Assets/02.Scripts/Prop/Tycoon/Vomiting.cs index 58b0e77c6..a4df03eba 100644 --- a/Assets/02.Scripts/Prop/Tycoon/Vomiting.cs +++ b/Assets/02.Scripts/Prop/Tycoon/Vomiting.cs @@ -1,16 +1,27 @@ using System; +using System.Collections; +using System.Linq; using BlueWater.Interfaces; -using BlueWater.Players.Tycoons; +using BlueWater.Npcs.Crews; +using BlueWater.Utility; using UnityEngine; namespace BlueWater.Tycoons { [Serializable] - public class Vomiting : InteractionFurniture + public class Vomiting : InteractionFurniture, ICrewInteraction { + [SerializeField] + private float _interactionHoldingTime = 3f; + private Sprite vomitingImage; - private bool _isInteracting; - private float _elapsedTime; + private Coroutine _findCleanerCrewInstance; + private bool _isPlayerInteracting; + private bool _isCrewInteracting; + private float _playerElapsedTime; + private float _crewElapsedTime; + + public event Action OnInteractionCompleted; protected override void OnEnable() { @@ -21,23 +32,34 @@ namespace BlueWater.Tycoons private void Update() { - if (_isInteracting) + if (InteractionCanvas.BalloonUi.IsWaitTimeOver()) { - if (InteractionCanvas.BalloonUi.IsWaitTimeOver()) - { - var damageable = GameManager.Instance.CurrentTycoonPlayer.GetComponent(); - damageable?.TakeDamage(1); - Destroy(); - } - - var clamp = Mathf.Clamp(_elapsedTime / 3f, 0f, 1f); + var damageable = GameManager.Instance.CurrentTycoonPlayer.GetComponent(); + damageable?.TakeDamage(1); + Destroy(); + } + + if (_isPlayerInteracting) + { + var clamp = Mathf.Clamp(_playerElapsedTime / _interactionHoldingTime, 0f, 1f); EventManager.OnInteracting?.Invoke(clamp); - if (_elapsedTime > 3f) + if (_playerElapsedTime > _interactionHoldingTime) { Destroy(); } - _elapsedTime += Time.deltaTime; + _playerElapsedTime += Time.deltaTime; + } + + if (_isCrewInteracting) + { + if (_crewElapsedTime > _interactionHoldingTime) + { + OnInteractionCompleted?.Invoke(); + Destroy(); + } + + _crewElapsedTime += Time.deltaTime; } } @@ -46,22 +68,56 @@ namespace BlueWater.Tycoons InteractionMessage = "치우기"; vomitingImage = VisualLook.GetComponent().sprite; InteractionCanvas.BalloonUi.OrderItem(vomitingImage, 0, TycoonManager.Instance.TycoonStageController.StageDataSo.VomitingWaitTime); + + Utils.StartUniqueCoroutine(this, ref _findCleanerCrewInstance, FindCleanerCrewCoroutine()); + } + + private IEnumerator FindCleanerCrewCoroutine() + { + var waitTime = new WaitForSeconds(2f); + while (true) + { + var cleaners = TycoonManager.Instance.CrewController.CleanerCrews; + if (cleaners == null || cleaners.Count == 0) + { + yield return waitTime; + continue; + } + + var closestCleaners = cleaners.OrderBy(element => + Vector3.Distance(element.transform.position, transform.position)).ToList(); + var isFound = false; + + foreach (var element in closestCleaners.Where(element => !element.IsOnMission)) + { + element.OnMission(this); + isFound = true; + break; + } + + if (isFound) + { + break; + } + + yield return waitTime; + } } public override void Interaction() { - _elapsedTime = 0f; - EventManager.OnInteracting?.Invoke(_elapsedTime); - GameManager.Instance.CurrentTycoonPlayer.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Cleaning, true); - _isInteracting = true; + _playerElapsedTime = 0f; + EventManager.OnInteracting?.Invoke(_playerElapsedTime); + GameManager.Instance.CurrentTycoonPlayer.IsCleaningFloor = true; + _isPlayerInteracting = true; } public override void CancelInteraction() { - _elapsedTime = 0f; - EventManager.OnInteracting?.Invoke(_elapsedTime); - GameManager.Instance.CurrentTycoonPlayer.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true); - _isInteracting = false; + _playerElapsedTime = 0f; + EventManager.OnInteracting?.Invoke(_playerElapsedTime); + GameManager.Instance.CurrentTycoonPlayer.IsCleaningFloor = false; + _isPlayerInteracting = false; } public override bool CanInteraction() @@ -71,8 +127,26 @@ namespace BlueWater.Tycoons private void Destroy() { - GameManager.Instance.CurrentTycoonPlayer.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true); + GameManager.Instance.CurrentTycoonPlayer.IsCleaningFloor = false; Destroy(gameObject); } + + public void InteractionCrew(Crew crew) + { + _crewElapsedTime = 0f; + _isCrewInteracting = true; + crew.IsCleaningFloor = true; + } + + public void CancelInteractionCrew() + { + _crewElapsedTime = 0f; + _isCrewInteracting = false; + } + + public bool CanInteractionCrew() + { + return !_isPlayerInteracting; + } } } \ No newline at end of file diff --git a/Assets/02.Scripts/ScriptableObject/StageData.asset b/Assets/02.Scripts/ScriptableObject/StageData.asset index 900047734..0436f2909 100644 --- a/Assets/02.Scripts/ScriptableObject/StageData.asset +++ b/Assets/02.Scripts/ScriptableObject/StageData.asset @@ -13,7 +13,7 @@ MonoBehaviour: m_Name: StageData m_EditorClassIdentifier: k__BackingField: 5 - k__BackingField: 10 + k__BackingField: 100 k__BackingField: 30 - k__BackingField: 20 + k__BackingField: 100 k__BackingField: 30 diff --git a/Assets/02.Scripts/Tycoon/CrewController.cs b/Assets/02.Scripts/Tycoon/CrewController.cs new file mode 100644 index 000000000..d0cd56318 --- /dev/null +++ b/Assets/02.Scripts/Tycoon/CrewController.cs @@ -0,0 +1,88 @@ +using System.Collections.Generic; +using BlueWater.Npcs.Crews; +using BlueWater.Utility; +using Sirenix.OdinInspector; +using UnityEngine; + +namespace BlueWater.Tycoons +{ + public class CrewController : MonoBehaviour + { + [Title("Crew 프리팹")] + [SerializeField] + private CleanerCrew _cleanerCrewPrefab; + + [SerializeField] + private ServingCrew _servingCrewPrefab; + + [SerializeField] + private BartenderCrew _bartenderCrewPrefab; + + [Title("Crew 생성 변수")] + [SerializeField] + private Transform _cleanerCrewSpawnTransform; + + [SerializeField] + private Transform _servingCrewSpawnTransform; + + [SerializeField] + private Transform _bartenderCrewSpawnTransform; + + [field: Title("실시간 데이터")] + [field: SerializeField] + public List Crews { get; private set; } + + [field: SerializeField] + public List CleanerCrews { get; private set; } + + [field: SerializeField] + public List ServingCrews { get; private set; } + + [field: SerializeField] + public List BartenderCrews { get; private set; } + + private void Start() + { + EventManager.OnCreateCleanerCrew += CreateCleanerCrew; + EventManager.OnCreateServingCrew += CreateServingCrew; + EventManager.OnCreateBartenderCrew += CreateBartenderCrew; + } + + private void OnDestroy() + { + EventManager.OnCreateCleanerCrew -= CreateCleanerCrew; + EventManager.OnCreateServingCrew -= CreateServingCrew; + EventManager.OnCreateBartenderCrew -= CreateBartenderCrew; + } + + public CleanerCrew CreateCleanerCrew() + { + var newCrew = Instantiate(_cleanerCrewPrefab, _cleanerCrewSpawnTransform.position, _cleanerCrewPrefab.transform.rotation); + Utils.RegisterList(CleanerCrews, newCrew); + Utils.RegisterList(Crews, newCrew); + newCrew.Initialize(); + + return newCrew; + } + + public ServingCrew CreateServingCrew() + { + var newCrew = Instantiate(_servingCrewPrefab, _servingCrewSpawnTransform.position, _servingCrewPrefab.transform.rotation); + Utils.RegisterList(ServingCrews, newCrew); + Utils.RegisterList(Crews, newCrew); + newCrew.Initialize(); + + return newCrew; + } + + public BartenderCrew CreateBartenderCrew() + { + var newCrew = Instantiate(_bartenderCrewPrefab, _bartenderCrewSpawnTransform.position, _bartenderCrewPrefab.transform.rotation); + Utils.RegisterList(BartenderCrews, newCrew); + Utils.RegisterList(Crews, newCrew); + newCrew.Initialize(); + + return newCrew; + } + } +} \ No newline at end of file diff --git a/Assets/02.Scripts/Tycoon/CrewController.cs.meta b/Assets/02.Scripts/Tycoon/CrewController.cs.meta new file mode 100644 index 000000000..b3815d6f0 --- /dev/null +++ b/Assets/02.Scripts/Tycoon/CrewController.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: f6bfcc5a4ee0dbf4392ae05fd1c81877 diff --git a/Assets/02.Scripts/Tycoon/CustomerManager.cs b/Assets/02.Scripts/Tycoon/CustomerManager.cs index d631d2a3f..894301344 100644 --- a/Assets/02.Scripts/Tycoon/CustomerManager.cs +++ b/Assets/02.Scripts/Tycoon/CustomerManager.cs @@ -1,12 +1,9 @@ -using System; using System.Collections; using System.Collections.Generic; -using System.Linq; using BlueWater.Npcs.Customers; using BlueWater.Utility; using Sirenix.OdinInspector; using UnityEngine; -using Random = UnityEngine.Random; namespace BlueWater.Tycoons { diff --git a/Assets/02.Scripts/Tycoon/TycoonManager.cs b/Assets/02.Scripts/Tycoon/TycoonManager.cs index e4bd3cb1b..61b03710c 100644 --- a/Assets/02.Scripts/Tycoon/TycoonManager.cs +++ b/Assets/02.Scripts/Tycoon/TycoonManager.cs @@ -15,6 +15,9 @@ namespace BlueWater.Tycoons [field: SerializeField] public TycoonIngredientController TycoonIngredientController { get; private set; } + + [field: SerializeField] + public CrewController CrewController { get; private set; } [SerializeField] private string _dailyBgm; @@ -52,6 +55,7 @@ namespace BlueWater.Tycoons CustomerTableController = GetComponent(); TycoonStageController = GetComponent(); TycoonIngredientController = GetComponent(); + CrewController = GetComponent(); } public LevelData GetCurrentLevelData() diff --git a/Assets/02.Scripts/TycoonCameraManager.cs b/Assets/02.Scripts/TycoonCameraManager.cs index b0ed14d1e..3533e127f 100644 --- a/Assets/02.Scripts/TycoonCameraManager.cs +++ b/Assets/02.Scripts/TycoonCameraManager.cs @@ -47,7 +47,12 @@ namespace BlueWater // Unity events #region Unity events - + + private void OnValidate() + { + SetTransparencySortAxis(); + } + protected override void OnAwake() { Initialize(); diff --git a/Assets/02.Scripts/Ui/Tycoon/BalloonUi.cs b/Assets/02.Scripts/Ui/Tycoon/BalloonUi.cs index e51b1fb33..8d25b9811 100644 --- a/Assets/02.Scripts/Ui/Tycoon/BalloonUi.cs +++ b/Assets/02.Scripts/Ui/Tycoon/BalloonUi.cs @@ -86,6 +86,13 @@ namespace BlueWater.Uis ShowUi(); } + public void ResetUi() + { + _isOrdered = false; + _isWaitTimeOver = false; + _isItemReceived = false; + } + public void SetEmpty() { SetItemSprite(null); diff --git a/Assets/02.Scripts/Ui/Tycoon/Bill.cs b/Assets/02.Scripts/Ui/Tycoon/Bill.cs index dec29db8e..29fcf892f 100644 --- a/Assets/02.Scripts/Ui/Tycoon/Bill.cs +++ b/Assets/02.Scripts/Ui/Tycoon/Bill.cs @@ -25,16 +25,19 @@ namespace BlueWater [SerializeField] private Image _orderImage; + + [SerializeField] + private GameObject _makingCocktailPivotObject; + [SerializeField] + private GameObject _stampImageObject; + [SerializeField] private GameObject _tableNumberImageObject; [SerializeField] private TMP_Text _tableNumberText; - [SerializeField] - private GameObject _makingCocktailPivotObject; - [SerializeField] private Color _startColor = Color.green; @@ -42,6 +45,8 @@ namespace BlueWater private Color _endColor = Color.red; public BillInfo CurrentBillInfo { get; private set; } + + private Tween _sliderTween; private Vector3 _spawnPosition; private float _maxDistance; @@ -52,16 +57,19 @@ namespace BlueWater _rect.anchoredPosition = _spawnPosition; _maxDistance = Vector3.Distance(_rect.anchoredPosition, billInfoPosition0); _slider.value = 1f; + _slider.gameObject.SetActive(true); _orderImage.sprite = customer.OrderedCocktailData.Sprite; - _tableNumberText.text = customer.CurrentTableSeat.TableNumber.ToString(); + _orderImage.gameObject.SetActive(true); _makingCocktailPivotObject.SetActive(false); - - var sliderSequence = DOTween.Sequence(); - sliderSequence.Append(_slider.DOValue(0f, customer.CurrentLevelData.HurryTime) + _stampImageObject.SetActive(false); + _tableNumberText.text = customer.CurrentTableSeat.TableNumber.ToString(); + _tableNumberImageObject.SetActive(true); + + _sliderTween = _slider.DOValue(0f, customer.CurrentLevelData.HurryTime) .From(1f) .SetEase(Ease.Linear) .SetDelay(customer.CurrentLevelData.WaitTime) - .SetAutoKill(true)); + .SetAutoKill(true); } private void OnDestroy() @@ -113,10 +121,6 @@ namespace BlueWater public void OrderResult(bool isSucceed, Action onDestroyAction) { - _slider.gameObject.SetActive(false); - _orderImage.gameObject.SetActive(false); - _tableNumberImageObject.SetActive(false); - StartCoroutine(WaitForAnimation(isSucceed, onDestroyAction)); } @@ -133,10 +137,22 @@ namespace BlueWater { Debug.LogError("애니메이션 오류"); } - + + _stampImageObject.SetActive(true); + _sliderTween.Kill(); + var isTrigger = false; while (_animationController.IsComparingCurrentAnimation(animationName) && _animationController.GetCurrentAnimationNormalizedTime() < 1f) { + if (!isTrigger && _animationController.GetCurrentAnimationNormalizedTime() >= 0.5f) + { + _slider.gameObject.SetActive(false); + _makingCocktailPivotObject.SetActive(false); + _orderImage.gameObject.SetActive(false); + _stampImageObject.SetActive(false); + _tableNumberImageObject.SetActive(false); + isTrigger = true; + } yield return null; } diff --git a/Assets/02.Scripts/Ui/Tycoon/IndicatorUi.cs b/Assets/02.Scripts/Ui/Tycoon/IndicatorUi.cs index 98c1b3c27..d357a61e5 100644 --- a/Assets/02.Scripts/Ui/Tycoon/IndicatorUi.cs +++ b/Assets/02.Scripts/Ui/Tycoon/IndicatorUi.cs @@ -18,7 +18,6 @@ namespace BlueWater.Uis private Vector2 _heightPadding; private RectTransform _canvasRectTransform; - private CustomerManager _customerManager; private Camera _mainCamera; private Dictionary _customerindicators = new(); private int _screenWidth; @@ -27,7 +26,6 @@ namespace BlueWater.Uis private void Start() { _canvasRectTransform = GetComponent(); - _customerManager = CustomerManager.Instance; _mainCamera = TycoonCameraManager.Instance.MainCamera; //EventManager.OnCreateCustomer += AddUiIndicator; diff --git a/Assets/02.Scripts/Ui/Tycoon/PayMoneyUi.cs b/Assets/02.Scripts/Ui/Tycoon/PayMoneyUi.cs index 38be44010..7cc8e3244 100644 --- a/Assets/02.Scripts/Ui/Tycoon/PayMoneyUi.cs +++ b/Assets/02.Scripts/Ui/Tycoon/PayMoneyUi.cs @@ -17,15 +17,8 @@ namespace BlueWater.Uis [SerializeField, Required] private TMP_Text _goldText; - private void Start() - { - EventManager.OnChangeGold += PayMoney; - } - private void OnDestroy() { - EventManager.OnChangeGold -= PayMoney; - _moveAnimation.DOKill(); } diff --git a/Assets/02.Scripts/Ui/Tycoon/TycoonSelectCard.cs b/Assets/02.Scripts/Ui/Tycoon/TycoonSelectCard.cs index 351d8fe7e..b1415267d 100644 --- a/Assets/02.Scripts/Ui/Tycoon/TycoonSelectCard.cs +++ b/Assets/02.Scripts/Ui/Tycoon/TycoonSelectCard.cs @@ -175,9 +175,9 @@ namespace BlueWater.Uis TycoonManager.Instance.TycoonStatus.CurrentGarnishAmount2 += 4000;break; case "AddAllLiquid": TycoonManager.Instance.TycoonIngredientController.AllAddBarrels(1000); break; - // case "ServerNpc": return; break; - // case "CleanerNpc": return; break; - // case "ChefNpc": return; break; + case "ServerNpc": EventManager.InvokeCreateServingCrew(); break; + case "CleanerNpc": EventManager.InvokeCreateCleanerCrew(); break; + case "ChefNpc": EventManager.InvokeCreateBartenderCrew(); break; case "SpeedUp": TycoonManager.Instance.TycoonStatus.PlayerMoveSpeedMultiplier += 0.05f; break; case "ExpGetUp": diff --git a/Assets/03.Images/Tycoons/TableNumbers.meta b/Assets/03.Images/Tycoons/TableNumbers.meta new file mode 100644 index 000000000..9242aaa2f --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b04a02a8140731649abfb7050b4edacc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number1.png b/Assets/03.Images/Tycoons/TableNumbers/Number1.png new file mode 100644 index 000000000..65b8af590 Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number1.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number1.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number1.png.meta new file mode 100644 index 000000000..a1007ae40 --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number1.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: af252e8e96a18af4b8d4658788901bbe +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number2.png b/Assets/03.Images/Tycoons/TableNumbers/Number2.png new file mode 100644 index 000000000..c423c1649 Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number2.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number2.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number2.png.meta new file mode 100644 index 000000000..a5ee5883d --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number2.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 20291345993905b44944786d63ee52f7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number3.png b/Assets/03.Images/Tycoons/TableNumbers/Number3.png new file mode 100644 index 000000000..5b61aefd1 Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number3.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number3.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number3.png.meta new file mode 100644 index 000000000..9127fe8b1 --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number3.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 5c4eb3dc818df94479ff187bc42e326b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number4.png b/Assets/03.Images/Tycoons/TableNumbers/Number4.png new file mode 100644 index 000000000..d85a05b17 Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number4.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number4.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number4.png.meta new file mode 100644 index 000000000..b9903724e --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number4.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: b65dd40588cdc9f4a99bb99c878ca5ee +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number5.png b/Assets/03.Images/Tycoons/TableNumbers/Number5.png new file mode 100644 index 000000000..df36f323f Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number5.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number5.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number5.png.meta new file mode 100644 index 000000000..3df640ccc --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number5.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: e559443096a97744eab174b24d76661d +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number6.png b/Assets/03.Images/Tycoons/TableNumbers/Number6.png new file mode 100644 index 000000000..445deecc9 Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number6.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number6.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number6.png.meta new file mode 100644 index 000000000..c8a15bc7b --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number6.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 078ce8d0847afe74393a6137ba2afeb2 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number7.png b/Assets/03.Images/Tycoons/TableNumbers/Number7.png new file mode 100644 index 000000000..f1cf7ef6f Binary files /dev/null and b/Assets/03.Images/Tycoons/TableNumbers/Number7.png differ diff --git a/Assets/03.Images/Tycoons/TableNumbers/Number7.png.meta b/Assets/03.Images/Tycoons/TableNumbers/Number7.png.meta new file mode 100644 index 000000000..7059fec26 --- /dev/null +++ b/Assets/03.Images/Tycoons/TableNumbers/Number7.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 174c8a230ccfc2043ab9b5137298a192 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1024 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png b/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png new file mode 100644 index 000000000..4cef713bf Binary files /dev/null and b/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png differ diff --git a/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png.meta b/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png.meta new file mode 100644 index 000000000..768a95d1d --- /dev/null +++ b/Assets/03.Images/Ui/Tycoon/BillOrderedFailStamp.png.meta @@ -0,0 +1,580 @@ +fileFormatVersion: 2 +guid: 12d02a5034793fe4e93fd5960d8e0dae +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: BillOrderedFailStamp_0 + rect: + serializedVersion: 2 + x: 0 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 621346288c3fcf942b51b3221373af2a + internalID: -1758643555 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_1 + rect: + serializedVersion: 2 + x: 1024 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 391fa9b07044bc94daefaeb653c1189f + internalID: -86020788 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_2 + rect: + serializedVersion: 2 + x: 2048 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: f3274929de300954da8356d40e2751b3 + internalID: -784785393 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_3 + rect: + serializedVersion: 2 + x: 3072 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 790ad20ba305f744e9b097808bab1bf9 + internalID: 218928095 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_4 + rect: + serializedVersion: 2 + x: 4096 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 68d803fb0cc734941bfb84af6074872a + internalID: 655609821 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_5 + rect: + serializedVersion: 2 + x: 0 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: cfb44d0a8ebc3214296576fa5c60d55c + internalID: 1073405259 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_6 + rect: + serializedVersion: 2 + x: 1024 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 61c36ad00182e594091dd572675cded8 + internalID: 700613016 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_7 + rect: + serializedVersion: 2 + x: 2048 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: aec0676b80c646340b0f87239a7f5e0e + internalID: 236551299 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_8 + rect: + serializedVersion: 2 + x: 3072 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: d4aab1c0fb6b3d143af746af64254664 + internalID: -407860065 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_9 + rect: + serializedVersion: 2 + x: 4096 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: d0412dbd26fe75a4486c7aee3be5d773 + internalID: -660127364 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_10 + rect: + serializedVersion: 2 + x: 0 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 2066fc69fe4b5bf41bbc744c55610a18 + internalID: -1801652203 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_11 + rect: + serializedVersion: 2 + x: 1024 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: ea6eba7340b687e4088ba65650a2e7c7 + internalID: 1325686823 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_12 + rect: + serializedVersion: 2 + x: 2048 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: a3b8cd5d5ecc98f41948b1cb6721e93d + internalID: 1022534276 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_13 + rect: + serializedVersion: 2 + x: 3072 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: d09fcdce6c3760240818a1705d52fb92 + internalID: -1250311534 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_14 + rect: + serializedVersion: 2 + x: 4096 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: cd06c1d2f97c8c7439179288e6237b73 + internalID: 2005495386 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_15 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: d3e1b0b52e975864889bfdd18c913942 + internalID: 1430295171 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_16 + rect: + serializedVersion: 2 + x: 1024 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: aa0cc4e21ba7ece48ab6dc26d5214067 + internalID: -1525317490 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_17 + rect: + serializedVersion: 2 + x: 2048 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 12ef345b220d68a43b7a55930439e058 + internalID: -1134759824 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedFailStamp_18 + rect: + serializedVersion: 2 + x: 3072 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 70aeb2709e776db4d9ee138fb82c601e + internalID: -414793952 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 1cc99163aa7c9ae449b12e626fbcc294 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + BillOrderedFailStamp_0: -1758643555 + BillOrderedFailStamp_1: -86020788 + BillOrderedFailStamp_10: -1801652203 + BillOrderedFailStamp_11: 1325686823 + BillOrderedFailStamp_12: 1022534276 + BillOrderedFailStamp_13: -1250311534 + BillOrderedFailStamp_14: 2005495386 + BillOrderedFailStamp_15: 1430295171 + BillOrderedFailStamp_16: -1525317490 + BillOrderedFailStamp_17: -1134759824 + BillOrderedFailStamp_18: -414793952 + BillOrderedFailStamp_2: -784785393 + BillOrderedFailStamp_3: 218928095 + BillOrderedFailStamp_4: 655609821 + BillOrderedFailStamp_5: 1073405259 + BillOrderedFailStamp_6: 700613016 + BillOrderedFailStamp_7: 236551299 + BillOrderedFailStamp_8: -407860065 + BillOrderedFailStamp_9: -660127364 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png b/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png new file mode 100644 index 000000000..b62b853c8 Binary files /dev/null and b/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png differ diff --git a/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png.meta b/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png.meta new file mode 100644 index 000000000..ff3bd690d --- /dev/null +++ b/Assets/03.Images/Ui/Tycoon/BillOrderedSucceedStamp.png.meta @@ -0,0 +1,580 @@ +fileFormatVersion: 2 +guid: c0f4fb57990493240b82d65e307a1846 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: BillOrderedSucceedStamp_0 + rect: + serializedVersion: 2 + x: 0 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 11e51c162767b7f4681199c0cb9cf328 + internalID: -1162842595 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_1 + rect: + serializedVersion: 2 + x: 1024 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 73ec351dd8083ae4f8053deba8f22fed + internalID: 1420123527 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_2 + rect: + serializedVersion: 2 + x: 2048 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 91668a8c09e156144be18a0a46e86724 + internalID: -1449052731 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_3 + rect: + serializedVersion: 2 + x: 3072 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 43b906d105da620459d26e62713a05e0 + internalID: -479921750 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_4 + rect: + serializedVersion: 2 + x: 4096 + y: 3072 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: fd620d6f2e55a18478daa8e306f5afb7 + internalID: -1402590638 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_5 + rect: + serializedVersion: 2 + x: 0 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 573b143614c712840a92a34a85d86fa6 + internalID: -90327864 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_6 + rect: + serializedVersion: 2 + x: 1024 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: a1a653b6dc44abb43ab441392e10225f + internalID: -1310341998 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_7 + rect: + serializedVersion: 2 + x: 2048 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: eecbc269a4a109841b4282a1c6650273 + internalID: -113908843 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_8 + rect: + serializedVersion: 2 + x: 3072 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 810ab9323ac4cb14caf8a79f9603b5ae + internalID: 970713790 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_9 + rect: + serializedVersion: 2 + x: 4096 + y: 2048 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: a0d7168bbbc7cea4baca5c28b5338ced + internalID: 120118317 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_10 + rect: + serializedVersion: 2 + x: 0 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 74dc357ed734e454c97616a6e1836e13 + internalID: -1094472428 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_11 + rect: + serializedVersion: 2 + x: 1024 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 9e5dff6626b4ede4e89a2429d218ca49 + internalID: -57953876 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_12 + rect: + serializedVersion: 2 + x: 2048 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: a07e80a886b2e6a4e9567707d5cb54bb + internalID: 613512721 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_13 + rect: + serializedVersion: 2 + x: 3072 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 300a1df22964f85439ba2d243e93dfe6 + internalID: -29224999 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_14 + rect: + serializedVersion: 2 + x: 4096 + y: 1024 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 704fc573df58c5747a266a57ad92cad5 + internalID: 1992255983 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_15 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 13f78d65e2f64d243ab2558a8433e57a + internalID: -2016289844 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_16 + rect: + serializedVersion: 2 + x: 1024 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: b3e7197889635964d9df6e0f6ae82fcb + internalID: 1144493000 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_17 + rect: + serializedVersion: 2 + x: 2048 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 5d2393ddc1b27b748a3c118af3b0a85e + internalID: 312265586 + vertices: [] + indices: + edges: [] + weights: [] + - serializedVersion: 2 + name: BillOrderedSucceedStamp_18 + rect: + serializedVersion: 2 + x: 3072 + y: 0 + width: 1024 + height: 1024 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: 0 + bones: [] + spriteID: 3c187c994c4e51847b9ac5731d22163a + internalID: -955451039 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 46f3fca556bca3f40b1b2d1d57876d12 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + BillOrderedSucceedStamp_0: -1162842595 + BillOrderedSucceedStamp_1: 1420123527 + BillOrderedSucceedStamp_10: -1094472428 + BillOrderedSucceedStamp_11: -57953876 + BillOrderedSucceedStamp_12: 613512721 + BillOrderedSucceedStamp_13: -29224999 + BillOrderedSucceedStamp_14: 1992255983 + BillOrderedSucceedStamp_15: -2016289844 + BillOrderedSucceedStamp_16: 1144493000 + BillOrderedSucceedStamp_17: 312265586 + BillOrderedSucceedStamp_18: -955451039 + BillOrderedSucceedStamp_2: -1449052731 + BillOrderedSucceedStamp_3: -479921750 + BillOrderedSucceedStamp_4: -1402590638 + BillOrderedSucceedStamp_5: -90327864 + BillOrderedSucceedStamp_6: -1310341998 + BillOrderedSucceedStamp_7: -113908843 + BillOrderedSucceedStamp_8: 970713790 + BillOrderedSucceedStamp_9: 120118317 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/05.Prefabs/Characters/Npcs/Crews.meta b/Assets/05.Prefabs/Characters/Npcs/Crews.meta new file mode 100644 index 000000000..ebf7b8e8f --- /dev/null +++ b/Assets/05.Prefabs/Characters/Npcs/Crews.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c63b9ff5413f3d489c10f0cdd7a44aa +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab b/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab new file mode 100644 index 000000000..0a8129ecd --- /dev/null +++ b/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab @@ -0,0 +1,1140 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &126151493473085455 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 126151493484984327} + - component: {fileID: 126151493484747657} + - component: {fileID: 126151493483491779} + m_Layer: 5 + m_Name: Main Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &126151493484984327 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473085455} + 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: 126151493484884023} + m_Father: {fileID: 7293985954889289183} + 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: 2.2, y: 12.9} + m_SizeDelta: {x: 120, y: 140} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &126151493484747657 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473085455} + m_CullTransparentMesh: 0 +--- !u!114 &126151493483491779 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473085455} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 0.392} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &126151493473201319 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 126151493484884023} + - component: {fileID: 126151493484754027} + - component: {fileID: 126151493483402833} + - component: {fileID: 126151493485040859} + - component: {fileID: 126151493480433323} + m_Layer: 5 + m_Name: Bubble Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &126151493484884023 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473201319} + 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: 3571829164687521184} + m_Father: {fileID: 126151493484984327} + 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} +--- !u!222 &126151493484754027 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473201319} + m_CullTransparentMesh: 0 +--- !u!114 &126151493483402833 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473201319} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 21300000, guid: b7f09c3867e11ae4cb69aeb93463acd6, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!225 &126151493485040859 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473201319} + m_Enabled: 1 + m_Alpha: 0 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 +--- !u!95 &126151493480433323 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 126151493473201319} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 62b8011547f389344ba48f87b2ada51c, type: 2} + m_CullingMode: 0 + m_UpdateMode: 2 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!1 &813964778509222274 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3748026497419659573} + - component: {fileID: 479823629690914954} + - component: {fileID: 2588384133887034894} + - component: {fileID: 2961986041977982893} + m_Layer: 14 + m_Name: VisualLook + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3748026497419659573 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 813964778509222274} + serializedVersion: 2 + 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: 0 + m_Children: [] + m_Father: {fileID: 2397117528733804567} + m_LocalEulerAnglesHint: {x: 40, y: 0, z: 0} +--- !u!33 &479823629690914954 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 813964778509222274} + m_Mesh: {fileID: 0} +--- !u!23 &2588384133887034894 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 813964778509222274} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2} + - {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &2961986041977982893 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 813964778509222274} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d247ba06193faa74d9335f5481b2b56c, type: 3} + m_Name: + m_EditorClassIdentifier: + skeletonDataAsset: {fileID: 11400000, guid: d96ab46e9aca1d142b153e02ea521a2a, type: 2} + initialSkinName: 01Suit2 + fixPrefabOverrideViaMeshFilter: 2 + initialFlipX: 0 + initialFlipY: 0 + updateWhenInvisible: 3 + separatorSlotNames: [] + zSpacing: 0 + useClipping: 1 + immutableTriangles: 0 + pmaVertexColors: 1 + clearStateOnDisable: 0 + tintBlack: 0 + singleSubmesh: 0 + fixDrawOrder: 0 + addNormals: 0 + calculateTangents: 0 + maskInteraction: 0 + maskMaterials: + materialsMaskDisabled: [] + materialsInsideMask: [] + materialsOutsideMask: [] + disableRenderingOnOverride: 1 + physicsPositionInheritanceFactor: {x: 1, y: 1} + physicsRotationInheritanceFactor: 1 + physicsMovementRelativeTo: {fileID: 0} + updateTiming: 1 + unscaledTime: 0 + _animationName: Idle + loop: 1 + timeScale: 1 +--- !u!1 &2781393898199067900 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7164452667333806733} + - component: {fileID: 2294203980036400646} + - component: {fileID: 3455991743305696554} + - component: {fileID: 8501950329115254991} + - component: {fileID: 8922295334492411225} + m_Layer: 14 + m_Name: DialogueSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7164452667333806733 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2781393898199067900} + 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: 2397117528733804567} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2294203980036400646 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2781393898199067900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 274b80ab5b659c646ba9338870d14625, type: 3} + m_Name: + m_EditorClassIdentifier: + m_overrideName: + m_overrideUseMessage: + maxUseDistance: 5 + events: + onSelect: + m_PersistentCalls: + m_Calls: [] + onDeselect: + m_PersistentCalls: + m_Calls: [] + onUse: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &3455991743305696554 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2781393898199067900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c593457cd8105e148906690e1707c592, type: 3} + m_Name: + m_EditorClassIdentifier: + trigger: 8192 + condition: + luaConditions: [] + questConditions: [] + acceptedTags: [] + acceptedGameObjects: [] + luaWizardIndex: -1 + lastEvaluationValue: 0 + setQuestState: 1 + questName: + questState: 0 + setQuestEntryState: 0 + questEntryNumber: 1 + questEntryState: 0 + setAnotherQuestEntryState: 0 + anotherQuestEntryNumber: 1 + anotherQuestEntryState: 0 + luaCode: + sequence: + sequenceSpeaker: {fileID: 0} + sequenceListener: {fileID: 0} + waitOneFrameOnStartOrEnable: 1 + alertMessage: + textTable: {fileID: 0} + alertDuration: 0 + sendMessages: [] + barkSource: 0 + barkConversation: + barkEntryID: -1 + barkEntryTitle: + barkText: + barkTextSequence: + barker: {fileID: 0} + barkTarget: {fileID: 0} + barkOrder: 0 + allowBarksDuringConversations: 0 + skipBarkIfNoValidEntries: 0 + cacheBarkLines: 0 + conversation: + conversationConversant: {fileID: 0} + conversationActor: {fileID: 0} + startConversationEntryID: -1 + startConversationEntryTitle: + overrideDialogueUI: {fileID: 0} + exclusive: 0 + replace: 0 + queue: 0 + skipIfNoValidEntries: 0 + preventRestartOnSameFrameEnded: 0 + stopConversationOnTriggerExit: 0 + marginToAllowTriggerExit: 0.2 + stopConversationIfTooFar: 0 + maxConversationDistance: 5 + monitorConversationDistanceFrequency: 1 + showCursorDuringConversation: 0 + pauseGameDuringConversation: 0 + setActiveActions: [] + setEnabledActions: [] + setAnimatorStateActions: [] + onExecute: + m_PersistentCalls: + m_Calls: [] + useConversationTitlePicker: 1 + useBarkTitlePicker: 1 + useQuestNamePicker: 1 + selectedDatabase: {fileID: 11400000, guid: bde86f268240d1041a808e449d9cac43, type: 2} +--- !u!114 &8501950329115254991 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2781393898199067900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a64578247383140469c45370654a984a, type: 3} + m_Name: + m_EditorClassIdentifier: + actor: Customer + persistentDataName: + portrait: {fileID: 0} + spritePortrait: {fileID: 0} + barkUISettings: + barkUI: {fileID: 9027939020919762395} + barkUIOffset: {x: 0, y: 0, z: 0} + standardDialogueUISettings: + subtitlePanelNumber: 0 + customSubtitlePanel: {fileID: 0} + customSubtitlePanelOffset: {x: 0, y: 0, z: 0} + menuPanelNumber: 0 + customMenuPanel: {fileID: 0} + customMenuPanelOffset: {x: 0, y: 0, z: 0} + useMenuPanelFor: 0 + portraitAnimatorController: {fileID: 0} + setSubtitleColor: 0 + applyColorToPrependedName: 0 + prependActorNameSeparator: ': ' + prependActorNameFormat: '{0}{1}' + subtitleColor: {r: 1, g: 1, b: 1, a: 1} +--- !u!114 &8922295334492411225 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2781393898199067900} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 66fdf8d5019aaec4bab62570407b9cd1, type: 3} + m_Name: + m_EditorClassIdentifier: + once: 0 + conversation: OrderFood + condition: + luaConditions: [] + questConditions: [] + acceptedTags: [] + acceptedGameObjects: [] + luaWizardIndex: -1 + lastEvaluationValue: 0 + skipIfNoValidEntries: 0 + exclusive: 0 + conversant: {fileID: 0} + useConversationTitlePicker: 1 + selectedDatabase: {fileID: 0} + barkOrder: 0 + allowDuringConversations: 0 + cacheBarkLines: 0 + target: {fileID: 0} + trigger: 32 +--- !u!1 &7260635347182713621 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2397117528733804567} + - component: {fileID: 5913499722605887790} + - component: {fileID: 3035760932289101816} + - component: {fileID: 944025264553094021} + - component: {fileID: 6606567362296327409} + - component: {fileID: 957405049979454141} + - component: {fileID: 2615952973387112450} + - component: {fileID: 5279376384905517670} + - component: {fileID: 17978457728262906} + - component: {fileID: 3226241112093390236} + m_Layer: 14 + m_Name: CleanerCrew + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2397117528733804567 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + 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: 1 + m_Children: + - {fileID: 3748026497419659573} + - {fileID: 7164452667333806733} + - {fileID: 7293985954889289183} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!54 &5913499722605887790 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 112 + m_CollisionDetection: 0 +--- !u!136 &3035760932289101816 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.1 + m_Height: 0.5 + m_Direction: 1 + m_Center: {x: 0, y: 0.25, z: 0} +--- !u!114 &944025264553094021 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 373b52eb9bf8c40f785bb6947a1aee66, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 1073741824 + drawGizmos: 1 + detailedGizmos: 0 + startEndModifier: + addPoints: 0 + exactStartPoint: 3 + exactEndPoint: 3 + useRaycasting: 0 + mask: + serializedVersion: 2 + m_Bits: 4294967295 + useGraphRaycasting: 0 + traversableTags: -1 + tagPenalties: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + graphMask: + value: 1 +--- !u!114 &6606567362296327409 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f6eb1402c17e84a9282a7f0f62eb584f, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 1073741824 + radius: 0.1 + height: 0.5 + canMove: 1 + maxSpeed: 2 + gravity: {x: NaN, y: NaN, z: NaN} + groundMask: + serializedVersion: 2 + m_Bits: 4294967295 + endReachedDistance: 0.5 + whenCloseToDestination: 0 + rvoDensityBehavior: + enabled: 1 + densityThreshold: 0.5 + returnAfterBeingPushedAway: 0 + progressAverage: 0 + lastJobDensityResult: 0 + centerOffsetCompatibility: NaN + repathRateCompatibility: NaN + canSearchCompability: 0 + orientation: 0 + enableRotation: 0 + autoRepath: + mode: 2 + period: 0.5 + sensitivity: 10 + maximumPeriod: 2 + visualizeSensitivity: 0 + targetCompatibility: {fileID: 0} + maxAcceleration: -2.5 + rotationSpeed: 360 + slowdownDistance: 1 + pickNextWaypointDist: 0.2 + alwaysDrawGizmos: 0 + slowWhenNotFacingTarget: 1 + preventMovingBackwards: 0 + constrainInsideGraph: 0 +--- !u!114 &957405049979454141 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 77f586f285b3847808d79083bd19ef1f, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 1073741824 + quality: 0 + splitAtEveryPortal: 0 + accountForGridPenalties: 0 +--- !u!114 &2615952973387112450 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8d7b55c7ecdb49a4a89fa5e6f9022861, type: 3} + m_Name: + m_EditorClassIdentifier: + startWhenEnabled: 0 + asynchronousLoad: 0 + pauseWhenDisabled: 0 + restartWhenComplete: 0 + logTaskChanges: 0 + group: 0 + resetValuesOnRestart: 0 + externalBehavior: {fileID: 11400000, guid: b46524e0380db8a4caaa3000e32b5e04, type: 2} + mBehaviorSource: + behaviorName: Cleaner + behaviorDescription: + mTaskData: + types: [] + parentIndex: + startIndex: + variableStartIndex: + JSONSerialization: '{"Variables":[{"Type":"BehaviorDesigner.Runtime.SharedGameObject","Name":"MyObj","IsShared":true,"GameObjectmValue":0}]}' + fieldSerializationData: + typeName: [] + fieldNameHash: + startIndex: + dataPosition: + unityObjects: + - {fileID: 7260635347182713621} + byteData: + byteDataArray: + Version: 1.7.9 + gizmoViewMode: 2 + showBehaviorDesignerGizmo: 1 +--- !u!114 &5279376384905517670 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: be4f815e5e3c0d5459559bdc0b8bbbfb, type: 3} + m_Name: + m_EditorClassIdentifier: + k__BackingField: {fileID: 2961986041977982893} + _originalMaterial: {fileID: 2100000, guid: eaf5a1e524cd8ae439ec7b6036090474, type: 2} + _replacementMaterial: {fileID: 2100000, guid: 288a49bf884b6fc4bbb57fe5d2f4da06, type: 2} + _initialSkinName: 01Maid + _isRandomSkin: 1 + _isRandomRange: 0 + _randomRange: {x: 0, y: 1} + _randomStrings: + - 01Suit2 + - 02Suit2 + - 03Suit2 +--- !u!114 &17978457728262906 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 75b48aa4b99043cb9e665a892ec46c75, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &3226241112093390236 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7260635347182713621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9cf18446a5e200f40b666b079ae87895, type: 3} + m_Name: + m_EditorClassIdentifier: + k__BackingField: {fileID: 2397117528733804567} + k__BackingField: {fileID: 5913499722605887790} + k__BackingField: {fileID: 3035760932289101816} + k__BackingField: {fileID: 2615952973387112450} + k__BackingField: {fileID: 3748026497419659573} + k__BackingField: {fileID: 2588384133887034894} + k__BackingField: {fileID: 8922295334492411225} + k__BackingField: {fileID: 5339802213853544233} + k__BackingField: {fileID: 1469338590548789471} + k__BackingField: {fileID: 5279376384905517670} + k__BackingField: {fileID: 17978457728262906} +--- !u!1 &7812544424410854405 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3571829164687521184} + - component: {fileID: 6778029842967471712} + - component: {fileID: 4017910736750065323} + - component: {fileID: 5622065931100864621} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3571829164687521184 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7812544424410854405} + 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: 126151493484884023} + 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 &6778029842967471712 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7812544424410854405} + m_CullTransparentMesh: 1 +--- !u!114 &4017910736750065323 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7812544424410854405} + 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: "\uBB50\uAC00 \uC88B\uC744\uAE4C.." + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: dabfdeb80b25d44b4ace56414d0eb4ad, type: 2} + m_sharedMaterial: {fileID: 2100000, guid: 0e5360dce269ccc42b822a424d66fbd4, 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: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + 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!210 &5622065931100864621 +SortingGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7812544424410854405} + m_Enabled: 1 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 6 + m_SortAtRoot: 0 +--- !u!1001 &2718897986636601543 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2397117528733804567} + m_Modifications: + - target: {fileID: 179937079751348093, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: a327d1fc80d90bd438cfcd1ad2b219c7, type: 3} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Color.b + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Color.g + value: 0.026785713 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Color.r + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_FillAmount + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_FillMethod + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 627252455323728319, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_FillOrigin + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 2971245722111912602, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: b93d1d9adc811a74fb4192ade70fd3cc, type: 3} + - target: {fileID: 3619548578334970641, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3619548578334970641, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_AnchoredPosition.y + value: 1.4 + objectReference: {fileID: 0} + - target: {fileID: 4119792729305172665, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 40 + objectReference: {fileID: 0} + - target: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5611097802189151736, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_Name + value: InteractionCanvas + objectReference: {fileID: 0} + - target: {fileID: 5611097802189151736, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalScale.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalScale.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalScale.z + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_AnchoredPosition.x + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 5695967080072346038, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + propertyPath: m_AnchoredPosition.y + value: 33.3 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + insertIndex: -1 + addedObject: {fileID: 126151493484984327} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5611097802189151736, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + insertIndex: -1 + addedObject: {fileID: 9027939020919762395} + m_SourcePrefab: {fileID: 100100000, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} +--- !u!114 &1469338590548789471 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3593684458396504088, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + m_PrefabInstance: {fileID: 2718897986636601543} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4132c767aaeea7f43b8b894bde7b7351, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &5339802213853544233 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8043919875794167790, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + m_PrefabInstance: {fileID: 2718897986636601543} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7522674838449308991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9ebe6250da0dfa044937230037499988, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!224 &7293985954889289183 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4648285208244819224, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + m_PrefabInstance: {fileID: 2718897986636601543} + m_PrefabAsset: {fileID: 0} +--- !u!1 &7522674838449308991 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 5611097802189151736, guid: a6a0d1675321b7a43b4132ca15cf7ca0, type: 3} + m_PrefabInstance: {fileID: 2718897986636601543} + m_PrefabAsset: {fileID: 0} +--- !u!114 &9027939020919762395 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7522674838449308991} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 35b689d0205d778479b0dac3b159c3b4, type: 3} + m_Name: + m_EditorClassIdentifier: + canvasGroup: {fileID: 126151493485040859} + barkText: + m_uiText: {fileID: 0} + m_textMeshProUGUI: {fileID: 4017910736750065323} + nameText: + m_uiText: {fileID: 0} + m_textMeshProUGUI: {fileID: 0} + includeName: 0 + portraitImage: {fileID: 0} + showPortraitImage: 0 + doneTime: 0 + animationTransitions: + showTrigger: Show + hideTrigger: Hide + duration: 3 + keepInView: 0 + waitUntilSequenceEnds: 0 + cancelWaitUntilSequenceEndsIfReplacingBark: 0 + waitForContinueButton: 0 + textDisplaySetting: 0 diff --git a/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab.meta b/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab.meta new file mode 100644 index 000000000..7fce606ba --- /dev/null +++ b/Assets/05.Prefabs/Characters/Npcs/Crews/CleanerCrew.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fb1e288d64b813b4a9929ba9ece44956 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/05.Prefabs/Characters/Npcs/Customer.prefab b/Assets/05.Prefabs/Characters/Npcs/Customer.prefab index bdd7f3fd1..66fe37a5f 100644 --- a/Assets/05.Prefabs/Characters/Npcs/Customer.prefab +++ b/Assets/05.Prefabs/Characters/Npcs/Customer.prefab @@ -288,7 +288,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: skeletonDataAsset: {fileID: 11400000, guid: 90f596bc1a735a544985584af0b4180a, type: 2} - initialSkinName: Guest01 + initialSkinName: Casper fixPrefabOverrideViaMeshFilter: 2 initialFlipX: 0 initialFlipY: 0 @@ -919,10 +919,10 @@ CapsuleCollider: m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 2 - m_Radius: 0.25 - m_Height: 1 + m_Radius: 0.1 + m_Height: 0.5 m_Direction: 1 - m_Center: {x: 0, y: 0.5, z: 0} + m_Center: {x: 0, y: 0.25, z: 0} --- !u!114 &944025264553094021 MonoBehaviour: m_ObjectHideFlags: 0 @@ -964,15 +964,15 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: version: 1073741824 - radius: 0.25 - height: 1 + radius: 0.1 + height: 0.5 canMove: 1 maxSpeed: 2 gravity: {x: NaN, y: NaN, z: NaN} groundMask: serializedVersion: 2 m_Bits: 4294967295 - endReachedDistance: 0.1 + endReachedDistance: 0.5 whenCloseToDestination: 0 rvoDensityBehavior: enabled: 1 @@ -994,8 +994,8 @@ MonoBehaviour: targetCompatibility: {fileID: 0} maxAcceleration: -2.5 rotationSpeed: 360 - slowdownDistance: 0.3 - pickNextWaypointDist: 0.5 + slowdownDistance: 1 + pickNextWaypointDist: 0.2 alwaysDrawGizmos: 0 slowWhenNotFacingTarget: 1 preventMovingBackwards: 0 @@ -1072,9 +1072,11 @@ MonoBehaviour: k__BackingField: {fileID: 2961986041977982893} _originalMaterial: {fileID: 2100000, guid: eaf5a1e524cd8ae439ec7b6036090474, type: 2} _replacementMaterial: {fileID: 2100000, guid: 288a49bf884b6fc4bbb57fe5d2f4da06, type: 2} - _initialSkinName: 02 + _initialSkinName: Casper _isRandomSkin: 1 - _randomRange: {x: 0, y: 1} + _isRandomRange: 1 + _randomRange: {x: 1, y: 3} + _randomStrings: [] --- !u!114 &17978457728262906 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/05.Prefabs/Characters/Players/TycoonPlayer.prefab b/Assets/05.Prefabs/Characters/Players/TycoonPlayer.prefab index 5d7f148f9..d442d0a50 100644 --- a/Assets/05.Prefabs/Characters/Players/TycoonPlayer.prefab +++ b/Assets/05.Prefabs/Characters/Players/TycoonPlayer.prefab @@ -102,7 +102,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: skeletonDataAsset: {fileID: 11400000, guid: 57e95ec929c09d64c9f85a40f849786a, type: 2} - initialSkinName: 01 + initialSkinName: Basic fixPrefabOverrideViaMeshFilter: 2 initialFlipX: 0 initialFlipY: 0 @@ -563,6 +563,7 @@ MonoBehaviour: k__BackingField: {fileID: 6509241874729291456} k__BackingField: {fileID: 7125556968546628472} k__BackingField: {fileID: 0} + k__BackingField: {fileID: 0} k__BackingField: {fileID: 3359549505901716120} k__BackingField: {fileID: 1674052485383758547} k__BackingField: {fileID: 4836489897218844789} @@ -582,7 +583,7 @@ MonoBehaviour: k__BackingField: {fileID: 7125556968546628472} _originalMaterial: {fileID: 0} _replacementMaterial: {fileID: 0} - _initialSkinName: 01 + _initialSkinName: Basic _isRandomSkin: 0 _randomRange: {x: 0, y: 0} --- !u!114 &3359549505901716120 @@ -628,6 +629,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: 4 + k__BackingField: 1 --- !u!114 &909302231676134912 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/05.Prefabs/Maps/Tycoon/TycoonMap.prefab b/Assets/05.Prefabs/Maps/Tycoon/TycoonMap.prefab index 35ce07c46..ee61c1cb7 100644 --- a/Assets/05.Prefabs/Maps/Tycoon/TycoonMap.prefab +++ b/Assets/05.Prefabs/Maps/Tycoon/TycoonMap.prefab @@ -2218,6 +2218,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: 20291345993905b44944786d63ee52f7, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: -5 @@ -4192,6 +4196,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: 174c8a230ccfc2043ab9b5137298a192, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: 2.5 @@ -5050,6 +5058,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: 5c4eb3dc818df94479ff187bc42e326b, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: 5 @@ -5586,6 +5598,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: e559443096a97744eab174b24d76661d, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: 2.5 @@ -5652,6 +5668,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: b65dd40588cdc9f4a99bb99c878ca5ee, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: -2.5 @@ -6938,6 +6958,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 1582116343231843844} m_Modifications: + - target: {fileID: 354575985089928609, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 21300000, guid: 078ce8d0847afe74393a6137ba2afeb2, type: 3} - target: {fileID: 809828747251277026, guid: 8d99c5b5242b8da41ba9b1410a70cd1d, type: 3} propertyPath: m_LocalPosition.x value: -2.5 diff --git a/Assets/05.Prefabs/Props/Furniture/Interactions/BaseInteractionFurniture.prefab b/Assets/05.Prefabs/Props/Furniture/Interactions/BaseInteractionFurniture.prefab index 3580806e1..3255b8a17 100644 --- a/Assets/05.Prefabs/Props/Furniture/Interactions/BaseInteractionFurniture.prefab +++ b/Assets/05.Prefabs/Props/Furniture/Interactions/BaseInteractionFurniture.prefab @@ -144,7 +144,7 @@ SpriteRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 2100000, guid: 70aebc98d60422b4fa30aa5da1fe3623, type: 2} + - {fileID: 2100000, guid: 33fe0716974723b4db51774fcb38b8c7, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 diff --git a/Assets/05.Prefabs/Props/Furniture/Interactions/CustomerTable3.prefab b/Assets/05.Prefabs/Props/Furniture/Interactions/CustomerTable3.prefab index 52169bdb8..ca4e66c08 100644 --- a/Assets/05.Prefabs/Props/Furniture/Interactions/CustomerTable3.prefab +++ b/Assets/05.Prefabs/Props/Furniture/Interactions/CustomerTable3.prefab @@ -32,6 +32,7 @@ Transform: m_Children: - {fileID: 3939857914763977653} - {fileID: 5719776441150710028} + - {fileID: 8297147087732080609} - {fileID: 297355777426450409} m_Father: {fileID: 659765495160113802} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -52,7 +53,7 @@ MonoBehaviour: k__BackingField: {fileID: 3099553823688037663} k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2} k__BackingField: 1 - k__BackingField: 1 + k__BackingField: 0.7 k__BackingField: IsOpened: 0 k__BackingField: 0 @@ -64,6 +65,7 @@ MonoBehaviour: TableNumber: 0 _foodImage: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3} _dirtyImage: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3} + _interactionHoldingTime: 3 --- !u!1 &1352874222752200122 GameObject: m_ObjectHideFlags: 0 @@ -93,8 +95,7 @@ Transform: m_LocalPosition: {x: 0.22, y: 0.312, z: 0.058} m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 1 - m_Children: - - {fileID: 8297147087732080609} + m_Children: [] m_Father: {fileID: 7272068659984017056} m_LocalEulerAnglesHint: {x: 40, y: 0, z: 0} --- !u!212 &8752266548893034047 @@ -181,8 +182,7 @@ Transform: m_LocalPosition: {x: -0.22, y: 0.31199998, z: 0.058000024} m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 1 - m_Children: - - {fileID: 7139724635869576632} + m_Children: [] m_Father: {fileID: 1796875075399045521} m_LocalEulerAnglesHint: {x: 40, y: 0, z: 0} --- !u!212 &4724775134085759924 @@ -240,6 +240,93 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &3743511312082143294 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6689230217850552328} + - component: {fileID: 354575985089928609} + m_Layer: 8 + m_Name: TableNumber + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6689230217850552328 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3743511312082143294} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.235, z: 0} + m_LocalScale: {x: 0.4, y: 0.4, z: 0.4} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 203741387490724426} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &354575985089928609 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3743511312082143294} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 21300000, guid: af252e8e96a18af4b8d4658788901bbe, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &5899113663160612507 GameObject: m_ObjectHideFlags: 0 @@ -272,6 +359,7 @@ Transform: m_Children: - {fileID: 1356178426752869258} - {fileID: 2866185542151069841} + - {fileID: 7139724635869576632} - {fileID: 4062855172287724115} m_Father: {fileID: 659765495160113802} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -292,7 +380,7 @@ MonoBehaviour: k__BackingField: {fileID: 1675779991655778469} k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2} k__BackingField: 1 - k__BackingField: 1 + k__BackingField: 0.7 k__BackingField: IsOpened: 0 k__BackingField: 0 @@ -304,6 +392,7 @@ MonoBehaviour: TableNumber: 0 _foodImage: {fileID: 21300000, guid: 514247b5965aef447b13b5da95f3281a, type: 3} _dirtyImage: {fileID: 21300000, guid: cda1d961a563b6143a024170ed6f0f44, type: 3} + _interactionHoldingTime: 3 --- !u!1 &6493535781353555306 GameObject: m_ObjectHideFlags: 0 @@ -361,12 +450,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7008066670828516977} 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_LocalRotation: {x: 0.3420201, y: -0, z: -0, w: 0.9396927} + m_LocalPosition: {x: 0.22, y: 0, z: 0.058000013} + m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5719776441150710028} + m_Father: {fileID: 7272068659984017056} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7021050209712576239 GameObject: @@ -423,12 +512,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7591088015737457221} 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_LocalRotation: {x: 0.3420201, y: -0, z: -0, w: 0.9396927} + m_LocalPosition: {x: -0.22, y: 0, z: 0.058000013} + m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 2866185542151069841} + m_Father: {fileID: 1796875075399045521} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8514892081840363795 GameObject: @@ -759,6 +848,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} insertIndex: -1 addedObject: {fileID: 659765495160113802} + - targetCorrespondingSourceObject: {fileID: 7438534416270888028, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} + insertIndex: -1 + addedObject: {fileID: 6689230217850552328} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 3764902268943045601, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} insertIndex: -1 @@ -767,6 +859,11 @@ PrefabInstance: insertIndex: -1 addedObject: {fileID: 3389074959205472123} m_SourcePrefab: {fileID: 100100000, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} +--- !u!4 &203741387490724426 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7438534416270888028, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} + m_PrefabInstance: {fileID: 7343451337687172630} + m_PrefabAsset: {fileID: 0} --- !u!4 &809828747251277026 stripped Transform: m_CorrespondingSourceObject: {fileID: 7986070582027999988, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} diff --git a/Assets/05.Prefabs/Props/Furniture/Interactions/Vomiting.prefab b/Assets/05.Prefabs/Props/Furniture/Interactions/Vomiting.prefab index 73cacbea2..8f7d5c205 100644 --- a/Assets/05.Prefabs/Props/Furniture/Interactions/Vomiting.prefab +++ b/Assets/05.Prefabs/Props/Furniture/Interactions/Vomiting.prefab @@ -207,9 +207,10 @@ MonoBehaviour: k__BackingField: {fileID: 0} k__BackingField: {fileID: 2100000, guid: 9db92b3ac1f276e42ae7d7bcfbbca549, type: 2} k__BackingField: 1 - k__BackingField: 0.5 + k__BackingField: 0.3 k__BackingField: "\uCE58\uC6B0\uAE30" IsOpened: 0 + _interactionHoldingTime: 3 --- !u!4 &5927803667513949971 stripped Transform: m_CorrespondingSourceObject: {fileID: 4011269187381704965, guid: 3f9f846a7f237924e97c9acf370d991d, type: 3} diff --git a/Assets/05.Prefabs/Uis/Tycoons/Bill.prefab b/Assets/05.Prefabs/Uis/Tycoons/Bill.prefab index aded36dab..c026de79c 100644 --- a/Assets/05.Prefabs/Uis/Tycoons/Bill.prefab +++ b/Assets/05.Prefabs/Uis/Tycoons/Bill.prefab @@ -315,6 +315,81 @@ MonoBehaviour: m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 +--- !u!1 &5106576306180920836 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8259920586739715282} + - component: {fileID: 776608766868378085} + - component: {fileID: 8461792016795150690} + m_Layer: 5 + m_Name: StampImage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8259920586739715282 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5106576306180920836} + 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: 491169346809573176} + 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: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &776608766868378085 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5106576306180920836} + m_CullTransparentMesh: 1 +--- !u!114 &8461792016795150690 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5106576306180920836} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: -2016289844, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 --- !u!1 &5149097851587875321 GameObject: m_ObjectHideFlags: 0 @@ -350,8 +425,9 @@ RectTransform: m_Children: - {fileID: 6645972450045353238} - {fileID: 4101085107370292335} - - {fileID: 7989580489010594267} - {fileID: 6337954123549054090} + - {fileID: 8259920586739715282} + - {fileID: 7989580489010594267} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} @@ -437,8 +513,9 @@ MonoBehaviour: _filledImage: {fileID: 2789272209311033423} _orderImage: {fileID: 1094699508538862306} _tableNumberImageObject: {fileID: 2596367034953283962} - _tableNumberText: {fileID: 882719813517343284} _makingCocktailPivotObject: {fileID: 8887727100253185871} + _stampImageObject: {fileID: 5106576306180920836} + _tableNumberText: {fileID: 882719813517343284} _startColor: {r: 0, g: 1, b: 0, a: 1} _endColor: {r: 1, g: 0, b: 0, a: 1} --- !u!114 &5491020201375474307 diff --git a/Assets/07.Animations/Uis/Bill/Bill.controller b/Assets/07.Animations/Uis/Bill/Bill.controller index c621e293f..de1f4a650 100644 --- a/Assets/07.Animations/Uis/Bill/Bill.controller +++ b/Assets/07.Animations/Uis/Bill/Bill.controller @@ -7,7 +7,7 @@ AnimatorState: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Empty + m_Name: Idle m_Speed: 1 m_CycleOffset: 0 m_Transitions: @@ -22,7 +22,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 0} + m_Motion: {fileID: 7400000, guid: 51a16307052fbd841838c54b0920ab06, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: diff --git a/Assets/07.Animations/Uis/Bill/OrderedFaill.anim b/Assets/07.Animations/Uis/Bill/OrderedFaill.anim index a000312d7..066cb8979 100644 --- a/Assets/07.Animations/Uis/Bill/OrderedFaill.anim +++ b/Assets/07.Animations/Uis/Bill/OrderedFaill.anim @@ -20,41 +20,80 @@ AnimationClip: m_PPtrCurves: - serializedVersion: 2 curve: - - time: 0 - value: {fileID: 1465866244, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.06666667 - value: {fileID: -719164956, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.15 - value: {fileID: 498530294, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.21666667 - value: {fileID: 1625809349, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.28333333 - value: {fileID: -1389002310, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.35 - value: {fileID: 2107803503, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.43333334 - value: {fileID: -655202485, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.5 - value: {fileID: 755821569, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.56666666 - value: {fileID: 89991696, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.65 - value: {fileID: -906160933, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.71666664 - value: {fileID: -665197882, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.78333336 - value: {fileID: -115382010, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.85 - value: {fileID: 1118419203, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - - time: 0.93333334 - value: {fileID: 692792605, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - time: 1 + value: {fileID: -719164956, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.0666667 + value: {fileID: 498530294, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.15 + value: {fileID: 1625809349, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.2166667 + value: {fileID: -1389002310, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.3 + value: {fileID: 2107803503, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.3833333 + value: {fileID: -655202485, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.45 + value: {fileID: 755821569, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.5166667 + value: {fileID: 89991696, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.6166667 + value: {fileID: -906160933, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.6833333 + value: {fileID: -665197882, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.7666667 + value: {fileID: -115382010, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.8333334 + value: {fileID: 1118419203, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 1.9333333 + value: {fileID: 692792605, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - time: 2 value: {fileID: 1041362304, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} attribute: m_Sprite path: classID: 114 script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} flags: 2 + - serializedVersion: 2 + curve: + - time: 0 + value: {fileID: -2016289844, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.016666668 + value: {fileID: -1758643555, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.083333336 + value: {fileID: -86020788, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.16666667 + value: {fileID: -784785393, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.21666667 + value: {fileID: 218928095, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.28333333 + value: {fileID: 655609821, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.33333334 + value: {fileID: 1073405259, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.41666666 + value: {fileID: 700613016, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.48333332 + value: {fileID: 236551299, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.53333336 + value: {fileID: -407860065, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.6 + value: {fileID: -660127364, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.68333334 + value: {fileID: -1801652203, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.73333335 + value: {fileID: 1325686823, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.8 + value: {fileID: 1022534276, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.8833333 + value: {fileID: -1250311534, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 0.93333334 + value: {fileID: 2005495386, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - time: 1 + value: {fileID: 1430295171, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + attribute: m_Sprite + path: StampImage + classID: 114 + script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + flags: 2 m_SampleRate: 60 m_WrapMode: 0 m_Bounds: @@ -71,8 +110,16 @@ AnimationClip: isPPtrCurve: 1 isIntCurve: 0 isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 591043427 + attribute: 2015549526 + script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 1 + isIntCurve: 0 + isSerializeReferenceCurve: 0 pptrCurveMapping: - - {fileID: 1465866244, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - {fileID: -719164956, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - {fileID: 498530294, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - {fileID: 1625809349, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} @@ -87,12 +134,29 @@ AnimationClip: - {fileID: 1118419203, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - {fileID: 692792605, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} - {fileID: 1041362304, guid: 222c2fb6de2f8334cbddd99bca1187af, type: 3} + - {fileID: -2016289844, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -1758643555, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -86020788, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -784785393, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 218928095, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 655609821, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 1073405259, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 700613016, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 236551299, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -407860065, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -660127364, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -1801652203, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 1325686823, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 1022534276, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: -1250311534, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 2005495386, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} + - {fileID: 1430295171, guid: 12d02a5034793fe4e93fd5960d8e0dae, type: 3} m_AnimationClipSettings: serializedVersion: 2 m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1.0166667 + m_StopTime: 2.0166667 m_OrientationOffsetY: 0 m_Level: 0 m_CycleOffset: 0 diff --git a/Assets/07.Animations/Uis/Bill/OrderedSucceed.anim b/Assets/07.Animations/Uis/Bill/OrderedSucceed.anim index 9c3821cfc..f98b2e7a8 100644 --- a/Assets/07.Animations/Uis/Bill/OrderedSucceed.anim +++ b/Assets/07.Animations/Uis/Bill/OrderedSucceed.anim @@ -20,51 +20,90 @@ AnimationClip: m_PPtrCurves: - serializedVersion: 2 curve: - - time: 0 - value: {fileID: 1636382774, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.05 - value: {fileID: -524898274, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.1 - value: {fileID: -2105957229, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.15 - value: {fileID: -1976019031, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.21666667 - value: {fileID: 1960962760, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.26666668 - value: {fileID: 2045973955, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.31666666 - value: {fileID: -1902274339, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.36666667 - value: {fileID: 309354614, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.41666666 - value: {fileID: 979630143, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.46666667 - value: {fileID: -1420012892, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.53333336 - value: {fileID: 494224027, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.5833333 - value: {fileID: 1811881483, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.6333333 - value: {fileID: 1893969389, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.68333334 - value: {fileID: 629622342, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.73333335 - value: {fileID: 97315016, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.78333336 - value: {fileID: 1017054934, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.85 - value: {fileID: -1037889889, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.9 - value: {fileID: 235403813, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - - time: 0.95 - value: {fileID: 225037820, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - time: 1 + value: {fileID: 1636382774, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.05 + value: {fileID: -524898274, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.1166667 + value: {fileID: -2105957229, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.15 + value: {fileID: -1976019031, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.2166667 + value: {fileID: 1960962760, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.2666667 + value: {fileID: 2045973955, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.3166667 + value: {fileID: -1902274339, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.3666667 + value: {fileID: 309354614, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.4166666 + value: {fileID: 979630143, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.4666667 + value: {fileID: -1420012892, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.5333333 + value: {fileID: 494224027, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.5833334 + value: {fileID: 1811881483, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.6333333 + value: {fileID: 1893969389, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.6833333 + value: {fileID: 629622342, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.7333333 + value: {fileID: 97315016, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.7833333 + value: {fileID: 1017054934, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.85 + value: {fileID: -1037889889, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.9166666 + value: {fileID: 235403813, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 1.95 + value: {fileID: 225037820, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - time: 2 value: {fileID: -1554626089, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} attribute: m_Sprite path: classID: 114 script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} flags: 2 + - serializedVersion: 2 + curve: + - time: 0 + value: {fileID: -1162842595, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.06666667 + value: {fileID: 1420123527, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.13333334 + value: {fileID: -1449052731, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.2 + value: {fileID: -479921750, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.26666668 + value: {fileID: -1402590638, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.33333334 + value: {fileID: -90327864, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.4 + value: {fileID: -1310341998, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.46666667 + value: {fileID: -113908843, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.53333336 + value: {fileID: 970713790, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.6 + value: {fileID: 120118317, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.6666667 + value: {fileID: -1094472428, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.73333335 + value: {fileID: -57953876, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.8 + value: {fileID: 613512721, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.8666667 + value: {fileID: -29224999, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 0.93333334 + value: {fileID: 1992255983, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - time: 1 + value: {fileID: -2016289844, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + attribute: m_Sprite + path: StampImage + classID: 114 + script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + flags: 2 m_SampleRate: 60 m_WrapMode: 0 m_Bounds: @@ -81,6 +120,15 @@ AnimationClip: isPPtrCurve: 1 isIntCurve: 0 isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 591043427 + attribute: 2015549526 + script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 1 + isIntCurve: 0 + isSerializeReferenceCurve: 0 pptrCurveMapping: - {fileID: 1636382774, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - {fileID: -524898274, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} @@ -102,12 +150,28 @@ AnimationClip: - {fileID: 235403813, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - {fileID: 225037820, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} - {fileID: -1554626089, guid: 0edbe90c7b463ec4cbb41f4cff76437a, type: 3} + - {fileID: -1162842595, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: 1420123527, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -1449052731, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -479921750, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -1402590638, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -90327864, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -1310341998, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -113908843, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: 970713790, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: 120118317, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -1094472428, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -57953876, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: 613512721, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -29224999, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: 1992255983, guid: c0f4fb57990493240b82d65e307a1846, type: 3} + - {fileID: -2016289844, guid: c0f4fb57990493240b82d65e307a1846, type: 3} m_AnimationClipSettings: serializedVersion: 2 m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1.0166667 + m_StopTime: 2.0166667 m_OrientationOffsetY: 0 m_Level: 0 m_CycleOffset: 0 diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew.atlas.txt b/Assets/08.Spines/Characters/Npcs/Crews/Crew.atlas.txt index 648552a8b..4f8e4a246 100644 --- a/Assets/08.Spines/Characters/Npcs/Crews/Crew.atlas.txt +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew.atlas.txt @@ -1,76 +1,125 @@ Crew.png -size:2026,1415 +size:2033,1924 filter:Linear,Linear -CrewSuit/Suit_Body -bounds:1828,470,162,161 -CrewSuit/Suit_HandLeft -bounds:2,14,188,201 -CrewSuit/Suit_HandRight -bounds:192,14,188,201 -CrewSuit/Suit_Pant -bounds:1306,832,200,126 -Item/Cleaningbroom -bounds:1510,65,238,476 +Crew01/Eye_Left +bounds:555,1485,182,240 +rotate:90 +Crew01/Eye_Right +bounds:1228,1429,185,246 +rotate:90 +Crew01/Face +bounds:1537,648,521,476 +rotate:90 +Crew01/Hair_Front +bounds:565,439,581,400 +Crew01/Hair_Left +bounds:112,1845,77,488 +rotate:90 +Crew01/Hair_Right +bounds:611,1288,187,572 +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 +rotate:90 +CrewSuit/Suit_HandRight +bounds:2,1315,188,201 +rotate:90 +CrewSuit/Suit_Pant +bounds:1409,1796,200,126 +CrewSuit2/Body +bounds:441,1678,163,167 +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 +Item/Cleaningbroom +bounds:1437,1171,238,476 rotate:90 -Item/Cleaningbroom2 -bounds:1510,901,512,512 Item/Cleaningbroom3 -bounds:1510,725,174,498 +bounds:1478,1601,174,498 +rotate:90 +Item/Cleaningstic +bounds:232,1495,181,321 rotate:90 Item/Shaker -bounds:1204,1041,302,372 +bounds:260,984,302,372 +rotate:90 +Item/WoodenBeerMug +bounds:2,1047,256,256 +Item/dust2 +bounds:634,948,338,338 crew02/backhair02 -bounds:2,217,584,435 -rotate:90 -crew02/face02 -bounds:2,803,610,437 -rotate:90 +bounds:516,2,584,435 crew02/fronthair02 -bounds:441,848,565,431 -rotate:90 +bounds:1148,215,565,431 crew02/lefteye02 -bounds:752,2,172,222 +bounds:610,1669,172,222 +rotate:90 crew02/lefthair02 -bounds:1204,960,79,302 +bounds:602,1843,79,302 rotate:90 crew02/lefthand02 -bounds:382,14,188,201 +bounds:205,1305,188,201 +rotate:90 crew02/leftleg02 -bounds:1288,740,90,196 +bounds:906,1832,90,196 rotate:90 crew02/mouse02 -bounds:441,823,60,23 +bounds:50,1899,60,23 crew03/Mouse03 -bounds:441,823,60,23 +bounds:50,1899,60,23 crew02/righteye02 -bounds:1600,311,182,226 +bounds:797,1483,182,226 rotate:90 crew02/righthand02 -bounds:926,23,188,201 -crew02/rightleg02 -bounds:1828,633,90,196 +bounds:408,1295,188,201 rotate:90 -crew03/Face03 -bounds:439,226,575,517 +crew02/rightleg02 +bounds:1104,1832,90,196 rotate:90 crew03/LeftEar -bounds:1204,853,105,100 -rotate:90 +bounds:1302,1822,105,100 crew03/LeftEye03 -bounds:572,2,178,222 +bounds:1254,1616,178,222 +rotate:90 crew03/LeftHair03 -bounds:1288,303,145,420 +bounds:1611,1777,145,420 +rotate:90 crew03/LeftHairA03 -bounds:874,852,328,561 +bounds:974,841,328,561 +rotate:90 crew03/RightEye03 -bounds:1600,495,181,228 +bounds:2,1505,181,228 +rotate:90 crew03/RightHair03 -bounds:1435,305,163,418 +bounds:834,1667,163,418 +rotate:90 crew03/RightHairA03 -bounds:958,289,328,561 +bounds:2,654,328,561 +rotate:90 crewMaid/body_maid -bounds:1273,37,250,235 -rotate:90 +bounds:1185,1192,250,235 crewMaid/pant_maid -bounds:1116,14,273,155 +bounds:2,1688,273,155 + +Crew_2.png +size:1145,1033 +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 rotate:90 diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew.png b/Assets/08.Spines/Characters/Npcs/Crews/Crew.png index 854b2fe54..8bf3dacfd 100644 Binary files a/Assets/08.Spines/Characters/Npcs/Crews/Crew.png and b/Assets/08.Spines/Characters/Npcs/Crews/Crew.png differ diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew.skel.bytes b/Assets/08.Spines/Characters/Npcs/Crews/Crew.skel.bytes index 2e6d617ba..a390ca5d5 100644 Binary files a/Assets/08.Spines/Characters/Npcs/Crews/Crew.skel.bytes and b/Assets/08.Spines/Characters/Npcs/Crews/Crew.skel.bytes differ diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png b/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png new file mode 100644 index 000000000..1ea537995 Binary files /dev/null and b/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png differ diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png.meta b/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png.meta new file mode 100644 index 000000000..c191b8931 --- /dev/null +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_2.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 137237bf3c5ec304d940dcb2456b22eb +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 1 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Atlas.asset b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Atlas.asset index c5d2379cb..32efe1618 100644 --- a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Atlas.asset +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Atlas.asset @@ -16,4 +16,5 @@ MonoBehaviour: onDemandTextureLoader: {fileID: 0} atlasFile: {fileID: 4900000, guid: 8d96d7ecccc2c5d44b90e2e5139ffe66, type: 3} materials: - - {fileID: 2100000, guid: 98937673cc2d8aa47a5683aa1cd6ca74, type: 2} + - {fileID: 2100000, guid: 4b69878329f04c541838d4c090ad9978, type: 2} + - {fileID: 2100000, guid: cc610b9acc31ccb41befa5093f0db428, type: 2} diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat similarity index 94% rename from Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat rename to Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat index d93e35633..d0fd3a58a 100644 --- a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat @@ -7,12 +7,11 @@ Material: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Crew_Material + m_Name: Crew_Crew m_Shader: {fileID: 4800000, guid: b77e51f117177954ea863bdb422344fb, type: 3} m_Parent: {fileID: 0} m_ModifiedSerializedProperties: 0 m_ValidKeywords: - - _RECEIVE_SHADOWS - _STRAIGHT_ALPHA_INPUT m_InvalidKeywords: [] m_LightmapFlags: 4 @@ -34,7 +33,7 @@ Material: - _Cutoff: 0.1 - _DoubleSidedLighting: 0 - _LightAffectsAdditive: 0 - - _ReceiveShadows: 1 + - _ReceiveShadows: 0 - _StencilComp: 8 - _StencilRef: 1 - _StraightAlphaInput: 1 diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat.meta b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat.meta similarity index 79% rename from Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat.meta rename to Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat.meta index 1a4164de4..5803596d4 100644 --- a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Material.mat.meta +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew.mat.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 98937673cc2d8aa47a5683aa1cd6ca74 +guid: 4b69878329f04c541838d4c090ad9978 NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat new file mode 100644 index 000000000..00a3fe24d --- /dev/null +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat @@ -0,0 +1,46 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Crew_Crew_2 + m_Shader: {fileID: 4800000, guid: b77e51f117177954ea863bdb422344fb, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: + - _STRAIGHT_ALPHA_INPUT + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: 137237bf3c5ec304d940dcb2456b22eb, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _Cutoff: 0.1 + - _DoubleSidedLighting: 0 + - _LightAffectsAdditive: 0 + - _ReceiveShadows: 0 + - _StencilComp: 8 + - _StencilRef: 1 + - _StraightAlphaInput: 1 + - _TintBlack: 0 + - _ZWrite: 0 + m_Colors: + - _Black: {r: 0, g: 0, b: 0, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat.meta b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat.meta new file mode 100644 index 000000000..9bd741d8a --- /dev/null +++ b/Assets/08.Spines/Characters/Npcs/Crews/Crew_Crew_2.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cc610b9acc31ccb41befa5093f0db428 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.atlas.txt b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.atlas.txt index dc15b67ec..378291c6c 100644 --- a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.atlas.txt +++ b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.atlas.txt @@ -1,12 +1,53 @@ Guest01.png -size:1206,619 +size:1834,927 filter:Linear,Linear -body -bounds:2,2,615,770 +Guest2/Pumkinhead +bounds:619,474,451,385 +rotate:90 +Heart +bounds:1352,15,256,256 +Upset01 +bounds:1608,324,191,201 +rotate:90 +Upset02 +bounds:1610,151,171,220 +rotate:90 +casper/Eyes +bounds:2,2,347,151 +casper/Eyes_Vomiting +bounds:1321,733,376,192 +casper/Face_Upset +bounds:619,232,349,240 +casper/Mouse +bounds:1610,73,171,76 +casper/Mouse_Upset +bounds:1699,752,173,78 +rotate:90 +casper/Mouse_Vomiting +bounds:1317,620,228,111 +casper/Vomiting/01 +bounds:351,17,295,136 +casper/Vomiting/02 +bounds:1191,603,322,124 +rotate:90 +casper/Vomiting/03 +bounds:1191,489,273,112 +casper/Vomiting/Eyes_Vomiting2 +bounds:1006,549,376,183 +rotate:90 +casper/Vomiting/Vomiting +bounds:648,2,228,350 +rotate:90 +casper/Vomiting/Vomiting2 +bounds:1000,2,228,350 +rotate:90 +casper/body +bounds:2,155,615,770 +casper/face +bounds:970,232,349,240 +casper/left +bounds:1321,273,214,285 +rotate:90 +casper/right +bounds:1547,517,214,285 rotate:90 -face -bounds:774,377,349,240 -left -bounds:774,90,214,285 -right -bounds:990,90,214,285 diff --git a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.png b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.png index 514e255b6..e929a5a91 100644 Binary files a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.png and b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.png differ diff --git a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.skel.bytes b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.skel.bytes index ef3e29f9f..1d2d6d381 100644 Binary files a/Assets/08.Spines/Characters/Npcs/Customers/Guest01.skel.bytes and b/Assets/08.Spines/Characters/Npcs/Customers/Guest01.skel.bytes differ diff --git a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.atlas.txt b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.atlas.txt index 7b01e61a7..edc5ba63b 100644 --- a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.atlas.txt +++ b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.atlas.txt @@ -1,52 +1,57 @@ MainCharacter.png -size:1612,1040 +size:2014,935 filter:Linear,Linear -Belt -bounds:200,7,223,102 -Body -bounds:1288,2,214,187 -Eye_left -bounds:851,35,172,240 +02/Belt +bounds:306,37,191,74 +02/Body +bounds:1463,212,202,207 +02/Eye_Left +bounds:1667,204,197,229 +02/Eye_Right +bounds:1387,10,200,229 rotate:90 -Eye_right -bounds:898,209,195,246 -Face -bounds:583,457,581,520 +02/Face +bounds:583,454,556,479 +02/HairMini_Left +bounds:587,277,175,379 rotate:90 -Hair -bounds:1504,6,106,183 -HairMini_Left -bounds:2,132,175,379 +02/HairMini_Right +bounds:1831,459,181,474 +02/Hair_Back +bounds:2,412,579,521 +02/Hair_Front +bounds:1140,13,245,223 +02/Hair_Left +bounds:968,115,170,337 +02/Hair_Right +bounds:587,105,170,355 rotate:90 -HairMini_Right -bounds:1105,89,181,474 -Hair_back -bounds:2,485,579,553 -Hair_front -bounds:1105,565,473,312 +02/Hair_Top +bounds:1866,299,129,158 +02/Hand_Left +bounds:1618,28,174,200 rotate:90 -Hair_left -bounds:488,90,151,361 +02/Hand_Right +bounds:1820,2,174,200 +02/Leg_Left +bounds:499,5,98,174 rotate:90 -Hair_right -bounds:502,243,170,394 +02/Leg_Right +bounds:675,14,89,174 rotate:90 -Hand_left -bounds:1419,841,188,197 -Hand_right -bounds:1419,642,188,197 +02/Mouse +bounds:944,216,59,22 +rotate:90 +02/Pant +bounds:944,28,190,85 +Item/BeerFull +bounds:1141,421,512,512 Item/Cleaningbroom3 -bounds:2,309,174,498 +bounds:1655,435,174,498 +Item/Cleaningstic +bounds:1140,238,181,321 rotate:90 Item/Shaker -bounds:1288,191,302,372 -Leg_left -bounds:383,111,103,196 -Leg_right -bounds:2,27,103,196 -rotate:90 -Mouse -bounds:502,415,68,33 -rotate:90 -Pant -bounds:1093,5,190,82 +bounds:2,38,302,372 +Item/dust +bounds:306,113,279,297 diff --git a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.png b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.png index 61f3d9b7f..738f4b034 100644 Binary files a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.png and b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.png differ diff --git a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.skel.bytes b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.skel.bytes index 55d876ccb..8ec0749a6 100644 Binary files a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.skel.bytes and b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter.skel.bytes differ diff --git a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter_SkeletonData.asset b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter_SkeletonData.asset index d931ef36c..910ce1e6e 100644 --- a/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter_SkeletonData.asset +++ b/Assets/08.Spines/Characters/Players/Tycoons/MainCharacter_SkeletonData.asset @@ -28,4 +28,4 @@ MonoBehaviour: toAnimation: [] duration: [] defaultMix: 0.2 - controller: {fileID: 0} + controller: {fileID: 9100000, guid: d8c2467b631f9c04884a54b49b44a287, type: 2} diff --git a/Assets/11.BehaviorTree/Cleaner.asset b/Assets/11.BehaviorTree/Cleaner.asset new file mode 100644 index 000000000..fd0e13014 --- /dev/null +++ b/Assets/11.BehaviorTree/Cleaner.asset @@ -0,0 +1,39 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b23f08d2ae4cba14087c1ed36193d82b, type: 3} + m_Name: Cleaner + m_EditorClassIdentifier: + mBehaviorSource: + behaviorName: Customer + behaviorDescription: + mTaskData: + types: [] + parentIndex: + startIndex: + variableStartIndex: + JSONSerialization: '{"EntryTask":{"Type":"BehaviorDesigner.Runtime.Tasks.EntryTask","NodeData":{"Offset":"(548.5,11.3636351)"},"ID":0,"Name":"Entry","Instant":true},"RootTask":{"Type":"BehaviorDesigner.Runtime.Tasks.Repeater","NodeData":{"Offset":"(-2.36053467,152.585861)"},"ID":1,"Name":"Repeater","Instant":true,"SharedIntcount":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":0},"SharedBoolrepeatForever":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":true},"SharedBoolendOnFailure":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(0,120)"},"ID":2,"Name":"Cleaner + Cycle","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(-2.54729939,179.727264)"},"ID":3,"Name":"Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-225.263184,152.083344)"},"ID":4,"Name":"Succes + Sequence","Instant":true,"AbortTypeabortType":"LowerPriority","Children":[{"Type":"BlueWater.BehaviorTrees.Actions.CheckCleaning","NodeData":{"Offset":"(-120,150)"},"ID":5,"Name":"Check + Cleaning","Instant":true},{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(140.876663,145.4505)"},"ID":6,"Name":"Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-105,147.5)"},"ID":7,"Name":"Succes + Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BlueWater.BehaviorTrees.Actions.Cleaning","NodeData":{"Offset":"(-140,150)"},"ID":8,"Name":"Cleaning","Instant":true},{"Type":"BlueWater.BehaviorTrees.Actions.CompleteCleaning","NodeData":{"Offset":"(2.49850464,149.907471)"},"ID":9,"Name":"Complete + Cleaning","Instant":true},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(162.857178,152.857422)"},"ID":10,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(150,145.2378)"},"ID":11,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":2},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}}]}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(289.942871,151.213776)"},"ID":12,"Name":"Fail + Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BlueWater.BehaviorTrees.Actions.MoveToRandomPositionInRange","NodeData":{"Offset":"(-100.101685,148.086548)"},"ID":13,"Name":"Move + To Random Position In Range","Instant":true},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(99.99939,150)"},"ID":14,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":2},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}}]}]}]}]},"Variables":[{"Type":"BehaviorDesigner.Runtime.SharedGameObject","Name":"MyObj","IsShared":true}]}' + fieldSerializationData: + typeName: [] + fieldNameHash: + startIndex: + dataPosition: + unityObjects: [] + byteData: + byteDataArray: + Version: 1.7.9 diff --git a/Assets/11.BehaviorTree/Cleaner.asset.meta b/Assets/11.BehaviorTree/Cleaner.asset.meta new file mode 100644 index 000000000..425603861 --- /dev/null +++ b/Assets/11.BehaviorTree/Cleaner.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b46524e0380db8a4caaa3000e32b5e04 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: