Ejemplo n.º 1
0
 public void Click()
 {
     if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.SelectLevel)
     {
         if (LocalData.GetInstance().GetLevelBoxStarsStateIndex(boxID) == 0)
         {
             if (GetAllLevelStarsNum() >= starNeedNum[boxID])
             {
                 GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundReward);
                 LocalData.GetInstance().SetCoin(openBoxGetCoinNum[boxID]);
                 UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "恭喜获得金币" + openBoxGetCoinNum[boxID]);
                 LocalData.GetInstance().SetLevelBoxStarsStateIndex(boxID, 1);
                 UIManager.GetInstance().selectLevel.GetComponent <SelectLevel>().RefurshTextCoin();
                 InitBaseData(boxID);
             }
             else
             {
                 UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "星星数量不足,无法开启宝箱");
             }
         }
         else
         {
             UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "宝箱已打开");
         }
     }
 }
Ejemplo n.º 2
0
 private void BoxClick()
 {
     if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.Win)
     {
         GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
         if (starNum == 3)
         {
             if (boxOpen == false)
             {
                 GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundReward);
                 int boxCoin = 300;
                 LocalData.GetInstance().SetCoin(300);
                 LocalData.GetInstance().SaveLocalData();
                 UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "恭喜您获得金币" + boxCoin);
                 btnBox.GetComponent <Image>().sprite = spriteBox[1];
                 boxOpen = true;
             }
             else
             {
                 UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "宝箱已经打开");
             }
         }
         else
         {
             UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "获得三星评价才能打开宝箱");
         }
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 道具 护盾 使用
 /// </summary>
 public void Item0Click()
 {
     if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.Game)
     {
         GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
         if (LocalData.GetInstance().GetItemSaveNum() > 0)
         {
             if (player.GetComponent <Player>().playerSaveTime <= 0)
             {
                 LocalData.GetInstance().ChangeItemSaveNum(-1);
                 player.GetComponent <Player>().SavePlayerStart();
                 GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundItem0);
                 textItemNum0.text = LocalData.GetInstance().GetItemSaveNum() + "";
             }
         }
         else
         {
             if (LocalData.GetInstance().GetCoin() >= 400)
             {
                 if (player.GetComponent <Player>().playerSaveTime <= 0)
                 {
                     player.GetComponent <Player>().SavePlayerStart();
                     GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundItem0);
                     LocalData.GetInstance().SetCoin(-400);
                     textUICoin.text = LocalData.GetInstance().GetCoin() + "";
                 }
             }
             else
             {
                 //UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "金币不足" + 1000 + ",无法使用道具");
                 OpenShop();
             }
         }
     }
 }
Ejemplo n.º 4
0
    void ClickGet1()
    {
        if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.Shop)
        {
            GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
            if (LocalData.GetInstance().GetCoin() >= 1000)
            {
                LocalData.GetInstance().SetCoin(-1000);
                LocalData.GetInstance().ChangeItemFireNum(1);
                //UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "恭喜您使用1000金币购买火力援助X1");
                //更新显示文本
                textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + "";
                textCoin.text     = LocalData.GetInstance().GetCoin() + "";
                GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundReward);

                //刷新游戏UI
                if (nextStep == UIManager.UIStep.Game)
                {
                    UIManager.GetInstance().game.GetComponent <Game>().textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + "";
                    UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text   = LocalData.GetInstance().GetCoin() + "";
                }
            }
            else
            {
                UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "金币不足" + 1000 + ",无法购买");
            }
        }
    }
Ejemplo n.º 5
0
 /// <summary>
 /// 初始化按钮数据状态
 /// </summary>
 /// <param name="_levelNum">关卡值</param>
 public void InitBtnBaseData(int _levelNum)
 {
     levelNum          = _levelNum;
     textLevelNum.text = "" + (levelNum + 1);
     starNum           = LocalData.GetInstance().GetLevelStarsIndex(levelNum);
     if (starNum == 3)
     {
         imageBack.sprite = btnImageBack[1];
     }
     else if (starNum == 2)
     {
         starImg2.color = Color.clear;
     }
     else if (starNum == 1)
     {
         starImg1.color = Color.clear;
         starImg2.color = Color.clear;
     }
     else
     {
         if (LocalData.GetInstance().GetMaxOpenLevel() < levelNum + 1)
         {
             imageBack.sprite  = btnImageBack[2];
             textLevelNum.text = "";
         }
         starImg0.color = Color.clear;
         starImg1.color = Color.clear;
         starImg2.color = Color.clear;
     }
 }
Ejemplo n.º 6
0
    /// <summary>
    /// 初始化宝箱数据
    /// </summary>
    /// <param name="_id"></param>
    public void InitBaseData(int _id)
    {
        boxID = _id;
        int _state = LocalData.GetInstance().GetLevelBoxStarsStateIndex(boxID);//宝箱状态

        imageBox.sprite  = spriteImgBack[_state];
        textStarNum.text = GetAllLevelStarsNum() + "/" + starNeedNum[boxID];
    }
Ejemplo n.º 7
0
 void ExitClick()
 {
     if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.StartMenu)
     {
         LocalData.GetInstance().SaveLocalData();
         GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
         UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.ExitPanel, true);
     }
 }
Ejemplo n.º 8
0
    private int GetAllLevelStarsNum()
    {
        int _totalStarsNum = 0;

        for (int i = 0; i < LocalData.MAXLEVELNUM; i++)
        {
            _totalStarsNum += LocalData.GetInstance().GetLevelStarsIndex(i);
        }
        return(_totalStarsNum);
    }
Ejemplo n.º 9
0
    /// <summary>
    /// 初始化关卡数据
    /// </summary>
    public void InitData()
    {
        if (LocalData.GetInstance().GetMaxOpenLevel() > 10)
        {
            currentPage = 1;
        }
        else
        {
            currentPage = 0;
        }

        InitButton();
        InitButton_Box();
        RefurshTextCoin();
    }
Ejemplo n.º 10
0
 /// <summary>
 /// 道具2使用
 /// </summary>
 public void Item1Click()
 {
     if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.Game)
     {
         GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
         if (LocalData.GetInstance().GetItemFireNum() > 0)
         {
             if (ballFirePanel.transform.childCount <= 0)
             {
                 LocalData.GetInstance().ChangeItemFireNum(-1);
                 for (int i = 0; i < 9; i++)
                 {
                     GameObject _ballFire = GameObject.Instantiate(ballFirePrefab, new Vector3(-490 + i * 120, -425, 0), Quaternion.identity) as GameObject;
                     _ballFire.transform.SetParent(ballFirePanel.transform);
                     _ballFire.GetComponent <BallFire>().InitData(new Vector3(-490 + i * 120, -425, 0));
                 }
                 GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundItem1);
                 textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + "";
             }
         }
         else
         {
             if (LocalData.GetInstance().GetCoin() >= 1000)
             {
                 if (ballFirePanel.transform.childCount <= 0)
                 {
                     for (int i = 0; i < 9; i++)
                     {
                         GameObject _ballFire = GameObject.Instantiate(ballFirePrefab, new Vector3(-490 + i * 120, -425, 0), Quaternion.identity) as GameObject;
                         _ballFire.transform.SetParent(ballFirePanel.transform);
                         _ballFire.GetComponent <BallFire>().InitData(new Vector3(-490 + i * 120, -425, 0));
                     }
                     GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundItem1);
                     LocalData.GetInstance().SetCoin(-1000);
                     textUICoin.text = LocalData.GetInstance().GetCoin() + "";
                 }
             }
             else
             {
                 //UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "金币不足" + 1000 + ",无法使用道具");
                 OpenShop();
             }
         }
     }
 }
Ejemplo n.º 11
0
    void ClickGet2()
    {
        if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.Shop)
        {
            GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
            //测试,免费获得金币
            LocalData.GetInstance().SetCoin(1000);
            //UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "恭喜您获得1000金币");
            //更新显示文本
            textCoin.text = LocalData.GetInstance().GetCoin() + "";
            GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundReward);

            //刷新游戏UI
            if (nextStep == UIManager.UIStep.Game)
            {
                UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text = LocalData.GetInstance().GetCoin() + "";
            }
        }
    }
Ejemplo n.º 12
0
 // Update is called once per frame
 void Update()
 {
     if (UIManager.GetInstance().game.GetComponent <Game>().currentGameState == Game.GameState.GamePlay)
     {
         //缩放
         delta -= 0.01f;
         delta  = Mathf.Clamp(delta, 0.4f, 1.0f);
         transform.localScale = new Vector3(delta * 100, delta * 100, 1);
         //移动
         transform.position = Vector3.MoveTowards(transform.position, new Vector3(512, 306, -50)
                                                  , speed * Time.deltaTime);
         if (transform.position.x >= 505)
         {
             GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundCoin);
             GameObject.Destroy(gameObject);
             LocalData.GetInstance().SetCoin(Random.Range(1, 3));
             UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text = LocalData.GetInstance().GetCoin() + "";
         }
     }
 }
Ejemplo n.º 13
0
    public void Click()
    {
        if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.SelectLevel)
        {
            if (UIManager.GetInstance().currentUIStep == UIManager.UIStep.SelectLevel)
            {
                GameController.GetInstance().audioMgr.PlaySound(AudioManager.SoundButtonClick);
                if (LocalData.GetInstance().GetMaxOpenLevel() >= levelNum + 1)
                {
                    UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.SelectLevel, false);
                    GameController.GetInstance().currentLevel = levelNum;

                    UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.Game, true);
                }
                else
                {
                    UIManager.GetInstance().ShowOrHideUI(UIManager.UIStep.TipsPanel, true, "当前关卡未开启");
                }
            }
        }
    }
Ejemplo n.º 14
0
    /// <summary>
    /// 初始化游戏数据
    /// </summary>
    public void InitGame()
    {
        int[] idMap = new int[] { 1, 0, 2, 1, 0, 2, 1, 0, 2, 1, 0, 2, 1, 0, 2, 1, 0, 2, 1, 2 };
        imgMap.sprite     = imageMap[idMap[GameController.GetInstance().currentLevel]];
        imgUIScore.sprite = imageUIScoreBack[idMap[GameController.GetInstance().currentLevel]];

        currentGameState = GameState.GameTask;
        textUITime.text  = GameController.GetInstance().currentLevelTime + "";
        textUIScore.text = GameController.GetInstance().currentLevelScore + "";
        textUICoin.text  = LocalData.GetInstance().GetCoin() + "";

        ResetPower();

        textSysTips.color   = Color.clear;
        showTextSysTipsTime = -1;

        //enemyTotalNum = 5+GameController.GetInstance().currentLevel/5;
        enemyTotalNum       = new int[] { 5, 5, 5, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15 }[GameController.GetInstance().currentLevel];
        enemyCurrentNum     = 0;
        enemyCreateTime     = 400;
        enemyCreateTotalNum = 0;

        textItemNum0.text = LocalData.GetInstance().GetItemSaveNum() + "";
        textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + "";

        m_Timer = 0;

        taskShowTime = 0;
        gameTask.GetComponent <GameTask>().InitData();
        gameTask.SetActive(true);

        player.GetComponent <Player>().InitData();
        enemyCar.GetComponent <EnemyCar>().InitPosition();

        ShowOrHidePowerUI(false);
        ShowOrHideCoinItem();
        GameController.GetInstance().audioMgr.PlayMusic(AudioManager.MusicGame);
    }
Ejemplo n.º 15
0
 public void InitData()
 {
     textCoin.text = LocalData.GetInstance().GetCoin() + "";
     //刷新游戏UI
     UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text = LocalData.GetInstance().GetCoin() + "";
 }
Ejemplo n.º 16
0
 private void Awake()
 {
     LocalData.GetInstance().LoadLocalData();
 }
Ejemplo n.º 17
0
 /// <summary>
 /// 显示或者隐藏道具金币图
 /// </summary>
 public void ShowOrHideCoinItem()
 {
     imageCoinItem0.transform.gameObject.SetActive(LocalData.GetInstance().GetItemSaveNum() <= 0 ? true : false);
     imageCoinItem1.transform.gameObject.SetActive(LocalData.GetInstance().GetItemFireNum() <= 0 ? true : false);
 }
Ejemplo n.º 18
0
 public void InitData()
 {
     textCoin.text     = LocalData.GetInstance().GetCoin() + "";
     textItemNum0.text = LocalData.GetInstance().GetItemSaveNum() + "";
     textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + "";
 }
Ejemplo n.º 19
0
    /// <summary>
    /// 初始化结束界面数据
    /// </summary>
    public void InitData()
    {
        boxOpen = false;
        btnBox.GetComponent <Image>().sprite = spriteBox[0];
        //金币
        int firstWinAddCoinNum = 0;

        //首次通关
        if (GameController.GetInstance().currentLevel + 1 == LocalData.GetInstance().GetMaxOpenLevel())
        {
            firstWinAddCoinNum  = new int[] { 100, 150, 200, 250, 300, 300, 300, 300, 300, 300, 350, 400, 450, 500, 550, 600, 600, 600, 600, 600 }[GameController.GetInstance().currentLevel];
            textAddCoinNum.text = "+" + firstWinAddCoinNum;
            imageFirst.transform.gameObject.SetActive(true);
        }
        else
        {
            imageFirst.transform.gameObject.SetActive(false);
        }
        totalCoinNum = GameController.GetInstance().currentLevelCoinNum + firstWinAddCoinNum;
        LocalData.GetInstance().SetCoin(totalCoinNum);
        //textScore.text = "+"+totalCoinNum;
        //计算关卡星级//30秒内胜利三星,60秒内胜利两星,大于60秒1星
        if (GameController.GetInstance().currentLevelTime <= 30 + GameController.GetInstance().currentLevel *5)
        {
            starNum     = 3;
            star1.color = Color.white;
            star2.color = Color.white;
        }
        else if (GameController.GetInstance().currentLevelTime <= (30 + GameController.GetInstance().currentLevel * 5) * 2)
        {
            starNum     = 2;
            star1.color = Color.white;
            star2.color = Color.clear;
        }
        else
        {
            starNum     = 1;
            star1.color = Color.clear;
            star2.color = Color.clear;
        }
        //刷新星级
        if (LocalData.GetInstance().GetLevelStarsIndex(GameController.GetInstance().currentLevel) < starNum)
        {
            LocalData.GetInstance().SetLevelStarsIndex(GameController.GetInstance().currentLevel, starNum);
        }

        int _tipsID = (int)(Random.value * 3);

        textTips.text = "小诀窍:<color=#ffffff>三星评价可以打开三星宝箱</color>";
        switch (_tipsID)
        {
        case 0:
            textTips.text = "小诀窍:<color=#ffffff>规定时间以内胜利可以获得3星评价</color>";
            break;

        case 1:
            textTips.text = "小诀窍:<color=#ffffff>消灭怪兽可以获得金币</color>";
            break;

        case 2:
        default:
            textTips.text = "小诀窍:<color=#ffffff>合理使用道具可以快速获得胜利</color>";
            break;
        }

        textScore.text = LocalData.GetInstance().GetCoin() + "";
        //刷新游戏UI

        UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text = LocalData.GetInstance().GetCoin() + "";
        if (GameController.GetInstance().currentLevel + 1 == LocalData.GetInstance().GetMaxOpenLevel())
        {
            LocalData.GetInstance().SetMaxOpenLevel(GameController.GetInstance().currentLevel + 2);
        }
        //保存本地数据
        LocalData.GetInstance().SaveLocalData();
    }
Ejemplo n.º 20
0
 public void RefurshTextCoin()
 {
     textCoin.text = "" + LocalData.GetInstance().GetCoin();
 }
Ejemplo n.º 21
0
    /// <summary>
    /// 显示/隐藏页面
    /// </summary>
    /// <param name="_isShow">显示true;隐藏false</param>
    /// <param name="_ext1">扩展参数1</param>
    public void ShowOrHideUI(UIStep _step, bool _isShow, string _ext1 = null)
    {
        switch (_step)
        {
        case UIStep.StartMenu:
            startMenu.SetActive(_isShow);
            LocalData.GetInstance().SaveLocalData();
            break;

        case UIStep.ExitPanel:
            //startMenu.transform.Find("ExitPanel").gameObject.SetActive(_isShow);
            exitPanel.SetActive(_isShow);
            break;

        case UIStep.SelectLevel:
            selectLevel.SetActive(_isShow);
            if (_isShow)
            {
                selectLevel.GetComponent <SelectLevel>().InitData();
            }
            break;

        case UIStep.TipsPanel:
            tipsPanel.SetActive(_isShow);
            if (_isShow)
            {
                tipsPanel.GetComponent <TipsPanel>().InitBaseData(_ext1, currentUIStep);
            }
            break;

        case UIStep.Game:
            game.SetActive(_isShow);
            if (_isShow)
            {
                GameController.GetInstance().InitGameData();
                game.GetComponent <Game>().InitGame();
            }
            break;

        case UIStep.Pause:
            pausePanel.SetActive(_isShow);
            break;

        case UIStep.Win:
            winPanel.SetActive(_isShow);
            if (_isShow)
            {
                winPanel.GetComponent <WinPanel>().InitData();
            }
            break;

        case UIStep.Lose:
            losePanel.SetActive(_isShow);
            if (_isShow)
            {
                losePanel.GetComponent <LosePanel>().InitData();
            }
            break;

        case UIStep.Shop:
            shopPanel.SetActive(_isShow);
            if (_isShow)
            {
                shopPanel.GetComponent <ShopPanel>().InitData();
            }
            break;
        }
        if (_isShow)
        {
            currentUIStep = _step;
        }
    }