コード例 #1
0
    void OnTriggerStay(Collider other)
    {
        if (other.tag == "Player")
        {
            switch (EscapingState.state)
            {
            case EscapingState.BEGINNING:
                EscapingState.state = EscapingState.EXIT_FOUND;
                TargetMenu.addTarget("Find the elevator.");
                startAllElevator();
                break;

            case EscapingState.KEY_FOUND:
                if (GameState.state != GameState.FINISHED)
                {
                    Destroy(gameObject);
                    GameState.state = GameState.FINISHED;
                    GameState.win   = true;
                    playerCharacterMotor.enabled = false;
                    playerMouseLook.enabled      = false;
                }
                break;
            }
        }
    }
コード例 #2
0
 void OnTriggerEnter(Collider other)
 {
     if (other.tag == "Player")
     {
         EscapingState.state = EscapingState.KEY_FOUND;
         TargetMenu.addTarget("Go back to the exit. RUN!!");
         boss.becomeInsaneMode();
         Destroy(gameObject);
     }
 }
コード例 #3
0
    void Start()
    {
        Debug.Log(GameState.difficulty);

        GameState.state = GameState.PLAYING;
        Time.timeScale  = 1;

        for (int h = 0; h < MAZE_H; h++)
        {
            if (MazeData.getRandomMazeData(MAZE_R, MAZE_C, GameState.difficulty) != null)
            {
                // Offline
                basicMazes.Add(new BasicMaze(MAZE_R, MAZE_C));
            }
            else
            {
                // Online
                // Online assume difficuty = 0
                generateBasicMaze();
            }

            if (isDebugging)
            {
                basicMazes[h].log();
            }
        }

        instantiateMaze();

        allocateItem();

        initialRandomEvent();

        generatePlayer();

        generateBoss();

        switch (GameMode.mode)
        {
        case GameMode.ESCAPING:
            EscapingState.state = EscapingState.BEGINNING;
            TargetMenu.addTarget("Find the exit.");
            break;

        case GameMode.INFINITE:
            TargetMenu.addTarget("Try to survive!");
            break;
        }
    }
コード例 #4
0
 void OnTriggerEnter(Collider other)
 {
     if (GameMode.mode != GameMode.ESCAPING)
     {
         return;
     }
     if (other.tag == "Player")
     {
         if (EscapingState.state == EscapingState.EXIT_FOUND)
         {
             EscapingState.state = EscapingState.ELEVATOR_FOUND;
             TargetMenu.addTarget("Find the key in the maze.");
             mainAudioSource.audio.Stop();
             mainAudioSource.audio.clip = moreHorrorTheme;
             mainAudioSource.audio.Play();
         }
     }
 }
コード例 #5
0
        public void SetUp()
        {
            _menuInput   = new MockInput();
            _menuOutput  = new MockOutput();
            _menuManager = new TestMenuManager(_menuInput, _menuOutput);

            _player = (HumanFighter)FighterFactory.GetFighter(FighterType.HumanControlledPlayer, 1);
            _ally1  = FighterFactory.GetFighter(FighterType.Fairy, 1);
            _ally2  = FighterFactory.GetFighter(FighterType.Goblin, 1);

            _playerTeamNoAllies   = new Team(_menuManager, _player);
            _playerTeamWithAllies = new Team(_menuManager, _player, _ally1, _ally2);

            _enemyTeam = CreateEnemyTeam();

            _menu = (TargetMenu)Globals.MenuFactory.GetMenu(MenuType.ChooseTargetMenu, _menuInput, _menuOutput);
            _menu.Build(_player, _playerTeamNoAllies, _enemyTeam, null);
        }
コード例 #6
0
    void loadLevel()
    {
        switch (GameMode.mode)
        {
        case GameMode.ESCAPING:
            TargetMenu.clearTarget(false);
            if (GameState.escapingDemo)
            {
                loadingWithAnimation.loadLevelWithAnimation("EscapingDemo");
            }
            else
            {
                loadingWithAnimation.loadLevelWithAnimation("EscapingOldCastle");
            }
            break;

        case GameMode.INFINITE:
            TargetMenu.clearTarget(false);
            loadingWithAnimation.loadLevelWithAnimation("InfiniteOldCastle");
            break;
        }
    }
コード例 #7
0
 public void TearDown()
 {
     _menu       = null;
     _menuInput  = null;
     _menuOutput = null;
 }