Exemple #1
0
 void OnShowGemView(bool bSuccess, object param)
 {
     if (RoleViewLogic.Instance() != null)
     {
         RoleViewLogic.Instance().m_delAfterStart = OnAfterStartGemView;
     }
 }
    void OnEnable()
    {
        m_Instance = this;
        GameManager.gameManager.ActiveScene.InitFakeObjRoot(m_FakeObjTopLeft, m_FakeObjBottomRight);
        GameManager.gameManager.ActiveScene.ShowFakeObj();
        m_bIsNeedUpdateAttr = true;
        m_LeftAttrView_01.SetActive(true);
        m_LeftAttrView_02.SetActive(false);
        m_LeftAttrView_03.SetActive(false);
        m_ShowMoreInfoBt.SetActive(true);
        m_CancelShowInfoBt.SetActive(false);

        //bool bShowFashionTab = GameManager.gameManager.PlayerDataPool.IsServerFlagOpen(SERVER_FLAGS_ENUM.FLAG_FASHIONTAB);
        //m_TabFashion.SetActive(bShowFashionTab);

        UpdateEquipPack();      // 更新装备槽部分显示
        m_TabGrid.GetComponent <TabController>().ChangeTab("Tab1-Attr");
        AttrBtClick();          //点击属性按钮
        InitTitleView();
        Check_NewPlayerGuide(); // 新手指引
        if (m_delAfterStart != null)
        {
            m_delAfterStart();
        }
        //更新预览模型
        int profession = Singleton <ObjManager> .GetInstance().MainPlayer.Profession;

        CreatePartnerFakeObj(profession);
        TestStartTab();
        GameManager.gameManager.ActiveScene.ShowFakeObj();

        m_VipLvlSprite.spriteName = VipData.GetStarIconByLevel(VipData.GetVipLv());
        updateGemRemindPoint();
        m_roleParticle.SetActive(true);
    }
        public uint Execute(PacketDistributed ipacket)
        {
            GC_RET_ROLE_DATA packet = (GC_RET_ROLE_DATA )ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic

            if (FlyWingRoot.Instance() != null)
            {
                FlyWingRoot.Instance().SetFlightVlue(packet.Combatvalue);
            }

            if (PlayerFrameLogic.Instance())
            {
                PlayerFrameLogic.Instance().ChangeCombatValue(packet.Combatvalue);
            }

            if (RoleViewLogic.Instance() == null)
            {
                return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
            }

            RoleViewLogic.Instance().Name        = packet.Rolename;
            RoleViewLogic.Instance().CombatValue = packet.Combatvalue;
            RoleViewLogic.Instance().Level       = packet.Leve;
            RoleViewLogic.Instance().Profession  = packet.Profession;
            RoleViewLogic.Instance().RoleGUID    = packet.Guid;
            RoleViewLogic.Instance().CurHp       = packet.Curhp;
            RoleViewLogic.Instance().MaxHP       = packet.Maxhp;
            RoleViewLogic.Instance().CurMp       = packet.Curmp;
            RoleViewLogic.Instance().MaxMp       = packet.Maxmp;
            RoleViewLogic.Instance().CurExp      = packet.Curexp;
            RoleViewLogic.Instance().MaxExp      = packet.Maxexp;
            RoleViewLogic.Instance().PAttck      = packet.Pattack;
            RoleViewLogic.Instance().MAttack     = packet.Mattack;
            RoleViewLogic.Instance().Hit         = packet.Hit;
            RoleViewLogic.Instance().Critical    = packet.Critical;
            RoleViewLogic.Instance().PDefense    = packet.Pdefense;
            RoleViewLogic.Instance().MDefense    = packet.Mdefense;
            RoleViewLogic.Instance().DeCritical  = packet.Decritical;
            RoleViewLogic.Instance().Doge        = packet.Doge;
            RoleViewLogic.Instance().Strike      = packet.Strike;
            RoleViewLogic.Instance().CriticalAdd = packet.Criticaladd;
            RoleViewLogic.Instance().Ductical    = packet.Dutical;
            RoleViewLogic.Instance().CriticalMis = packet.Criticalmis;
            RoleViewLogic.Instance().OffLineExp  = packet.Curofflineexp;

            Tab_OffLineExp curTabOffLine = TableManager.GetOffLineExpByID(packet.Leve, 0);

            if (null != curTabOffLine)
            {
                RoleViewLogic.Instance().OffLineMaxExp = curTabOffLine.OffLineExpLimit;
            }
            RoleViewLogic.Instance().UpdateAttrRightView();
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #4
0
 void CloseEquip()
 {
     m_GemListObj.SetActive(false);
     m_GemPreView.SetActive(false);
     if (RoleViewLogic.Instance() != null)
     {
         RoleViewLogic.Instance().TempShowFakeObj();
     }
 }
Exemple #5
0
 void OpenGemView()
 {
     UIManager.CloseUI(UIInfo.EquipTooltipsRoot);
     if (RoleViewLogic.Instance() != null)
     {
         OnAfterStartGemView();
     }
     else
     {
         UIManager.ShowUI(UIInfo.RoleView, OnShowGemView);
     }
 }
Exemple #6
0
    void ShowEquipPage()
    {
        //m_Page_Help.gameObject.SetActive(false);
        m_Page_Equip.gameObject.SetActive(true);
        m_GemPreView.SetActive(true);
        m_Page_UnEquip.gameObject.SetActive(false);
        m_GemHelpInfo.SetActive(false);
        UpdateGemItemList();

        m_GemListObj.SetActive(true);
        if (RoleViewLogic.Instance() != null)
        {
            RoleViewLogic.Instance().TempHideFakeObj();
        }
    }
        public uint Execute(PacketDistributed ipacket)
        {
            GC_ASK_COMMONFLAG_RET packet = (GC_ASK_COMMONFLAG_RET )ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
            GameManager.gameManager.PlayerDataPool.CommonData.HandlePacket(packet);
            if (null != AwardLogic.Instance())
            {
                AwardLogic.Instance().UpdateTip();
            }
            if (null != FunctionButtonLogic.Instance())
            {
                FunctionButtonLogic.Instance().UpdateButtonAwardTips();
            }
            if (null != PlayerFrameLogic.Instance())
            {
                PlayerFrameLogic.Instance().UpdateRemainNum();
            }
            if (null != MenuBarLogic.Instance())
            {
                MenuBarLogic.Instance().UpdateSystemCountTip();
                MenuBarLogic.Instance().UpdateRoleCountTip();
            }
            if (null != SystemAndAutoFightLogic.Instance())
            {
                SystemAndAutoFightLogic.Instance().updateRemindPoint();
            }
            if (null != AutoFightLogic.Instance())
            {
                AutoFightLogic.Instance().updateRemindPoint();
            }
            if (null != RoleViewLogic.Instance())
            {
                RoleViewLogic.Instance().updateGemRemindPoint();
            }
            if (null != GemLogic.Instance())
            {
                GemLogic.Instance().updateGemRemindPoint();
            }
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #8
0
    public void NewPlayerGuide(int nIndex)
    {
        m_NewPlayerGuide_Step = nIndex;
        switch (nIndex)
        {
        case 0:
            NewPlayerGuidLogic.OpenWindow(m_SlotHole_1, 100, 100, Utils.GetDicByID(10414), "bottom", 0, true, true);
            break;

        case 1:
            Transform ItemTrans = m_GemListGrid.transform.FindChild("1000");
            if (ItemTrans != null && ItemTrans.gameObject != null)
            {
                NewPlayerGuidLogic.OpenWindow(ItemTrans.gameObject, 100, 100, Utils.GetDicByID(10415), "right", 0, true, true);
            }
            break;

        case 2:
            NewPlayerGuidLogic.OpenWindow(m_BtnMount, 180, 70, "", "bottom", 0, true, true);
            break;

        case 3:
            if (RoleViewLogic.Instance())
            {
                RoleViewLogic.Instance().NewPlayerGuide(3);
            }
            m_NewPlayerGuide_Step = -1;
            break;

        case 4:
            RoleViewLogic.Instance().OnClick_Equip_WEAPON();
            OnClickGemSlot1();
            Transform ItemTrans1 = m_GemListGrid.transform.FindChild("1000");
            if (ItemTrans1 != null && ItemTrans1.gameObject != null)
            {
                NewPlayerGuidLogic.OpenWindow(ItemTrans1.gameObject, 100, 100, "", "bottom", 0, true, true);
            }
            break;

        case 5:
            NewPlayerGuidLogic.OpenWindow(m_BtnMount, 180, 70, "", "bottom", 0, true, true);
            break;
        }
    }
Exemple #9
0
        public uint Execute(PacketDistributed ipacket)
        {
            GC_SHOW_EQUIPREMIND packet = (GC_SHOW_EQUIPREMIND)ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
            GameItem item = new GameItem();

            item.Guid   = packet.EquipGUID;
            item.DataID = packet.EquipID;
            if (BackPackLogic.Instance() != null)
            {
                if (packet.EquipGUID != BackPackLogic.Instance().TakeOffGuid)
                {
                    EquipRemindLogic.InitEquipInfo(item);
                }
                else
                {
                    BackPackLogic.Instance().TakeOffGuid = GlobeVar.INVALID_GUID;
                }
            }
            else if (RoleViewLogic.Instance() != null)
            {
                if (packet.EquipGUID != RoleViewLogic.Instance().TakeOffGuid)
                {
                    EquipRemindLogic.InitEquipInfo(item);
                }
                else
                {
                    RoleViewLogic.Instance().TakeOffGuid = GlobeVar.INVALID_GUID;
                }
            }
            else
            {
                EquipRemindLogic.InitEquipInfo(item);
            }
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #10
0
 void OnAfterStartGemView()
 {
     if (RoleViewLogic.Instance() != null)
     {
         //RoleViewLogic.Instance().GemBtClick();
         RoleViewLogic.Instance().OnClick_Equip(m_EquipSlotIndex);
         if (GemLogic.Instance() != null)
         {
             if (m_GemClickSlot == "GemSlot1")
             {
                 GemLogic.Instance().OnClickGemSlot1();
             }
             else if (m_GemClickSlot == "GemSlot2")
             {
                 GemLogic.Instance().OnClickGemSlot2();
             }
             else if (m_GemClickSlot == "GemSlot3")
             {
                 GemLogic.Instance().OnClickGemSlot3();
             }
         }
     }
 }
        public uint Execute(PacketDistributed ipacket)
        {
            GC_COMBATVALUE_RET packet = (GC_COMBATVALUE_RET )ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic

            if (Singleton <ObjManager> .GetInstance().MainPlayer != null)
            {
                if (packet.ShowPowerRemind == 1)
                {
                    int nNewCombatValue = packet.CombatValue;
                    int nAddCombatValue = nNewCombatValue - Singleton <ObjManager> .GetInstance().MainPlayer.BaseAttr.CombatValue;

                    if (nAddCombatValue > 0)
                    {
                        PowerRemindLogic.InitPowerInfo(nNewCombatValue, nAddCombatValue);
                    }
                }

                Singleton <ObjManager> .GetInstance().MainPlayer.BaseAttr.CombatValue = packet.CombatValue;

                if (BackPackLogic.Instance())
                {
                    //设置了客户端战斗力之后更新背包界面
                    BackPackLogic.Instance().UpdatePlayerInfo();
                }

                if (PVPPowerWindow.Instance())
                {
                    PVPPowerWindow.Instance().UpdateCombatValue();
                }
                if (RoleViewLogic.Instance() != null)
                {
                    RoleViewLogic.Instance().OnCombatChange();
                }
                if (FlyWingRoot.Instance() != null)
                {
                    FlyWingRoot.Instance().SetFlightVlue(packet.CombatValue);
                }
                if (PlayerFrameLogic.Instance())
                {
                    PlayerFrameLogic.Instance().ChangeCombatValue(packet.CombatValue);
                }
            }
            else
            {
                GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.CombatValue = packet.CombatValue;
            }
#if UNITY_ANDROID
            // 台湾安卓渠道特有
            if (PlatformHelper.IsChannelTW())
            {
                int newCombatValue = packet.CombatValue;
                // 提交战力排行榜数据
                PlatformHelper.SubmitRankScore(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_RANK_TYPE.COMBAT_VALUE, newCombatValue);
                // 解锁战力成就
                if (newCombatValue >= 1000000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_100);
                }
                else if (newCombatValue >= 700000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_70);
                }
                else if (newCombatValue >= 500000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_50);
                }
                else if (newCombatValue >= 300000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_30);
                }
                else if (newCombatValue >= 200000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_20);
                }
                else if (newCombatValue >= 100000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_10);
                }
                else if (newCombatValue >= 50000)
                {
                    PlatformHelper.UnlockAchievement(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_ACHIEVEMENT_TYPE.COMBAT_VALUE_5);
                }
            }
#endif
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #12
0
 void OnDestroy()
 {
     m_Instance = null;
 }
Exemple #13
0
 void OnDisable()
 {
     DestroyPartnerFakeObj();
     GameManager.gameManager.ActiveScene.HideFakeObj();
     m_Instance = null;
 }
        public uint Execute(PacketDistributed ipacket)
        {
            GC_SYN_ATTR packet = (GC_SYN_ATTR)ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
            //判断是MainPlayer还是其他Obj
            Obj_MainPlayer _mainPlayer = Singleton <ObjManager> .GetInstance().MainPlayer;

            PlayerData playerDataPool = GameManager.gameManager.PlayerDataPool;

            //血量
            bool isHpChange = false;

            if (packet.HasCurHp)
            {
                playerDataPool.MainPlayerBaseAttr.HP = packet.CurHp;
                isHpChange = true;
            }
            if (packet.HasMaxHP)
            {
                playerDataPool.MainPlayerBaseAttr.MaxHP = packet.MaxHP;
#if UNITY_ANDROID
                // 台湾安卓渠道特有,提交血量排行榜数据
                if (PlatformHelper.IsChannelTW())
                {
                    PlatformHelper.SubmitRankScore(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_RANK_TYPE.HP, playerDataPool.MainPlayerBaseAttr.MaxHP);
                }
#endif
                isHpChange = true;
            }
            if (isHpChange && _mainPlayer != null)
            {
                _mainPlayer.OptHPChange();
            }
            //法力
            bool isMpChange = false;
            if (packet.HasCurMp)
            {
                playerDataPool.MainPlayerBaseAttr.MP = packet.CurMp;
                isMpChange = true;
            }
            if (packet.HasMaxMP)
            {
                playerDataPool.MainPlayerBaseAttr.MaxMP = packet.MaxMP;
                isMpChange = true;
            }
            if (isMpChange && _mainPlayer != null)
            {
                _mainPlayer.OptMPChange();
            }

            //怒气
            bool isXpChange = false;
            if (packet.HasCurXp)
            {
                playerDataPool.MainPlayerBaseAttr.XP = packet.CurXp;
                isXpChange = true;
            }
            if (packet.HasMaxXP)
            {
                playerDataPool.MainPlayerBaseAttr.MaxXP = packet.MaxXP;
                isXpChange = true;
            }
            if (isXpChange && _mainPlayer != null)
            {
                _mainPlayer.OptXPChange();
            }

            //等级
            if (packet.HasCurLev)
            {
                // 更新配置文件

                playerDataPool.MainPlayerBaseAttr.Level = packet.CurLev;
                if (_mainPlayer)
                {
                    for (int i = 0; i < LoginData.loginRoleList.Count; i++)
                    {
                        if (LoginData.loginRoleList[i].guid == _mainPlayer.GUID)
                        {
                            LoginData.loginRoleList[i].level = packet.CurLev;
                            UserConfigData.AddRoleInfo();
                            break;
                        }
                    }

                    _mainPlayer.OptLevelChange();

                    if (LivingSkillLogic.Instance() != null)
                    {
                        LivingSkillLogic.Instance().UpdatePlayerStamina();
                    }
                    _mainPlayer.UpdateSelectDrug();
                }
            }
            // 经验
            if (packet.HasCurExp)
            {
                playerDataPool.MainPlayerBaseAttr.Exp = packet.CurExp;
                if (_mainPlayer)
                {
                    _mainPlayer.OnExpChange();
                }
                //神器强化界面
                if (EquipShenQiStrength.Instance() != null)
                {
                    EquipShenQiStrength.Instance().UpdateExpShow();
                }
            }
            if (packet.HasOffLineExp)
            {
                playerDataPool.MainPlayerBaseAttr.OffLineExp = packet.OffLineExp;
                if (null != _mainPlayer)
                {
                    _mainPlayer.OnOffLineExpChange();
                }
            }
            //体能
            if (packet.HasCurStamina)
            {
                playerDataPool.MainPlayerBaseAttr.CurStamina = packet.CurStamina;

                if (LivingSkillLogic.Instance() != null)
                {
                    LivingSkillLogic.Instance().UpdatePlayerStamina();
                }
            }
            //金钱
            if (packet.HasCurMoney)
            {
                playerDataPool.Money.SetMoney(MONEYTYPE.MONEYTYPE_COIN, packet.CurMoney);
#if UNITY_ANDROID
                // 台湾安卓渠道特有,提交金币排行榜数据
                if (PlatformHelper.IsChannelTW())
                {
                    PlatformHelper.SubmitRankScore(Games.GlobeDefine.GameDefine_Globe.GOOGLEPLAY_RANK_TYPE.GOLD_COINS, packet.CurMoney);
                }
#endif
                if (BackPackLogic.Instance())
                {
                    BackPackLogic.Instance().UpdateMoneyInfo();
                }

                if (FlyWingRoot.Instance())
                {
                    FlyWingRoot.Instance().UpdateMoneyInfo();
                }
//                if (SwordsManController.Instance() != null)
//                {
//                    SwordsManController.Instance().UpdateCoin();
//                }
                if (CangKuLogic.Instance())
                {
                    CangKuLogic.Instance().UpdateBackPack_Money();
                }
                //神器强化界面
                if (EquipShenQiStrength.Instance() != null)
                {
                    EquipShenQiStrength.Instance().UpdateMoneyShow();
                }
                if (GemLogic.Instance() != null)
                {
                    GemLogic.Instance().UpdateMoneyInfo();
                }
                if (null != GUIData.delMoneyChanged)
                {
                    GUIData.delMoneyChanged();
                }

                if (RestaurantController.Instance() != null)
                {
                    RestaurantController.Instance().UpdateMoneyInfo();
                }

                if (EquipStrengthenLogic.Instance() != null)
                {
                    EquipStrengthenLogic.Instance().UpdateMoneyInfo();
                }

                if (SkillLevelUpRoot.Instance() != null)
                {
                    SkillLevelUpRoot.Instance().UpdateSkillInfo();
                }
            }

            //元宝
            if (packet.HasCurYuanBao)
            {
                playerDataPool.Money.SetMoney(MONEYTYPE.MONEYTYPE_YUANBAO, packet.CurYuanBao);
                if (BackPackLogic.Instance())
                {
                    BackPackLogic.Instance().UpdateMoneyInfo();
                }
                if (YuanBaoShopLogic.Instance())
                {
                    YuanBaoShopLogic.Instance().UpdateYuanBaoInfo();
                }
                if (DailyLuckyDrawLogic.Instance())
                {
                    DailyLuckyDrawLogic.Instance().UpdateMoney();
                }
                if (CangKuLogic.Instance())
                {
                    CangKuLogic.Instance().UpdateBackPack_Money();
                }
                //神器强化界面
                if (EquipShenQiStrength.Instance() != null)
                {
                    EquipShenQiStrength.Instance().UpdateMoneyShow();
                }
                if (null != GUIData.delMoneyChanged)
                {
                    GUIData.delMoneyChanged();
                }
            }

            //绑定元宝
            if (packet.HasCurBDYuanBao)
            {
                playerDataPool.Money.SetMoney(MONEYTYPE.MONEYTYPE_YUANBAO_BIND, packet.CurBDYuanBao);
                if (FashionLogic.Instance() != null)
                {
                    FashionLogic.Instance().UpdateRuby();
                }
                if (BackPackLogic.Instance())
                {
                    BackPackLogic.Instance().UpdateMoneyInfo();
                }
                if (YuanBaoShopLogic.Instance())
                {
                    YuanBaoShopLogic.Instance().UpdateYuanBaoInfo();
                }
                if (DailyLuckyDrawLogic.Instance())
                {
                    DailyLuckyDrawLogic.Instance().UpdateMoney();
                }
                if (CangKuLogic.Instance())
                {
                    CangKuLogic.Instance().UpdateBackPack_Money();
                }
                if (RestaurantController.Instance() != null)
                {
                    RestaurantController.Instance().UpdateMoneyInfo();
                }
                if (null != GUIData.delMoneyChanged)
                {
                    GUIData.delMoneyChanged();
                }
            }
//            if (packet.HasSwordsManScore)
//            {
//                playerDataPool.SwordsManScore = packet.SwordsManScore;
//                if (SwordsManController.Instance() != null)
//                {
//                    SwordsManController.Instance().UpdateSwordsManScore();
//                }
//            }

            if (packet.HasReputation)
            {
                playerDataPool.Reputation = packet.Reputation;
            }

            //是否在战斗状态
            if (packet.HasIsInCombat && _mainPlayer != null)
            {
                bool oldCombat = _mainPlayer.InCombat;
                _mainPlayer.InCombat = (packet.IsInCombat == 1 ? true:false);
                if (!_mainPlayer.InCombat && oldCombat)
                {
                    _mainPlayer.LastLeaveCombatTime = Time.time;
                }
                else if (_mainPlayer.InCombat && !oldCombat)
                {
                    _mainPlayer.LastLeaveCombatTime = 0.0f;
                }
            }
            //经验 血 蓝 变化时 更新主角属性界面
            if (packet.HasCurHp || packet.HasCurMp || packet.HasCurExp)
            {
                if (RoleViewLogic.Instance() != null)
                {
                    RoleViewLogic.Instance().UpdateCurAttr();
                }
            }

            if (packet.HasGuildDKP)
            {
                playerDataPool.GuildDKP = packet.GuildDKP;
                if (GuildShopLogic.Instance() != null)
                {
                    GuildShopLogic.Instance().UpdateGuildDKP();
                }
            }
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #15
0
        public uint Execute(PacketDistributed ipacket)
        {
            GC_UPDATEITEM packet = (GC_UPDATEITEM)ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            int packtype  = packet.Packtype;
            int packindex = packet.Packindex;

            GameItemContainer.Type containertype = (GameItemContainer.Type)packtype;
            //取得物品容器
            GameItemContainer Container = GameManager.gameManager.PlayerDataPool.GetItemContainer(containertype);

            if (Container != null)
            {
                //取得物品
                GameItem item = Container.GetItem(packindex);
                if (item != null)
                {
                    int    nRawId    = item.DataID;
                    UInt64 RawGuidID = item.Guid;
                    //ID
                    item.DataID = packet.Dataid;
                    //GUID
                    item.Guid = packet.Guid;
                    //绑定
                    if (packet.HasBindflag)
                    {
                        if (packet.Bindflag == 1)
                        {
                            item.BindFlag = true;
                        }
                        else
                        {
                            item.BindFlag = false;
                        }
                    }
                    else
                    {
                        item.BindFlag = false;
                    }
                    //叠加数量
                    if (packet.HasStackcount)
                    {
                        item.StackCount = packet.Stackcount;
                    }
                    else
                    {
                        item.StackCount = 1;
                    }
                    //创建时间
                    item.CreateTime = packet.Createtime;
                    //强化等级
                    if (packet.HasEnchancelevel)
                    {
                        item.EnchanceLevel = packet.Enchancelevel;
                    }
                    else
                    {
                        item.EnchanceLevel = 0;
                    }
                    //强化经验
                    if (packet.HasEnchanceexp)
                    {
                        item.EnchanceExp = packet.Enchanceexp;
                    }
                    else
                    {
                        item.EnchanceExp = 0;
                    }
                    //强化总经验
                    if (packet.HasEnctotaltexp)
                    {
                        item.EnchanceTotalExp = packet.Enctotaltexp;
                    }
                    else
                    {
                        item.EnchanceTotalExp = 0;
                    }
                    //打星等级
                    if (packet.HasStarlevel)
                    {
                        item.StarLevel = packet.Starlevel;
                    }
                    else
                    {
                        item.StarLevel = 0;
                    }
                    //打星次数
                    if (packet.HasStartimes)
                    {
                        item.StarTimes = packet.Startimes;
                    }
                    else
                    {
                        item.StarTimes = 0;
                    }
                    //动态参数
                    if (packet.HasDynamicdata1)
                    {
                        item.DynamicData[0] = packet.Dynamicdata1;
                    }
                    else
                    {
                        item.DynamicData[0] = 0;
                    }
                    if (packet.HasDynamicdata2)
                    {
                        item.DynamicData[1] = packet.Dynamicdata2;
                    }
                    else
                    {
                        item.DynamicData[1] = 0;
                    }
                    if (packet.HasDynamicdata3)
                    {
                        item.DynamicData[2] = packet.Dynamicdata3;
                    }
                    else
                    {
                        item.DynamicData[2] = 0;
                    }
                    if (packet.HasDynamicdata4)
                    {
                        item.DynamicData[3] = packet.Dynamicdata4;
                    }
                    else
                    {
                        item.DynamicData[3] = 0;
                    }
                    if (packet.HasDynamicdata5)
                    {
                        item.DynamicData[4] = packet.Dynamicdata5;
                    }
                    else
                    {
                        item.DynamicData[4] = 0;
                    }
                    if (packet.HasDynamicdata6)
                    {
                        item.DynamicData[5] = packet.Dynamicdata6;
                    }
                    else
                    {
                        item.DynamicData[5] = 0;
                    }
                    if (packet.HasDynamicdata7)
                    {
                        item.DynamicData[6] = packet.Dynamicdata7;
                    }
                    else
                    {
                        item.DynamicData[6] = 0;
                    }
                    if (packet.HasDynamicdata8)
                    {
                        item.DynamicData[7] = packet.Dynamicdata8;
                    }
                    else
                    {
                        item.DynamicData[7] = 0;
                    }
                    //装备属性浮动参数
                    if (packet.HasAttrfactor)
                    {
                        item.AttrFactor = packet.Attrfactor;
                    }
                    else
                    {
                        item.AttrFactor = GlobeVar.INVALID_ID;
                    }

                    //更新界面
                    switch (containertype)
                    {
                    //物品背包
                    case GameItemContainer.Type.TYPE_BACKPACK:
                    {
                        if (BackPackLogic.Instance() != null)
                        {
                            BackPackLogic.Instance().UpdateBackPack();
                        }

                        //美人提示

                        BelleData.UpdateBelleItemTip(item.DataID, item.StackCount);
                        BelleData.UpdateBelleEvoCountTip(item.DataID, item.StackCount);
                        //宝石界面
                        if (GemLogic.Instance() != null)
                        {
                            GemLogic.Instance().UpdateGemItemList();
                        }
                        //自动选择药
                        if (Singleton <ObjManager> .GetInstance().MainPlayer)
                        {
                            Singleton <ObjManager> .GetInstance().MainPlayer.UpdateSelectDrug();

                            //更新头顶图标信息
                            if (PlayerFrameLogic.Instance())
                            {
                                PlayerFrameLogic.Instance().InitAutoFight();
                            }
                            //自动出售
                            if (item.DataID != -1)
                            {
                                Singleton <ObjManager> .GetInstance().MainPlayer.UpdateSellItem(packindex);
                            }
                        }
                        // 乾坤袋
                        if (QianKunDaiLogic.Instance() != null && QianKunDaiLogic.Instance().gameObject.activeSelf)
                        {
                            QianKunDaiLogic.Instance().HandleUpdateItemPacket();
                        }
                        // 生活技能
                        if (LivingSkillLogic.Instance() != null)
                        {
                            LivingSkillLogic.Instance().HandleUpdateItem();
                        }
                        //仓库界面
                        if (CangKuLogic.Instance() != null)
                        {
                            CangKuLogic.Instance().UpdateBackPack();
                        }
                        //情人节收到的花
//								if (FriendChooseLogic.RoseDataId0 == item.DataID)
//								{
//									if (null != Singleton<ObjManager>.Instance.MainPlayer &&
//							            Singleton<ObjManager>.Instance.MainPlayer.CheckUseItem(item))
//									{
//										Singleton<ObjManager>.Instance.MainPlayer.UseItem(item);
//									}
//
//								}
                        //魅力道具
//                                if (FlowerEggWindow.CHARM_ITEM_ID == item.DataID)
//                                {
//                                    if (null != Singleton<ObjManager>.Instance.MainPlayer &&
//                                        Singleton<ObjManager>.Instance.MainPlayer.CheckUseItem(item))
//                                    {
//                                        Singleton<ObjManager>.Instance.MainPlayer.UseItem(item);
//                                    }
//
//                                }
//                                if (FlowerEggWindow.Instance() != null)
//                                {
//                                    FlowerEggWindow.Instance().UpdateItemNum();
//                                }

                        if (GongZhanTianXiaWindow.Instance() != null &&
                            GlobeVar.ZHANKUANGPAI_DATAID == item.DataID)
                        {
                            GongZhanTianXiaWindow.Instance().UpdateZhanKuangPaiCount();
                        }

                        if (GongJiShopLogic.Instance() != null &&
                            GongJiShopLogic.ConsumItem_DataID == item.DataID)
                        {
                            GongJiShopLogic.Instance().UpDateGongJi();
                        }
                    }
                    break;

                    //装备槽位
                    case GameItemContainer.Type.TYPE_EQUIPPACK:
                    {
                        if (BackPackLogic.Instance() != null)
                        {
                            BackPackLogic.Instance().UpdateEquipPack();
                        }
                        if (RoleViewLogic.Instance() != null)
                        {
                            RoleViewLogic.Instance().UpdateEquipPack();
                        }
                        //自动强化装备选择
                        if (Singleton <ObjManager> .GetInstance().MainPlayer &&
                            VipData.GetVipLv() >= GlobeVar.USE_AUTOFIGHT_VIPLEVEL &&
                            Singleton <ObjManager> .GetInstance().MainPlayer.BaseAttr.Level >= GlobeVar.MAX_AUTOEQUIT_LIVE)
                        {
                            if (RawGuidID == Singleton <ObjManager> .GetInstance().MainPlayer.AutoEquipGuid)
                            {
                                if (item.IsValid())
                                {
                                    Singleton <ObjManager> .GetInstance().MainPlayer.AutoEquipGuid = item.Guid;
                                }
                                else
                                {
                                    Singleton <ObjManager> .GetInstance().MainPlayer.AutoEquipGuid = GlobeVar.INVALID_GUID;

                                    Singleton <ObjManager> .GetInstance().MainPlayer.UpdateSelectEquip();
                                }
                            }
                        }
                        //神器强化界面
                        if (EquipShenQiStrength.Instance() != null)
                        {
                            EquipShenQiStrength.Instance().UpdateShenQiViewInfo();
                        }
                    }
                    break;

                    case GameItemContainer.Type.TYPE_BUYBACKPACK:
                    {
                        SysShopController sysShop = UIControllerBase <SysShopController> .Instance();

                        if (sysShop != null)
                        {
                            sysShop.UpdateBuyBackItems();
                        }
                    }
                    break;
                    }
                    ;
                }
            }
            //enter your logic
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Exemple #16
0
    void InitAllTitleInvestitive()
    {
        Utils.CleanGrid(m_TitleInvestitiveListGrid);
        int number = 0;

        for (int i = 0; i < (int)TITLE_SIZE.TITLE_TOTAL; i++)
        {
            if (i < (int)TITLE_SIZE.USERDEF_START)
            {
                GameSystemTitleInvestitive title = GameManager.gameManager.PlayerDataPool.TitleInvestitive.SystemTitle[i];
                if (title.TitleID != -1)
                {
                    GameObject TitleInvestitiveItem = Utils.BindObjToParent(m_TitleItem,
                                                                            m_TitleInvestitiveListGrid, number < 10 ? ("TitleInvestitiveItem" + "0" + number.ToString()) : ("TitleInvestitiveItem" + number.ToString()));
                    if (null != TitleInvestitiveItem && null != TitleInvestitiveItem.GetComponent <TitleInvestitiveItemLogic>())
                    {
                        TitleInvestitiveItem.GetComponent <TitleInvestitiveItemLogic>().InitSystemTitleInfo(title.TitleID, i, title.GainTime);
                        number += 1;
                    }
                }
            }
            else
            {
                GameUserDefTitleInvestitive title = GameManager.gameManager.PlayerDataPool.TitleInvestitive.UserDefTitle[i - (int)TITLE_SIZE.USERDEF_START];
                if (title.TitleID != -1)
                {
                    GameObject TitleInvestitiveItem = Utils.BindObjToParent(m_TitleItem,
                                                                            m_TitleInvestitiveListGrid, number < 10 ? ("TitleInvestitiveItem" + "0" + number.ToString()) : ("TitleInvestitiveItem" + number.ToString()));

                    if (null != TitleInvestitiveItem && null != TitleInvestitiveItem.GetComponent <TitleInvestitiveItemLogic>())
                    {
                        TitleInvestitiveItem.GetComponent <TitleInvestitiveItemLogic>().InitUserDefTitleInfo(title.TitleID, title.StrFullTitleName, i, title.GainTime);
                        number += 1;
                    }
                }
            }
        }

        foreach (KeyValuePair <int, List <Tab_TitleData> > pair in TableManager.GetTitleData())
        {
            Tab_TitleData tabTitle = pair.Value[0];
            if (tabTitle == null)
            {
                continue;
            }

            if (!m_TypeCacheList.Contains(tabTitle.Type) &&
                !GameManager.gameManager.PlayerDataPool.TitleInvestitive.IsHaveType(tabTitle.Type))
            {
                m_TypeCacheList.Add(tabTitle.Type);
                GameObject TitleInvestitiveItem = Utils.BindObjToParent(m_TitleItem,
                                                                        m_TitleInvestitiveListGrid, number < 10 ? ("TitleInvestitiveItem" + "0" + number.ToString()) : ("TitleInvestitiveItem" + number.ToString()));
                TitleInvestitiveItem.GetComponent <TitleInvestitiveItemLogic>().InitNoHoldTitleInfo(tabTitle.Id);
                number += 1;
            }
        }
        m_TitleInvestitiveListGrid.GetComponent <UIGrid>().Reposition();

        if (RoleViewLogic.Instance())
        {
            RoleViewLogic.Instance().AfterLoadTitleItem();
        }
    }