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, "宝箱已打开"); } } }
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, "获得三星评价才能打开宝箱"); } } }
/// <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(); } } } }
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 + ",无法购买"); } } }
/// <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; } }
/// <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]; }
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); } }
private int GetAllLevelStarsNum() { int _totalStarsNum = 0; for (int i = 0; i < LocalData.MAXLEVELNUM; i++) { _totalStarsNum += LocalData.GetInstance().GetLevelStarsIndex(i); } return(_totalStarsNum); }
/// <summary> /// 初始化关卡数据 /// </summary> public void InitData() { if (LocalData.GetInstance().GetMaxOpenLevel() > 10) { currentPage = 1; } else { currentPage = 0; } InitButton(); InitButton_Box(); RefurshTextCoin(); }
/// <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(); } } } }
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() + ""; } } }
// 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() + ""; } } }
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, "当前关卡未开启"); } } } }
/// <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); }
public void InitData() { textCoin.text = LocalData.GetInstance().GetCoin() + ""; //刷新游戏UI UIManager.GetInstance().game.GetComponent <Game>().textUICoin.text = LocalData.GetInstance().GetCoin() + ""; }
private void Awake() { LocalData.GetInstance().LoadLocalData(); }
/// <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); }
public void InitData() { textCoin.text = LocalData.GetInstance().GetCoin() + ""; textItemNum0.text = LocalData.GetInstance().GetItemSaveNum() + ""; textItemNum1.text = LocalData.GetInstance().GetItemFireNum() + ""; }
/// <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(); }
public void RefurshTextCoin() { textCoin.text = "" + LocalData.GetInstance().GetCoin(); }
/// <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; } }