Esempio n. 1
0
    // 190122 LifeBalance
    // When game is over, Reset all parameter (will)
    public void ResetGame()
    {
        Destroy(player.gameObject);

        player       = Instantiate(playerPrefab, playerPrefab.transform.position, Quaternion.Euler(0, 0, 0));
        playerScript = player.GetComponent <ControllerPlayer>();
        playerScript.SetCallbacks(CBPlayerDie, CBGetItem, CBChangeGameStart);

        //playerScript.SetCallback(0, CBPlayerDie);
        //playerScript.SetCallback(1, CBGetItem);
        //player.GetComponent<ControllerPlayer>().SetCallback(0, PlayerDie);
        playerPos = player.transform.position;

        Lobby.SetCallBacksTest(CBGameStart);
        player.transform.position = playerSlot.transform.position;

        PublicValueStorage.Instance.SetValues(player);
        PublicValueStorage.Instance.SetAddSpeedRivisionValue(1.0f);

        gamePlayUI.SetActive(false);
        Lobby.gameObject.SetActive(true);

        createdEnemies = 0;

        enemyPos.Clear();

        CompareBestScore();
        creditboardInUI.text = "" + credit;

        score           = 0;
        scoreboard.text = "" + score;

        levelWithDiedEnemy = 0;

        SaveData.Instance.SaveUserData();


        onPlayerDie = null;
        isBossAlive = false;

        if (onDestroyAllObject != null)
        {
            onDestroyAllObject();
            onDestroyAllObject = null;
        }


        ChangeGameState(GameState.Lobby);
        SoundManager.Instance.BgmSpeaker(SoundManager.BGM.Lobby, SoundManager.State.Play);
    }
Esempio n. 2
0
    // Use this for initialization
    void Awake()
    {
        //
        //
        //
        // Set ScreenSize
        //
        //
        //

        //Screen.SetResolution(720, 720 * (9 / 16), false);

        //
        //
        //
        //
        // Game Init Area
        //
        //
        //
        //
        //
        //

        player       = Instantiate(playerPrefab, playerPrefab.transform.position, Quaternion.Euler(0, 0, 0));
        playerScript = player.GetComponent <ControllerPlayer>();
        playerScript.SetCallbacks(CBPlayerDie, CBGetItem, CBChangeGameStart);
        //playerScript.SetCallback(0, CBPlayerDie);
        //playerScript.SetCallback(1, CBGetItem);
        //player.GetComponent<ControllerPlayer>().SetCallback(0, PlayerDie);
        playerPos = player.transform.position;


        PublicValueStorage.Instance.SetPlayerConstPosition(playerPosition);
        PublicValueStorage.Instance.SetValues(player);


        if (debugNotCreatePlayer == true)
        {
            player.SetActive(false);
        }



        PublicValueStorage.Instance.SetCallbacks(CBMissileScoreAdd, CBAddEnemyPosition, CBUseItem, CBGetRandomEnemyPos, RefreshCreditPVC, CBGetBestScore, CBBossDie);

        onBossDie += CBonBossDie;

        screenHeight = 2 * Camera.main.orthographicSize;
        screenWidth  = screenHeight * Camera.main.aspect;
        //screenSize[1] = screenWidth;
        //screenSize[0] = screenHeight;

        PublicValueStorage.Instance.SetScreenSize(screenHeight, screenWidth);


        //Debug.Log("height : " + screenHeight);
        //Debug.Log("width : " + screenWidth);


        // 190207 LifeBalance
        // Set All Spawn And Battle Area
        enemySpawnBox.bottomLeft.x = screenWidth * enemyBoxScaleStart.x;
        enemySpawnBox.bottomLeft.y = screenHeight * enemyBoxScaleStart.y;
        enemySpawnBox.upRight.x    = screenWidth * enemyBoxScaleEnd.x;
        enemySpawnBox.upRight.y    = screenHeight * enemyBoxScaleEnd.y;

        enemyBattleBox.bottomLeft.x = screenWidth * enemyBoxScaleStart.x;
        enemyBattleBox.bottomLeft.y = screenHeight * enemyBoxScaleStart.y;
        enemyBattleBox.upRight.x    = screenWidth * enemyBoxScaleEnd.x;
        enemyBattleBox.upRight.y    = screenHeight * enemyBoxScaleEnd.y;

        ///////////////////////////////////////////
        //////////////////////////////////////////
        ///////// 1월 16일 여기까지 했음 //////////
        ///////////////////////////////////////////
        // notice
        // Delegate Event 로 게임 매니저와 탄, 적들을 묶음
        // Delegate Enete 로 게임 매니저와 플레이어를 묶어 게임 오버 신호 가도록 설정함

        //////////////////////
        // 1월 18일 할일
        // 인스턴스로 만든 경우 - 게이지 작동안함, 콜백 작동함
        // 인스턴스로 안만든 경우 - 게이지 작동함, 콜백 작동안함
        // 해결할 것
        // 1월 19일 해결

        // 190125 LifeBalance
        // Set Item Box
        // 190131
        // Add Class

        itemSlotBox = new ItemSlotBox[itemSlotEa];

        for (int i = 0; i < itemSlotBox.Length; i++)
        {
            itemSlotBox[i] = new ItemSlotBox(buttonPrefab, itemSlot, i);
        }

        foreach (ItemOptions value in itemOption)
        {
            itemAllChanceValue += value.dropChance;
        }

        scoreboard.text = "" + score;

        createEnemies = remainEnemies = Random.Range(createEnemiesMin, createEnemiesMax);

        ChangeGameState(GameState.Lobby);


        //
        //
        //
        //
        // Lobby Area
        //
        //
        //
        //
        //

        gamePlayUI.SetActive(false);
        Lobby.SetCallbacks(CBGameStart, null, CBDeactiveShop, null);

        //player.transform.SetParent(playerSlot.transform);
        player.transform.position = playerSlot.transform.position;

        bestScoreBoard.text  = "" + bestScore;
        creditboardInUI.text = "" + credit;

        if (File.Exists(Application.persistentDataPath + "/OnePlane.dat") == true)
        {
            //Debug.Log(Application.persistentDataPath);
            SaveData.Instance.LoadUserData();
            credit               = SaveData.Instance.LoadCredit();
            bestScore            = SaveData.Instance.LoadBestScore();
            bestScoreBoard.text  = "" + bestScore;
            creditboardInUI.text = "" + SaveData.Instance.LoadCredit();
            //Debug.Log(SaveData.Instance.LoadCredit());
            //Debug.Log(SaveData.Instance.LoadBestScore());
            SetPlane();
        }
        else
        {
            //Debug.Log("There is no savedata");
        }
        SoundManager.Instance.BgmSpeaker(SoundManager.BGM.Lobby, SoundManager.State.Play);
    }