void Update()
        {
            if (a3_liteMinimap.instance == null)
            {
                return;
            }

            if (Globle.formatTime((int)a3_liteMinimap.instance.active_leftTm) == "00:00:00")
            {
                IconAddLightMgr.getInstance().showOrHideFire("Light_btnCseth", false);
                if (System.DateTime.Now.Hour >= 20 || System.DateTime.Now.Hour <= 12)
                {
                    time_txt.text = ContMgr.getCont("a3_active_godlight_nexttime1");
                }
                else
                {
                    time_txt.text = ContMgr.getCont("a3_active_godlight_nexttime2");
                }
            }
            else
            {
                IconAddLightMgr.getInstance().showOrHideFire("Light_btnCseth", false);
                time_txt.text = Globle.formatTime((int)a3_liteMinimap.instance.active_leftTm);
            }
        }
Exemple #2
0
 public static IconAddLightMgr getInstance()
 {
     if (_instance == null)
     {
         _instance = new IconAddLightMgr();
     }
     return(_instance);
 }
Exemple #3
0
        public static IconAddLightMgr getInstance()
        {
            bool flag = IconAddLightMgr._instance == null;

            if (flag)
            {
                IconAddLightMgr._instance = new IconAddLightMgr();
            }
            return(IconAddLightMgr._instance);
        }
 public void showIconLight(bool b = true)
 {
     //if (b_zhuan==false && b_leijichongzhi_today==false && b_leijixiaofei==false && b_leijichongzhi_today==false)
     if (b)
     {
         debug.Log("亮图标");
         IconAddLightMgr.getInstance().showOrHideFire("open_Light_awardCenter", null);
     }
     else
     {
         debug.Log("关图标");
         IconAddLightMgr.getInstance().showOrHideFire("close_Light_awardCenter", null);
     }
 }
Exemple #5
0
        public void onloadlottery(Variant data)
        {
            int num = data["res"];

            debug.Log("C#::" + data.dump());
            bool flag = num == 1;

            if (flag)
            {
                IconAddLightMgr.getInstance().showOrHideFire("ShowFreeDrawAvaible", data);
                base.dispatchEvent(GameEvent.Create(LotteryProxy.LOADLOTTERY, this, data, false));
            }
            else
            {
                bool flag2 = num == 2;
                if (flag2)
                {
                    base.dispatchEvent(GameEvent.Create(LotteryProxy.LOTTERYOK_FREEDRAW, this, data, false));
                }
                else
                {
                    bool flag3 = num == 3;
                    if (flag3)
                    {
                        base.dispatchEvent(GameEvent.Create(LotteryProxy.LOTTERYOK_ICEDRAWONCE, this, data, false));
                    }
                    else
                    {
                        bool flag4 = num == 4;
                        if (flag4)
                        {
                            base.dispatchEvent(GameEvent.Create(LotteryProxy.LOTTERYOK_ICEDRAWTENTH, this, data, false));
                        }
                        else
                        {
                            bool flag5 = num == 5;
                            if (flag5)
                            {
                                base.dispatchEvent(GameEvent.Create(LotteryProxy.LOTTERYOK_ICED_NEWBIE, this, data, false));
                            }
                            else
                            {
                                Globle.err_output(num);
                            }
                        }
                    }
                }
            }
        }
Exemple #6
0
        public void showIconLight()
        {
            bool flag = !welfareProxy.b_zhuan && !this.b_leijichongzhi_today && !this.b_leijixiaofei && !this.b_leijichongzhi_today;

            if (flag)
            {
                debug.Log("关图标");
                IconAddLightMgr.getInstance().showOrHideFire("close_Light_awardCenter", null);
            }
            else
            {
                debug.Log("亮图标");
                IconAddLightMgr.getInstance().showOrHideFire("open_Light_awardCenter", null);
            }
        }
        public void onloadlottery(Variant data)
        {
            int res = data["res"];

            debug.Log("C#::" + data.dump());
            if (res == (int)LotteryType.CurrentInfo)//获取当前抽奖信息
            {
                IconAddLightMgr.getInstance().showOrHideFire("ShowFreeDrawAvaible", data);
                //InterfaceMgr.doCommandByLua("a1_low_fightgame.ShowFreeDrawAvaible", "ui/interfaces/low/a1_low_fightgame", data);
                dispatchEvent(GameEvent.Create(LOADLOTTERY, this, data));
            }
            else if (res == (int)LotteryType.FreeDraw)//免费抽奖
            {
                dispatchEvent(GameEvent.Create(LOTTERYOK_FREEDRAW, this, data));
            }
            else if (res == (int)LotteryType.IceDrawOnce)//钻石抽奖
            {
                dispatchEvent(GameEvent.Create(LOTTERYOK_ICEDRAWONCE, this, data));
            }
            else if (res == (int)LotteryType.IceDrawTenth)//钻石十连抽
            {
                dispatchEvent(GameEvent.Create(LOTTERYOK_ICEDRAWTENTH, this, data));
            }
            else if (res == (int)LotteryType.FreeTenth)
            {
                dispatchEvent(GameEvent.Create(LOTTERYOK_FREE_TENTH, this, data));
            }
            else if (res == (int)LotteryType.NewBieDraw)
            {
                dispatchEvent(GameEvent.Create(LOTTERYOK_ICED_NEWBIE, this, data));
            }
            else if (res == (int)LotteryType.NewDrawInfo)
            {
                dispatchEvent(GameEvent.Create(LOTTERYNEW_ITEM, this, data));
            }
            else if (res == (int)LotteryType.newDraw)
            {
                dispatchEvent(GameEvent.Create(NEWDRAW, this, data));
            }
            else
            {
                if (res < 0)
                {
                    Globle.err_output(res);
                }
                return;
            }
        }
Exemple #8
0
        public void OnExchange(Variant data)
        {
            int num  = data["res"];
            int num2 = num;

            if (num2 != 0)
            {
                if (num2 != 1)
                {
                    flytxt.instance.fly("兑换失败", 0, default(Color), null);
                }
                else
                {
                    this.OnOneceExchange(data);
                }
            }
            else
            {
                this.OnSyncCount(data);
                IconAddLightMgr.getInstance().showOrHideFire("Light_exchange", data);
            }
        }
Exemple #9
0
        private void onLoadSign(Variant data)
        {
            debug.Log("签到的信息:" + data.dump());
            bool flag = data.ContainsKey("yueka");

            if (flag)
            {
                base.dispatchEvent(GameEvent.Create(A3_signProxy.SIGNINFO_YUEKA, this, data, false));
            }
            bool flag2 = data.ContainsKey("yueka_tm");

            if (flag2)
            {
                base.dispatchEvent(GameEvent.Create(A3_signProxy.SIGNINFO, this, data, false));
                IconAddLightMgr.getInstance().showOrHideFire("refreshSign", data);
            }
            bool flag3 = data.ContainsKey("daysign");

            if (flag3)
            {
                debug.Log("签到或单个补签:" + data.dump());
                base.dispatchEvent(GameEvent.Create(A3_signProxy.SIGNorREPAIR, this, data, false));
                IconAddLightMgr.getInstance().showOrHideFire("singorrepair", data);
            }
            bool flag4 = data.ContainsKey("fillsign_all");

            if (flag4)
            {
                debug.Log("一键补签:" + data.dump());
                base.dispatchEvent(GameEvent.Create(A3_signProxy.AllREPARISIGN, this, data, false));
            }
            bool flag5 = data.ContainsKey("total_signup");

            if (flag5)
            {
                debug.Log("累积奖励:" + data.dump());
                base.dispatchEvent(GameEvent.Create(A3_signProxy.ACCUMULATE, this, data, false));
            }
        }
Exemple #10
0
        private void Update()
        {
            bool flag = Globle.formatTime((int)a3_liteMinimap.instance.active_leftTm, true) == "00:00:00";

            if (flag)
            {
                IconAddLightMgr.getInstance().showOrHideFire("Light_btnCseth", false);
                bool flag2 = DateTime.Now.Hour >= 20 || DateTime.Now.Hour <= 12;
                if (flag2)
                {
                    this.time_txt.text = "下次将在12:00开启";
                }
                else
                {
                    this.time_txt.text = "下次将在19:00开启";
                }
            }
            else
            {
                IconAddLightMgr.getInstance().showOrHideFire("Light_btnCseth", false);
                this.time_txt.text = Globle.formatTime((int)a3_liteMinimap.instance.active_leftTm, true);
            }
        }
        private void RefreshEliteMonInfo(Variant data)
        {
            Dictionary <uint, EliteMonsterInfo> dicEMonInfo = ModelBase <A3_EliteMonsterModel> .getInstance().dicEMonInfo;

            bool flag = data.ContainsKey("elite_mon");

            if (flag)
            {
                List <Variant> arr = data["elite_mon"]._arr;
                for (int i = 0; i < arr.Count; i++)
                {
                    uint @uint = arr[i]["mid"]._uint;
                    bool flag2 = !dicEMonInfo.ContainsKey(@uint);
                    if (flag2)
                    {
                        ModelBase <A3_EliteMonsterModel> .getInstance().AddData(arr[i]);
                    }
                    else
                    {
                        dicEMonInfo[@uint] = new EliteMonsterInfo(arr[i].ContainsKey("kill_tm") ? arr[i]["kill_tm"]._uint : 0u, arr[i].ContainsKey("respawntm") ? arr[i]["respawntm"]._uint : 0u, arr[i].ContainsKey("killer_name") ? arr[i]["killer_name"]._str : null, arr[i].ContainsKey("mapid") ? arr[i]["mapid"]._int : 0, (arr[i].ContainsKey("mon_x") && arr[i].ContainsKey("mon_y")) ? new Vector2((float)arr[i]["mon_x"]._int, (float)arr[i]["mon_y"]._int) : default(Vector2), arr[i]["mid"]._uint);
                    }
                }
                uint up_lvl = ModelBase <PlayerModel> .getInstance().up_lvl;

                uint lvl = ModelBase <PlayerModel> .getInstance().lvl;

                int        num   = 30001;
                List <int> list  = new List <int>();
                bool       flag3 = data.ContainsKey("elite_mon");
                if (flag3)
                {
                    arr = data["elite_mon"]._arr;
                    for (int j = 0; j < arr.Count; j++)
                    {
                        list.Add(arr[j]["mid"]._int);
                    }
                }
                list.Sort();
                for (int k = 0; k < list.Count; k++)
                {
                    bool flag4 = up_lvl > XMLMgr.instance.GetSXML("monsters.monsters", "id==" + list[k]).getUint("zhuan");
                    if (flag4)
                    {
                        num = list[k];
                    }
                    else
                    {
                        bool flag5 = up_lvl == XMLMgr.instance.GetSXML("monsters.monsters", "id==" + list[k]).getUint("zhuan");
                        if (!flag5)
                        {
                            break;
                        }
                        bool flag6 = lvl >= XMLMgr.instance.GetSXML("monsters.monsters", "id==" + list[k]).getUint("zhuan");
                        if (!flag6)
                        {
                            num = list[k];
                            break;
                        }
                        num = list[k];
                    }
                }
                List <uint> list2 = new List <uint>();
                for (int l = 0; l < list.Count; l++)
                {
                    bool flag7 = list[l] <= num;
                    if (flag7)
                    {
                        foreach (Variant current in arr)
                        {
                            bool flag8 = current["mid"] == list[l];
                            if (flag8)
                            {
                                bool flag9 = current["kill_tm"] == 0;
                                if (flag9)
                                {
                                    IconAddLightMgr.getInstance().showOrHideFires("Open_Light_enterElite", null);
                                    break;
                                }
                                IconAddLightMgr.getInstance().showOrHideFires("jingyingguai_Light_enterElite", null);
                            }
                        }
                    }
                }
            }
        }
Exemple #12
0
        public void Active_BOSSOP(Variant data)
        {
            bool flag = data.ContainsKey("boss_status");

            if (flag)
            {
                for (int i = 0; i < ModelBase <A3_EliteMonsterModel> .getInstance().bossid.Length; i++)
                {
                    bool flag2 = data["boss_status"][i] != null;
                    if (flag2)
                    {
                        ModelBase <A3_EliteMonsterModel> .getInstance().bossid[i] = int.Parse(data["boss_status"][i]["index"].dump());

                        ModelBase <A3_EliteMonsterModel> .getInstance().boss_status[i] = int.Parse(data["boss_status"][i]["status"].dump());

                        Debug.LogWarning(string.Concat(new object[]
                        {
                            "bossid",
                            ModelBase <A3_EliteMonsterModel> .getInstance().bossid[i],
                            "+boss_status",
                            ModelBase <A3_EliteMonsterModel> .getInstance().boss_status[i]
                        }));
                    }
                }
                base.dispatchEvent(GameEvent.Create(EliteMonsterProxy.EVENT_BOSSOPSUCCESS, this, data, false));
            }
            debug.Log("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + data.dump());
            uint up_lvl = ModelBase <PlayerModel> .getInstance().up_lvl;

            Dictionary <int, int> dictionary = new Dictionary <int, int>();
            bool flag3 = data.ContainsKey("index");

            if (flag3)
            {
                string   @string = XMLMgr.instance.GetSXML("worldboss.boss", "id==" + data["index"]).getString("level_limit");
                string[] array   = @string.Split(new char[]
                {
                    ','
                });
                uint num   = uint.Parse(array[0]);
                bool flag4 = data["status"] == 1;
                if (flag4)
                {
                    bool flag5 = up_lvl >= num;
                    bool val;
                    if (flag5)
                    {
                        dictionary[data["index"]] = data["status"];
                        val = true;
                    }
                    else
                    {
                        bool flag6 = dictionary.Count > 0;
                        if (flag6)
                        {
                            val = true;
                        }
                        else
                        {
                            val = false;
                            BaseProxy <EliteMonsterProxy> .getInstance().SendProxy();
                        }
                    }
                    IconAddLightMgr.getInstance().showOrHideFires("shijieboss_Light_enterElite", val);
                }
                else
                {
                    bool flag7 = data["status"] == 2;
                    if (flag7)
                    {
                        bool flag8 = dictionary.ContainsKey(data["index"]);
                        if (flag8)
                        {
                            dictionary.Remove(data["index"]);
                        }
                        bool flag9 = dictionary.Count > 0;
                        bool val;
                        if (flag9)
                        {
                            val = true;
                        }
                        else
                        {
                            val = false;
                            BaseProxy <EliteMonsterProxy> .getInstance().SendProxy();
                        }
                        IconAddLightMgr.getInstance().showOrHideFires("shijieboss_Light_enterElite", val);
                    }
                }
            }
        }
Exemple #13
0
        private void onActivedegree_info(Variant data)
        {
            if (!data.ContainsKey("huoyue_point"))
            {
                return;
            }
            debug.Log("活跃度::" + data.dump());
            if (SelfRole._inst != null)
            {
                SelfRole._inst.m_LockRole = null;
            }
            if (data.ContainsKey("res"))
            {
                int res = data["res"];
                switch (res)
                {
                case 0:    //获取总点数
                    // dispatchEvent(GameEvent.Create(EVENT_GET_ALLPOINT, this, data));
                    break;

                case 1:    //获取各个活跃活动信息;
                    point.Clear();
                    itd.Clear();
                    huoyue_point = data["huoyue_point"];

                    foreach (Variant v in data["huoyues"]._arr)
                    {
                        uint             id    = v["active_id"];
                        uint             count = v["count"];
                        ActiveDegreeData i     = new ActiveDegreeData();
                        i.id    = id;
                        i.count = count;
                        itd.Add(id, i);
                    }
                    foreach (int id in data["huoyue_reward"]._arr)
                    {
                        point.Add(id);
                    }

                    if (a3_activeDegree.instance != null)
                    {
                        a3_activeDegree.instance.do_Active();
                        a3_activeDegree.instance.onLoad_Change();
                        a3_activeDegree.instance.onActive_Load();
                    }
                    // dispatchEvent(GameEvent.Create(EVENT_GET_ALLPOINT, this, data));

                    //for (int i = 0; i < xmlreward.Count; i++)
                    //{
                    //    int index = i;
                    //    if (a3_activeDegreeProxy.getInstance().huoyue_point >= xmlreward[index].getInt("ac"))
                    //    {
                    //        if (!a3_activeDegreeProxy.getInstance().point.Contains(xmlreward[index].getInt("ac")))
                    //        {
                    //            InterfaceMgr.doCommandByLua("a1_low_fightgame.resh_huoyue", "ui/interfaces/low/a1_low_fightgame", data);
                    //        }
                    //        else
                    //        {
                    //            InterfaceMgr.doCommandByLua("a1_low_fightgame.resh_huoyue", "ui/interfaces/low/a1_low_fightgame", null);
                    //        }
                    //    }

                    //}

                    point.Sort();
                    //List<SXML> xmlreward = XMLMgr.instance.GetSXMLList("huoyue.reward");
                    //if ((point.Count > 0 && huoyue_point >= point[point.Count - 1]+20)||(point.Count==0&&huoyue_point>= xmlreward[0].getInt("ac")))
                    //{
                    //    IconAddLightMgr.getInstance().showOrHideFire("resh_huoyue",data);
                    //    //InterfaceMgr.doCommandByLua("a1_low_fightgame.resh_huoyue", "ui/interfaces/low/a1_low_fightgame", data);
                    //}
                    //else if (point.Count > 0 && huoyue_point / 20 >= point.Count+1)
                    //{
                    //    IconAddLightMgr.getInstance().showOrHideFire("resh_huoyue", data);
                    //    //InterfaceMgr.doCommandByLua("a1_low_fightgame.resh_huoyue", "ui/interfaces/low/a1_low_fightgame", data);
                    //}
                    //else
                    //{
                    //    IconAddLightMgr.getInstance().showOrHideFire("resh_huoyue", data);
                    //    //InterfaceMgr.doCommandByLua("a1_low_fightgame.resh_huoyue", "ui/interfaces/low/a1_low_fightgame", null);
                    //}
                    bool isopenlight = false;
                    int  max_ac      = 0;
                    if (huoyue_point < 20)
                    {
                        isopenlight = false;
                    }
                    else
                    {
                        if (point.Count > 0)
                        {
                            max_ac = point[point.Count - 1];
                            if (max_ac == 100)
                            {
                                isopenlight = false;
                            }
                            else
                            {
                                isopenlight = huoyue_point >= max_ac + 20 ? true : false;
                            }
                        }
                        else
                        {
                            isopenlight = true;
                        }
                    }

                    IconAddLightMgr.getInstance().showOrHideFire(isopenlight? "open_light_huoyue": "close_light_huoyue", null);



                    break;
                }
            }


            //服务器发的表里读取所有活跃数据,存到A3_activeDegreeModel.getinstance().activedeg_info里
            //id为键
        }
        //2、世界boss操作
        public void Active_BOSSOP(Variant data)
        {
            debug.Log("166世界boss信息:" + data.dump());
            if (data.ContainsKey("boss_status"))
            {
                for (int i = 0; i < A3_EliteMonsterModel.getInstance().bossid.Length; i++)
                {
                    if (data["boss_status"][i] != null)
                    {
                        A3_EliteMonsterModel.getInstance().bossid[i]      = int.Parse(data["boss_status"][i]["index"].dump());
                        A3_EliteMonsterModel.getInstance().boss_status[i] = int.Parse(data["boss_status"][i]["status"].dump());
                        Debug.LogWarning("bossid" + A3_EliteMonsterModel.getInstance().bossid[i] + "+" + "boss_status" + A3_EliteMonsterModel.getInstance().boss_status[i]);


                        string name = "";
                        if (data["boss_status"][i].ContainsKey("killer_name"))
                        {
                            name = data["boss_status"][i]["killer_name"];
                        }
                        if (data["boss_status"][i].ContainsKey("dmg_list") && data["boss_status"][i]["dmg_list"].Count > 0)
                        {
                            debug.Log("伤害排行");
                            List <dmg_list> lst = new List <dmg_list>();
                            for (int j = 0; j < data["boss_status"][i]["dmg_list"].Count; j++)
                            {
                                int      ranks = j;
                                dmg_list sl    = new dmg_list();
                                int      mid   = 0;
                                switch (data["boss_status"][i]["index"]._int)
                                {
                                case 1:
                                    mid = 2012;
                                    break;

                                case 2:
                                    mid = 3126;
                                    break;

                                case 3:
                                    mid = 2000;
                                    break;

                                default:
                                    break;
                                }
                                sl.mid      = mid;
                                sl.cid      = data["boss_status"][i]["dmg_list"][j]["cid"]._int;
                                sl.name     = data["boss_status"][i]["dmg_list"][j]["name"]._str;
                                sl.dmg      = data["boss_status"][i]["dmg_list"][j]["dmg"]._int;
                                sl.rank     = ranks + 1;
                                sl.lat_name = name;
                                lst.Add(sl);
                                A3_EliteMonsterModel.getInstance().dic_dmg_lst[sl.mid] = lst;
                            }
                        }
                    }
                }
                dispatchEvent(GameEvent.Create(EliteMonsterProxy.EVENT_BOSSOPSUCCESS, this, data));
            }
            //收到boss死亡或者复活
            debug.Log("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + data.dump());

            uint zhuan = PlayerModel.getInstance().up_lvl;
            Dictionary <int, int> dic = new Dictionary <int, int>();
            bool can = true;

            if (data.ContainsKey("index"))
            {
                string   xml       = XMLMgr.instance.GetSXML("worldboss.boss", "id==" + data["index"]).getString("level_limit");
                string[] str       = xml.Split(',');
                uint     needzhuan = uint.Parse(str[0]);
                //1:复活
                if (data["status"] == 1)
                {
                    if (zhuan >= needzhuan)
                    {
                        dic[data["index"]] = data["status"];
                        can = true;
                    }
                    else
                    {
                        if (dic.Count > 0)
                        {
                            can = true;
                        }
                        else
                        {
                            can = false;
                            EliteMonsterProxy.getInstance().SendProxy();
                        }
                    }
                    IconAddLightMgr.getInstance().showOrHideFires("shijieboss_Light_enterElite", can);
                }
                //2:死了
                else if (data["status"] == 2)
                {
                    if (dic.ContainsKey(data["index"]))
                    {
                        dic.Remove(data["index"]);
                    }
                    if (dic.Count > 0)
                    {
                        can = true;
                    }
                    else
                    {
                        can = false;
                        EliteMonsterProxy.getInstance().SendProxy();
                    }
                    IconAddLightMgr.getInstance().showOrHideFires("shijieboss_Light_enterElite", can);
                }
                //3:不存在
                else
                {
                }
            }
        }
 public void showOrHideFire()
 {
     debug.Log("七日目标提示:" + can_num);
     IconAddLightMgr.getInstance().showOrHideFire(can_num > 0? "open_Light_sevenday":"close_Light_sevenday", null);
 }
        private void onActivedegree_info(Variant data)
        {
            bool flag = !data.ContainsKey("huoyue_point");

            if (!flag)
            {
                debug.Log("活跃度::" + data.dump());
                bool flag2 = SelfRole._inst != null;
                if (flag2)
                {
                    SelfRole._inst.m_LockRole = null;
                }
                bool flag3 = data.ContainsKey("res");
                if (flag3)
                {
                    int num  = data["res"];
                    int num2 = num;
                    if (num2 != 0)
                    {
                        if (num2 == 1)
                        {
                            this.point.Clear();
                            this.itd.Clear();
                            this.huoyue_point = data["huoyue_point"];
                            foreach (Variant current in data["huoyues"]._arr)
                            {
                                uint             num3             = current["active_id"];
                                uint             count            = current["count"];
                                ActiveDegreeData activeDegreeData = new ActiveDegreeData();
                                activeDegreeData.id    = num3;
                                activeDegreeData.count = count;
                                this.itd.Add(num3, activeDegreeData);
                            }
                            using (List <Variant> .Enumerator enumerator2 = data["huoyue_reward"]._arr.GetEnumerator())
                            {
                                while (enumerator2.MoveNext())
                                {
                                    int item = enumerator2.Current;
                                    this.point.Add(item);
                                }
                            }
                            bool flag4 = a3_activeDegree.instance != null;
                            if (flag4)
                            {
                                a3_activeDegree.instance.do_Active();
                                a3_activeDegree.instance.onLoad_Change();
                                a3_activeDegree.instance.onActive_Load();
                            }
                            this.point.Sort();
                            bool flag5 = this.huoyue_point < 20;
                            bool flag6;
                            if (flag5)
                            {
                                flag6 = false;
                            }
                            else
                            {
                                bool flag7 = this.point.Count > 0;
                                if (flag7)
                                {
                                    int  num4  = this.point[this.point.Count - 1];
                                    bool flag8 = num4 == 100;
                                    flag6 = (!flag8 && this.huoyue_point >= num4 + 20);
                                }
                                else
                                {
                                    flag6 = true;
                                }
                            }
                            IconAddLightMgr.getInstance().showOrHideFire(flag6 ? "open_light_huoyue" : "close_light_huoyue", null);
                        }
                    }
                }
            }
        }
Exemple #17
0
        private void RefreshEliteMonInfo(Variant data)
        {
            var            emonList = A3_EliteMonsterModel.getInstance().dicEMonInfo;
            List <Variant> listData;

            if (data.ContainsKey("elite_mon"))
            {
                listData = data["elite_mon"]._arr;
                for (int i = 0; i < listData.Count; i++)
                {
                    uint monId = listData[i]["mid"]._uint;

                    if (!emonList.ContainsKey(monId))
                    {
                        //emonList.Add(monId, new EliteMonsterInfo(
                        //    lastKilledDate: listData[i].ContainsKey("kill_tm") ? listData[i]["kill_tm"]._uint : 0,
                        //    respawnTime: listData[i].ContainsKey("respawntm") ? listData[i]["respawntm"]._uint : 0,
                        //    killerName: listData[i].ContainsKey("killer_name") ? listData[i]["killer_name"]._str : "",
                        //    mapId: listData[i].ContainsKey("mapid") ? listData[i]["mapid"]._int : 0,
                        //    pos: listData[i].ContainsKey("mon_x") && listData[i].ContainsKey("mon_y") ? new Vector2(listData[i]["mon_x"]._int, listData[i]["mon_y"]._int) : default(Vector2),
                        //    monId: listData[i]["mid"]._uint
                        //));
                        A3_EliteMonsterModel.getInstance().AddData(listData[i]);
                    }
                    else
                    {
                        emonList[monId] = new EliteMonsterInfo(
                            lastKilledDate: listData[i].ContainsKey("kill_tm") ? listData[i]["kill_tm"]._uint : 0,
                            respawnTime: listData[i].ContainsKey("respawntm") ? listData[i]["respawntm"]._uint : 0,
                            killerName: listData[i].ContainsKey("killer_name") ? listData[i]["killer_name"]._str : null,
                            mapId: listData[i].ContainsKey("mapid") ? listData[i]["mapid"]._int : 0,
                            pos: listData[i].ContainsKey("mon_x") && listData[i].ContainsKey("mon_y") ? new Vector2(listData[i]["mon_x"]._int, listData[i]["mon_y"]._int) : Vector2.zero,
                            monId: listData[i]["mid"]._uint
                            );
                    }
                    string name = "";
                    if (listData[i].ContainsKey("killer_name"))
                    {
                        name = listData[i]["killer_name"];
                    }
                    if (listData[i].ContainsKey("dmg_list") && listData[i]["dmg_list"].Count > 0)
                    {
                        debug.Log("伤害排行");
                        List <dmg_list> lst = new List <dmg_list>();
                        for (int j = 0; j < listData[i]["dmg_list"].Count; j++)
                        {
                            int      ranks = j;
                            dmg_list sl    = new dmg_list();
                            sl.mid      = listData[i]["mid"]._int;
                            sl.cid      = listData[i]["dmg_list"][j]["cid"]._int;
                            sl.name     = listData[i]["dmg_list"][j]["name"]._str;
                            sl.dmg      = listData[i]["dmg_list"][j]["dmg"]._int;
                            sl.rank     = ranks + 1;
                            sl.lat_name = name;
                            lst.Add(sl);
                            A3_EliteMonsterModel.getInstance().dic_dmg_lst[sl.mid] = lst;
                        }
                    }
                }
                //iconlight
                uint       zhuan = PlayerModel.getInstance().up_lvl;
                uint       lv    = PlayerModel.getInstance().lvl;
                int        mosid = 30001;//最后一个开启的怪物id
                List <int> mids  = new List <int>();
                if (data.ContainsKey("elite_mon"))
                {
                    listData = data["elite_mon"]._arr;
                    for (int i = 0; i < listData.Count; i++)
                    {
                        mids.Add(listData[i]["mid"]._int);
                    }
                }
                mids.Sort();
                for (int i = 0; i < mids.Count; i++)
                {
                    if (zhuan > XMLMgr.instance.GetSXML("monsters.monsters", "id==" + mids[i]).getUint("zhuan"))
                    {
                        mosid = mids[i];
                    }
                    else if (zhuan == XMLMgr.instance.GetSXML("monsters.monsters", "id==" + mids[i]).getUint("zhuan"))
                    {
                        if (lv >= XMLMgr.instance.GetSXML("monsters.monsters", "id==" + mids[i]).getUint("zhuan"))
                        {
                            mosid = mids[i];
                        }
                        else
                        {
                            mosid = mids[i]; break;
                        }
                    }
                    else
                    {
                        break;
                    }
                }
                List <uint> lsts = new List <uint>();
                for (int i = 0; i < mids.Count; i++)
                {
                    if (mids[i] <= mosid)
                    {
                        foreach (Variant v in listData)
                        {
                            if (v["mid"] == mids[i])
                            {
                                if (v["kill_tm"] == 0)
                                {
                                    //亮
                                    IconAddLightMgr.getInstance().showOrHideFires("Open_Light_enterElite", null);
                                    break;
                                }
                                else
                                {
                                    IconAddLightMgr.getInstance().showOrHideFires("jingyingguai_Light_enterElite", null);
                                }
                                //不亮
                            }
                        }
                    }
                }
            }
        }