Exemple #1
0
        public void OnHeroInfoUpdate(SCPKG_NTF_HERO_INFO_UPD svrHeroInfoUp)
        {
            for (int i = 0; i < svrHeroInfoUp.iHeroUpdNum; i++)
            {
                CS_HEROINFO_UPD_TYPE bUpdType = (CS_HEROINFO_UPD_TYPE)svrHeroInfoUp.astHeroUpdInfo[i].bUpdType;
                int slotId = svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[0];
                switch (bUpdType)
                {
                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_LEVEL:
                    this.mActorValue.actorLvl = slotId;
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_EXP:
                    this.mActorValue.actorExp = slotId;
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_STAR:
                    this.mActorValue.actorStar = slotId;
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_QUALITY:
                    this.mActorValue.actorQuality = slotId;
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_SUBQUALITY:
                    this.mActorValue.actorSubQuality = slotId;
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_UNLOCKSKILLSLOT:
                    this.skillInfo.UnLockSkill(slotId);
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_PROFICIENCY:
                    this.m_ProficiencyLV = (byte)slotId;
                    this.m_Proficiency   = (uint)svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[1];
                    break;

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_MASKBITS:
                {
                    uint maskBits = this.MaskBits;
                    this.MaskBits = (uint)slotId;
                    if (((maskBits & 2) == 0) && ((this.MaskBits & 2) > 0))
                    {
                        Singleton <EventRouter> .instance.BroadCastEvent <string>("HeroUnlockPvP", StringHelper.UTF8BytesToString(ref this.cfgInfo.szName));
                    }
                    break;
                }

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_LIMITTIME:
                {
                    string str = StringHelper.UTF8BytesToString(ref this.cfgInfo.szName);
                    Singleton <EventRouter> .instance.BroadCastEvent <string, uint, uint>("HeroExperienceTimeUpdate", str, this.m_experienceDeadLine, (uint)slotId);

                    this.m_experienceDeadLine = (uint)slotId;
                    break;
                }

                case CS_HEROINFO_UPD_TYPE.CS_HEROINFO_UPD_MASTERGAMECNT:
                    this.m_masterHeroWinCnt   = (uint)slotId;
                    this.m_masterHeroFightCnt = (uint)svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[1];
                    break;
                }
            }
        }
Exemple #2
0
        public void OnHeroInfoUpdate(SCPKG_NTF_HERO_INFO_UPD svrHeroInfoUp)
        {
            for (int i = 0; i < svrHeroInfoUp.iHeroUpdNum; i++)
            {
                CS_HEROINFO_UPD_TYPE bUpdType = svrHeroInfoUp.astHeroUpdInfo[i].bUpdType;
                int num = svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[0];
                switch (bUpdType)
                {
                case 1:
                    this.mActorValue.actorLvl = num;
                    break;

                case 2:
                    this.mActorValue.actorExp = num;
                    break;

                case 3:
                    this.mActorValue.actorStar = num;
                    break;

                case 4:
                    this.mActorValue.actorQuality = num;
                    break;

                case 5:
                    this.mActorValue.actorSubQuality = num;
                    break;

                case 6:
                    this.skillInfo.UnLockSkill(num);
                    break;

                case 7:
                    this.m_ProficiencyLV = (byte)num;
                    this.m_Proficiency   = (uint)svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[1];
                    break;

                case 8:
                {
                    uint maskBits = this.MaskBits;
                    this.MaskBits = (uint)num;
                    if ((maskBits & 2u) == 0u && (this.MaskBits & 2u) > 0u)
                    {
                        Singleton <EventRouter> .get_instance().BroadCastEvent <string>("HeroUnlockPvP", StringHelper.UTF8BytesToString(ref this.cfgInfo.szName));
                    }
                    break;
                }

                case 9:
                {
                    string text = StringHelper.UTF8BytesToString(ref this.cfgInfo.szName);
                    Singleton <EventRouter> .get_instance().BroadCastEvent <string, uint, uint>("HeroExperienceTimeUpdate", text, this.m_experienceDeadLine, (uint)num);

                    this.m_experienceDeadLine = (uint)num;
                    break;
                }

                case 10:
                    this.m_masterHeroWinCnt   = (uint)num;
                    this.m_masterHeroFightCnt = (uint)svrHeroInfoUp.astHeroUpdInfo[i].stValueParam.Value[1];
                    break;
                }
            }
        }