Esempio n. 1
0
    private void Reset()
    {
        Power = 0;

        if (_currentPanel != null)
        {
            _currentPanel.Destroy();
        }

        _capsuleSuperStarPanel = null;

        SetProgress(0, MaxPower, true);

        _model.Reset();
        _capsuleBattlePanel.Restart();

        _battleFinalBg.Hide();
        _battleCommon.Show();

        _battleCommon.transform.Find("PowerBar").gameObject.Show();

        new AssetLoader().LoadAudio(AssetLoader.GetBackgrounMusicById("battleBgm"),
                                    (clip, loader) => { AudioManager.Instance.PlayBackgroundMusic(clip); });
    }
Esempio n. 2
0
    public override void OnMessage(Message message)
    {
        string name = message.Name;

        object[] body = message.Params;
        switch (name)
        {
        case MessageConst.CMD_CAPSULEBATTLE_SET_POWER:
            SetProgress((int)body[0], MaxPower);
            _battleCommon.Show();
            _model.IsGetBattleResult = true;
            ClientTimer.Instance.DelayCall(OnBattleResult, 1f);
            break;

        case MessageConst.CMD_CAPSULEBATTLE_CHANGE_POWER:
            _battleCommon.Show();
            Power += (int)body[0];
            SetProgress(Power, MaxPower);
            break;

        case MessageConst.CMD_CAPSULEBATTLE_SHOW_SUPPORTER_VIEW:
            _capsuleSupporterPanel = new CapsuleSupporterPanel();
            _capsuleSupporterPanel.Init(this);
            _capsuleSupporterPanel.Show(0);
            _currentPanel = _capsuleSupporterPanel;
            break;

        case MessageConst.CMD_CAPSULEBATTLE_NEXT:
            if (_currentPanel == _capsuleSupporterPanel)
            {
                _currentPanel.Destroy();
                Queue <string> fansInfo  = (Queue <string>)body[0];
                int            tempPower = (int)body[1];
                _capsuleBattlePanel.GetFansInfo(fansInfo);
                _capsuleBattlePanel.GetPower(tempPower);
                _currentPanel = _capsuleBattlePanel;
            }
            else if (_currentPanel == _capsuleBattlePanel)
            {
                _capsuleSuperStarPanel = new CapsuleSuperStarPanel();
                _capsuleSuperStarPanel.Init(this);
                _capsuleSuperStarPanel.Show(0);
                _currentPanel = _capsuleSuperStarPanel;
                _battleCommon.Hide();
            }
            break;

        case MessageConst.CMD_CAPSULEBATTLE_SUPERSTAR_CONFIRM:
            _model.IsShowingAnimation = true;
            _capsuleSuperStarPanel.Hide();
            _battleCommon.Show();
            Power += (int)body[0];
            SetProgress(Power, MaxPower);
            break;

        case MessageConst.CMD_CAPSULEBATTLE_SHOW_REWARD:
            _currentPanel.Destroy();
            _currentPanel = new CapsuleFinalEstimateRewardPanel();
            _currentPanel.Init(this);

            _battleFinalBg.Show();
            _battleCommon.Hide();
            _battleFinalBg.transform.SetSiblingIndex(0);
            break;

        case MessageConst.CMD_CAPSULEBATTLE_FINISH:
            ClientTimer.Instance.DelayCall(() =>
            {
                if (body != null && body.Length > 0)
                {
                    string moduleName = (string)body[0];
                    ModuleManager.Instance.EnterModule(moduleName);
                }
                else
                {
                    ModuleManager.Instance.GoBack();
                }
            }, 0.3f);
            break;

//            case MessageConst.CMD_BATTLE_RESTART:
//                if (_model.LevelVo.CostEnergy > GlobalData.PlayerModel.PlayerVo.Energy)
//                {
//                    FlowText.ShowMessage(I18NManager.Get("MainLine_BattleIntroductionPopupHint1"));
//                }
//                else
//                {
//                    Reset();
//                }
//                break;
        case MessageConst.CMD_CAPSULEBATTLE_FANS_CALL_ANIMATION_FINISH:
            _model.IsShowingAnimation = false;
            OnBattleResult();
            break;

        case MessageConst.CMD_CAPSULEBATTLE_SEND_ROLE_ID:
            roleIds = (Queue <int>)body[0];
            break;

        case MessageConst.CMD_CAPSULEBATTLE_GET_RES:
            _battleCommon.Hide();
            _capsuleBattlePanel.HideBackBtn();
            _capsuleBattlePanel.GetRolesId(roleIds);
            break;

        case MessageConst.CMD_CAPSULEBATTLE_HIDE_PROGRESS:
            _battleCommon.Hide();
            break;
        }
    }