├── .gitattributes ├── .gitignore ├── Assets ├── Behavioral.meta ├── Behavioral │ ├── Command.meta │ ├── Command │ │ ├── Examples.meta │ │ ├── Examples │ │ │ ├── AnimationQueue.meta │ │ │ ├── AnimationQueue │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ │ ├── AnimationQueue.unity │ │ │ │ │ └── AnimationQueue.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── Actor.meta │ │ │ │ │ ├── Actor │ │ │ │ │ ├── IMotion.cs │ │ │ │ │ ├── IMotion.cs.meta │ │ │ │ │ ├── MotionEntity.cs │ │ │ │ │ └── MotionEntity.cs.meta │ │ │ │ │ ├── Client.meta │ │ │ │ │ ├── Client │ │ │ │ │ ├── AnimationClient.cs │ │ │ │ │ └── AnimationClient.cs.meta │ │ │ │ │ ├── Commands.meta │ │ │ │ │ ├── Commands │ │ │ │ │ ├── BaseMotionAnimation.cs │ │ │ │ │ ├── BaseMotionAnimation.cs.meta │ │ │ │ │ ├── MoveObject.cs │ │ │ │ │ ├── MoveObject.cs.meta │ │ │ │ │ ├── RotateObject.cs │ │ │ │ │ ├── RotateObject.cs.meta │ │ │ │ │ ├── ScaleObject.cs │ │ │ │ │ └── ScaleObject.cs.meta │ │ │ │ │ ├── Invoker.meta │ │ │ │ │ └── Invoker │ │ │ │ │ ├── AnimationQueue.cs │ │ │ │ │ └── AnimationQueue.cs.meta │ │ │ ├── InputWrapper.meta │ │ │ ├── InputWrapper │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── InputWrapper.unity │ │ │ │ │ └── InputWrapper.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── Actor.meta │ │ │ │ │ ├── Actor │ │ │ │ │ ├── IMotion.cs │ │ │ │ │ ├── IMotion.cs.meta │ │ │ │ │ ├── MotionEntity.cs │ │ │ │ │ └── MotionEntity.cs.meta │ │ │ │ │ ├── Client.meta │ │ │ │ │ ├── Client │ │ │ │ │ ├── BaseInput.cs │ │ │ │ │ ├── BaseInput.cs.meta │ │ │ │ │ ├── InputA.cs │ │ │ │ │ ├── InputA.cs.meta │ │ │ │ │ ├── InputD.cs │ │ │ │ │ ├── InputD.cs.meta │ │ │ │ │ ├── InputS.cs │ │ │ │ │ ├── InputS.cs.meta │ │ │ │ │ ├── InputW.cs │ │ │ │ │ └── InputW.cs.meta │ │ │ │ │ ├── Commands.meta │ │ │ │ │ ├── Commands │ │ │ │ │ ├── BaseMotion.cs │ │ │ │ │ ├── BaseMotion.cs.meta │ │ │ │ │ ├── MotionDown.cs │ │ │ │ │ ├── MotionDown.cs.meta │ │ │ │ │ ├── MotionLeft.cs │ │ │ │ │ ├── MotionLeft.cs.meta │ │ │ │ │ ├── MotionRight.cs │ │ │ │ │ ├── MotionRight.cs.meta │ │ │ │ │ ├── MotionUp.cs │ │ │ │ │ └── MotionUp.cs.meta │ │ │ │ │ ├── Invoker.meta │ │ │ │ │ └── Invoker │ │ │ │ │ ├── KeyCommandBinder.cs │ │ │ │ │ └── KeyCommandBinder.cs.meta │ │ │ ├── Tools.meta │ │ │ ├── Tools │ │ │ │ ├── CommandQueue.cs │ │ │ │ ├── CommandQueue.cs.meta │ │ │ │ ├── ICommandQueue.cs │ │ │ │ ├── ICommandQueue.cs.meta │ │ │ │ ├── TimeredCommandQueue.cs │ │ │ │ └── TimeredCommandQueue.cs.meta │ │ │ ├── UndoableMovement.meta │ │ │ └── UndoableMovement │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ ├── UndoableMovement.unity │ │ │ │ └── UndoableMovement.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── Actor.meta │ │ │ │ ├── Actor │ │ │ │ ├── IMotion.cs │ │ │ │ ├── IMotion.cs.meta │ │ │ │ ├── MotionEntity.cs │ │ │ │ └── MotionEntity.cs.meta │ │ │ │ ├── Client.meta │ │ │ │ ├── Client │ │ │ │ ├── AnimationClient.cs │ │ │ │ └── AnimationClient.cs.meta │ │ │ │ ├── Commands.meta │ │ │ │ ├── Commands │ │ │ │ ├── BaseMotionAnimation.cs │ │ │ │ ├── BaseMotionAnimation.cs.meta │ │ │ │ ├── MoveObject.cs │ │ │ │ └── MoveObject.cs.meta │ │ │ │ ├── Invoker.meta │ │ │ │ └── Invoker │ │ │ │ ├── AnimationQueue.cs │ │ │ │ └── AnimationQueue.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── Command.cs │ │ │ └── Command.cs.meta │ ├── Observer.meta │ ├── Observer │ │ ├── Examples.meta │ │ ├── Examples │ │ │ ├── GameEventListener.cs │ │ │ ├── GameEventListener.cs.meta │ │ │ ├── GameEventListenerCsharp.cs │ │ │ └── GameEventListenerCsharp.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── Observer.cs │ │ │ ├── Observer.cs.meta │ │ │ ├── ObserverCsharpAction.cs │ │ │ ├── ObserverCsharpAction.cs.meta │ │ │ ├── ObserverCsharpDelegates.cs │ │ │ └── ObserverCsharpDelegates.cs.meta │ ├── StateMachine.meta │ ├── StateMachine │ │ ├── Examples.meta │ │ ├── Examples │ │ │ ├── CardFsm.meta │ │ │ ├── CardFsm │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── Card.unity │ │ │ │ │ └── Card.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── CardStateMachine.meta │ │ │ │ │ ├── CardStateMachine │ │ │ │ │ ├── States.meta │ │ │ │ │ ├── States │ │ │ │ │ │ ├── UiBaseCardState.cs │ │ │ │ │ │ ├── UiBaseCardState.cs.meta │ │ │ │ │ │ ├── UiCardDisable.cs │ │ │ │ │ │ ├── UiCardDisable.cs.meta │ │ │ │ │ │ ├── UiCardDiscard.cs │ │ │ │ │ │ ├── UiCardDiscard.cs.meta │ │ │ │ │ │ ├── UiCardDrag.cs │ │ │ │ │ │ ├── UiCardDrag.cs.meta │ │ │ │ │ │ ├── UiCardDraw.cs │ │ │ │ │ │ ├── UiCardDraw.cs.meta │ │ │ │ │ │ ├── UiCardHover.cs │ │ │ │ │ │ ├── UiCardHover.cs.meta │ │ │ │ │ │ ├── UiCardIdle.cs │ │ │ │ │ │ └── UiCardIdle.cs.meta │ │ │ │ │ ├── UiCardFsm.cs │ │ │ │ │ └── UiCardFsm.cs.meta │ │ │ │ │ ├── UiCardComponent.cs │ │ │ │ │ └── UiCardComponent.cs.meta │ │ │ ├── EnemyPatrol.meta │ │ │ ├── EnemyPatrol │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── Patrol.unity │ │ │ │ │ └── Patrol.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── Patrol.cs │ │ │ │ │ ├── Patrol.cs.meta │ │ │ │ │ ├── PatrolComponent.cs │ │ │ │ │ └── PatrolComponent.cs.meta │ │ │ ├── ScriptableObject.meta │ │ │ ├── ScriptableObject │ │ │ │ ├── Editor.meta │ │ │ │ ├── Editor │ │ │ │ │ ├── FsmTests.cs │ │ │ │ │ └── FsmTests.cs.meta │ │ │ │ ├── State.cs │ │ │ │ ├── State.cs.meta │ │ │ │ ├── StateMachine.cs │ │ │ │ └── StateMachine.cs.meta │ │ │ ├── TurnBasedFsm.meta │ │ │ └── TurnBasedFsm │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ ├── TurnBased.unity │ │ │ │ └── TurnBased.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── AiTurnState.cs │ │ │ │ ├── AiTurnState.cs.meta │ │ │ │ ├── EndGameState.cs │ │ │ │ ├── EndGameState.cs.meta │ │ │ │ ├── PlayerTurnState.cs │ │ │ │ ├── PlayerTurnState.cs.meta │ │ │ │ ├── StartGameState.cs │ │ │ │ ├── StartGameState.cs.meta │ │ │ │ ├── TurnBasedController.cs │ │ │ │ ├── TurnBasedController.cs.meta │ │ │ │ ├── TurnBasedStateMachine.cs │ │ │ │ └── TurnBasedStateMachine.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── BaseStateMachine.cs │ │ │ ├── BaseStateMachine.cs.meta │ │ │ ├── IState.cs │ │ │ ├── IState.cs.meta │ │ │ ├── IStateMachineHandler.cs │ │ │ └── IStateMachineHandler.cs.meta │ ├── Strategy.meta │ └── Strategy │ │ ├── Examples.meta │ │ ├── Examples │ │ ├── AI.meta │ │ ├── AI │ │ │ ├── Scenes.meta │ │ │ ├── Scenes │ │ │ │ ├── AI.unity │ │ │ │ └── AI.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── AiClient.cs │ │ │ │ ├── AiClient.cs.meta │ │ │ │ ├── AiEasy.cs │ │ │ │ ├── AiEasy.cs.meta │ │ │ │ ├── AiHard.cs │ │ │ │ ├── AiHard.cs.meta │ │ │ │ ├── AiMedium.cs │ │ │ │ ├── AiMedium.cs.meta │ │ │ │ ├── IAiBehaviour.cs │ │ │ │ ├── IAiBehaviour.cs.meta │ │ │ │ ├── IGameState.cs │ │ │ │ └── IGameState.cs.meta │ │ ├── Sort.meta │ │ └── Sort │ │ │ ├── Scenes.meta │ │ │ ├── Scenes │ │ │ ├── Sort.unity │ │ │ └── Sort.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ ├── BubbleSort.cs │ │ │ ├── BubbleSort.cs.meta │ │ │ ├── ISortBehaviour.cs │ │ │ ├── ISortBehaviour.cs.meta │ │ │ ├── InsertionSort.cs │ │ │ ├── InsertionSort.cs.meta │ │ │ ├── MergeSort.cs │ │ │ ├── MergeSort.cs.meta │ │ │ ├── QuickSort.cs │ │ │ ├── QuickSort.cs.meta │ │ │ ├── SelectionSort.cs │ │ │ ├── SelectionSort.cs.meta │ │ │ ├── ShellSort.cs │ │ │ ├── ShellSort.cs.meta │ │ │ ├── SortClient.cs │ │ │ └── SortClient.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ ├── Structure.cs │ │ └── Structure.cs.meta ├── Creational.meta ├── Creational │ ├── AbstractFactory.meta │ ├── AbstractFactory │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── UiSystemPlatformsFactory.meta │ │ └── UiSystemPlatformsFactory │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ ├── PlatformFactory.unity │ │ │ └── PlatformFactory.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ ├── UiSystemPlatformsFactoryUsage.ConcreteFactories.cs │ │ │ ├── UiSystemPlatformsFactoryUsage.ConcreteFactories.cs.meta │ │ │ ├── UiSystemPlatformsFactoryUsage.ConcreteProducts.cs │ │ │ ├── UiSystemPlatformsFactoryUsage.ConcreteProducts.cs.meta │ │ │ ├── UiSystemPlatformsFactoryUsage.Factories.cs │ │ │ ├── UiSystemPlatformsFactoryUsage.Factories.cs.meta │ │ │ ├── UiSystemPlatformsFactoryUsage.Products.cs │ │ │ ├── UiSystemPlatformsFactoryUsage.Products.cs.meta │ │ │ ├── UiSystemPlatformsFactoryUsage.UiFactorySystem.cs │ │ │ ├── UiSystemPlatformsFactoryUsage.UiFactorySystem.cs.meta │ │ │ ├── UiSystemPlatformsFactoryUsage.cs │ │ │ └── UiSystemPlatformsFactoryUsage.cs.meta │ ├── FactoryMethod.meta │ ├── FactoryMethod │ │ ├── Example.meta │ │ ├── Example │ │ │ ├── AiFactory.meta │ │ │ ├── AiFactory │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ │ ├── AiFactory.unity │ │ │ │ │ └── AiFactory.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── AiFactory.cs │ │ │ │ │ ├── AiFactory.cs.meta │ │ │ │ │ ├── AiFactoryUsage.cs │ │ │ │ │ └── AiFactoryUsage.cs.meta │ │ │ ├── World.meta │ │ │ └── World │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ ├── WorldFactory.unity │ │ │ │ └── WorldFactory.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── World.Areas.cs │ │ │ │ ├── World.Areas.cs.meta │ │ │ │ ├── World.Continents.cs │ │ │ │ ├── World.Continents.cs.meta │ │ │ │ ├── World.Creatures.cs │ │ │ │ ├── World.Creatures.cs.meta │ │ │ │ ├── World.Elements.cs │ │ │ │ ├── World.Elements.cs.meta │ │ │ │ ├── World.Factories.cs │ │ │ │ ├── World.Factories.cs.meta │ │ │ │ ├── World.cs │ │ │ │ └── World.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── FactoryMethodStructure.cs │ │ │ └── FactoryMethodStructure.cs.meta │ ├── Prototype.meta │ ├── Prototype │ │ ├── Example.meta │ │ ├── Example │ │ │ ├── DataModeling.meta │ │ │ ├── DataModeling │ │ │ │ ├── NoPrototypeModeling.meta │ │ │ │ ├── NoPrototypeModeling │ │ │ │ │ ├── ScriptableObjects.meta │ │ │ │ │ ├── ScriptableObjects │ │ │ │ │ │ ├── GoblinArcherData.asset │ │ │ │ │ │ ├── GoblinArcherData.asset.meta │ │ │ │ │ │ ├── GoblinGruntData.asset │ │ │ │ │ │ ├── GoblinGruntData.asset.meta │ │ │ │ │ │ ├── GoblinWizardData.asset │ │ │ │ │ │ └── GoblinWizardData.asset.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ └── Scripts │ │ │ │ │ │ ├── GoblinData.cs │ │ │ │ │ │ └── GoblinData.cs.meta │ │ │ │ ├── PrototypeModeling.meta │ │ │ │ └── PrototypeModeling │ │ │ │ │ ├── ScriptableObjects.meta │ │ │ │ │ ├── ScriptableObjects │ │ │ │ │ ├── GoblinArcher.asset │ │ │ │ │ ├── GoblinArcher.asset.meta │ │ │ │ │ ├── GoblinGrunt.asset │ │ │ │ │ ├── GoblinGrunt.asset.meta │ │ │ │ │ ├── GoblinPrototypeData.asset │ │ │ │ │ ├── GoblinPrototypeData.asset.meta │ │ │ │ │ ├── GoblinWizard.asset │ │ │ │ │ └── GoblinWizard.asset.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ └── Scripts │ │ │ │ │ ├── GoblinData.cs │ │ │ │ │ └── GoblinData.cs.meta │ │ │ ├── Monsters.meta │ │ │ └── Monsters │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ ├── Prototype.unity │ │ │ │ └── Prototype.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── MonstersPrototype.Demon.cs │ │ │ │ ├── MonstersPrototype.Demon.cs.meta │ │ │ │ ├── MonstersPrototype.Ghost.cs │ │ │ │ ├── MonstersPrototype.Ghost.cs.meta │ │ │ │ ├── MonstersPrototype.Monster.cs │ │ │ │ ├── MonstersPrototype.Monster.cs.meta │ │ │ │ ├── MonstersPrototype.Spawner.cs │ │ │ │ ├── MonstersPrototype.Spawner.cs.meta │ │ │ │ ├── MonstersPrototype.cs │ │ │ │ └── MonstersPrototype.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── PrototypeStructure.cs │ │ │ └── PrototypeStructure.cs.meta │ ├── Singleton.meta │ └── Singleton │ │ ├── Example.meta │ │ ├── Example │ │ ├── Singleton.meta │ │ ├── Singleton │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ │ ├── Singleton.unity │ │ │ │ └── Singleton.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── ASingleton.cs │ │ │ │ ├── ASingleton.cs.meta │ │ │ │ ├── ASingletonInvoker.cs │ │ │ │ └── ASingletonInvoker.cs.meta │ │ ├── SingletonMB.meta │ │ ├── SingletonMB │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ │ ├── SingletonMB.unity │ │ │ │ └── SingletonMB.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── ASingletonMB.cs │ │ │ │ ├── ASingletonMB.cs.meta │ │ │ │ ├── ASingletonMBInvoker.cs │ │ │ │ └── ASingletonMBInvoker.cs.meta │ │ ├── SingletonPersistent.meta │ │ └── SingletonPersistent │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ ├── SingletonPersistent.unity │ │ │ └── SingletonPersistent.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ ├── ASingletonPersistent.cs │ │ │ ├── ASingletonPersistent.cs.meta │ │ │ ├── ASingletonPersistentInvoker.cs │ │ │ └── ASingletonPersistentInvoker.cs.meta │ │ ├── README.md │ │ ├── README.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ ├── Monobehavior.meta │ │ ├── Monobehavior │ │ ├── SingletonMB.cs │ │ └── SingletonMB.cs.meta │ │ ├── PersistentMonobehavior.meta │ │ ├── PersistentMonobehavior │ │ ├── PersistentSingleton.cs │ │ └── PersistentSingleton.cs.meta │ │ ├── PureCSharp.meta │ │ ├── PureCSharp │ │ ├── Singleton.cs │ │ └── Singleton.cs.meta │ │ ├── Tests.meta │ │ └── Tests │ │ ├── Editor.meta │ │ ├── Editor │ │ ├── TestSingleton.cs │ │ └── TestSingleton.cs.meta │ │ ├── Images.meta │ │ └── Images │ │ ├── singleton test.GIF │ │ └── singleton test.GIF.meta ├── GameProgramming.meta ├── GameProgramming │ ├── ObjectPooler.meta │ ├── ObjectPooler │ │ ├── Examples.meta │ │ ├── Examples │ │ │ ├── GameObjectPooler.meta │ │ │ ├── GameObjectPooler │ │ │ │ ├── Prefabs.meta │ │ │ │ ├── Prefabs │ │ │ │ │ ├── APooledGameObject.prefab │ │ │ │ │ └── APooledGameObject.prefab.meta │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── GameObjectPooler.unity │ │ │ │ │ └── GameObjectPooler.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── APooled.cs │ │ │ │ │ ├── APooled.cs.meta │ │ │ │ │ ├── APooler.cs │ │ │ │ │ ├── APooler.cs.meta │ │ │ │ │ ├── PrefabPoolUsage.cs │ │ │ │ │ └── PrefabPoolUsage.cs.meta │ │ │ ├── PureCsharpPooler.meta │ │ │ └── PureCsharpPooler │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ ├── APureCshaperPooler.unity │ │ │ │ └── APureCshaperPooler.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── APooledObject.cs │ │ │ │ ├── APooledObject.cs.meta │ │ │ │ ├── APoolerObject.cs │ │ │ │ ├── APoolerObject.cs.meta │ │ │ │ ├── APoolerUsage.cs │ │ │ │ └── APoolerUsage.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── GenericPooler.cs │ │ │ ├── GenericPooler.cs.meta │ │ │ ├── IPoolableObject.cs │ │ │ ├── IPoolableObject.cs.meta │ │ │ ├── PrefabPooler.cs │ │ │ ├── PrefabPooler.cs.meta │ │ │ ├── Tests.meta │ │ │ └── Tests │ │ │ ├── Editor.meta │ │ │ ├── Editor │ │ │ ├── GenericPoolerTest.cs │ │ │ └── GenericPoolerTest.cs.meta │ │ │ ├── Images.meta │ │ │ └── Images │ │ │ ├── Capture.GIF │ │ │ ├── Capture.GIF.meta │ │ │ ├── Capture1.GIF │ │ │ ├── Capture1.GIF.meta │ │ │ ├── prefab.gif │ │ │ ├── prefab.gif.meta │ │ │ ├── tdd generic pooler.GIF │ │ │ └── tdd generic pooler.GIF.meta │ ├── ServiceLocator.meta │ ├── ServiceLocator │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Scenes.meta │ │ ├── Scenes │ │ │ ├── ServiceLocator.unity │ │ │ └── ServiceLocator.unity.meta │ │ ├── Scripts.meta │ │ └── Scripts │ │ │ ├── ClientAchievements.cs │ │ │ ├── ClientAchievements.cs.meta │ │ │ ├── ClientAudio.cs │ │ │ ├── ClientAudio.cs.meta │ │ │ ├── ClientBase.cs │ │ │ ├── ClientBase.cs.meta │ │ │ ├── ServiceAchievements.cs │ │ │ ├── ServiceAchievements.cs.meta │ │ │ ├── ServiceAudio.cs │ │ │ ├── ServiceAudio.cs.meta │ │ │ ├── ServiceLocator.cs │ │ │ ├── ServiceLocator.cs.meta │ │ │ ├── ServiceLogger.cs │ │ │ ├── ServiceLogger.cs.meta │ │ │ ├── ServicesInitializer.cs │ │ │ └── ServicesInitializer.cs.meta │ ├── SubClassSandbox.meta │ ├── SubClassSandbox │ │ ├── Example.meta │ │ ├── Example │ │ │ ├── Animations.meta │ │ │ ├── Animations │ │ │ │ ├── AnimationQueue.meta │ │ │ │ └── AnimationQueue │ │ │ │ │ ├── Scene.meta │ │ │ │ │ ├── Scene │ │ │ │ │ ├── Animation.unity │ │ │ │ │ └── Animation.unity.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ └── Scripts │ │ │ │ │ ├── Actor.meta │ │ │ │ │ ├── Actor │ │ │ │ │ ├── IMotion.cs │ │ │ │ │ ├── IMotion.cs.meta │ │ │ │ │ ├── MotionEntity.cs │ │ │ │ │ └── MotionEntity.cs.meta │ │ │ │ │ ├── Client.meta │ │ │ │ │ ├── Client │ │ │ │ │ ├── AnimationClient.cs │ │ │ │ │ └── AnimationClient.cs.meta │ │ │ │ │ ├── Commands.meta │ │ │ │ │ ├── Commands │ │ │ │ │ ├── BaseMotionAnimation.cs │ │ │ │ │ ├── BaseMotionAnimation.cs.meta │ │ │ │ │ ├── MoveObject.cs │ │ │ │ │ ├── MoveObject.cs.meta │ │ │ │ │ ├── RotateObject.cs │ │ │ │ │ ├── RotateObject.cs.meta │ │ │ │ │ ├── ScaleObject.cs │ │ │ │ │ └── ScaleObject.cs.meta │ │ │ │ │ ├── Invoker.meta │ │ │ │ │ └── Invoker │ │ │ │ │ ├── AnimationQueue.cs │ │ │ │ │ └── AnimationQueue.cs.meta │ │ │ ├── Superpowers.meta │ │ │ ├── Superpowers │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ │ ├── Superpower.unity │ │ │ │ │ └── Superpower.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── SuperPowerUsage.BaseClass.cs │ │ │ │ │ ├── SuperPowerUsage.BaseClass.cs.meta │ │ │ │ │ ├── SuperPowerUsage.Subclasses.cs │ │ │ │ │ ├── SuperPowerUsage.Subclasses.cs.meta │ │ │ │ │ ├── SuperPowerUsage.cs │ │ │ │ │ └── SuperPowerUsage.cs.meta │ │ │ ├── World.meta │ │ │ └── World │ │ │ │ ├── Scene.meta │ │ │ │ ├── Scene │ │ │ │ ├── WorldFactory.unity │ │ │ │ └── WorldFactory.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── World.AreasSubclasses.cs │ │ │ │ ├── World.AreasSubclasses.cs.meta │ │ │ │ ├── World.BaseClasses.cs │ │ │ │ ├── World.BaseClasses.cs.meta │ │ │ │ ├── World.ContinentsSubclasses.cs │ │ │ │ ├── World.ContinentsSubclasses.cs.meta │ │ │ │ ├── World.CreaturesSubclasses.cs │ │ │ │ ├── World.CreaturesSubclasses.cs.meta │ │ │ │ ├── World.ElementsSubclasses.cs │ │ │ │ ├── World.ElementsSubclasses.cs.meta │ │ │ │ ├── World.cs │ │ │ │ └── World.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ │ ├── SubClassSandboxStructure.cs │ │ │ └── SubClassSandboxStructure.cs.meta │ ├── TypeObject.meta │ └── TypeObject │ │ ├── Examples.meta │ │ ├── Examples │ │ ├── Monster.meta │ │ ├── Monster │ │ │ ├── Scenes.meta │ │ │ ├── Scenes │ │ │ │ ├── Monster.unity │ │ │ │ └── Monster.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── Breed.cs │ │ │ │ ├── Breed.cs.meta │ │ │ │ ├── Monster.cs │ │ │ │ ├── Monster.cs.meta │ │ │ │ ├── MonsterUsage.cs │ │ │ │ └── MonsterUsage.cs.meta │ │ ├── MonsterScriptableObject.meta │ │ ├── MonsterScriptableObject │ │ │ ├── Scenes.meta │ │ │ ├── Scenes │ │ │ │ ├── Monster.unity │ │ │ │ └── Monster.unity.meta │ │ │ ├── ScriptableObjects.meta │ │ │ ├── ScriptableObjects │ │ │ │ ├── Fire.asset │ │ │ │ ├── Fire.asset.meta │ │ │ │ ├── Lava.asset │ │ │ │ ├── Lava.asset.meta │ │ │ │ ├── Troll.asset │ │ │ │ ├── Troll.asset.meta │ │ │ │ ├── TrollArcher.asset │ │ │ │ ├── TrollArcher.asset.meta │ │ │ │ ├── TrollWizard.asset │ │ │ │ ├── TrollWizard.asset.meta │ │ │ │ ├── Water.asset │ │ │ │ └── Water.asset.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── Breed.cs │ │ │ │ ├── Breed.cs.meta │ │ │ │ ├── Monster.cs │ │ │ │ ├── Monster.cs.meta │ │ │ │ ├── MonsterUsage.cs │ │ │ │ └── MonsterUsage.cs.meta │ │ └── Scripts.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ ├── Structure.cs │ │ └── Structure.cs.meta ├── Plugins.meta ├── Plugins │ └── Editor.meta ├── Structural.meta ├── Structural │ ├── Bridge.meta │ ├── Bridge │ │ ├── Examples.meta │ │ ├── Examples │ │ │ ├── Renderer.meta │ │ │ ├── Renderer │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── Renderer.unity │ │ │ │ │ └── Renderer.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── Renderer.IRendererImpl.cs │ │ │ │ │ ├── Renderer.IRendererImpl.cs.meta │ │ │ │ │ ├── Renderer.RendererDirectX.cs │ │ │ │ │ ├── Renderer.RendererDirectX.cs.meta │ │ │ │ │ ├── Renderer.RendererVulcan.cs │ │ │ │ │ ├── Renderer.RendererVulcan.cs.meta │ │ │ │ │ ├── Renderer.cs │ │ │ │ │ ├── Renderer.cs.meta │ │ │ │ │ ├── RendererClient.cs │ │ │ │ │ └── RendererClient.cs.meta │ │ │ ├── Resources.meta │ │ │ ├── Resources │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ │ ├── Resources.unity │ │ │ │ │ └── Resources.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ │ ├── BaseView.cs │ │ │ │ │ ├── BaseView.cs.meta │ │ │ │ │ ├── IResource.cs │ │ │ │ │ ├── IResource.cs.meta │ │ │ │ │ ├── LongFormView.cs │ │ │ │ │ ├── LongFormView.cs.meta │ │ │ │ │ ├── ResourceAlbum.cs │ │ │ │ │ ├── ResourceAlbum.cs.meta │ │ │ │ │ ├── ResourceArtist.cs │ │ │ │ │ ├── ResourceArtist.cs.meta │ │ │ │ │ ├── ResourceBook.cs │ │ │ │ │ ├── ResourceBook.cs.meta │ │ │ │ │ ├── ResourceClient.cs │ │ │ │ │ ├── ResourceClient.cs.meta │ │ │ │ │ ├── ShortFormView.cs │ │ │ │ │ └── ShortFormView.cs.meta │ │ │ ├── TaskScheduler.meta │ │ │ └── TaskScheduler │ │ │ │ ├── Scenes.meta │ │ │ │ ├── Scenes │ │ │ │ ├── TaskScheduler.unity │ │ │ │ └── TaskScheduler.unity.meta │ │ │ │ ├── Scripts.meta │ │ │ │ └── Scripts │ │ │ │ ├── BaseScheduler.cs │ │ │ │ ├── BaseScheduler.cs.meta │ │ │ │ ├── IScheduler.cs │ │ │ │ ├── IScheduler.cs.meta │ │ │ │ ├── Scheduler_FIFO.cs │ │ │ │ ├── Scheduler_FIFO.cs.meta │ │ │ │ ├── Scheduler_LIFO.cs │ │ │ │ ├── Scheduler_LIFO.cs.meta │ │ │ │ ├── TaskSchedulerAnimations_FIFO.cs │ │ │ │ ├── TaskSchedulerAnimations_FIFO.cs.meta │ │ │ │ ├── TaskSchedulerUI_LIFO.cs │ │ │ │ └── TaskSchedulerUI_LIFO.cs.meta │ │ ├── Readme.md │ │ └── Readme.md.meta │ ├── Composite.meta │ └── Composite │ │ ├── Example.meta │ │ ├── Example │ │ ├── Game.meta │ │ └── Game │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ ├── TurnBasedGame.unity │ │ │ └── TurnBasedGame.unity.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ ├── Game.Mechanics.cs │ │ │ ├── Game.Mechanics.cs.meta │ │ │ ├── TurnBasedGame.Game.cs │ │ │ ├── TurnBasedGame.Game.cs.meta │ │ │ ├── TurnBasedGame.IGameMechanic.cs │ │ │ ├── TurnBasedGame.IGameMechanic.cs.meta │ │ │ ├── TurnBasedGameMechanics.cs │ │ │ └── TurnBasedGameMechanics.cs.meta │ │ ├── Readme.md │ │ ├── Readme.md.meta │ │ ├── Structure.meta │ │ └── Structure │ │ ├── CompositeStructure.cs │ │ └── CompositeStructure.cs.meta ├── Utils.meta └── Utils │ ├── Attributes.meta │ └── Attributes │ ├── ButtonAttribute.cs │ ├── ButtonAttribute.cs.meta │ ├── Editor.meta │ └── Editor │ ├── ButtonAttributeInspectors.cs │ └── ButtonAttributeInspectors.cs.meta ├── LICENSE ├── Packages ├── manifest.json └── packages-lock.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── PackageManagerSettings.asset ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityConnectSettings.asset ├── VFXManager.asset ├── VersionControlSettings.asset └── XRSettings.asset ├── README.md └── UserSettings └── EditorUserSettings.asset /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /Assets/Behavioral.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c5e093a3b282c024faa8bcafffbfed98 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1bc70a99ef5effe4bad68084e2805418 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 842da1e5a2508ec40be83e1965fc4939 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa78a3334119dbf42a1bcee91c3bab8b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5caa01122ad27624ca1a0513f6b8133f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scene/AnimationQueue.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 504a2eda9f30985429d84d70370fe146 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a059db29ff0b93745af20c5520d0d3ff 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Actor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6f968e440e14fd429cc8c38a552e22e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Actor/IMotion.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.AnimationQueue 4 | { 5 | public interface IMotion 6 | { 7 | Transform transform { get; } 8 | void Move(Vector3 amount); 9 | void Scale(Vector3 amount); 10 | void Rotate(Vector3 amount); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Actor/IMotion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e881702fcfb8499181ffc891a7a559a5 3 | timeCreated: 1568928279 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Actor/MotionEntity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d53c56d89375244596d3a0798440288 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Client.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f75be74ac25eae48a22c9a7b647a4b1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Client/AnimationClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73e79aac0672f214486605fe66b26669 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 15bc92a3619d01e4996870f3ba3add94 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/BaseMotionAnimation.cs: -------------------------------------------------------------------------------- 1 | namespace Command.AnimationQueue 2 | { 3 | /// 4 | /// A motion animation of the game. 5 | /// 6 | public abstract class BaseMotionAnimation : Patterns.Command 7 | { 8 | protected BaseMotionAnimation(IMotion entity) => MotionEntity = entity; 9 | 10 | public IMotion MotionEntity { get; } 11 | 12 | /// 13 | /// Executes the animation. 14 | /// 15 | public override void Execute() 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/BaseMotionAnimation.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e5eb9466c7d0407cadb5b9490b2bf4dc 3 | timeCreated: 1568928295 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/MoveObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.AnimationQueue 4 | { 5 | /// 6 | /// A command to move a determined object. 7 | /// 8 | public class MoveObject : BaseMotionAnimation 9 | { 10 | public MoveObject(IMotion entity, Vector3 amount) : base(entity) 11 | { 12 | Start = MotionEntity.transform.position; 13 | Amount = amount; 14 | } 15 | 16 | public Vector3 Start { get; } 17 | public Vector3 Amount { get; } 18 | 19 | public override void Execute() => MotionEntity.Move(Start + Amount); 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/MoveObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f5b925690bf487d91673cd50eab6e40 3 | timeCreated: 1568928312 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/RotateObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.AnimationQueue 4 | { 5 | /// 6 | /// A command to rotate a determined object. 7 | /// 8 | public class RotateObject : BaseMotionAnimation 9 | { 10 | public RotateObject(IMotion entity, Vector3 amount) : base(entity) 11 | { 12 | Start = MotionEntity.transform.rotation.eulerAngles; 13 | Amount = amount; 14 | } 15 | 16 | public Vector3 Start { get; } 17 | public Vector3 Amount { get; } 18 | 19 | public override void Execute() => MotionEntity.Rotate(Start + Amount); 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/RotateObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d32dae46cfe46adb81219df72f1d0f5 3 | timeCreated: 1568928327 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/ScaleObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.AnimationQueue 4 | { 5 | /// 6 | /// A command to scale a determined object. 7 | /// 8 | public class ScaleObject : BaseMotionAnimation 9 | { 10 | public ScaleObject(IMotion entity, Vector3 amount) : base(entity) 11 | { 12 | Start = MotionEntity.transform.localScale; 13 | Amount = amount; 14 | } 15 | 16 | public Vector3 Start { get; } 17 | public Vector3 Amount { get; } 18 | 19 | public override void Execute() => MotionEntity.Scale(Amount); 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Commands/ScaleObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a65ca876ccb2ffb45b31701e2c5057f1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Invoker.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 913901c0c7fa3274584710685bd6d8f6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/AnimationQueue/Scripts/Invoker/AnimationQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8074e33784a4144781af6e8c8eb5649 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c32c012fcd33e347906cfff7567b973 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8da35939a471a844c8d99e6dfd975de6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scenes/InputWrapper.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d127c4c619d138a4da46161096af9c6a 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f98a97cc61334824589ec154eb562397 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Actor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3558ba17c1a48f4e8b4a4604b1518ab 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Actor/IMotion.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | public interface IMotion 6 | { 7 | Transform transform { get; } 8 | void Move(Vector3 amount); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Actor/IMotion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa595512617e97649a172c0ff87b2026 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Actor/MotionEntity.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Concrete actor class, also called receiver, it is called by the command class. 7 | /// 8 | public class MotionEntity : MonoBehaviour, IMotion 9 | { 10 | /// 11 | /// Moves the entity a certain amount. 12 | /// 13 | /// 14 | public void Move(Vector3 amount) => transform.position += amount; 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Actor/MotionEntity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b00cf049acc34e479134c17c476217e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f649523aad43f044a9dab37370b7358 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/BaseInput.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Binds the motion entity component to the same game object as the key binder. 7 | /// 8 | [RequireComponent(typeof(MotionEntity))] 9 | public abstract class BaseInput : KeyCommandBinder 10 | { 11 | protected IMotion MotionEntity => gameObject.GetComponent(); 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/BaseInput.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c51145b358cc4fc19de8bc3044604b33 3 | timeCreated: 1569098917 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputA.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Class responsible to specify the bond key and the command. 7 | /// 8 | public class InputA : BaseInput 9 | { 10 | protected override KeyCode Key => KeyCode.A; 11 | 12 | protected override BaseMotion GetCommand() => new MotionLeft(MotionEntity); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputA.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19d4604ad4e6493cb34576e211c92a5a 3 | timeCreated: 1569098473 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputD.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Class responsible to specify the bond key and the command. 7 | /// 8 | public class InputD : BaseInput 9 | { 10 | protected override KeyCode Key => KeyCode.D; 11 | 12 | protected override BaseMotion GetCommand() => new MotionRight(MotionEntity); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputD.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d20252a649954e028b48597f3a50142b 3 | timeCreated: 1569098493 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputS.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Class responsible to specify the bond key and the command. 7 | /// 8 | public class InputS : BaseInput 9 | { 10 | protected override KeyCode Key => KeyCode.S; 11 | 12 | protected override BaseMotion GetCommand() => new MotionDown(MotionEntity); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputS.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2ba0d9aa0cd74672843ee4b4c4f8f155 3 | timeCreated: 1569098388 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputW.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Class responsible to specify the bond key and the command. 7 | /// 8 | public class InputW : BaseInput 9 | { 10 | protected override KeyCode Key => KeyCode.W; 11 | 12 | protected override BaseMotion GetCommand() => new MotionUp(MotionEntity); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Client/InputW.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a9b02bb13775de459bf3f0ea551bd9f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fd27ad3fa5bdbe46b0684c25945edbd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/BaseMotion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96d3eb7f8c97c6946b3b8de3ef68f3d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionDown.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Command responsible to move the entity down. 7 | /// 8 | public class MotionDown : BaseMotion 9 | { 10 | public MotionDown(IMotion entity) : base(entity, Vector3.down) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionDown.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 63252095faaf4650a2e23aad840e058b 3 | timeCreated: 1569097141 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionLeft.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Command responsible to move the entity left. 7 | /// 8 | public class MotionLeft : BaseMotion 9 | { 10 | public MotionLeft(IMotion entity) : base(entity, Vector3.left) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionLeft.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ca6e484f5c840cd88480d99c8486760 3 | timeCreated: 1569097170 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionRight.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Command responsible to move the entity right. 7 | /// 8 | public class MotionRight : BaseMotion 9 | { 10 | public MotionRight(IMotion entity) : base(entity, Vector3.right) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionRight.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 863613e1d7a241ad8449d92c06be8da2 3 | timeCreated: 1569097201 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionUp.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// Command responsible to move the entity up. 7 | /// 8 | public class MotionUp : BaseMotion 9 | { 10 | public MotionUp(IMotion entity) : base(entity, Vector3.up) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Commands/MotionUp.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f68222590a034b8a91269df6360a3979 3 | timeCreated: 1569097128 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Invoker.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d84c11d075199f44aab9475a6b4a63a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Invoker/KeyCommandBinder.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.InputWrapper 4 | { 5 | /// 6 | /// A component that binds a input key to any command. 7 | /// 8 | public abstract class KeyCommandBinder : MonoBehaviour 9 | { 10 | protected abstract KeyCode Key { get; } 11 | BaseMotion Command { get; set; } 12 | 13 | void Start() => Command = GetCommand(); 14 | 15 | void Update() 16 | { 17 | if (Input.GetKey(Key)) 18 | Command?.Execute(); 19 | } 20 | 21 | protected abstract BaseMotion GetCommand(); 22 | } 23 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/InputWrapper/Scripts/Invoker/KeyCommandBinder.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ff192b9af6cba24c98ec22e54ece9f5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/Tools.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08e41bb49ce3c0843a3b8a8e438a2b2d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/Tools/CommandQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 106ce46797af208499f000337950d0d7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/Tools/ICommandQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22dbc9d644467f94ca1a15e009162659 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/Tools/TimeredCommandQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc61ae22b93857e468f8c3a45dd59698 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c6223cdfea6bf74784adf1fa2d708f8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 727721bff38216c43b4e58f86b56c4d7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scene/UndoableMovement.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1bc5194622f0e694596156d1e02aa3e2 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2c86d97e369d1c45ae2f036b71cbb5f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Actor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee4c9d9a79e1bb04ebebbe96dfff3533 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Actor/IMotion.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.UndoableMovement 4 | { 5 | public interface IMotion 6 | { 7 | Transform transform { get; } 8 | void Move(Vector3 amount); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Actor/IMotion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59017fec4d51c5f4481c1e59ebf75da7 3 | timeCreated: 1568928279 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Actor/MotionEntity.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Command.UndoableMovement 4 | { 5 | /// 6 | /// Concrete actor class, also called receiver, it is called by the command class. 7 | /// 8 | public class MotionEntity : MonoBehaviour, IMotion 9 | { 10 | /// 11 | /// Moves the entity a certain amount. 12 | /// 13 | /// 14 | public void Move(Vector3 amount) => transform.position += amount; 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Actor/MotionEntity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfa05ec7a13e7c54cb6550dc37864a9c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Client.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9274509bfb043704a9de160afd7c7ead 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Client/AnimationClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef39b01a440328c4580aabd2fbc609a1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Commands.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b33e00e050913d54fb75ef13d01553e6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Commands/BaseMotionAnimation.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | 3 | namespace Command.UndoableMovement 4 | { 5 | /// 6 | /// A motion animation of the game. 7 | /// 8 | public abstract class BaseMotionAnimation : CommandUndo 9 | { 10 | protected BaseMotionAnimation(IMotion entity) => MotionEntity = entity; 11 | 12 | public IMotion MotionEntity { get; } 13 | 14 | /// 15 | /// Executes the animation. 16 | /// 17 | public override void Execute() 18 | { 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Commands/BaseMotionAnimation.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfb3065bebac22c448768cbaee4a0d3d 3 | timeCreated: 1568928295 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Commands/MoveObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7cfb731b3e3bbcc4fa6a541a698acbe1 3 | timeCreated: 1568928312 -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Invoker.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d224c11e504ee649b624016e7f75bf7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Examples/UndoableMovement/Scripts/Invoker/AnimationQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 50e7362c4f1e77b4c9d4fc7151a3cc63 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67c38b03734559e49b070f31cc076920 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80a2d795fe71a074794e25620ac7c659 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Structure/Command.cs: -------------------------------------------------------------------------------- 1 | namespace Patterns 2 | { 3 | /// 4 | /// The command base class. 5 | /// 6 | public abstract class Command 7 | { 8 | public abstract void Execute(); 9 | } 10 | 11 | /// 12 | /// The undoable command base class. 13 | /// 14 | public abstract class CommandUndo : Command 15 | { 16 | public abstract void Undo(); 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Command/Structure/Command.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ae99f938c1d77e48a86aa8e26edb28d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 94d98bbe0f293644a85a0ab071a35d4f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9eb218694e350746ba891af6341c6c0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Examples/GameEventListener.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 53cb2d9d3b00cd34c9b8a389189c1100 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Examples/GameEventListenerCsharp.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 126724377aeb4934f8151a46d244f38d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f74fa13e040b90342913bf05c9461c3b 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00496ef19fd1b9244951e052fef8d5d4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Structure/Observer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 556c37b141f3eae438e540303ce583f5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Structure/ObserverCsharpAction.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb4d4ca97d734eb4ab6f666f97ed799b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Observer/Structure/ObserverCsharpDelegates.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 048c804fd1b67694a965f89aeda02d1a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1b05813a2a2edf0409e86c951f6a4bb5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5cb8b785289a1294189ae86ec0da222f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36367914c106d0d4c998cb0e2f5ebd37 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b410b0df7ab8534487a354d4a0fb91d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scenes/Card.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fdfccd1e20ee46c4aafa5b03c62dd68a 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0cd6f5b27697fe440b30d6658469a691 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5540ccd7ce315d94b8581bd526831c2a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6968f4a458839fd4198df41383d0604d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiBaseCardState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: daa377450fc4a2d4096d199278082ada 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDisable.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | /// 6 | /// This state disables the collider of the card. 7 | /// 8 | public class UiCardDisable : UiBaseCardState 9 | { 10 | public UiCardDisable(BaseStateMachine fsm) : base(fsm) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDisable.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b967fcbb466784241ace35e5c52bb4ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDiscard.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | /// 6 | /// State when a cards has been discarded. 7 | /// 8 | public class UiCardDiscard : UiBaseCardState 9 | { 10 | public UiCardDiscard(BaseStateMachine fsm) : base(fsm) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDiscard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b901744e85a0c724da4e227e0a9742a0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDrag.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | public class UiCardDrag : UiBaseCardState 6 | { 7 | public UiCardDrag(BaseStateMachine fsm) : base(fsm) 8 | { 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDrag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19a9e37f36560d84d9d295b3f364d6d3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDraw.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | /// 6 | /// This state draw the collider of the card. 7 | /// 8 | public class UiCardDraw : UiBaseCardState 9 | { 10 | public UiCardDraw(BaseStateMachine fsm) : base(fsm) 11 | { 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardDraw.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f0ca202c9bcdc745915c6ea55715356 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardHover.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | public class UiCardHover : UiBaseCardState 6 | { 7 | //-------------------------------------------------------------------------------------------------------------- 8 | 9 | public UiCardHover(BaseStateMachine fsm) : base(fsm) 10 | { 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardHover.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6c78cdb174904c48b46de2c747a5342 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardIdle.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | 3 | namespace CardStateMachine 4 | { 5 | /// 6 | /// UI Card Idle behavior. 7 | /// 8 | public class UiCardIdle : UiBaseCardState 9 | { 10 | //-------------------------------------------------------------------------------------------------------------- 11 | 12 | public UiCardIdle(BaseStateMachine fsm) : base(fsm) 13 | { 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/States/UiCardIdle.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f02647de40c0f341baf87301968a738 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/CardStateMachine/UiCardFsm.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cbd729a54aa5fa64fbd79f10052dc9e2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/CardFsm/Scripts/UiCardComponent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b22dc179788e9642ab83bd6d28e3794 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c07cd703a3cc4b46a05cfce882dc6ed4 3 | timeCreated: 1569618854 -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b860e3d2da03b7d4487324cad65a5233 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scenes/Patrol.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 161b472a3c88a6b4a88f0a4b5a8d3640 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 290e57aadbe7c6d42b38734c4d7ddf71 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scripts/Patrol.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd606e28a69a45528785b7402e1283cb 3 | timeCreated: 1569618866 -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scripts/PatrolComponent.cs: -------------------------------------------------------------------------------- 1 | using EnemyPatrol; 2 | using UnityEngine; 3 | 4 | public class PatrolComponent : MonoBehaviour 5 | { 6 | [SerializeField] Transform PointA; 7 | [SerializeField] Transform PointB; 8 | 9 | Patrol Patrol { get; set; } 10 | 11 | void Start() 12 | { 13 | Patrol = new Patrol(PointA.position, PointB.position, this); 14 | Patrol.Initialize(); 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/EnemyPatrol/Scripts/PatrolComponent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 738a7ee0db0cb5240b1811431c86155b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/ScriptableObject.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df48a5d6db9453348b62314242f755a8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/ScriptableObject/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f4f7f429bb3d9434fbbe10d1846d4a59 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/ScriptableObject/Editor/FsmTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ef9f0f4bb76ba647995877e52219116 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/ScriptableObject/State.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a4290e6d04c7f04c91bf4f00562875f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/ScriptableObject/StateMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d5c2eb9018105b4bbc801c1cea5d1a2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d72dd510a469cb439f48ecb6a3af1e9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 102b6a133b54eff48886b7dca5cc304a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scenes/TurnBased.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f4c022411766d2b46a827650e1590c14 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f8d1ab86d3900d4ebc4b5dae48bae8c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/AiTurnState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 926f0b9fd4d5aa64da08f133c92ef026 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/EndGameState.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | using UnityEngine; 3 | 4 | namespace ExampleStateMachine 5 | { 6 | public class EndGameState : IState 7 | { 8 | public bool IsInitialized { get; } 9 | 10 | public void OnInitialize() => Debug.Log("On Initialize ----> " + GetType()); 11 | 12 | public void OnEnterState() => Debug.Log("On Enter ----> " + GetType()); 13 | 14 | public void OnExitState() => Debug.Log("On Exit ----> " + GetType()); 15 | 16 | public void OnUpdate() => Debug.Log("On Update ----> " + GetType()); 17 | 18 | public void OnClear() => Debug.Log("On Clear ----> " + GetType()); 19 | } 20 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/EndGameState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27048eca9e9a3fe49a09e103aee92e79 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/PlayerTurnState.cs: -------------------------------------------------------------------------------- 1 | namespace ExampleStateMachine 2 | { 3 | public class PlayerTurnState : AiTurnState 4 | { 5 | public override bool IsPlayer => true; 6 | } 7 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/PlayerTurnState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc7309014d317c64ab01436db0da3b60 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/StartGameState.cs: -------------------------------------------------------------------------------- 1 | using Patterns.StateMachine; 2 | using UnityEngine; 3 | 4 | namespace ExampleStateMachine 5 | { 6 | public class StartGameState : IState 7 | { 8 | public bool IsInitialized { get; } 9 | 10 | public void OnInitialize() => Debug.Log("On Initialize ----> " + GetType()); 11 | 12 | public void OnEnterState() => Debug.Log("On Enter ----> " + GetType()); 13 | 14 | public void OnExitState() => Debug.Log("On Exit ----> " + GetType()); 15 | 16 | public void OnUpdate() => Debug.Log("On Update ----> " + GetType()); 17 | 18 | public void OnClear() => Debug.Log("On Clear ----> " + GetType()); 19 | } 20 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/StartGameState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa83191fd754c334da9502c3635dd528 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/TurnBasedController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 49144d6a453643a4d89e97fa33e8c4dd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Examples/TurnBasedFsm/Scripts/TurnBasedStateMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdd4dcac96e9a4c45986cdfa0814d7ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b36b905043a3fe45b33c1158f54b094 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b3dea3a9a3276bd42beb76c2a9dccb62 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure/BaseStateMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7cacae5110ff41f47a27cf81926a3aab 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure/IState.cs: -------------------------------------------------------------------------------- 1 | namespace Patterns.StateMachine 2 | { 3 | public interface IState 4 | { 5 | bool IsInitialized { get; } 6 | void OnInitialize(); 7 | void OnEnterState(); 8 | void OnExitState(); 9 | void OnUpdate(); 10 | void OnClear(); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure/IState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69e78cb60455e484db294ad19315e953 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure/IStateMachineHandler.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Patterns.StateMachine 4 | { 5 | /// 6 | /// Handler for the FSM. Usually the class which holds the FSM. 7 | /// 8 | public interface IStateMachineHandler 9 | { 10 | BaseStateMachine Fsm { get; } 11 | MonoBehaviour MonoBehaviour { get; } 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Behavioral/StateMachine/Structure/IStateMachineHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: af58bd4b14b3e174aa43ce5b0afbc8d7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6164c4b84b1de5e43b22e36ccbf9e8fb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41e595d4313476640bb3cd622fa23b49 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 997b34f853c8b4745a18f280ab75626e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b09f27fdbe8795e408763da3eea3eb6a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scenes/AI.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9938c776d6d295428fe524d49ee712e 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2fbf69d0e30c7b4a920aaea3a6177e0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 529a78a3f8e3326418e29c1a40249f49 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiEasy.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | 4 | namespace Strategy 5 | { 6 | public class AiEasy : IAiBehaviour 7 | { 8 | public void DestroyPiece(IGameState gameState) 9 | { 10 | Debug.Log("Destroyed piece in the EASY difficulty"); 11 | } 12 | 13 | public void MovePiece(IGameState gameState) 14 | { 15 | Debug.Log("Moved piece in the EASY difficulty"); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiEasy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a136b7a68a5043b4e8329ef7f6340bbb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiHard.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | 4 | namespace Strategy 5 | { 6 | public class AiHard : IAiBehaviour 7 | { 8 | public void DestroyPiece(IGameState gameState) 9 | { 10 | Debug.Log("Destroyed piece in the HARD difficulty"); 11 | } 12 | 13 | public void MovePiece(IGameState gameState) 14 | { 15 | Debug.Log("Moved piece in the HARD difficulty"); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiHard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02872f6db9199704ebf3a58d80c3d455 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiMedium.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using UnityEngine; 4 | 5 | namespace Strategy 6 | { 7 | public class AiMedium : IAiBehaviour 8 | { 9 | public void DestroyPiece(IGameState gameState) 10 | { 11 | Debug.Log("Destroyed piece in the MEDIUM difficulty"); 12 | } 13 | 14 | public void MovePiece(IGameState gameState) 15 | { 16 | Debug.Log("Moved piece in the MEDIUM difficulty"); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/AiMedium.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e19c75d28d8935040882d4d959f940aa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/IAiBehaviour.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Strategy 4 | { 5 | public interface IAiBehaviour 6 | { 7 | void DestroyPiece(IGameState gameState); 8 | void MovePiece(IGameState gameState); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/IAiBehaviour.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 288de23ba041b294d98d4c971e9c0cea 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/IGameState.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Strategy 4 | { 5 | public interface IGameState 6 | { 7 | // For illustration purposes. 8 | } 9 | 10 | public class Game : IGameState 11 | { 12 | 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/AI/Scripts/IGameState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 838eb69adaf34528b377eab3bb3a0329 3 | timeCreated: 1616057418 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4024cdf2f3b66b540bf6c52f59151e8e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b4884e3c57906b4499ee0e51a73970c6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scenes/Sort.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c488be44f1c3894d88e5235cb50bf7b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a08351716fd18242b01798a585b5a44 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/BubbleSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c434e533e90e4ed2993af2a30ae9a091 3 | timeCreated: 1615994109 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/ISortBehaviour.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Strategy 4 | { 5 | public interface ISortBehaviour 6 | { 7 | void Sort(ref List input); 8 | } 9 | } -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/ISortBehaviour.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 50c172b63420422f964f6f1c678e2b75 3 | timeCreated: 1615994728 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/InsertionSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fe84166a8504fb38ee1fdac2f2322ef 3 | timeCreated: 1615994140 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/MergeSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3236e48a9a16fe4bb871a5739bd89e6 3 | timeCreated: 1615994175 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/QuickSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 983cd93985504068b4546b849dc9b4e7 3 | timeCreated: 1615994175 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/SelectionSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9510774463c42b2a78bcd8669143c3e 3 | timeCreated: 1615994162 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/ShellSort.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d90ad78f1decf464995c39b4991f3659 3 | timeCreated: 1615994175 -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Examples/Sort/Scripts/SortClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6fbcc8f95c717e47aeea9a99872b950 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 904cec7974503de4da249615b4fc0cea 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87e9bdef08419de4e83c175a4db76373 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral/Strategy/Structure/Structure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80ecfb3befc478843a2a22a66b1a8b61 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f58d435f9057b5d4aa3f84966572ab16 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f544d2f32d15f9040aaa869e58424cf9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8fc8e25aa25c478489730ddd3c072c6f 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a5f5f89fbe9ad04db191198cedc31e9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ea75a5dfda05eab4f91c868cbc5669cc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scene/PlatformFactory.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56e3a4e17733ecb4abbf35823c474f87 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9e216751640e7e42aafb5e76094457a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.ConcreteFactories.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21c3357c9ef741db88080b0f56e880a6 3 | timeCreated: 1569742824 -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.ConcreteProducts.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c97cbe8acbba4867a329f325555f9d52 3 | timeCreated: 1569742978 -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.Factories.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5697ac02a04442f0803634b9bece7028 3 | timeCreated: 1569742760 -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.Products.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a1e1cce00d7499479929f82146652e8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.UiFactorySystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c70f62af36d2dce40809d76635d07166 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/AbstractFactory/UiSystemPlatformsFactory/Scripts/UiSystemPlatformsFactoryUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14eff43407f6b804da5156793eebee7f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0de8a9d27799339409c5240b4ec0e6fe 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05c0d6001e79d2e4e8a3205448a55207 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c32dc673fb139540b24d692da1dc610 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ad07c6629498f24199f9178d595d434 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory/Scene/AiFactory.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b92ebb28cd867e4fb5530355175081c 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21addfdc46c65184ba36a121b25e2d6d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory/Scripts/AiFactory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5973e95ef97e28846a3a5c9e7a84012b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/AiFactory/Scripts/AiFactoryUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f6332e68bfd93f4691306ad932e6fe7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 58a22dead5094d4c8d58f79b0258fbfa 3 | timeCreated: 1569700160 -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad160206cc094c240bed4c3c9138a457 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scene/WorldFactory.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 81a581475dba4d741aca9fdb90fca6fc 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f98650214f2a19e49baeb92161018088 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.Areas.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89a49e9d42b0a344796711c55fd80271 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.Continents.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec307264d0b6e124a9d5aa009b8d38cd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.Creatures.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3915669bf5d014743b6a06f02554ceae 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.Elements.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 11ce9488d61d1d546ba7613f104599e2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.Factories.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4574b414e8e96cd4c9ef35b0dc8515c4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Example/World/Scripts/World.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12eb1479475141b88ff47ec25eed8361 3 | timeCreated: 1569700172 -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fd5cd0b79ca2a64cb7f33283f00b482 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1fd607572d9cf4459d972e783cd0861 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/FactoryMethod/Structure/FactoryMethodStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eddcddb9c52808547ae98a8cb5651beb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 61e16550aab82964a975263c22fd9654 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04e431a6a41fd4547bf1782bf3b4014f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4dbc2105b61598642a1e3cbd1c4f40f3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5811fe7a438636439ac41ceea70cbec 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/ScriptableObjects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2dca60a3ee74124ebda1e2a0923a9a4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/ScriptableObjects/GoblinArcherData.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f6fd2e2fa8886b4e86cff5554a5dabf 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/ScriptableObjects/GoblinGruntData.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: c02c368dbc0f8bd43a2447bf360e7e6d, type: 3} 13 | m_Name: GoblinGruntData 14 | m_EditorClassIdentifier: 15 | monsterName: Goblin Grunt 16 | minHealth: 20 17 | maxHealth: 30 18 | resists: 0000000001000000 19 | weaknesses: 0200000003000000 20 | spells: 21 | attacks: 22 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/ScriptableObjects/GoblinGruntData.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f64fe4e2429c9d41b3c427adf591986 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/ScriptableObjects/GoblinWizardData.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 852b41b94701e1247a32d3edb9b6c5d1 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 151d0b1f73655414e823420a045b0acd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/NoPrototypeModeling/Scripts/GoblinData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c02c368dbc0f8bd43a2447bf360e7e6d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 716c5edf2bba34641b49d24984e8a8f9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/ScriptableObjects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 543cdce9e5bce1b4da39bb62bd6a1f00 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/ScriptableObjects/GoblinArcher.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 09ea3348edf5ac54bab16066d6bc5e23 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/ScriptableObjects/GoblinGrunt.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8924338d625ad443b05e5cb4414c855 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/ScriptableObjects/GoblinPrototypeData.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c23d68c8d5470e549bda3d1427dd915f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/ScriptableObjects/GoblinWizard.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16ab002b63f2e074e97bf70cde71485d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28bb360a00ea26149b492bc12c12df3e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/DataModeling/PrototypeModeling/Scripts/GoblinData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0af7111acbe3fe04db6ec87f669c33a7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eac699feef3b7454690e307596232592 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 943849f0dcfac0142a17274f07afe637 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scene/Prototype.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1b959a9ca7fda8f4298f887cd7804c0d 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b95d2e66da18ab0478e25e87d89bcdb5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Demon.cs: -------------------------------------------------------------------------------- 1 | public partial class MonstersPrototype 2 | { 3 | public class Demon : Monster 4 | { 5 | public Demon(int health, int speed, int flySpeed) : base(health, speed) => FlySpeed = flySpeed; 6 | 7 | public int FlySpeed { get; } 8 | 9 | public override Monster Clone() => new Demon(Health, Speed, FlySpeed); 10 | } 11 | } -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Demon.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e637606edf44ec68a41a67b0f18d377 3 | timeCreated: 1569780025 -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Ghost.cs: -------------------------------------------------------------------------------- 1 | public partial class MonstersPrototype 2 | { 3 | public class Ghost : Monster 4 | { 5 | public Ghost(int health, int speed) : base(health, speed) 6 | { 7 | } 8 | 9 | public int Health { get; } 10 | public int Speed { get; } 11 | 12 | public override Monster Clone() => new Ghost(Health, Speed); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Ghost.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5da7d014b7f478d8954fbe2f6677c38 3 | timeCreated: 1569780018 -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Monster.cs: -------------------------------------------------------------------------------- 1 | public partial class MonstersPrototype 2 | { 3 | //The Prototype Class 4 | public abstract class Monster 5 | { 6 | protected Monster(int health, int speed) 7 | { 8 | Health = health; 9 | Speed = speed; 10 | } 11 | 12 | public int Health { get; } 13 | public int Speed { get; } 14 | 15 | public abstract Monster Clone(); 16 | } 17 | } -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Monster.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3190d1fdbae342eba47c0774b1ca2d2d 3 | timeCreated: 1569779992 -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.Spawner.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4684a6beabfb43c98a5b5bcf4f269aa6 3 | timeCreated: 1569780089 -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Example/Monsters/Scripts/MonstersPrototype.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a025d0f8675c9f4cbe850d73fd9ab24 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e27953f7a7994e42b95aa61262d3acd 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d8f145a2f22158642bfbf7212228e45d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Prototype/Structure/PrototypeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d937c1002014a434997550fb5edc6676 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f897970171fea3e47bb18fe2558af83f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d5ff4d83fc65b74485c9c87018a0176 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c95b2aedb2da2d242880aa5c6bf65642 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b9611b593bef17479ed728489a86f67 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scene/Singleton.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: caf9b39d9f578ff4cac803d03396216d 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f388d5077bcc3946a17f0560f2e97a2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scripts/ASingleton.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | using UnityEngine; 3 | 4 | namespace Singleton 5 | { 6 | public class ASingleton : Singleton 7 | { 8 | public ASingleton() => Debug.Log(GetType() + " has been created!"); 9 | 10 | public void PrintRandomValue() => Debug.Log("Random: " + Random.Range(0, 1f)); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scripts/ASingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 617a5b5c307d1654d9230da3a778b1d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scripts/ASingletonInvoker.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Singleton 4 | { 5 | public class ASingletonInvoker : MonoBehaviour 6 | { 7 | [Button] 8 | void PrintRandomValue() => ASingleton.Instance.PrintRandomValue(); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/Singleton/Scripts/ASingletonInvoker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 77a25a3e43f149c40b671461a5a4aa04 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1230d03eae0dcfc4da502b328ad10b25 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ff781ff171f28a409e53caaccdedec7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scene/SingletonMB.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69a5ea2be5f23a04dbe51f212fa453a8 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 454f2470b1aa41e4b8ed8b38d2e730f5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scripts/ASingletonMB.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | using UnityEngine; 3 | 4 | namespace Singleton 5 | { 6 | public class ASingletonMB : SingletonMB 7 | { 8 | protected override void OnAwake() => Debug.Log(GetType() + " has been created"); 9 | 10 | public void PrintRandomValue() => Debug.Log("Random: " + Random.Range(0, 1f)); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scripts/ASingletonMB.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4dd94012fa37e1c40a92f40f99feddca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scripts/ASingletonMBInvoker.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Singleton 4 | { 5 | public class ASingletonMBInvoker : MonoBehaviour 6 | { 7 | [Button] 8 | void PrintRandomValue() => ASingletonMB.Instance.PrintRandomValue(); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonMB/Scripts/ASingletonMBInvoker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc1f4912d2a67c642a1739457ad9cde2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 192873b7ceeb8e447b23df278b7795cf 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d473df5c0eb780d4aa6db7bc0ddc9c01 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scene/SingletonPersistent.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ab2e734ab7aaf114690fac85c178d2d6 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c572a972fdc615409ae36b062dca2a7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scripts/ASingletonPersistent.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | using UnityEngine; 3 | 4 | namespace Singleton 5 | { 6 | public class ASingletonPersistent : PersistentSingleton 7 | { 8 | void Awake() => Debug.Log(GetType() + " has been created"); 9 | 10 | public void PrintRandomValue() => Debug.Log("Random: " + Random.Range(0, 1f)); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scripts/ASingletonPersistent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e281fe51a1254542a23cab1ee1b931a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scripts/ASingletonPersistentInvoker.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Singleton 4 | { 5 | public class ASingletonPersistentInvoker : MonoBehaviour 6 | { 7 | [Button] 8 | void PrintRandomValue() => ASingletonPersistent.Instance.PrintRandomValue(); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Example/SingletonPersistent/Scripts/ASingletonPersistentInvoker.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9bdee44b29df6fe43b2c710e94c88575 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 503a03617e35ef84586358c8bce275e4 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be9549435ee485943b3d7d03a3d02201 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Monobehavior.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edb75a5dad5bb9140a13cdf2985c0b8c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Monobehavior/SingletonMB.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5326c3471fb8d0e4a9d9516d0da01bb2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/PersistentMonobehavior.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4db6e7f7abbc41a45b5e1296659820a9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/PersistentMonobehavior/PersistentSingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29fb07a74c7e6a14c85930886437a3af 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/PureCSharp.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 06651a258e359024ebfe00a6d668514c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/PureCSharp/Singleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02cddc2b3746bd44a9056b92e3d49b15 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 33e9c6ff9d663074c99e3e50f2fe8620 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Tests/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26affba4145460b42b65619f77efac17 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Tests/Editor/TestSingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b1541a6a4b759f46850d898c0958ad9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Tests/Images.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54d29dc4e1966ec4eaa6bc3a8150f3ac 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational/Singleton/Structure/Tests/Images/singleton test.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycarowr/UnityDesignPatterns/5ed29147409e4efc0b856cfd5cc20a7c9766365f/Assets/Creational/Singleton/Structure/Tests/Images/singleton test.GIF -------------------------------------------------------------------------------- /Assets/GameProgramming.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8335acf203f5194197434a880a0ff37 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 312c7ce9619ae48479ad1958e86dfbf5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a8db02e5c357e9d42b3c651386e61fe3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 33beb9d4635272649a59a37105ef42ab 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 361f0776bd9ed254380392f92a01a31d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Prefabs/APooledGameObject.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fa18ef249cda164396877d78d53221f 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36dda246a0c088c4b9af00ce4b8c175e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scenes/GameObjectPooler.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f46d4ddf3bfb89e4eabcf31e9e4f2cb0 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d57010d62b8bdc4e9466da40da75fff 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts/APooled.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace PrefabPool 4 | { 5 | public class APooled : MonoBehaviour 6 | { 7 | } 8 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts/APooled.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5bacde56a0f449f41b812b6c8fcd6a05 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts/APooler.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | 3 | namespace PrefabPool 4 | { 5 | public class APooler : PrefabPooler 6 | { 7 | } 8 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts/APooler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f56b984ebe93e740a74c1086aba9735 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/GameObjectPooler/Scripts/PrefabPoolUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdc4e0c7f99b6cd4d9c84cc19fab2a4c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f24e44d84a9d6b4186c0174ec2a24c2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d61baed0ba146894482bd6dfe260c4c7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scenes/APureCshaperPooler.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f1b9b92bbe0cd14fbf0b8be7d0d8ffd 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5e79fff184e568844827b2936c2100df 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts/APooledObject.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | using UnityEngine; 3 | 4 | namespace Pooler 5 | { 6 | public class APooledObject : IPoolableObject 7 | { 8 | public void Restart() => Debug.Log(GetType() + " Pooled Back"); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts/APooledObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52a3cf6774552a24e8f64a28cc247987 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts/APoolerObject.cs: -------------------------------------------------------------------------------- 1 | using Patterns; 2 | 3 | namespace Pooler 4 | { 5 | public class APoolerObject : GenericPooler 6 | { 7 | public APoolerObject(int startingSize) : base(startingSize) 8 | { 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts/APoolerObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a61493725d6237a4d82314ed26d8971d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Examples/PureCsharpPooler/Scripts/APoolerUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ca4600adf37aa547a67c2a160b5bd24 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f2938b5b82a1e8342add016bb631f8c3 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fae86337efc86f54f9f3bf86c7d2308a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/GenericPooler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b12817ccf6051cb49a6b2965dc827ee7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/IPoolableObject.cs: -------------------------------------------------------------------------------- 1 | namespace Patterns 2 | { 3 | public interface IPoolableObject 4 | { 5 | void Restart(); 6 | } 7 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/IPoolableObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c1776468472de34ca7a712636112803 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/PrefabPooler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: efb673f6648e7df4f9ef106aee6503e0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00931960dbfe0dc4da27faeaa98ec373 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 462890b7d5aeb7640aeb9983f1756eb4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Editor/GenericPoolerTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3b9244a48ba96d4898f3a58e9ab55c6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Images.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6da0339d17964f146b9d589d4bf78d4e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/Capture.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycarowr/UnityDesignPatterns/5ed29147409e4efc0b856cfd5cc20a7c9766365f/Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/Capture.GIF -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/Capture1.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycarowr/UnityDesignPatterns/5ed29147409e4efc0b856cfd5cc20a7c9766365f/Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/Capture1.GIF -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/prefab.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycarowr/UnityDesignPatterns/5ed29147409e4efc0b856cfd5cc20a7c9766365f/Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/prefab.gif -------------------------------------------------------------------------------- /Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/tdd generic pooler.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycarowr/UnityDesignPatterns/5ed29147409e4efc0b856cfd5cc20a7c9766365f/Assets/GameProgramming/ObjectPooler/Structure/Tests/Images/tdd generic pooler.GIF -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e3676f1fb5d82844bed7cee1ec8e193 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3dfe0d2e0948f445a0019a93a9120f8 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 77dddfef12a1ecd4ba019e6336e585c9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scenes/ServiceLocator.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c509869daad03f4480e80fc8c9b71c6 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54b3631de6569d246acec0e52bcf6eb7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ClientAchievements.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0a863cc313954e91b62dd42a62d83ec2 3 | timeCreated: 1616068031 -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ClientAudio.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9f51b4c18af81f43aacc36797c4c914 3 | timeCreated: 1616068031 -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ClientBase.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace ServiceLocatorExample 4 | { 5 | public abstract class ClientBase : MonoBehaviour 6 | { 7 | protected ILogger Logger; 8 | 9 | protected virtual void Start() 10 | { 11 | Logger = GetService(); 12 | Logger?.Log("Initialization", $"{GetType()} is initialized"); 13 | } 14 | 15 | protected T GetService() where T : class 16 | { 17 | return ServiceLocator.GetService(); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ClientBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b5270a96ff343cab3f088813a276c1e 3 | timeCreated: 1616074370 -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ServiceAchievements.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45d690f19070e874dbea0975d5718e55 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ServiceAudio.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: da88630c076f4bd991d3d3fd7db8e10e 3 | timeCreated: 1616068868 -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ServiceLocator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d72411a6aecd60040b63f0f9602d508b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ServiceLogger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fb980b27fc2cc54380b96e9cfaefe86 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/ServiceLocator/Scripts/ServicesInitializer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a57911017a9a4b1b9c0f6756c711723b 3 | timeCreated: 1616069747 -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3e085c9103e3544fb6b3d9fb9ac9a4f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 438a3b5d87d0322479235153300aaf90 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f24e5c545aa5ec744a274fc2b74d8ceb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d09aa89f61a32394e92855196b0ec34f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8cb4b3012f6b1c47a4e0591015cc38d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scene/Animation.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38c58846c40f415409d23dd18d9c30d6 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 949181b1a312d14458fc7ad28d940ce0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Actor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1eb5996bed3480f40a41da1e033ed359 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Actor/IMotion.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace SubclassSandbox.Animation 4 | { 5 | public interface IMotion 6 | { 7 | Transform transform { get; } 8 | void Move(Vector3 amount); 9 | void Scale(Vector3 amount); 10 | void Rotate(Vector3 amount); 11 | } 12 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Actor/IMotion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 373040408452ea447b6a35e42856d945 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Actor/MotionEntity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 492544c9b4f730645b847ceebf409da5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Client.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85d0ec05dab3c4b4682e06f88d52de4d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Client/AnimationClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d63386d29e86da4b82b9d7ba4aed651 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 196573fdc1b51db4e9b85f4664a8a639 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/BaseMotionAnimation.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd1d576d8c5112f4cb022fc807f60757 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/MoveObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace SubclassSandbox.Animation 4 | { 5 | /// 6 | /// A command to move a determined object. 7 | /// 8 | public class MoveObject : BaseMotionAnimation 9 | { 10 | public MoveObject(IMotion entity, Vector3 amount) : base(entity) 11 | { 12 | Start = MotionEntity.transform.position; 13 | Amount = amount; 14 | } 15 | 16 | public Vector3 Start { get; } 17 | public Vector3 Amount { get; } 18 | 19 | public override void Execute() => MotionEntity.Move(Start + Amount); 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/MoveObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b6d6a0e84b72c040a2a2eb69b3ce2bc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/RotateObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 597d51b6f239b1d439e5a369814038b2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/ScaleObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace SubclassSandbox.Animation 4 | { 5 | /// 6 | /// A command to scale a determined object. 7 | /// 8 | public class ScaleObject : BaseMotionAnimation 9 | { 10 | public ScaleObject(IMotion entity, Vector3 amount) : base(entity) 11 | { 12 | Start = MotionEntity.transform.localScale; 13 | Amount = amount; 14 | } 15 | 16 | public Vector3 Start { get; } 17 | public Vector3 Amount { get; } 18 | 19 | public override void Execute() => MotionEntity.Scale(Amount); 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Commands/ScaleObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eb7cd83808b103c4087081f0d11eeea2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Invoker.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 523a285105ebd624faa1e27d976b5d3c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Animations/AnimationQueue/Scripts/Invoker/AnimationQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a35c044a5b518fa419cda8ac2e426de9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdbd998410054ef4b9f7dd34eb7a63c0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 225d56f800d870344963356b187a0750 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scene/Superpower.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28893d1fbaf40a942b0b0dcfadd54eeb 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22eeaf8e40348b741913b400182a6294 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scripts/SuperPowerUsage.BaseClass.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 205e7c936539cbb4fa36030db5433cf4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scripts/SuperPowerUsage.Subclasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a85bb61aa7b545a3abe98fe16c8cf9e4 3 | timeCreated: 1569906798 -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scripts/SuperPowerUsage.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace SubclassSandbox.Superpower 4 | { 5 | public partial class SuperPowerUsage : MonoBehaviour 6 | { 7 | readonly Superpower powerDash = new Dash(); 8 | 9 | //Super powers 10 | readonly Superpower powerSkylaunch = new SkyLaunch(); 11 | readonly Superpower powerStampede = new Stampede(); 12 | 13 | [Button] 14 | void ActivatePowers() 15 | { 16 | powerDash.Activate(); 17 | powerStampede.Activate(); 18 | powerSkylaunch.Activate(); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/Superpowers/Scripts/SuperPowerUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0a06884fb69b474b9120ae76c712b28 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35bfbaedb379be845a7111179cb17d11 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c7263ba7575ded04bbb275a99a449aca 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scene/WorldFactory.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d559665add9a7f4f8e052aa70767ac6 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1bf90c436fb8e3643975c6636d08ba8c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.AreasSubclasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8eb68d496b2ab1e4283eb8a8cdd43687 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.BaseClasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: baf52b93fea7e8b4c95f0e7dfe3264de 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.ContinentsSubclasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87b925d475da1d64cbd7b36f6944c2ed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.CreaturesSubclasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88355229010f2db459855002d809a8db 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.ElementsSubclasses.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12ffe4944cac51342a623777c2abf192 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Example/World/Scripts/World.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 384b269960896884996673b1b881e19a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32196835828730f43a1276ec3c5e86cf 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ae1f5d1be266aec4d85c3a1ccaa4b2dc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/SubClassSandbox/Structure/SubClassSandboxStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8cbec893cf21834cabc50ea60d3a17e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ef649ab035fe2e4eb54576eed0457b8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a4c4e2a7c7cc5447a66fe0a1befb542 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87db7ace4498f5149a0e29eb009ae625 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ff0cc291a4410d54bb9499bf5311405e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scenes/Monster.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbdbf00b59b8c9d43b43c26633217a71 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b7d289ad8d4a4b4485244b9d4b0857b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts/Breed.cs: -------------------------------------------------------------------------------- 1 | namespace TypeObject 2 | { 3 | public class Breed 4 | { 5 | public readonly int Health; 6 | public readonly string Attack; 7 | 8 | public Breed(Breed parent, string attack, int health) 9 | { 10 | var isAttackValid = string.IsNullOrEmpty(attack) && parent != null; 11 | Attack = isAttackValid ? parent.Attack : attack; 12 | 13 | var isHealthValid = health < 1 && parent != null; 14 | Health = isHealthValid ? parent.Health : health; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts/Breed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c785880a1da946d085271125bd55e939 3 | timeCreated: 1616144675 -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts/Monster.cs: -------------------------------------------------------------------------------- 1 | namespace TypeObject 2 | { 3 | public class Monster 4 | { 5 | private readonly Breed _breed; 6 | 7 | public Monster(Breed breed) 8 | { 9 | _breed = breed; 10 | } 11 | 12 | public string GetAttack() 13 | { 14 | return _breed.Attack; 15 | } 16 | 17 | public int GetHealth() 18 | { 19 | return _breed.Health; 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts/Monster.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1bc4b57df4fa46f3bf1e7c27f20bdc2a 3 | timeCreated: 1616144635 -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Monster/Scripts/MonsterUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e1ed539d5bb3e4645924e64e2b7daeba 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e63709db65fc5e43b29c87f3667a400 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0cb61a8dbb031d43a37a463a7a00999 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scenes/Monster.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 797dc2ceba807424db53f52306ab1e39 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c0c3cf51001a51489e9047e645bd986 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Fire.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: Fire 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 0} 16 | health: 30 17 | attack: Incineration Blaze! 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Fire.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6effa5a716858e49adfdda727a89e1b 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Lava.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: Lava 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 11400000, guid: e6effa5a716858e49adfdda727a89e1b, type: 2} 16 | health: 45 17 | attack: 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Lava.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc4023e661d25ca4694c337abcaee173 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Troll.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: Troll 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 0} 16 | health: 25 17 | attack: The troll hits you! 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Troll.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 645ec966a0e04f649b8d45a45b8e35fd 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/TrollArcher.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: TrollArcher 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 11400000, guid: 645ec966a0e04f649b8d45a45b8e35fd, type: 2} 16 | health: 0 17 | attack: The troll archer fires an arrow! 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/TrollArcher.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 93a9c23b1e0e13f4a93c25a2c41d4261 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/TrollWizard.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: TrollWizard 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 11400000, guid: 645ec966a0e04f649b8d45a45b8e35fd, type: 2} 16 | health: 0 17 | attack: The troll wizard casts a spell on you! 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/TrollWizard.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aadcd020c9a90b644acfb06e081f4a47 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Water.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 414f8df652180e74d940909eee4fa47f, type: 3} 13 | m_Name: Water 14 | m_EditorClassIdentifier: 15 | parent: {fileID: 0} 16 | health: 40 17 | attack: Make a pond! 18 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/ScriptableObjects/Water.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3eaed7a551314a64595adb22e32fcc21 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3c2581d3f1d8cf47bfc9188532ea18f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scripts/Breed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 414f8df652180e74d940909eee4fa47f 3 | timeCreated: 1616144675 -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scripts/Monster.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace TypeObject.SO 4 | { 5 | public class Monster : MonoBehaviour 6 | { 7 | [SerializeField] private Breed breed; 8 | 9 | public string GetAttack() 10 | { 11 | return breed.GetAttack(); 12 | } 13 | 14 | public int GetHealth() 15 | { 16 | return breed.GetHealth(); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scripts/Monster.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1728fa067f023574eae8db0dcdba6e8d 3 | timeCreated: 1616144635 -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/MonsterScriptableObject/Scripts/MonsterUsage.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccfa0a15a2f6b9945bd2e4b648714cc9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Examples/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3bae751435f239438111f6127911c47 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5feea156ff70035428f1af60b6941c30 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 264ce05d2dc0e834a8793b4486cadff1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/GameProgramming/TypeObject/Structure/Structure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a83c7cd7b7f150049b22e9a4ae1adb21 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Plugins.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 516ed70e4d1be8c4fbcbeabc1d61b0db 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Plugins/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9e2d6999027f1c41b885cc036ef1b63 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9883452837ac0be4e93eac8e3948636c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 806c6434ecdde1d40b34d273f0ed87e1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 358f60eaefdd1844fb77bb9fb448641a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fa45b7f77e6c7c4a8b65b493d45d407 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc7a572f444ef4d4188b934d0e0aca8c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scenes/Renderer.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d8c14ba733b4ae4a8a8a267aa9a301a 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 42e69ec201d5d764f98f5d81aaaae81e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.IRendererImpl.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | public partial class Renderer 6 | { 7 | public interface IRendererImpl 8 | { 9 | RendererType Type { get; } 10 | void Render(Sprite sprite); 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.IRendererImpl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78f991faa4cc07849ae933a77d08cdcb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.RendererDirectX.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | 6 | public partial class Renderer 7 | { 8 | private class RendererDirectX : IRendererImpl 9 | { 10 | public RendererType Type => RendererType.DirectX; 11 | 12 | public void Render(Sprite sprite) 13 | { 14 | Debug.Log("Rendered with DirectX"); 15 | } 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.RendererDirectX.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef25b47dcfe225143b3c0e4d74a48dc6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.RendererVulcan.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | 6 | public partial class Renderer 7 | { 8 | private class RendererVulcan: IRendererImpl 9 | { 10 | public RendererType Type => RendererType.Vulcan; 11 | 12 | public void Render(Sprite sprite) 13 | { 14 | Debug.Log("Rendered with Vulcan"); 15 | } 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.RendererVulcan.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8d87be20bbdde74ab2b3962be5f1431 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/Renderer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02c8286543af42a4389bfb3f288d99e3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/RendererClient.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | public class RendererClient : MonoBehaviour 6 | { 7 | private Renderer DirectX; 8 | private Renderer Vulcan; 9 | 10 | private void Awake() 11 | { 12 | DirectX = new Renderer(RendererType.DirectX); 13 | Vulcan = new Renderer(RendererType.Vulcan); 14 | } 15 | 16 | private void Update() 17 | { 18 | DirectX.Render(null); 19 | Vulcan.Render(null); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Renderer/Scripts/RendererClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec93ccb29b3926a4dae8292dc58bdf93 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9866088c1ca474e4aa62ba5ffd7ab6bf 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75a3c0c4620b61648a86be18c7914e18 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scenes/Resources.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2203cfc53ff2e848a2caae88e488c4b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7984a34350c14c54fb05622f89dbba6b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/BaseView.cs: -------------------------------------------------------------------------------- 1 | namespace Bridge 2 | { 3 | public abstract class BaseView 4 | { 5 | protected IResource Resource { get; } 6 | 7 | protected BaseView(IResource resource) 8 | { 9 | Resource = resource; 10 | } 11 | 12 | public abstract void Show(); 13 | 14 | public abstract void Hide(); 15 | } 16 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/BaseView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e1ba630c73771240a240b7ee26206be 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/IResource.cs: -------------------------------------------------------------------------------- 1 | namespace Bridge 2 | { 3 | public interface IResource 4 | { 5 | string Snippet { get; } 6 | string Title { get; } 7 | string Image { get; } 8 | string Url { get; } 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/IResource.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 834d99e3169462443a300b3d31ce41bc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/LongFormView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | public class LongFormView : BaseView 6 | { 7 | public LongFormView (IResource resource): base(resource) 8 | { 9 | 10 | } 11 | 12 | public override void Hide() 13 | { 14 | 15 | } 16 | 17 | public override void Show() 18 | { 19 | Debug.Log($"Display Long form view {Resource.Title} {Resource.Image} {Resource.Snippet} {Resource.Url}"); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/LongFormView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f4d3fb366e75f04a95fa17d44672d0e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceAlbum.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Bridge 4 | { 5 | 6 | public class ResourceAlbum : IResource 7 | { 8 | public string Title => "TITLE from Album Resource"; 9 | public string Snippet => "SNIPPET from Album Resource"; 10 | public string Image => "IMAGE from Album Resource"; 11 | public string Url => "URL from Album Resource"; 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceAlbum.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5aeff75a0522f7844a549399c0ec860a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceArtist.cs: -------------------------------------------------------------------------------- 1 | namespace Bridge 2 | { 3 | public class ResourceArtist : IResource 4 | { 5 | public string Title => "TITLE from Artist Resource"; 6 | public string Snippet => "SNIPPET from Artist Resource"; 7 | public string Image => "IMAGE from Artist Resource"; 8 | public string Url => "URL from Artist Resource"; 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceArtist.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ab0758f9f12387b429a35b96233e69a5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceBook.cs: -------------------------------------------------------------------------------- 1 | namespace Bridge 2 | { 3 | public class ResourceBook : IResource 4 | { 5 | public string Title => "TITLE from Book Resource"; 6 | public string Snippet => "SNIPPET from Book Resource"; 7 | public string Image => "IMAGE from Book Resource"; 8 | public string Url => "URL from Book Resource"; 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceBook.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c6a1e45b8ff8054f814cf500e1935ee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ResourceClient.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9198b24a8e3b45b2b3b99b281670436c 3 | timeCreated: 1616590416 -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ShortFormView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Bridge 4 | { 5 | public class ShortFormView : BaseView 6 | { 7 | public ShortFormView(IResource resource) : base(resource) 8 | { 9 | 10 | } 11 | 12 | public override void Hide() 13 | { 14 | 15 | } 16 | 17 | public override void Show() 18 | { 19 | Debug.Log($"Display Short form view {Resource.Title} {Resource.Image}"); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/Resources/Scripts/ShortFormView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 039dc0da6d614654981573064cc9bd5a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2ba37bbd7708f6f4cb569d0e9ecce924 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c187dc9a76e8f0048ba7ed701018851f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scenes/TaskScheduler.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b59e0ce49f83c34b9b2350332bfd723 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d02b26167aa365d4480fbec16c3e4a76 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/BaseScheduler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a93150800f101d4aa4b56831e091a43 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/IScheduler.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | 4 | namespace Bridge 5 | { 6 | /// 7 | /// An implementation inferface 8 | /// 9 | public interface IScheduler 10 | { 11 | void Schedule(Action task); 12 | void Execute(); 13 | } 14 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/IScheduler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cc5c51a621066e46b79548a6ffeb224 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/Scheduler_FIFO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b68dcdc3a277c6b4ba51f126eec5e91f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/Scheduler_LIFO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c25bdcb30b14244390f76e69a82def8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/TaskSchedulerAnimations_FIFO.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | 5 | namespace Bridge 6 | { 7 | /// 8 | /// A concrete usage of the interface. 9 | /// 10 | public class TaskSchedulerAnimations_FIFO : BaseScheduler 11 | { 12 | protected override IScheduler CreateScheduler() 13 | { 14 | return new Scheduler_FIFO(); 15 | } 16 | 17 | private int testId; 18 | [Button] 19 | private void TestTask() 20 | { 21 | testId++; 22 | var text = $"Test task: {testId}"; 23 | Schedule(() => Debug.Log(text)); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/TaskSchedulerAnimations_FIFO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8fdf1c38eb383c458ffe84e3a2a1052 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/TaskSchedulerUI_LIFO.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace Bridge 5 | { 6 | /// 7 | /// A concrete usage of the interface. 8 | /// 9 | public class TaskSchedulerUI_LIFO : BaseScheduler 10 | { 11 | protected override IScheduler CreateScheduler() 12 | { 13 | return new Scheduler_LIFO(); 14 | } 15 | 16 | private int testId; 17 | [Button] 18 | private void TestTask() 19 | { 20 | testId++; 21 | var text = $"Test task: {testId}"; 22 | Schedule(() => Debug.Log(text)); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Examples/TaskScheduler/Scripts/TaskSchedulerUI_LIFO.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05a99f5001c5cf045b54478f3f2af518 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Bridge/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27291576a90a3c14da9b064540192fd5 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Structural/Composite.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8f85dce9f7813044be63d2c7aedef62 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ca29980c62820647a9bdf527ff8d18a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 062218c303c8fef4dbeb90dfed13ea03 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e3f12115c5e4e6f80510448a35276a2 3 | timeCreated: 1571489585 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scene/TurnBasedGame.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5df5bbe432eb45f788420c16e0ffd8a0 3 | timeCreated: 1571489589 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26cd74e5200c4caf8c71bd2a2e247d84 3 | timeCreated: 1571489597 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/Game.Mechanics.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b337b2c73ae4a7190b9c85f5f6a16de 3 | timeCreated: 1571489644 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/TurnBasedGame.Game.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 309871817e374d70a5263f35b6f0d827 3 | timeCreated: 1571489558 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/TurnBasedGame.IGameMechanic.cs: -------------------------------------------------------------------------------- 1 | public partial class TurnBasedGame 2 | { 3 | public interface IGameMechanic 4 | { 5 | void StartTurn(); 6 | void FinishTurn(); 7 | void StartGame(); 8 | void EndGame(); 9 | } 10 | } -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/TurnBasedGame.IGameMechanic.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0b6e425e60f483eb7f9cc1d9e7d1701 3 | timeCreated: 1571489547 -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/TurnBasedGameMechanics.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public partial class TurnBasedGame : MonoBehaviour 4 | { 5 | public Game game = new Game(); 6 | 7 | [Button] 8 | public void StartTurn() => game.StartTurn(); 9 | 10 | [Button] 11 | public void FinishTurn() => game.FinishTurn(); 12 | 13 | [Button] 14 | public void StartGame() => game.StartGame(); 15 | 16 | [Button] 17 | public void EndGame() => game.EndGame(); 18 | } -------------------------------------------------------------------------------- /Assets/Structural/Composite/Example/Game/Scripts/TurnBasedGameMechanics.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be7fadda59e7ae449b45c13c0d87d00d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Readme.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ba22a4f55c138ed49bf35292e09ed1d4 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f426e7ff50aaa454d96077921a61acc6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural/Composite/Structure/CompositeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12357221cf4bab040850a92b7ec48537 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7c0d7a4b18680c439b992bdb4c37032 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Utils/Attributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f8236500de1a284f96bea7b185a9dcc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Utils/Attributes/ButtonAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | /// 4 | /// This attribute tells the Editor to draw a for a Method. 5 | /// Since is using reflection it works for private and protected methods too. 6 | /// Ref: https://github.com/dbrizov/NaughtyAttributes 7 | /// 8 | [AttributeUsage(AttributeTargets.Method)] 9 | public class ButtonAttribute : Attribute 10 | { 11 | public ButtonAttribute(string label) => Label = label; 12 | 13 | public ButtonAttribute() 14 | { 15 | } 16 | 17 | public string Label { get; } 18 | } -------------------------------------------------------------------------------- /Assets/Utils/Attributes/ButtonAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03612e9dc57033c4b82ce05d1bfca97c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Utils/Attributes/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3425bce668542e34eb1c7cbe62c9c956 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Utils/Attributes/Editor/ButtonAttributeInspectors.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d4d8e4d0e4fcfd4780affd392027a8c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 1024 20 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2020.1.13f1 2 | m_EditorVersionWithRevision: 2020.1.13f1 (5e24f28bfbc0) 3 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_RenderPipeSettingsPath: 10 | m_FixedTimeStep: 0.016666668 11 | m_MaxDeltaTime: 0.05 12 | -------------------------------------------------------------------------------- /ProjectSettings/VersionControlSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!890905787 &1 4 | VersionControlSettings: 5 | m_ObjectHideFlags: 0 6 | m_Mode: Visible Meta Files 7 | m_CollabEditorSettings: 8 | inProgressEnabled: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /UserSettings/EditorUserSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!162 &1 4 | EditorUserSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_ConfigSettings: 8 | vcSharedLogLevel: 9 | value: 0d5e400f0650 10 | flags: 0 11 | m_VCAutomaticAdd: 1 12 | m_VCDebugCom: 0 13 | m_VCDebugCmd: 0 14 | m_VCDebugOut: 0 15 | m_SemanticMergeMode: 2 16 | m_VCShowFailedCheckout: 1 17 | m_VCOverwriteFailedCheckoutAssets: 1 18 | m_VCOverlayIcons: 1 19 | m_VCAllowAsyncUpdate: 0 20 | --------------------------------------------------------------------------------