public SimulationInitializeState(IStateController <SimulationState> controller,
                                  TestUnitFactory unitFactory,
                                  Player player,
                                  SimulationOnGui onGui,
                                  BaseWorld world,
                                  WorldData worldData)
 {
     _controller  = controller;
     _unitFactory = unitFactory;
     _player      = player;
     _onGui       = onGui;
     _world       = world;
     _worldData   = worldData;
 }
示例#2
0
 public SimulationStatesFactory(IStateController <SimulationState> controller,
                                TestUnitFactory unitFactory,
                                SimulationOnGui simulationOnGui,
                                Player player,
                                WorldData worldData, BaseWorld gameWorld)
 {
     _unitFactory     = unitFactory;
     _dummyState      = new DummyState();
     _stateBehaviours = new Dictionary <SimulationState, IStateBehaviour>()
     {
         { SimulationState.Idle, new SimulationIdleState(gameWorld) },
         { SimulationState.Initialize, new SimulationInitializeState(controller, unitFactory, player,
                                                                     simulationOnGui, gameWorld, worldData) },
     };
 }
示例#3
0
        public override IEnumerator Execute()
        {
            _gui         = new GameObject("GuiConroller").AddComponent <SimulationOnGui>();
            _unitFactory = _worldData.GetComponent <TestUnitFactory>();
            var relationshipMap = CreateRelationshipMap();

            _gameWorld = CreateWorld(relationshipMap);
            _player    = CreatePlayer(_gameWorld);


            //start state
            var stateManager = CreateStateManager();

            stateManager.SetState(SimulationState.Initialize);

            while (stateManager.CurrentState != SimulationState.Leave)
            {
                yield return(null);
            }
        }