예제 #1
0
 private void sendExtractBack()
 {
     //UiManager.Instance.createMessageLintWindow (LanguageConfigManager.Instance.getLanguage ("s0202"));
     if (mail.annex != null)
     {
         Card c;
         List <PrizeSample> prizes = new List <PrizeSample>();
         for (int i = 0; i < mail.annex.Length; i++)
         {
             PrizeSample ps = getPrize(mail.annex [i]);
             if (ps.type == PrizeType.PRIZE_CARD)
             {
                 c = CardManagerment.Instance.createCard(ps.pSid);
                 for (int j = 0; j < ps.getPrizeNumByInt(); j++)
                 {
                     if (HeroRoadManagerment.Instance.activeHeroRoadIfNeed(c))
                     {
                         TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
                     }
                 }
             }
             prizes.Add(ps);
         }
         UiManager.Instance.createPrizeMessageLintWindow(prizes.ToArray());
     }
     extractBack();
 }
예제 #2
0
    public void receiveOK(int sid, int num)
    {
        ExchangeManagerment.Instance.addExchange(sid, num);
        bool           needShowEffect = false;
        ExchangeSample sample         = (tmpMsg.msgInfo as Exchange).getExchangeSample();

        if (sample.type == PrizeType.PRIZE_CARD)
        {
            Card c = CardManagerment.Instance.createCard(sample.exchangeSid);
            for (int i = 0; i < tmpMsg.msgNum; i++)
            {
                if (HeroRoadManagerment.Instance.activeHeroRoadIfNeed(c))
                {
                    needShowEffect = true;
                }
            }
        }
        //TextTipWindow.Show (LanguageConfigManager.Instance.getLanguage ("s0132"));
        exchangeFinish(null);
        if (needShowEffect)       //如果需要显示特效 则不需要在TextTipWindow消失时 解除MaskWindow.UnlockUI,应该在特效消失时调用,因为特效的时间更长
        {
            TextTipWindow.ShowNotUnlock(LanguageConfigManager.Instance.getLanguage("s0132"));
            showEffect();
        }
        else
        {
            TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0132"));
        }
    }
예제 #3
0
    public override void OnNetResume()
    {
        base.OnNetResume();
        MissionSample  sample             = MissionSampleManager.Instance.getMissionSampleBySid(m_sid);
        MissionWinItem missionWin         = missionWinItem.GetComponent <MissionWinItem>();
        FubenBuyChallengeTimesFport fport = FPortManager.Instance.getFPort <FubenBuyChallengeTimesFport>();

        fport.access(sample.sid, (isOk) => {
            if (isReast && beforeResetMonney > UserManager.Instance.self.getRMB())
            {
                TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("MISSION_SUCCESS_02"));//重置挑战次数成功
                FuBenManagerment.Instance.resetTimesByMissionSid(sample.sid);
                missionWin.joinMissionButtons[2].textLabel.text = LanguageConfigManager.Instance.getLanguage("missionWinItem01");
                missionWin.joinMissionButtons[2].disableButton(false);
                missionWin.timesValue.text = FuBenManagerment.Instance.getTimesByMissionSid(sample.sid) + "/" + sample.num[2];
                if (FuBenManagerment.Instance.getTimesByMissionSid(sample.sid) == 0)
                {
                    missionWin.sweepMissionButtons[2].disableButton(true);
                }
                else
                {
                    missionWin.sweepMissionButtons[2].disableButton(false);
                }
            }
        });
    }
예제 #4
0
    /// <summary>
    /// 奖励领取回调
    /// </summary>
    /// <param name="result"></param>
    private void OnReceiveBack(bool result)
    {
        receiveButton.disableButton(result);
        reciveCommonButton.disableButton(result);
        buttonMore.disableButton(result);
        PrizeSample[] prizess = data.prizes;
        for (int i = 0; i < prizess.Length; i++)
        {
            if (prizess[i].type == PrizeType.PRIZE_MERIT)
            {
                (fwin as ArenaIntegralAwardWindow).inccc += StringKit.toInt(prizess[i].num) * num;
                //UserManager.Instance.self.merit += StringKit.toInt(prizess[i].num);
            }
        }
        receiveButton.textLabel.text      = LanguageConfigManager.Instance.getLanguage("recharge02");
        reciveCommonButton.textLabel.text = LanguageConfigManager.Instance.getLanguage("recharge02");
        buttonMore.textLabel.text         = LanguageConfigManager.Instance.getLanguage("recharge02");
        int count = ArenaAwardManager.Instance.integralAwardInfos.IndexOf(ArenaAwardManager.Instance.getArenaAwardInfo(data));

        ArenaAwardManager.Instance.integralAwardInfos[count].received = result;
        description.text = LanguageConfigManager.Instance.getLanguage("GuildLuckyNvShen_18") + data.condition + (ArenaAwardManager.Instance.getArenaAwardInfo(data).received ?"(0/1)":"(1/1)");
        if (result)
        {
            TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("Arena30"));
        }
        else
        {
            MessageWindow.ShowAlert(LanguageConfigManager.Instance.getLanguage(result ? "Arena30" : "Arena31"));
        }
        content.init();
        MaskWindow.UnlockUI();
    }
예제 #5
0
 private void guildCancelJoinBack()
 {
     GuildManagerment.Instance.removeIds(guild.uid);
     guild.isApply  = false;
     textLabel.text = LanguageConfigManager.Instance.getLanguage("Guild_10");
     TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("Guild_11"));
 }
 /** 按钮事件 */
 public void doClieckEvent(GameObject gameObj)
 {
     if (gameObj.name == "buttonInherit")
     {
         if (oldRole.card == null || newRole.card == null)
         {
             MaskWindow.UnlockUI();
             return;
         }
         if (evoCheckBox.value && !isEnoughProp())
         {
             TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("inherit_09", propTemp.getName()));
             return;
         }
         if (needMoney > UserManager.Instance.self.getMoney())
         {
             TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("guild_851"));
             return;
         }
         setAddAttr();
         if (isMore != "")
         {
             isMore += "\n" + LanguageConfigManager.Instance.getLanguage("inherit_err3");
             MessageWindow.ShowConfirm(isMore, chooseOk);
             return;
         }
         IntensifyCardShowWindow.Show(oldCard, newCard, () => {
             inherit(playEffect);
         });
     }
 }
 /** 是否能传承进化等级 */
 private bool isCanEvo()
 {
     if (oldRole.card == null || newRole.card == null)
     {
         return(false);
     }
     if (newRole.card.getEvoTimes() == 0 || EvolutionManagerment.Instance.isMaxEvoLevel(oldRole.card))
     {
         return(false);
     }
     //看看能否勾选进化
     if (newRole.card.getQualityId() < oldRole.card.getQualityId())    //无法从低继承到高(进化等级)
     {
         if (evoCheckBox.value)
         {
             TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("inherit_08"));
         }
         return(false);
     }
     else
     {
         return(true);
     }
     return(true);
 }
예제 #8
0
    public override void read(ErlKVMessage message)
    {
        string msg  = (message.getValue("msg") as ErlType).getValueString();
        string info = string.Empty;

        switch (msg)
        {
        case "buy_limit":
            info = LanguageConfigManager.Instance.getLanguage("laddersTip_22");
            break;

        case "limit_rmb":
            info = LanguageConfigManager.Instance.getLanguage("laddersTip_23");
            break;

        case "num_limit":
            info = LanguageConfigManager.Instance.getLanguage("laddersTip_24");
            break;

        case "":
            info = LanguageConfigManager.Instance.getLanguage("laddersTip_25");
            break;
        }
        if (info != string.Empty)
        {
            TextTipWindow.Show(info);
        }
        if (callback != null)
        {
            callback(msg.Equals("ok"));
            callback = null;
        }
    }
예제 #9
0
    /// <summary>
    /// 领取的奖励中 是否有开启英雄之章的卡片
    /// </summary>
    /// <returns>The hero road.</returns>
    private IEnumerator updateHeroRoad()
    {
        int           sid          = LevelupRewardManagerment.Instance.lastRewardSid;
        LevelupSample rewardSample = LevelupRewardSampleManager.Instance.getSampleBySid(sid);

        Card        c;
        PrizeSample ps;

        for (int i = 0; i < rewardSample.samples.Count; i++)
        {
            ps = rewardSample.samples [i];
            if (ps.type == PrizeType.PRIZE_CARD)
            {
                c = CardManagerment.Instance.createCard(ps.pSid);
                for (int j = 0; j < ps.getPrizeNumByInt(); j++)
                {
                    if (HeroRoadManagerment.Instance.activeHeroRoadIfNeed(c))
                    {
                        yield return(new WaitForSeconds(1.5f));

                        TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
                    }
                }
            }
        }
    }
예제 #10
0
 private void OnReceiveBack(bool result)
 {
     TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage(result ? "Arena30" : "Arena31"));
     if (result)
     {
         numFinal.SetShow(false);
         buttonRewards.disableButton(true);
     }
 }
예제 #11
0
    private void openHeroRoad(Award[] award)
    {
        PrizeSample[] prizes = AllAwardViewManagerment.Instance.exchangeAwards(award);
        bool          isOpen = HeroRoadManagerment.Instance.isOpenHeroRoad(prizes);

        if (isOpen)
        {
            TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
        }
    }
예제 #12
0
 private void guildJoinBack(int i)
 {
     GuildManagerment.Instance.addIds(guild.uid);
     guild.isApply  = true;
     textLabel.text = LanguageConfigManager.Instance.getLanguage("Guild_11");
     TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("FriendAPPLY_ok"));
     if (i == 1)
     {
         fatherWindow.finishWindow();
     }
 }
예제 #13
0
    public override void read(ErlKVMessage message)
    {
        ErlType type = message.getValue("hint") as ErlType;

        if (type == null)
        {
            return;
        }
        string content = type.getValueString();         //内容

        TextTipWindow.Show(content, 2f);
    }
예제 #14
0
    void getAwardFP()
    {
        NoticeQuizFPort fport = FPortManager.Instance.getFPort("NoticeQuizFPort") as NoticeQuizFPort;

        fport.getAward(examSample.quizId, () => {
            TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0120"));
            instance.updateExamSampleAwardType(notice, true);
            buttonGetAward.disableButton(true);
            this.examSample = QuizManagerment.Instance.getExamSampleBySid(notice);
            initNormalUI();
        });
    }
예제 #15
0
 public void showSuiPianEffect()
 {
     EffectManager.Instance.CreateEffect(iconNvShen.transform, "Effect/UiEffect/feature_open");
     initCheck(num + 1);
     jindu.text = num + "/2";
     TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("GuideError_04"));
     if (GuideManager.Instance.isDoesNotEqualStep(7001000) && GuideManager.Instance.isDoesNotEqualStep(12001000) && GuideManager.Instance.isDoesNotEqualStep(15001000))
     {
         GuideManager.Instance.doGuide();
     }
     GuideManager.Instance.guideEvent();
     MaskWindow.UnlockUI();
 }
예제 #16
0
 private void sendInfoBack(Award[] award)
 {
     UiManager.Instance.openDialogWindow <AllAwardViewWindow>(win => {
         win.Initialize(award, updateWindow, LanguageConfigManager.Instance.getLanguage("s0206", selectProp.getName(), openNumTrue.ToString()));
         //检查是否有可开启的英雄之章
         PrizeSample[] prizes = AllAwardViewManagerment.Instance.exchangeAwards(award);
         bool isOpen          = HeroRoadManagerment.Instance.isOpenHeroRoad(prizes);
         if (isOpen)
         {
             TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
         }
     });
 }
예제 #17
0
    /// <summary>
    /// 该窗口的点击事件
    /// </summary>
    /// <param name="gameObj">Game object.</param>
    public override void buttonEventBase(GameObject gameObj)
    {
        base.buttonEventBase(gameObj);

        if (gameObj.name == "btn_close")
        {
            finishWindow();
        }
        else if (gameObj.name == "btn_receive")
        {
            if (AllAwardViewManagerment.Instance.isFull(prizes))
            {
                TextTipWindow.Show(Language("laddersTip_08"));
                MaskWindow.UnlockUI();
                return;
            }
            else
            {
                LaddersChestReceiveFPort fport = new LaddersChestReceiveFPort();
                fport.apply(data.index, (msg) => {
                    if (msg == "ok")
                    {
                        //获取本次奖励的所有东西,拿来做展示
                        AwardManagerment.Instance.addFunc(AwardManagerment.AWARDS_LADDER, (awards) => {
                            EventDelegate.Add(OnHide, () => {
                                if (awards != null)
                                {
                                    showHapply();
                                    UiManager.Instance.openDialogWindow <AllAwardViewWindow> ((win) => {
                                        win.Initialize(awards [0], Language("activity06"));
                                        win.showComfireButton(true, Language("ladderButton"));
                                    });
                                }
                                else
                                {
                                    showHapply();
                                }
                            });
                            finishWindow();
                        });
                    }
                });
            }
        }
        else if (gameObj.name == "btn_title")
        {
            finishWindow();
            //称号一览按钮
            UiManager.Instance.openWindow <LaddersTitleViewWindow> ();
        }
    }
예제 #18
0
 void exchangeOK(int sid, int num)
 {
     if (GuideManager.Instance.isEqualStep(135006000))
     {
         GuideManager.Instance.guideEvent();
     }
     ExchangeManagerment.Instance.addExchange(sid, num);
     if (c != null && HeroRoadManagerment.Instance.activeHeroRoadIfNeed(c))
     {
         TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
         c = null;
     }
     UiManager.Instance.createMessageLintWindow(LanguageConfigManager.Instance.getLanguage("s0132_hecheng"));
     updateScrapContent();
     MaskWindow.UnlockUI();
 }
예제 #19
0
 void OnReceiveBack(bool result)
 {
     if (result)
     {
         TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("Arena30"));
         info.received = true;
         if (info.sample.type == ArenaAwardWindow.TYPE_GUESS)
         {
             info.condition = 0;
         }
         init(info);
     }
     else
     {
         MessageWindow.ShowAlert(LanguageConfigManager.Instance.getLanguage(result ? "Arena30" : "Arena31"));
     }
 }
    /// <summary>
    /// 按钮点击事件
    /// </summary>
    /// <param name="gameObj">Game object.</param>
    public override void buttonEventBase(GameObject gameObj)
    {
        base.buttonEventBase(gameObj);
        string btnName = gameObj.name;

        switch (btnName)
        {
        case "btn_close":
            if (needRefresh)
            {
                LaddersWindow baseWindow = UiManager.Instance.getWindow <LaddersWindow> ();
                if (baseWindow != null)
                {
                    baseWindow.M_updateUserInfo();
                }
                if (closeCallback != null)
                {
                    closeCallback();
                    closeCallback = null;
                }
            }
            finishWindow();
            break;

        case "btn_receive":
            LaddersAwardFport fport = FPortManager.Instance.getFPort <LaddersAwardFport> ();
            fport.apply((msg) => {
                if (msg == "ok")
                {
                    needRefresh = true;
                    TextTipWindow.Show(Language("s0120"));
                    btn_receive.disableButton(true);
                    LaddersManagement.Instance.Award.M_clear();
                    finishWindow();

                    LaddersWindow ladderWin = UiManager.Instance.getWindow <LaddersWindow>();
                    if (ladderWin != null)
                    {
                        ladderWin.M_updateView();
                    }
                }
            });
            break;
        }
    }
예제 #21
0
 void OnButtonClick(GoodsView view)
 {
     if (window.isSelect(view.equip))
     {
         window.offSelectEquip(view.equip);
         view.tempGameObj.SetActive(false);
     }
     else if (window.selectMagicList.Count + window.selectedCardList.Count + window.selectedEquipList.Count < 8)
     {
         window.onSelectEquip(view.equip);
         view.tempGameObj.SetActive(true);
     }
     else if (window.selectMagicList.Count + window.selectedCardList.Count + window.selectedEquipList.Count >= 8)
     {
         TextTipWindow.ShowNotUnlock(Language("resolveChooseMax_2"));
     }
     MaskWindow.UnlockUI();
 }
예제 #22
0
    private void PlayerAwardDataEffect(int isWin)
    {
        int integralDesc = IncAttributeGlobal.Instance.getIntAttribute(AttributeGlobalCommon.INC_ATTRIBUTES_ARENA_INTEGRAL);

        if (integralDesc >= 0 && isWin != -1)
        {
            integralDesc = ArenaManager.instance.self.integral - integralDesc;
            if (integralDesc > 0)
            {
                integralAddGroup.transform.localPosition = new Vector3(lblIntegral.transform.localPosition.x + lblIntegral.width + 10, integralAddGroup.transform.localPosition.y, integralAddGroup.transform.localPosition.z);
                integralAddGroup.SetActive(true);
                TweenLabelNumber tln2 = TweenLabelNumber.Begin(integralAddLabel.gameObject, 0.3f, integralDesc);
                EventDelegate.Add(tln2.onFinished, () => {
                    StartCoroutine(Utils.DelayRun(() => {
                        lblIntegral.text = LanguageConfigManager.Instance.getLanguage("Arena05") + arenaManager.self.integral;
                        integralAddGroup.SetActive(false);
                    }, 1f));
                }, true);
            }
            IncAttributeGlobal.Instance.removeAttribute(AttributeGlobalCommon.INC_ATTRIBUTES_ARENA_INTEGRAL);
        }
        int meritDesc = IncAttributeGlobal.Instance.getIntAttribute(AttributeGlobalCommon.INC_ATTRIBUTES_ARENA_MERIT);

        if (meritDesc >= 0 && isWin != -1)
        {
            meritDesc = UserManager.Instance.self.merit - meritDesc;
            updateMetr(meritDesc);
        }
        string str = null;

        if (isWin == 0)
        {
            str = LanguageConfigManager.Instance.getLanguage("ArenaAuditions01", integralDesc.ToString(), meritDesc.ToString());
        }
        else if (isWin == 1)
        {
            str = LanguageConfigManager.Instance.getLanguage("ArenaAuditions02", integralDesc.ToString(), meritDesc.ToString());
        }
        this.isWin = -1;
        if (!string.IsNullOrEmpty(str))
        {
            TextTipWindow.ShowNotUnlock(str);
        }
    }
예제 #23
0
 public void clickButton(GameObject gamObj)
 {
     if (gamObj.name == "Quiz_buttonAnswer")
     {
         initAnswerUI();
     }
     else if (gamObj.name == "Quiz_buttonGetAward")
     {
         if (noticeSample.type == NoticeType.QUIZ_EXAM)
         {
             getAwardFP();
             return;
         }
         if (AllAwardViewManagerment.Instance.isFull(quizAward.prizes))
         {
             TextTipWindow.Show(Language("laddersTip_08"));
             MaskWindow.UnlockUI();
         }
         if (quizAward != null)
         {
             getAwardFP();
         }
         else
         {
             buttonGetAward.disableButton(true);
             MaskWindow.UnlockUI();
         }
     }
     else if (gamObj.name == "Quiz_buttonKeyA")
     {
         answerFP(1);
     }
     else if (gamObj.name == "Quiz_buttonKeyB")
     {
         answerFP(2);
     }
     else if (gamObj.name == "Quiz_buttonKeyC")
     {
         answerFP(3);
     }
 }
예제 #24
0
 void OnButtonClick(RoleView view)
 {
     if (GuideManager.Instance.isEqualStep(114005000))
     {
         GuideManager.Instance.doGuide();
         GuideManager.Instance.guideEvent();
     }
     if (resolveWin.isSelect(view.card))
     {
         resolveWin.offSelectCard(view.card);
         view.tempGameObj.SetActive(false);
     }
     else if (resolveWin.selectMagicList.Count + resolveWin.selectedCardList.Count + resolveWin.selectedEquipList.Count < 8)
     {
         if (view.card.state == 4)
         {
             MessageWindow.ShowAlert(LanguageConfigManager.Instance.getLanguage("tips_001"));
         }
         else if (view.card.state == 1)
         {
             MessageWindow.ShowAlert(LanguageConfigManager.Instance.getLanguage("tips_002"));
         }
         else if (view.card.state == 5)
         {
             MessageWindow.ShowAlert(LanguageConfigManager.Instance.getLanguage("tips_003"));
         }
         else
         {
             resolveWin.onSelectCard(view.card);
             view.tempGameObj.SetActive(true);
         }
     }
     else if (resolveWin.selectMagicList.Count + resolveWin.selectedCardList.Count + resolveWin.selectedEquipList.Count >= 8)
     {
         TextTipWindow.ShowNotUnlock(Language("resolveChooseMax_1"));
     }
     MaskWindow.UnlockUI();
 }
예제 #25
0
 public override void buttonEventBase(GameObject gameObj)
 {
     base.buttonEventBase(gameObj);
     if (gameObj.name == "close")
     {
         finishWindow();
     }
     else if (gameObj.name == "buttonOk")
     {
         if (now == 0)
         {
             return;
         }
         if (missionLevel == 3 && FuBenManagerment.Instance.getTimesByMissionSid(sweepMission.sid) < now)
         {
             TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("MISSION_ERROR_01"));
             return;
         }
         if (M_pvpEventConfirm())
         {
             M_doSweep();
         }
     }
 }
예제 #26
0
    public override void read(ErlKVMessage message)
    {
        ErlType msg = message.getValue("msg") as ErlType;

        switch (tempCmd)
        {
        case DO_GET:
            int lastSid = StringKit.toInt(msg.getValueString());
            LevelupRewardManagerment.Instance.lastRewardSid = lastSid;
            if (getCallback != null)
            {
                getCallback();
                getCallback = null;
            }
            break;

        case DO_RECEIVE:
            string infoMsg1 = msg.getValueString();
            if (infoMsg1 == "ok")
            {
                LevelupRewardManagerment.Instance.lastRewardSid  = toRewardSid;
                LevelupRewardManagerment.Instance.receiveEnabled = false;
                TextTipWindow.ShowNotUnlock(LanguageConfigManager.Instance.getLanguage("s0120"));
            }
            else
            {
                MessageWindow.ShowAlert(infoMsg1);
            }
            if (receiveCallback != null)
            {
                receiveCallback(infoMsg1.Equals("ok"));
                receiveCallback = null;
            }
            break;
        }
    }
예제 #27
0
    public void reloadAfterIntensify(Equip equip)
    {
        //升级后满级不再自动填入主坑
        if (equip.getLevel() < equip.getMaxLevel())
        {
            setChooseEquip(equip);
        }
        else
        {
            maxEquip = equip;
            setChooseEquip(null);
            TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("intensifyEquip08"));
        }

        //确定了选不选中主卡再刷新容器

        ExpLabel.text = "+0";
        updateBarInfo(0);
        cleanAllFoodData();
        IntensifyEquipManager.Instance.clearFoodEquip();
        SortConditionManagerment.Instance.initDefaultSort(SiftWindowType.SIFT_EQUIPCHOOSE_WINDOW);

        updateContent();
    }
예제 #28
0
    public IEnumerator  beginBattleOverAnim()
    {
        //锁屏幕,防止出去后狂点按钮报错
        MaskWindow.LockUI();

        Time.timeScale = GameManager.Instance.gameSpeed;
        yield return(new WaitForSeconds(1f));

        playAnimBattleOver();

        BattleDataErlang currentbattleData = BattleManager.battleData;

        if (BattleManager.battleData.isGMFight)
        {
            BattleManager.Instance.awardFinfish();
            yield break;
        }
        //恶魔挑战不播放战后动画
        if (BattleManager.battleData.isOneOnOneBossFight)
        {
            hideOther();
            UiManager.Instance.openDialogWindow <BossAwardWindow>((win) => {
                win.init(BattleManager.Instance.battleAwards, () => {
                    UiManager.Instance.switchWindow <EmptyWindow>((window) => {
                        ScreenManager.Instance.loadScreen(1, null, GameManager.Instance.outOneOnOneBossWindow);
                    });
                    BattleManager.battleData.isOneOnOneBossFight = false;
                });
            });
            yield break;
        }
        //  末日决战boss战阶段不播放胜利或失败动画//
        if (BattleManager.battleData.isLastBattleBossBattle)
        {
            hideOther();
            UiManager.Instance.openDialogWindow <LastBattleAwardWindow>((win) => {
                win.init(BattleManager.Instance.battleAwards, () => {
                    UiManager.Instance.switchWindow <EmptyWindow>((window) => {
                        ScreenManager.Instance.loadScreen(1, null, GameManager.Instance.outLastBattleWindow);
                    });
                    BattleManager.battleData.isLastBattleBossBattle = false;
                });
            });
            yield break;
        }
        // 末日决战结算界面//
        if (BattleManager.battleData.isLastBattle)
        {
            // 胜利//
            if (currentbattleData.winnerID == TeamInfo.OWN_CAMP)
            {
                StartCoroutine(showLastBattleAward());
                yield break;
            }
        }
        if (currentbattleData.isArenaMass || currentbattleData.isArenaFinal || currentbattleData.isGuide || currentbattleData.isLadders || currentbattleData.isPractice || currentbattleData.isGuildFight || currentbattleData.isMineralFightRecord || currentbattleData.isGodsWarFinal)
        {
            bool isWin = currentbattleData.winnerID == TeamInfo.OWN_CAMP;

            if (currentbattleData.isMineralFightRecord)
            {
                string name = BattleManager.battleData.winnerID == TeamInfo.ENEMY_CAMP ? currentbattleData.replayEnemyName : currentbattleData.replayAttackerName;
                TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("Arena39", name));
                yield return(new WaitForSeconds(1.5f));
            }

            if (currentbattleData.isArenaFinal)
            {
                string name = BattleManager.battleData.winnerID == TeamInfo.ENEMY_CAMP ? currentbattleData.replayEnemyName : currentbattleData.replayAttackerName;
                TextTipWindow.ShowNotUnlock(LanguageConfigManager.Instance.getLanguage("Arena39", name));

                yield return(new WaitForSeconds(1.5f));
            }
            if (currentbattleData.isGodsWarFinal)
            {
                string name = BattleManager.battleData.winnerID == TeamInfo.ENEMY_CAMP ? currentbattleData.replayEnemyName : currentbattleData.replayAttackerName;
                TextTipWindow.ShowNotUnlock(LanguageConfigManager.Instance.getLanguage("Arena39", name));

                yield return(new WaitForSeconds(1.5f));
            }
            if (currentbattleData.isArenaMass)              //delay do
            {
                if (isWin)
                {
                    yield return(new WaitForSeconds(4f));
                }
                else
                {
                    yield return(new WaitForSeconds(4.5f));
                }
            }
            else if (currentbattleData.isLadders)
            {
                if (currentbattleData.isLaddersRecord)
                {
                    string name = BattleManager.battleData.winnerID == TeamInfo.ENEMY_CAMP ? currentbattleData.replayEnemyName : currentbattleData.replayAttackerName;
                    TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("Arena39", name));
                    yield return(new WaitForSeconds(1.5f));
                }
                else
                {
                    LaddersManagement.Instance.currentChallengeTimes++;
                    LaddersWindow lw = UiManager.Instance.getWindow <LaddersWindow> ();
                    lw.fightBack = true;
                    lw.fightWin  = isWin;

                    if (isWin)
                    {
                        yield return(new WaitForSeconds(4f));
                    }
                    else
                    {
                        yield return(new WaitForSeconds(4.5f));
                    }
                }
            }
            else if (currentbattleData.isGuildFight)
            {
                GuildAreaWindow areaWindow = UiManager.Instance.getWindow <GuildAreaWindow>();
                if (areaWindow != null)
                {
                    areaWindow.isWin       = isWin;
                    areaWindow.isFightBack = true;
                }
                if (isWin)
                {
                    yield return(new WaitForSeconds(2f));
                }
                else
                {
                    yield return(new WaitForSeconds(2.5f));
                }
            }
            else if (currentbattleData.isGuide)
            {
                yield return(new WaitForSeconds(4.5f));
            }
            else if (currentbattleData.isPractice)
            {
                yield return(new WaitForSeconds(4.5f));
            }
            //锁屏幕,防止出去后狂点ArenaAuditionsWindow的关闭按钮报错

            BattleManager.Instance.awardFinfish();
            yield break;
        }

        //世界首领输赢都出去
        if (WorldBossManagerment.Instance.isAttackBoss)
        {
            yield return(new WaitForSeconds(3f));

            hideOther();
            BattleManager.Instance.awardFinfish();
            yield break;
        }
        //if (BattleManager.battleData.winnerID != TeamInfo.ENEMY_CAMP&&MissionInfoManager.Instance.mission!=null) {
        //    if(MissionInfoManager.Instance.mission.getChapterType() == ChapterType.TOWER_FUBEN)
        //    {
        //        yield return new WaitForSeconds(3f);
        //        hideOther();
        //        BattleManager.Instance.awardFinfish();
        //        yield break;
        //    }
        //}

        //敌人胜利的话
        if (BattleManager.battleData.winnerID == TeamInfo.ENEMY_CAMP && !currentbattleData.isGodsWarGroupFight && !currentbattleData.isOneOnOneBossFight)          //诸神战小组赛失败了也有奖励

        {
            int chapterType = 0;
            if (MissionInfoManager.Instance.mission != null)
            {
                chapterType = MissionInfoManager.Instance.mission.getChapterType();
            }

            //讨伐失败了没奖励的,提前出去
            if (FuBenManagerment.Instance.isWarAttackBoss)
            {
                FuBenManagerment.Instance.isWarAttackBossWin = false;
                popBattleStrengItem();
                yield break;
            }
            if (FuBenManagerment.Instance.isWarActiveFuben)
            {
                FuBenManagerment.Instance.isWarActiveWin = false;
                popBattleStrengItem();
                yield break;
            }

            //公会首领,修炼
            if ((GuildManagerment.Instance.isGuildBattle || chapterType == ChapterType.PRACTICE) && !BattleManager.battleData.isHeroRoad)
            {
                if (BattleManager.battleData.isPvP == false)
                {
                    yield return(new WaitForSeconds(3f));

                    //非pvp输了没奖励提前走掉
                    hideOther();
                    BattleManager.Instance.awardFinfish();
                    yield break;
                }
            }
            if (MissionInfoManager.Instance.isTowerFuben() && !BattleManager.battleData.isHeroRoad)
            {
                yield return(new WaitForSeconds(3f));

                hideOther();
                BattleManager.Instance.awardFinfish();
                if (MissionInfoManager.Instance.isTowerFuben())                    //判断是爬塔副本
                {
                    UiManager.Instance.openDialogWindow <MessageWindow>((win) => { //弹出卡片全部阵亡提示
                        win.initWindow(1, LanguageConfigManager.Instance.getLanguage("ladderButton"), "", LanguageConfigManager.Instance.getLanguage("towerShowWindow06"), (msgHandle) => {
                            UiManager.Instance.missionMainWindow.outTowerFuBen();
                        });
                    });
                }
                yield break;
            }
            else
            {
                popBattleStrengItem();
                yield break;
            }

            //if (chapterType == ChapterType.TOWER_FUBEN) {
            //    UiManager.Instance.openDialogWindow<MessageWindow>((win) => {
            //        win.initWindow(1, LanguageConfigManager.Instance.getLanguage("ladderButton"), "", LanguageConfigManager.Instance.getLanguage("towerShowWindow06"), (msgHandle) => {
            //            UiManager.Instance.missionMainWindow.outTowerFuBen();
            //        });
            //    });
            //    yield break;
            //}else {
            //    popBattleStrengItem ();
            //    yield break;
            //}
        }
        if (BattleManager.battleData.isPractice)
        {
            BattleManager.Instance.awardFinfish();
            yield break;
        }


        //建立奖励管理
        AwardDisplayCtrl ctrl = BattleManager.Instance.gameObject.AddComponent <AwardDisplayCtrl> ();

        //英雄之章直接战斗
        if (HeroRoadManagerment.Instance.isCurrentDirectFight())
        {
            yield return(new WaitForSeconds(3f));

            ctrl.Initialize(BattleManager.Instance.battleAwards, AwardManagerment.FB_END);
            BattleManager.Instance.playerTeam.hideAllParter();
            BattleManager.Instance.enemyTeam.hideAllParter();
//			ArmyManager.Instance.unActiveArmy ();
            yield break;
        }

        if (BattleManager.battleData.isPvP)
        {
            ctrl.Initialize(BattleManager.Instance.battleAwards, AwardManagerment.PVP);
        }
        else if (BattleManager.battleData.isArenaMass)
        {
            ctrl.Initialize(BattleManager.Instance.battleAwards, AwardManagerment.ARENA);
        }
        else if (BattleManager.battleData.isGodsWarGroupAward)
        {
            ctrl.Initialize(BattleManager.Instance.battleAwards, AwardManagerment.AWARDS_GODSWAR_GROUP);
        }
        else
        {
            ctrl.Initialize(BattleManager.Instance.battleAwards, AwardManagerment.PVE);
        }


        //yield return new WaitForSeconds (0.3f);



        //星星
        if (!BattleManager.battleData.isPvP && MissionInfoManager.Instance.mission != null)
        {
            if (MissionInfoManager.Instance.mission.getChapterType() == ChapterType.STORY)
            {
                yield return(new WaitForSeconds(showStar()));
            }
        }

        BattleManager.Instance.enemyTeam.hideAllParter();
        if (!BattleManager.battleData.isOneOnOneBossFight)
        {
            BattleManager.Instance.playerExpAdd(ctrl.activeAward);
        }
        float waitTime = 1.5f;

        if (UserManager.Instance.self.getVipLevel() > 0)
        {
            waitTime += 0.3f;
        }


        yield return(new WaitForSeconds(waitTime));

        bool isHaveBeast = false;        //是否有女神上阵并获得经验
        bool isBeastLvUp = false;        //女神是否升级

        BattleManager.Instance.playerTeam.hideAllParter();
        CharacterData tempGuardianForce = BattleManager.Instance.playerTeam.GuardianForce;

        if (tempGuardianForce != null && !BattleManager.Instance.playerTeam.GuardianForce.role.isMaxLevel())
        {
            EXPAward expAward = BattleManager.Instance.getEXPAwardByStoreID(tempGuardianForce, ctrl.activeAward);
            if (expAward != null)
            {
                isHaveBeast = true;
                //召唤兽进场
                BattleManager.Instance.playerTeam.showGuardianForce();
                //召唤兽exp
                yield return(new WaitForSeconds(0.5f));

                if (BattleManager.Instance.GuardianForceExpAdd(tempGuardianForce, expAward))
                {
                    isBeastLvUp = true;
                }
            }
        }

        hideOther();
        yield return(new WaitForSeconds(isHaveBeast ? (isBeastLvUp ? 2.5f : 1.5f) : 0.5f));

        BattleManager.Instance.EffectCamera.gameObject.SetActive(false);

        //讨伐战斗胜利结束处理,提前出去,不然会走AwardDisplayCtrl的openNextWindow,造成闪窗口现象
        if (FuBenManagerment.Instance.isWarAttackBoss && BattleManager.battleData.winnerID == TeamInfo.OWN_CAMP)
        {
            //赢了需要打通副本
            FuBenManagerment.Instance.completeMission(MissionInfoManager.Instance.mission.sid, MissionInfoManager.Instance.mission.getChapterType(), MissionInfoManager.Instance.mission.starLevel);
            //赢了需要扣除次数
            FuBenManagerment.Instance.intoMission(MissionInfoManager.Instance.mission.sid, MissionInfoManager.Instance.mission.starLevel);
            FuBenManagerment.Instance.warWinAward = ctrl.award;

            BattleManager.Instance.awardFinfish();
            if (MissionManager.instance != null)
            {
                MissionManager.instance.missionClean();
            }
            MissionInfoManager.Instance.clearMission();
            yield break;
        }
        //活动副本战斗胜利结束处理,提前出去,不然会走AwardDisplayCtrl的openNextWindow,造成闪窗口现象
        if (FuBenManagerment.Instance.isWarActiveFuben && BattleManager.battleData.winnerID == TeamInfo.OWN_CAMP)
        {
            //赢了需要扣除次数
            FuBenManagerment.Instance.intoMission(MissionInfoManager.Instance.mission.sid, MissionInfoManager.Instance.mission.starLevel);
            FuBenManagerment.Instance.ActiveWinAward = ctrl.award;

            BattleManager.Instance.awardFinfish();
            if (MissionManager.instance != null)
            {
                MissionManager.instance.missionClean();
            }
            MissionInfoManager.Instance.clearMission();
            yield break;
        }

        ctrl.openNextWindow();

        if (ctrl.award == null || ctrl.award.Length == 0)
        {
            yield return(new WaitForSeconds(3f));
        }
    }
예제 #29
0
 void backToCardAttrWindow()
 {
     finishWindow();
     TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0401"));
 }
예제 #30
0
    public override void read(ErlKVMessage message)
    {
        // 是否全部领取//
        bool totalExtract = false;
        // 所有邮件中拥有附件的邮件的个数//
        int     emailHasAnnexCount = 0;
        ErlType type = message.getValue("msg") as ErlType;

        if (type is ErlArray)
        {
            List <PrizeSample> list  = new List <PrizeSample> ();
            ErlArray           array = type as ErlArray;

            for (int i = 0; i < MailManagerment.Instance.getAllMail().Count; i++)
            {
                if (MailManagerment.Instance.getAllMail()[i].annex != null && MailManagerment.Instance.getAllMail()[i].status != 2)
                {
                    emailHasAnnexCount++;
                }
            }
            // 判断是否已全部领完//
            if (emailHasAnnexCount == array.Value.Length)
            {
                totalExtract = true;
            }


            for (int i = 0; i < array.Value.Length; i++)
            {
                //MailManagerment.Instance.extractMailByUid (array.Value [i].getValueString ());
                MailManagerment.Instance.extractMailByUidWithAnnex(array.Value[i].getValueString(), list);
            }
            if (list != null)
            {
                Card            c;
                CardManagerment cardInstance = CardManagerment.Instance;
                for (int i = 0; i < list.Count; i++)
                {
                    if (list[i].type == PrizeType.PRIZE_CARD)
                    {
                        c = cardInstance.createCard(list[i].pSid);
                        for (int k = 0; k < list[i].getPrizeNumByInt(); k++)
                        {
                            if (HeroRoadManagerment.Instance.activeHeroRoadIfNeed(c))
                            {
                                TextTipWindow.Show(LanguageConfigManager.Instance.getLanguage("s0418"));
                            }
                        }
                    }
                }
                UiManager.Instance.openDialogWindow <AllAwardViewWindow>((win) => {
                    win.Initialize(list, LanguageConfigManager.Instance.getLanguage("s0115"));
                });
                callback(true, totalExtract);
            }
            else
            {
                callback(true, totalExtract);
            }
        }
        else
        {
            callback(false, totalExtract);
        }
    }