Ejemplo n.º 1
0
        public void ReloadData(Variant mapInfo)
        {
            this.Clear();
            bool flag = mapInfo.Count == 0;

            if (!flag)
            {
                ModelBase <A3_ActiveModel> .getInstance().mwlr_mon_killed = 0;

                this.Count = mapInfo.Count;
                for (int i = 0; i < this.Count; i++)
                {
                    bool @bool = mapInfo[i]["kill"]._bool;
                    if (@bool)
                    {
                        A3_ActiveModel expr_57 = ModelBase <A3_ActiveModel> .getInstance();

                        int mwlr_mon_killed = expr_57.mwlr_mon_killed;
                        expr_57.mwlr_mon_killed = mwlr_mon_killed + 1;
                        bool flag2 = !ModelBase <A3_ActiveModel> .getInstance().listKilled.Contains(i);

                        if (flag2)
                        {
                            ModelBase <A3_ActiveModel> .getInstance().listKilled.Add(i);
                        }
                    }
                }
                this.Reset();
                this.MHInfo.gameObject.SetActive(true);
            }
        }
Ejemplo n.º 2
0
        void OnSweep(Variant data)
        {
            Debug.Log("hhh" + data.dump());
            int res = data["res"];

            switch (res)
            {
            case 1:    //扫荡
                bool isok = false;

                if (A3_ActiveModel.getInstance().nowlvl != data["diff_floor"])
                {
                    isok = true;
                }

                if (data.ContainsKey("diff_floor"))
                {
                    A3_ActiveModel.getInstance().nowlvl = data["diff_floor"];
                }
                if (data.ContainsKey("sweep_type"))
                {
                    A3_ActiveModel.getInstance().sweep_type = data["sweep_type"];
                }


                if (a3_active_mlzd.instans != null)
                {
                    if (isok)
                    {
                        a3_active_mlzd.instans.onSweep();
                    }
                }
                break;

            case 2:    //领奖
                int lvl = 0;
                if (A3_ActiveModel.getInstance().nowlvl != data["diff_floor"])
                {
                    lvl = A3_ActiveModel.getInstance().nowlvl;
                }
                if (data.ContainsKey("diff_floor"))
                {
                    A3_ActiveModel.getInstance().nowlvl = data["diff_floor"];
                }
                if (data.ContainsKey("sweep_type"))
                {
                    A3_ActiveModel.getInstance().sweep_type = data["sweep_type"];
                }
                if (data.ContainsKey("times"))
                {
                    A3_ActiveModel.getInstance().count_mlzd = data["times"];
                }
                if (a3_active_mlzd.instans != null)
                {
                    a3_active_mlzd.instans.onGetFit(lvl);
                }
                break;
            }
        }
Ejemplo n.º 3
0
 public void viplvl_refresh()
 {
     A3_ActiveModel.getInstance().buy_cnt = A3_VipModel.getInstance().vip_exchange_num(7);
     expFb_count      = vip_exchange_num(18);
     materialFb_count = vip_exchange_num(16);
     goldFb_count     = vip_exchange_num(17);
     team_fb_1        = vip_exchange_num(23);
 }
Ejemplo n.º 4
0
 public void OnBless(GameEvent e)
 {
     m_left_num1.text = ContMgr.getCont("uilayer_a3_blessing_5") +
                        //"<color=#00FF00>" + (m_ybbdnum - A3_ActiveModel.getInstance().blessnum_ybbd) + "</color>"
                        "(" + (m_ybbdnum - A3_ActiveModel.getInstance().blessnum_ybbd) + "/" + m_ybbdnum + ")";
     m_left_num2.text = ContMgr.getCont("uilayer_a3_blessing_5") +
                        //"<color=#00FF00>" + (m_ybnum - A3_ActiveModel.getInstance().blessnum_yb) + "</color>"
                        "(" + (m_ybnum - A3_ActiveModel.getInstance().blessnum_yb) + "/" + m_ybnum + ")";
     m_addAll.text = "+" + (5 * A3_ActiveModel.getInstance().blessnum_ybbd + 15 * A3_ActiveModel.getInstance().blessnum_yb) + "%";
 }
Ejemplo n.º 5
0
        public void OnBlessing(Variant data)
        {
            //debug.Log(data.dump());
            int res = data["res"];

            if (res < 0)
            {
                Globle.err_output(res);
                return;
            }
            A3_ActiveModel.getInstance().blessnum_yb   = data["yb_cnt"];
            A3_ActiveModel.getInstance().blessnum_ybbd = data["bndyb_cnt"];

            flytxt.instance.fly(ContMgr.getCont("uilayer_a3_blessing_7"));
            dispatchEvent(GameEvent.Create(EVENT_ONBLESS, this, null));
        }
 void refresh()
 {
     //mwlr
     if (FunctionOpenMgr.instance.Check(FunctionOpenMgr.DEVIL_HUNTER))
     {
         if (A3_ActiveModel.getInstance().mwlr_charges <= 0)
         {
             mwlr_bt.gameObject.GetComponent <Button>().interactable = false;
         }
         else
         {
             mwlr_bt.gameObject.GetComponent <Button>().interactable = true;
         }
         cs_mwlr.text = "(" + A3_ActiveModel.getInstance().mwlr_charges + "/" + 10 + ")";
     }
     else
     {
         this.transform.FindChild("cells/scroll/content/mwlr").gameObject.SetActive(false);
     }
     //jjc
     if (FunctionOpenMgr.instance.Check(FunctionOpenMgr.PVP_DUNGEON))
     //A3_ActiveProxy.getInstance().SendPVP(6);
     {
         cs_jjc.text = "(" + (a3_sportsModel.getInstance().callenge_cnt - a3_sportsModel.getInstance().pvpCount + a3_sportsModel.getInstance().buyCount) + "/" + a3_sportsModel.getInstance().callenge_cnt + ")";
         if ((a3_sportsModel.getInstance().callenge_cnt - a3_sportsModel.getInstance().pvpCount + a3_sportsModel.getInstance().buyCount) <= 0)
         {
             jjc_bt.gameObject.GetComponent <Button>().interactable = false;
         }
         else
         {
             jjc_bt.gameObject.GetComponent <Button>().interactable = true;
         }
     }
     else
     {
         this.transform.FindChild("cells/scroll/content/jjc").gameObject.SetActive(false);
     }
     //dgsl
     if (FunctionOpenMgr.instance.Check(FunctionOpenMgr.GLOBA_BOSS))
     {
         cs_dgsl.text = "";
     }
     else
     {
         this.transform.FindChild("cells/scroll/content/dgsl").gameObject.SetActive(false);
     }
 }
Ejemplo n.º 7
0
        virtual public void onEnd()
        {
            if (!started)
            {
                return;
            }
            dDropItem            = null;
            dDropItem_own        = null;
            DropItem.dropItemCon = null;
            svrConf = null;
            started = false;
            TickMgr.instance.removeTick(process);
            a3_fb_finish.room = null;

            //鼓舞次数重置为0
            A3_ActiveModel.getInstance().blessnum_yb   = 0;
            A3_ActiveModel.getInstance().blessnum_ybbd = 0;
        }
 public void setTxt_jjc(bool b)
 {
     cs_jjc.text = "(" + (A3_ActiveModel.getInstance().callenge_cnt - A3_ActiveModel.getInstance().pvpCount + A3_ActiveModel.getInstance().buyCount) + "/" + A3_ActiveModel.getInstance().callenge_cnt + ")";
     if (b)
     {
         if ((A3_ActiveModel.getInstance().callenge_cnt - A3_ActiveModel.getInstance().pvpCount + A3_ActiveModel.getInstance().buyCount) <= 0)
         {
             jjc_bt.gameObject.GetComponent <Button>().interactable = false;
         }
         else
         {
             jjc_bt.gameObject.GetComponent <Button>().interactable = true;
         }
     }
     else
     {
         jjc_bt.gameObject.GetComponent <Button>().interactable = false;
     }
 }
Ejemplo n.º 9
0
 public void ActiveMWSLSearch(Variant data)
 {
     A3_ActiveModel.getInstance().mwlr_map_info   = data["map_info"];
     A3_ActiveModel.getInstance().mwlr_doubletime = data["double_limit"];
     A3_ActiveModel.getInstance().mwlr_totaltime  = data["lose_tm"];
     A3_ActiveModel.getInstance().mwlr_map_id.Clear();
     A3_ActiveModel.getInstance().mwlr_mons_pos.Clear();
     for (int i = 0; i < data["map_info"].Count; i++)
     {
         if (data["map_info"][i].ContainsKey("map_id"))
         {
             int     map_id  = data["map_info"][i]["map_id"]._int;
             Vector3 mon_pos = new Vector3(
                 x: data["map_info"][i]["x"] / GameConstant.PIXEL_TRANS_UNITYPOS,
                 y: 0,
                 z: data["map_info"][i]["y"] / GameConstant.PIXEL_TRANS_UNITYPOS
                 );
             A3_ActiveModel.getInstance().mwlr_map_id.Add(map_id);
             A3_ActiveModel.getInstance().mwlr_mons_pos.Add(map_id, mon_pos);
         }
     }
 }
Ejemplo n.º 10
0
        //

        private void get_lvl_info_res(Variant msgData)
        {
            int levelId; MapData mapdata;
            int res = msgData["res"];

            if (res < 0)
            {
                Globle.err_output(res);
                return;
            }
            debug.Log("KKKKKKKK" + msgData.dump());
            // debug.Log("<color=#00ff00>"+ msgData.dump() +"</color>");
            MapModel m = MapModel.getInstance();
            MapData  d;

            switch (res)
            {
            case 1:    //表示请求副本信息的结果
                       //int time = -1;

                //if (msgData.ContainsKey("refresh_time_left"))
                //   time = msgData["refresh_time_left"];

                int maxid0 = 0;
                int maxid1 = 0;
                //m.beginTimer = time + Time.time;
                if (msgData.ContainsKey("lvls"))
                {
                    List <Variant> lv = msgData["lvls"]._arr;

                    foreach (Variant v in lv)
                    {
                        d = m.getMapDta(v["lvlid"]);
                        if (d == null)
                        {
                            d = new MapData();
                        }

                        d.starNum = v["score"];

                        if (v.ContainsKey("last_enter_time"))
                        {
                            d.enterTime = v["last_enter_time"];
                        }
                        if (v.ContainsKey("enter_times"))
                        {
                            d.cycleCount = v["enter_times"];
                        }
                        if (v.ContainsKey("limit_tm"))
                        {
                            d.limit_tm = v["limit_tm"];
                        }
                        if (v.ContainsKey("vip_cnt"))
                        {
                            d.vip_buycount = v["vip_cnt"];
                        }
                        m.AddMapDta(v["lvlid"], d);
                        d = m.getMapDta(v["lvlid"]);
                        if (d.type == 1)
                        {
                            if (d.starNum > 0 && d.id > maxid0)
                            {
                                maxid0 = d.id;
                            }
                        }
                        else if (d.type == 2)
                        {
                            if (d.starNum > 0 && d.id > maxid1)
                            {
                                maxid1 = d.id;
                            }
                        }
                        //if (v["lvlid"] == 104)
                        //{
                        //    if (v.ContainsKey ("diff_lvl"))
                        //    {
                        //        A3_ActiveModel.getInstance().nowlvl = v["diff_lvl"];
                        //    }
                        //}
                    }

                    m.setLastMapId(0, maxid0);
                    m.setLastMapId(1, maxid1);

                    m.inited = true;
                }

                if (msgData.ContainsKey("mlzd_info"))
                {
                    Variant mlzd = msgData["mlzd_info"];
                    if (mlzd.ContainsKey("mlzd_diff"))
                    {
                        A3_ActiveModel.getInstance().maxlvl = mlzd["mlzd_diff"];
                    }

                    if (mlzd.ContainsKey("diff_floor"))
                    {
                        A3_ActiveModel.getInstance().nowlvl = mlzd["diff_floor"];
                    }
                    if (mlzd.ContainsKey("times"))
                    {
                        A3_ActiveModel.getInstance().count_mlzd = mlzd["times"];
                    }
                    if (mlzd.ContainsKey("sweep_type"))
                    {
                        A3_ActiveModel.getInstance().sweep_type = mlzd["sweep_type"];
                    }

                    if (mlzd.ContainsKey("tm"))
                    {
                        A3_ActiveModel.getInstance().Time = mlzd["tm"];
                    }
                    if (a3_active_mlzd.instans != null)
                    {
                        a3_active_mlzd.instans.RefreshLeftTimes();
                    }
                }

                MapModel mapM = MapModel.getInstance();
                //凌晨界面打开时数据要刷新(单/组队人副本)
                if (a3_counterpart._instance)
                {
                    a3_counterpart._instance.refreshGoldTimes();
                    a3_counterpart._instance.refreshExpTimes();
                    a3_counterpart._instance.refreshMateTimes();
                }
                break;

            case 2:    // <!--扫荡了多少次,客户端按此值对rewards数组进行分组-->

                levelId       = msgData["lvlid"];
                mapdata       = MapModel.getInstance().getMapDta(levelId);
                mapdata.count = msgData["left_times"];
                List <Variant> rewards = msgData["rewards"]._arr;

                int len = rewards.Count / 3;
                int idx = 0;
                List <List <MapItemData> > ll = new List <List <MapItemData> >();
                List <MapItemData>         l;
                MapItemData mapitemdata;
                for (int i = 0; i < len; i++)
                {
                    l = new List <MapItemData>();
                    for (int j = 0; j < 3; j++)
                    {
                        mapitemdata       = new MapItemData();
                        mapitemdata.id    = rewards[idx]["tpid"];
                        mapitemdata.count = rewards[idx]["cnt"];
                        l.Add(mapitemdata);
                        idx++;
                    }
                    ll.Add(l);
                }

                //fb_wipeout.showIt(ll, mapdata);
                break;

            case 3:    // <!--3表示重置副本-->
                levelId            = msgData["lvlid"];
                mapdata            = MapModel.getInstance().getMapDta(levelId);
                mapdata.count      = msgData["left_times"];
                mapdata.resetCount = msgData["left_reset_times"];

                //if (fb_info.instance != null)
                //    fb_info.instance.onRefresh(levelId);
                break;

            case 4:    // <!--4表示有新的最高分产生,同步给客户端-->
                int id = msgData["lvlid"];
                if (id == 104)
                {
                    if (msgData.ContainsKey("mlzd_diff"))
                    {
                        A3_ActiveModel.getInstance().maxlvl = msgData["mlzd_diff"];
                    }

                    if (msgData.ContainsKey("diff_floor"))
                    {
                        A3_ActiveModel.getInstance().nowlvl = msgData["diff_floor"];
                    }
                }
                if (m.containerID(id))
                {
                    break;
                }

                d = m.getMapDta(id);
                if (d == null)
                {
                    return;
                }
                d.starNum    = msgData["score"];
                d.count      = msgData["left_times"];
                d.resetCount = msgData["left_reset_times"];



                break;

            //vip购买增加次数返回
            case 5:

                MapData data = m.getMapDta(msgData["ltpid"]);
                if (data == null)
                {
                    data = new MapData();
                    data.vip_buycount = msgData["vip_cnt"];
                    MapModel.getInstance().AddMapDta(msgData["ltpid"], data);
                }
                else
                {
                    MapModel.getInstance().dFbDta[msgData["ltpid"]].vip_buycount = msgData["vip_cnt"];
                }

                if (a3_counterpart._instance)
                {
                    a3_counterpart._instance.refreshGoldTimes();
                    a3_counterpart._instance.refreshExpTimes();
                    a3_counterpart._instance.refreshMateTimes();
                }



                //MJJDModel.getInstance().GetBuyRefresh(msgData);
                break;

            case 6:
                //MJJDModel.getInstance().GetMJJDTimes(msgData);
                break;

            case 7:    //刷新墨家境地波数
                //if (float_mjjd.instance != null && msgData.ContainsKey("current_wave"))
                //    float_mjjd.instance.refreshBo(msgData["current_wave"]);
                break;

            default:
                break;
            }


            //NetClient.instance.dispatchEvent(
            //     GameEvent.Create(PKG_NAME.S2C_GET_LVL_INFO_RES, this, GameTools.CreateSwitchData("get_lvl_info_res", msgData))
            // );
            //GameSession(this.session).logicClient.logicInGame.lgGD_levels.get_lvl_info_res(msgData);
        }
Ejemplo n.º 11
0
        public void show(INameObj avatar)
        {
            if (dItem.ContainsKey(avatar))
            {
                return;
            }

            PlayerNameItem item;

            if (lPool.Count == 0)
            {
                GameObject temp = GAMEAPI.ABLayer_LoadNow_GameObject("uilayer_name_user");
                GameObject go   = GameObject.Instantiate(temp) as GameObject;
                go.transform.SetParent(playerNameLayer, false);
                item = new PlayerNameItem(go.transform);
            }
            else
            {
                item          = lPool[0];
                item.visiable = true;
                lPool.RemoveAt(0);
            }


            if (avatar is ProfessionRole)
            {
                if (!(avatar as ProfessionRole).m_isMain)
                {
                    allOtherTitle[(avatar as ProfessionRole).m_unCID] = item.heroTitleIcon.gameObject;
                }
                else
                {
                    selfTitleGo = item.heroTitleIcon.gameObject;
                }
            }

            item.refresh(avatar);
            lItem.Add(item);
            dItem[avatar] = item;

            if (avatar is MonsterRole)
            {
                if (A3_ActiveModel.getInstance() != null)
                {
                    if (A3_ActiveModel.getInstance().mwlr_target_monId == 0 || (avatar as MonsterRole).monsterid != A3_ActiveModel.getInstance().mwlr_target_monId)
                    {
                        item.mhPlayerName.transform.parent.gameObject.SetActive(false);
                    }
                    else
                    {
                        item.mhPlayerName.transform.parent.gameObject.SetActive(true);
                    }
                }
                else
                {
                    item.mhPlayerName.transform.parent.gameObject.SetActive(false);
                }
            }
            else
            {
                item.mhPlayerName.transform.parent.gameObject.SetActive(false);
            }
            if (avatar is MDC000)
            {
                carObj = avatar;
                item.setHP((( float )(avatar.curhp / avatar.maxHp) * 100).ToString());
                carItem = item;
                item.refreshHp(avatar.curhp, avatar.maxHp, avatar);
            }
            else
            {
                item.cartxt.gameObject.SetActive(false);
                item.refreshHp(avatar.curhp, avatar.maxHp);
            }

            //if (avatar is self)
            //item.refreshVipLv(avatar.lgAvatar.viewInfo["vip"]);
            //else
            item.refreicon();
            item.refreshVipLv(0);
            if (avatar is ProfessionRole)
            {
                if ((avatar as ProfessionRole).m_isMain)
                {
                    if (PlayerModel.getInstance().istitleActive)
                    {
                        item.refreshTitle(a3_RankModel.now_id);
                    }
                    item.refresNameColor(( int )PlayerModel.getInstance().now_nameState);

                    if (PlayerModel.getInstance().inSpost&& PlayerModel.getInstance().lvlsideid != 0)
                    {
                        if (PlayerModel.getInstance().lvlsideid == 1)
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.RED);
                        }
                        else if (PlayerModel.getInstance().lvlsideid == 2)
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.BULE);
                        }
                    }
                    else if (PlayerModel.getInstance().inCityWar&& PlayerModel.getInstance().lvlsideid != 0)
                    {
                        item.refresNameColor_spost(SPOSTNAME_TYPE.BULE);
                    }

                    item.refresHitback(( int )PlayerModel.getInstance().hitBack);
                    item.refreshVipLv(( uint )A3_VipModel.getInstance().Level);
                }
                else
                {
                    item.refreshTitle(avatar.title_id);
                    item.refresNameColor(avatar.rednm);

                    if (PlayerModel.getInstance().inSpost&& avatar.spost_lvlsideid != 0)
                    {
                        if (1 == avatar.spost_lvlsideid)
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.RED);
                        }
                        else if (2 == avatar.spost_lvlsideid)
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.BULE);
                        }
                    }

                    else if (PlayerModel.getInstance().inCityWar&& avatar.spost_lvlsideid != 0)
                    {
                        if (avatar.spost_lvlsideid == PlayerModel.getInstance().lvlsideid)
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.BULE);
                        }
                        else
                        {
                            item.refresNameColor_spost(SPOSTNAME_TYPE.RED);
                        }
                    }
                    item.refresHitback(( int )avatar.hidbacktime);
                }
            }
            else
            {
                item.refreshTitle(avatar.title_id);
            }
        }
Ejemplo n.º 12
0
        public void Active_MWSLOP(Variant data)
        {
            Debug.Log("收到魔物猎人消息" + data.dump());
            int  num  = data["res"];
            bool flag = num < 0;

            if (flag)
            {
                Globle.err_output(num);
            }
            ModelBase <A3_ActiveModel> .getInstance().mwlr_charges = (data["count"] ?? ModelBase <A3_ActiveModel> .getInstance().mwlr_charges);

            switch (num)
            {
            case 1:
                a3_active_mwlr_kill.initLoginData = data["map_info"];
                this.ActiveMWSLSearch(data);
                break;

            case 2:
                this.ActiveMWSLSearch(data);
                a3_active_mwlr_kill.Instance.Reset();
                ModelBase <A3_ActiveModel> .getInstance().mwlr_giveup = false;

                base.dispatchEvent(GameEvent.Create(A3_ActiveProxy.EVENT_MWLR_NEW, this, data, false));
                break;

            case 3:
            {
                ModelBase <A3_ActiveModel> .getInstance().mwlr_map_id.Clear();

                ModelBase <A3_ActiveModel> .getInstance().mwlr_mons_pos.Clear();

                Variant expr_106 = ModelBase <A3_ActiveModel> .getInstance().mwlr_map_info;

                if (expr_106 != null)
                {
                    expr_106._arr.Clear();
                }
                ModelBase <A3_ActiveModel> .getInstance().mwlr_giveup = true;

                a3_active_mwlr_kill.Instance.Clear();
                a3_expbar.instance.DownTip();
                break;
            }

            case 4:
            {
                for (int i = 0; i < ModelBase <A3_ActiveModel> .getInstance().mwlr_map_info.Count; i++)
                {
                    bool flag2 = ModelBase <A3_ActiveModel> .getInstance().mwlr_map_info[i]["map_id"] == data["map_id"]._int;

                    if (flag2)
                    {
                        ModelBase <A3_ActiveModel> .getInstance().mwlr_map_info[i]["kill"]._bool = true;

                        bool flag3 = !ModelBase <A3_ActiveModel> .getInstance().listKilled.Contains(i);

                        if (flag3)
                        {
                            ModelBase <A3_ActiveModel> .getInstance().listKilled.Add(i);
                        }
                        break;
                    }
                }
                A3_ActiveModel expr_1ED = ModelBase <A3_ActiveModel> .getInstance();

                int mwlr_mon_killed = expr_1ED.mwlr_mon_killed;
                expr_1ED.mwlr_mon_killed = mwlr_mon_killed + 1;
                a3_active_mwlr_kill.Instance.Refresh();
                bool flag4 = SelfRole.fsm.Autofighting && ModelBase <PlayerModel> .getInstance().task_monsterIdOnAttack.Remove(-1);

                if (flag4)
                {
                    SelfRole.fsm.Stop();
                }
                ModelBase <A3_ActiveModel> .getInstance().mwlr_on = false;

                break;
            }

            case 5:
                a3_expbar.instance.DownTip();
                a3_active_mwlr_kill.Instance.Clear();
                break;
            }
            base.dispatchEvent(GameEvent.Create(A3_ActiveProxy.EVENT_MLZDOPCUCCESS, this, data, false));
        }
Ejemplo n.º 13
0
        //4、魔物猎人操作
        public void Active_MWSLOP(Variant data)
        {
            debug.Log("收到魔物猎人消息" + data.dump());
            int op = data["res"];

            if (op < 0)
            {
                Globle.err_output(op);
            }
            A3_ActiveModel.getInstance().mwlr_charges = data["count"] ?? A3_ActiveModel.getInstance().mwlr_charges;
            //debug.Log(data.dump());
            switch (op)
            {
            case 1:
                A3_ActiveModel.getInstance().vip_buy_count = data["vip_cnt"];
                a3_active_mwlr_kill.initLoginData = data["map_info"];
                ActiveMWSLSearch(data);
                break;

            case 2:
                ActiveMWSLSearch(data);
                a3_active_mwlr_kill.Instance.Reset();
                A3_ActiveModel.getInstance().mwlr_giveup = false;
                dispatchEvent(GameEvent.Create(EVENT_MWLR_NEW, this, data));
                break;

            case 3:
                a3_active_mwlr_kill.initLoginData = data["map_info"];
                ActiveMWSLSearch(data);
                A3_ActiveModel.getInstance().mwlr_map_id.Clear();
                A3_ActiveModel.getInstance().mwlr_mons_pos.Clear();
                A3_ActiveModel.getInstance().mwlr_map_info?._arr.Clear();
                A3_ActiveModel.getInstance().mwlr_giveup = true;
                a3_active.MwlrIsDoing = false;
                a3_active_mwlr_kill.Instance.Clear();
                if (a3_expbar.instance)
                {
                    a3_expbar.instance.DownTip();
                }
                break;

            case 4:
                for (int i = 0; i < A3_ActiveModel.getInstance().mwlr_map_info.Count; i++)
                {
                    if (A3_ActiveModel.getInstance().mwlr_map_info[i]["map_id"] == data["map_id"]._int)
                    {
                        A3_ActiveModel.getInstance().mwlr_map_info[i]["kill"]._bool = true;
                        if (!A3_ActiveModel.getInstance().listKilled.Contains(i))
                        {
                            A3_ActiveModel.getInstance().listKilled.Add(i);
                        }
                        break;
                    }
                }
                A3_ActiveModel.getInstance().mwlr_mon_killed++;
                a3_active_mwlr_kill.Instance.Refresh();
                if (SelfRole.fsm.Autofighting &&
                    PlayerModel.getInstance().task_monsterIdOnAttack.Remove(-1)) // 将-1作为monster hunter的任务id
                {
                    SelfRole.fsm.Stop();                                         // 如果remove成功,说明玩家是导航过去专程打这个目标怪;
                }
                // 如果remove失败,则说明玩家是在自动挂机的过程中顺手把这个目标怪给打死了
                A3_ActiveModel.getInstance().mwlr_on = false;
                break;

            case 5:
                a3_active.MwlrIsDoing = false;
                a3_expbar.instance.DownTip();
                a3_active_mwlr_kill.Instance.Clear();
                break;
            }
            if (a3_liteMinimap.instance)
            {
                a3_liteMinimap.instance.OnActiveInfoChange();
            }

            dispatchEvent(GameEvent.Create(EVENT_MLZDOPCUCCESS, this, data));
        }
Ejemplo n.º 14
0
        public void OnPVP_site(Variant data)
        {
            int res = data["res"];

            debug.Log("PVP:" + data.dump());
            if (res < 0)
            {
                Globle.err_output(res);
                return;
            }
            switch (res)
            {
            case 1:    //请求比武场信息结果
                A3_ActiveModel.getInstance().grade = data["grade"];
                A3_ActiveModel.getInstance().score = data["score"];
                if (data["last_grade"] <= 0)
                {
                    A3_ActiveModel.getInstance().lastgrage = 1;
                }
                else
                {
                    A3_ActiveModel.getInstance().lastgrage = data["last_grade"];
                }
                A3_ActiveModel.getInstance().pvpCount = data["cnt"];
                A3_ActiveModel.getInstance().buyCount = data["buy_cnt"];
                A3_ActiveModel.getInstance().Canget   = data["rec_rwd"];
                dispatchEvent(GameEvent.Create(EVENT_PVPSITE_INFO, this, data));
                break;

            case 2:    //竞技场匹配
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.openFind();
                }
                break;

            case 3:    //取消匹配
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.CloseFind();
                }
                break;

            case 4:    //购买挑战次数
                A3_ActiveModel.getInstance().buyCount = data["buy_cnt"];
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.refCount_buy(data["buy_cnt"]);
                }
                break;

            case 5:
                if (data.ContainsKey("rec_rwd"))
                {
                    A3_ActiveModel.getInstance().Canget = data["rec_rwd"];
                }
                dispatchEvent(GameEvent.Create(EVENT_PVPGETREW, this, data));

                break;

            case 6:
                bool b = false;
                if (data["open"] == 0)
                {
                    b = false;
                }
                else if (data["open"] == 1)
                {
                    b = true;
                }
                //if (a3_getJewelryWay.instance)
                //{
                //    a3_getJewelryWay.instance.setTxt_jjc(b);
                //}
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.setbtn(b);
                }
                break;

            case 7: break;

            case 8:    //匹配成功,同步次数
                A3_ActiveModel.getInstance().pvpCount = data["cnt"];
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.refCount(data["cnt"]);
                }
                break;

            case 9:    //战斗结束,同步分数段位
                A3_ActiveModel.getInstance().grade = data["grade"];
                A3_ActiveModel.getInstance().score = data["score"];
                if (a3_active_pvp.instance != null)
                {
                    a3_active_pvp.instance.refro_score();
                }
                break;
            }
        }