Example #1
0
    void Awake()
    {
        // Creating Game Board
        this.gameBoard = new GameBoardController(this.boardView, new GameBoardModel(ROWS, COLS));

        // Creating Players
        var userPlayer = new UserPlayer(gameBoard, TileMark.Cross);
        // Use different AI player settings based on selected difficulty
        AbstractPlayer aiPlayer;

        if (PlayerProfile.PreferredDifficulty == 0)
        {
            aiPlayer = new RandomAIPlayer(gameBoard, TileMark.Circle);
        }
        else
        {
            aiPlayer = new MinMaxAIPlayer(gameBoard, TileMark.Circle, PlayerProfile.PreferredDifficulty == 1 ? 0.3f : 0.0f);
        }

        this.turnManager = new TurnManager(gameBoard, userPlayer, aiPlayer);
        this.hudManager.Init();

        // Initializing State Machine
        this.fsm = new SKStateMachine <GameManager>(this, new GameplayState());
        this.fsm.addState(new GameoverState());
        this.fsm.addState(new GameLoadingState());
#if DEBUG
        this.fsm.onStateChanged += () => {
            Debug.LogFormat("<color=green>GameManager FSM state changed to {0}</color>", this.fsm.currentState);
        };
#endif
    }
        private void Start()
        {
            battleSystem = GameObject.Find("/BattleSystem").GetComponent <BattleSystem.BattleSystem>();

            sm = new SKStateMachine <Unit>(this, new Idle());

            sm.addState(new ShowingContextMenu());
            sm.addState(new ChangeDamageMultiplier());
            sm.addState(new TakeDamage());
            sm.addState(new DisableAttack());
            sm.addState(new Inactive());
            sm.addState(new Die());
            sm.addState(new DecreaseActionCount());
            sm.addState(new EnteringWinnigArea());
            sm.addState(new LeavingWinnigArea());

            overlay = transform.Find("Overlay").gameObject;

            canStepOntoBlueTiles = Array.Exists(properties.tags, tag => tag == Tag.CanStepOntoBlueTiles);

            sr = GetComponent <SpriteRenderer>();
            TryGetComponent(out audioSource);

            LoadSprites();

            health      = properties.health;
            totalHealth = properties.health;

            return;
        }
    void Start()
    {
        agent = GetComponent<NavMeshAgent>();
        character = GetComponent<ThirdPersonCharacter>();

        _machine = new SKStateMachine<EnemyAIController>(this, new EnemyAIPatrol());
        _machine.addState(new EnemyAIChase());
    }
 void Start()
 {
     // the initial state has to be passed to the constructor
     _machine = new SKStateMachine<GameController>( this, new StartState() );
     _machine.addState( new GetReadyState() );
     _machine.addState( new PlayingState() );
     _machine.addState( new GameOverState() );
 }
    void Start()
    {
        agent     = GetComponent <NavMeshAgent>();
        character = GetComponent <ThirdPersonCharacter>();

        _machine = new SKStateMachine <EnemyAIController>(this, new EnemyAIPatrol());
        _machine.addState(new EnemyAIChase());
    }
Example #6
0
    void Start()
    {
        // our context can be any type at all
        var someClass = new SomeClass();

        // the initial state has to be passed to the constructor
        _machine = new SKStateMachine<SomeClass>( someClass, new PatrollingState() );
    }
Example #7
0
 void CreateStateMachine()
 {
     stateMachine = new SKStateMachine <GameManager>(this, new GameState.IntroScreen());
     stateMachine.addState(new GameState.PreGame());
     stateMachine.addState(new GameState.Game());
     stateMachine.addState(new GameState.Win());
     stateMachine.addState(new GameState.GameOver());
     stateMachine.addState(new GameState.Restart());
 }
Example #8
0
    void Start()
    {
        // our context can be any type at all
        var someClass = new SomeClass();

        // the initial state has to be passed to the constructor
        _machine = new SKStateMachine <SomeClass>(someClass, new PatrollingState());
        _machine.addState(new ChasingState());
    }
Example #9
0
        void Awake()
        {
            if (instance == null) instance = this;

            var heartModel = new HeartModel();
            _heartStateMachine = new SKStateMachine<HeartModel>(heartModel, new HeartCalmState());

            var lightModel = new LightModel();
            _lightStateMachine = new SKStateMachine<LightModel>(lightModel, new LightOffState());
        }
Example #10
0
    // Use this for initialization
    void Start()
    {
        _machine = new SKStateMachine <HospitalStates> (this, new HospitalIdle());
        _machine.addState(new HospitalRoomPlacement());
        _machine.addState(new HospitalRemoveRoom());
        _machine.addState(new HostpitalFurnishSelectPos());
        _machine.addState(new HospitalSelectRoomFurnish());

        Hover.SetAsLastSibling();
        roomSelectedFromUI = RoomType.None;
    }
Example #11
0
    void Start()
    {
        // our context can be any type at all
        var someClass = new SomeClass();

        // the initial state has to be passed to the constructor
        _machine = new SKStateMachine<SomeClass>( someClass, new PatrollingState() );

        // another option is to pass the type of the initial state to the constructor
        //_machine = new SKStateMachine<SomeClass>( someClass, typeof( PatrollingState ) );
    }
        public void Start()
        {
            stateMachine = new SKStateMachine<GameFlowController>(this, new StartingUp(StartAutomatically));

            stateMachine.onStateChanged += StateMachine_onStateChanged;

            stateMachine.addState(new ShowingCellphone(CellphonePrefab, MainCanvas));
            stateMachine.addState(new InMinigame());
            stateMachine.addState(new MinigameFinished());
            stateMachine.addState(new DecidingNextMinigame());
            stateMachine.addState(new SpeedingUp());
            stateMachine.addState(new EnteringPowerBattle());
            stateMachine.addState(new FailedGame());
        }
Example #13
0
        private void Start()
        {
            sm = new SKStateMachine <BattleSystem>(this, new ShowingMainMenu());
            sm.addState(new Idle());
            sm.addState(new MovingUnit());
            sm.addState(new ChangeSide());
            sm.addState(new Aiming());
            sm.addState(new Inactive());
            sm.addState(new NewGame());
            sm.addState(new GameOver());
            sm.addState(new ShowingHowToPlay());

            UIHandler.OnSwitchMode += UIHandler_OnSwitchMode;
            UIHandler.OnNewGame    += UIHandler_OnNewGame;
            UIHandler.OnQuit       += UIHandler_OnQuit;
            UIHandler.OnHowToPlay  += UIHandler_OnHowToPlay;
        }
Example #14
0
	void Start()
	{
		// fetch our waypoint positions so we have a purpose in life
		var waypointRoot = GameObject.Find( "Waypoints" );
		var rawWaypoints = waypointRoot.GetComponentsInChildren<Transform>();
		foreach( var t in rawWaypoints )
		{
			// filter out the root objects position
			if( !t.Equals( waypointRoot.transform ) )
				waypoints.Add( t.position );
		}

		// the initial state has to be passed to the constructor
		_machine = new SKStateMachine<EnemyController>( this, new EnemyPatrol() );

		// we can now add any additional states
		_machine.addState( new EnemyChase() );
	}
Example #15
0
    void Start()
    {
        // fetch our waypoint positions so we have a purpose in life
        var waypointRoot = GameObject.Find("Waypoints");
        var rawWaypoints = waypointRoot.GetComponentsInChildren <Transform>();

        foreach (var t in rawWaypoints)
        {
            // filter out the root objects position
            if (!t.Equals(waypointRoot.transform))
            {
                waypoints.Add(t.position);
            }
        }

        // the initial state has to be passed to the constructor
        _machine = new SKStateMachine <EnemyController>(this, new EnemyPatrol());

        // we can now add any additional states
        _machine.addState(new EnemyChase());
    }
Example #16
0
 public static void ChangeHeartState(int HeartRate, SKStateMachine<HeartModel> Machine )
 {
     if (HeartRate <= 20)
     {
         Machine.changeState<HeartCalmState>();
     }
     else if (HeartRate <= 40)
     {
         Machine.changeState<HeartAlertState>();
     }
     else if (HeartRate <= 60)
     {
         Machine.changeState<HeartDangerState>();
     }
     else if (HeartRate <= 99)
     {
         Machine.changeState<HeartPanicState>();
     }
     else
     {
         //dead
     }
 }
Example #17
0
    void Start()
    {
        machine = new SKStateMachine <PhaseHandler>(this, new Phase1State());

        machine.addState(new Phase2State());
        machine.addState(new Phase3State());
        machine.addState(new Phase4State());
        machine.addState(new Phase5State());
        machine.addState(new Phase6State());
        machine.addState(new Phase7State());
        machine.addState(new Phase8State());
        machine.addState(new Phase9State());

        machine.addState(new SkyPhase1State());
        machine.addState(new SkyPhase2State());
        machine.addState(new SkyPhase3State());
        machine.addState(new SkyPhase4State());

        music.Play();
        groundScenery = Instantiate(groundSceneryPrefab);
        GameMaster.instance.phase7Start = GameMaster.instance.phase7Start - meteorSpawnerPrefab.meteorEntity.fallTimerLength;
        GameMaster.instance.phase8Start = GameMaster.instance.phase8Start - meteorSpawnerPrefab.meteorEntity.fallTimerLength;
    }
Example #18
0
 internal void SetMachineAndContext(SKStateMachine <T> machine, T context)
 {
     _machine = machine;
     _context = context;
     OnInitialized();
 }
 void Awake()
 {
     _machine = new SKStateMachine<PlayerModel>(GetComponent<PlayerModel>(), new PlayerAirState());
     _machine.addState(new PlayerGroundedState());
     _machine.addState(new PlayerGroundedJumpTransition());
 }