using UnityEngine; using System; using System.Collections; using System.Collections.Generic; public class PackageRegedit { static Dictionary packageTable = new Dictionary(); static Dictionary packToBusinessTable = new Dictionary(); public static void Init() { // 登记相应的数据体及对应的数据转逻辑类 Register(typeof(H0132_tagCreateRoleSucess), typeof(DTC0132_tagCreateRoleSucess)); Register(typeof(HA326_tagMCNPCIDCollectionCntInfo), typeof(DTCA326_tagMCNPCIDCollectionCntInfo)); Register(typeof(HA904_tagGCDogzNPCRefreshTime), typeof(DTCA904_tagGCDogzNPCRefreshTime)); Register(typeof(HA714_tagMCNPCCntList), typeof(DTCA714_tagMCNPCCntList)); Register(typeof(HAA16_tagMCSuperGiftInfo), typeof(DTCAA16_tagMCSuperGiftInfo)); Register(typeof(HAC10_tagGCAllFamilyBossHurtInfoList), typeof(DTCAC10_tagGCAllFamilyBossHurtInfoList)); Register(typeof(HA715_tagMCFamilyBossHurtList), typeof(DTCA715_tagMCFamilyBossHurtList)); Register(typeof(HAB04_tagMCBossRebornInfo), typeof(DTCAB04_tagMCBossRebornInfo)); Register(typeof(HA40B_tagGCPlayerJoinFamilyWarInfo), typeof(DTCA40B_tagGCPlayerJoinFamilyWarInfo)); Register(typeof(HA319_tagMCPackDownloadRecord), typeof(DTCA319_tagMCPackDownloadRecord)); Register(typeof(HAC0A_tagGCMultiRealmPointInfo), typeof(DTCAC0A_tagGCMultiRealmPointInfo)); Register(typeof(HAC08_tagGCBossRebornPoint), typeof(DTCAC08_tagGCBossRebornPoint)); Register(typeof(HAB03_tagMCBossRebornPlayerInfo), typeof(DTCAB03_tagMCBossRebornPlayerInfo)); Register(typeof(HAA11_tagMCSpringSaleInfo), typeof(DTCAA11_tagMCSpringSaleInfo)); Register(typeof(HAA10_tagMCCostRebatePlayerInfo), typeof(DTCAA10_tagMCCostRebatePlayerInfo)); Register(typeof(HAA09_tagMCCostRebateInfo), typeof(DTCAA09_tagMCCostRebateInfo)); Register(typeof(HAC06_tagGCMultiExpRateInfo), typeof(DTCAC06_tagGCMultiExpRateInfo)); Register(typeof(HA001_tagBroadCastInfo), typeof(DTCA001_tagBroadCastInfo)); Register(typeof(HA40A_tagGCFakeFamilyInfo), typeof(DTCA40A_tagGCFakeFamilyInfo)); Register(typeof(HA110_tagMCCoinToGoldCountInfo), typeof(DTCA110_tagMCCoinToGoldCountInfo)); Register(typeof(HAA02_tagMCFirstGoldInfo), typeof(DTCAA02_tagMCFirstGoldInfo)); Register(typeof(HA353_tagMCMWPrivilegeDataInfo), typeof(DTCA353_tagMCMWPrivilegeDataInfo)); Register(typeof(HA352_tagMCMagicWeaponLVInfo), typeof(DTCA352_tagMCMagicWeaponLVInfo)); Register(typeof(HAB24_tagMCOpenServerRedPacketInfo), typeof(DTCAB24_tagMCOpenServerRedPacketInfo)); Register(typeof(HAC05_tagGCRedPacketDel), typeof(DTCAC05_tagGCRedPacketDel)); Register(typeof(HB310_tagGCVoiceChat), typeof(DTCB310_tagGCVoiceChat)); Register(typeof(HA901_tagGCBossShuntLineStateInfo), typeof(DTCA901_tagGCBossShuntLineStateInfo)); Register(typeof(HB201_tagMCFMTDoubleState), typeof(DTCB201_tagMCFMTDoubleState)); Register(typeof(HA409_tagGCFamilySWRHInfo), typeof(DTCA409_tagGCFamilySWRHInfo)); Register(typeof(HA606_tagMCVIPKillNPCLVInfo), typeof(DTCA606_tagMCVIPKillNPCLVInfo)); Register(typeof(HA501_tagMCNotifyRequestJoinFamilyInfo), typeof(DTCA501_tagMCNotifyRequestJoinFamilyInfo)); Register(typeof(HB40A_tagMCPYPlayerMove), typeof(DTCB40A_tagMCPYPlayerMove)); Register(typeof(HB105_tagMCPlayerWallow), typeof(DTCB105_tagMCPlayerWallow)); Register(typeof(HA30B_tagMCPlayerLVAwardGetRecord), typeof(DTCA30B_tagMCPlayerLVAwardGetRecord)); Register(typeof(HAB17_tagMCOpenServerCampaignAwardList), typeof(DTCAB17_tagMCOpenServerCampaignAwardList)); Register(typeof(HA124_tagMCPlayerInfo), typeof(DTCA124_tagMCPlayerInfo)); Register(typeof(HA710_tagMCGuideState), typeof(DTCA710_tagMCGuideState)); Register(typeof(HB412_tagMCDelMaliciousAtkPlayer), typeof(DTCB412_tagMCDelMaliciousAtkPlayer)); Register(typeof(HB411_tagMCAddMaliciousAtkPlayer), typeof(DTCB411_tagMCAddMaliciousAtkPlayer)); Register(typeof(HA127_tagMCStartChangeMap), typeof(DTCA127_tagMCStartChangeMap)); Register(typeof(HA126_tagMCPrepareChangeMap), typeof(DTCA126_tagMCPrepareChangeMap)); Register(typeof(HA125_tagMCChangeMapFail), typeof(DTCA125_tagMCChangeMapFail)); Register(typeof(HA506_tagMCFamilyDayAward), typeof(DTCA506_tagMCFamilyDayAward)); Register(typeof(H0F07_tagFamilyRenameResult), typeof(DTC0F07_tagFamilyRenameResult)); Register(typeof(HA713_tagMCDynamicBarrierState), typeof(DTCA713_tagMCDynamicBarrierState)); Register(typeof(HA535_tagMCChampionFamilyDailyReward), typeof(DTCA535_tagMCChampionFamilyDailyReward)); Register(typeof(HB210_tagMCFamilyWarBillboard), typeof(DTCB210_tagMCFamilyWarBillboard)); Register(typeof(H0F04_tagFamilyAskIfJoin), typeof(DTC0F04_tagFamilyAskIfJoin)); Register(typeof(HA007_tagGCFBLinePlayerCnt), typeof(DTCA007_tagGCFBLinePlayerCnt)); Register(typeof(H0436_tagPlayerFamilyNameRefresh), typeof(DTC0436_tagPlayerFamilyNameRefresh)); Register(typeof(HA408_tagGCPyAllFamilyView), typeof(DTCA408_tagGCPyAllFamilyView)); Register(typeof(HB408_tagMCPassiveSetAnswer), typeof(DTCB408_tagMCPassiveSetAnswer)); Register(typeof(HB407_tagMCPassivePage), typeof(DTCB407_tagMCPassivePage)); Register(typeof(HB406_tagMCPassiveSet), typeof(DTCB406_tagMCPassiveSet)); Register(typeof(HB209_tagMCFBCntRegainRemainTime), typeof(DTCB209_tagMCFBCntRegainRemainTime)); Register(typeof(HA813_tagMCVirtualItemDrop), typeof(DTCA813_tagMCVirtualItemDrop)); Register(typeof(HA302_tagMCFuncOpenStateList), typeof(DTCA302_tagMCFuncOpenStateList)); Register(typeof(H0105_tagCreateRoleFail), typeof(DTC0105_tagCreateRoleFail)); Register(typeof(H0330_tagCurExpRate), typeof(DTC0330_tagCurExpRate)); Register(typeof(HA005_tagOpenServerDay), typeof(DTCA005_tagOpenServerDay)); Register(typeof(HA712_tagMCNPCShow), typeof(DTCA712_tagMCNPCShow)); Register(typeof(HA3A1_tagMCModuleFightPowerInfo), typeof(DTCA3A1_tagMCModuleFightPowerInfo)); Register(typeof(HA705_tagSCQueryPlayerCacheResult), typeof(DTCA705_tagSCQueryPlayerCacheResult)); Register(typeof(HA3B7_tagMCBOSSAttactCnt), typeof(DTCA3B7_tagMCBOSSAttactCnt)); Register(typeof(H0101_tagServerPrepared), typeof(DTC0101_tagServerPrepared)); Register(typeof(H0102_tagCDBPlayer), typeof(DTC0102_tagCDBPlayer)); Register(typeof(H0115_tagAskClientVersion), typeof(DTC0115_tagAskClientVersion)); Register(typeof(H0104_tagServerDisconnect), typeof(DTC0104_tagServerDisconnect)); Register(typeof(H0113_tagServerHeart), typeof(DTC0113_tagServerHeart)); Register(typeof(H0107_tagShowLoginFrm), typeof(DTC0107_tagShowLoginFrm)); Register(typeof(H0103_tagNeedCreateRole), typeof(DTC0103_tagNeedCreateRole)); Register(typeof(H0111_tagOnlineReply), typeof(DTC0111_tagOnlineReply)); Register(typeof(H0309_tagPlayerLoginInfo), typeof(DTC0309_tagPlayerLoginInfo)); Register(typeof(HA106_tagMCCoinToGoldReport), typeof(DTCA106_tagMCCoinToGoldReport)); Register(typeof(H0418_tagObjInfoRefresh), typeof(DTC0418_tagObjInfoRefresh)); Register(typeof(HA709_tagObjInfoListRefresh), typeof(DTCA709_tagObjInfoListRefresh)); Register(typeof(H0212_tagNotifyCode), typeof(DTC0212_tagNotifyCode)); Register(typeof(H0304_tagPlayerGetExpView), typeof(DTC0304_tagPlayerGetExpView)); Register(typeof(H3201_tagGMCmdAnswer), typeof(DTC3201_tagGMCmdAnswer)); Register(typeof(H3202_tagServerResponse), typeof(DTC3202_tagServerResponse)); Register(typeof(H0109_tagServerPrepareOK), typeof(DTC0109_tagServerPrepareOK)); Register(typeof(H0820_tagMissionDict), typeof(DTC0820_tagMissionDict)); Register(typeof(H0827_tagMissionDesc), typeof(DTC0827_tagMissionDesc)); Register(typeof(HA31D_tagMCGodWeaponLVList), typeof(DTCA31D_tagMCGodWeaponLVList)); Register(typeof(H03F0_tagPyFakePack), typeof(DTC03F0_tagPyFakePack)); Register(typeof(H1801_tagGameServerGeneralPack), typeof(DTC1801_tagGameServerGeneralPack)); Register(typeof(HA3B3_tagMCEquipPartStarLVInfo), typeof(DTCA3B3_tagMCEquipPartStarLVInfo)); Register(typeof(H0310_tagRoleSkillChange), typeof(DTC0310_tagRoleSkillChange)); Register(typeof(H0721_tagMakeItemAnswer), typeof(DTC0721_tagMakeItemAnswer)); Register(typeof(HA9A1_tagGCQueryCompensationResult), typeof(DTCA9A1_tagGCQueryCompensationResult)); Register(typeof(HA31A_tagMCGiveCompensationResult), typeof(DTCA31A_tagMCGiveCompensationResult)); Register(typeof(H0335_tagPlayerDienstgradPack), typeof(DTC0335_tagPlayerDienstgradPack)); Register(typeof(HA31F_tagMCRuneInfo), typeof(DTCA31F_tagMCRuneInfo)); Register(typeof(HA204_tagMCVPackRefresh), typeof(DTCA204_tagMCVPackRefresh)); Register(typeof(HA331_tagMCNotifyPlayerDictData), typeof(DTCA331_tagMCNotifyPlayerDictData)); Register(typeof(HA205_tagMCVPackClear), typeof(DTCA205_tagMCVPackClear)); Register(typeof(HA3BA_tagMCTrialTowerInfo), typeof(DTCA3BA_tagMCTrialTowerInfo)); Register(typeof(HA339_tagMCAttrFruitEatCntList), typeof(DTCA339_tagMCAttrFruitEatCntList)); Register(typeof(H0336_tagPlayerGetDienstgrad), typeof(DTC0336_tagPlayerGetDienstgrad)); Register(typeof(H0337_tagPlayerDelDienstgrad), typeof(DTC0337_tagPlayerDelDienstgrad)); Register(typeof(H0439_tagPlayerChangeDienstgrad), typeof(DTC0439_tagPlayerChangeDienstgrad)); Register(typeof(HA3BB_tagMCEquipPartXLAttrInfo), typeof(DTCA3BB_tagMCEquipPartXLAttrInfo)); Register(typeof(HB701_tagMCPetLV), typeof(DTCB701_tagMCPetLV)); Register(typeof(HA9AA_tagGCDelCompensationResult), typeof(DTCA9AA_tagGCDelCompensationResult)); Register(typeof(H0401_tagPlayerMapInit), typeof(DTC0401_tagPlayerMapInit)); Register(typeof(H0201_tagTalkGong), typeof(DTC0201_tagTalkGong)); Register(typeof(H0207_tagTalkArea), typeof(DTC0207_tagTalkArea)); Register(typeof(HA9A3_tagGCPYSpeakerContent), typeof(DTCA9A3_tagGCPYSpeakerContent)); Register(typeof(H0206_tagTalkMi), typeof(DTC0206_tagTalkMi)); Register(typeof(H0203_tagTalkBang), typeof(DTC0203_tagTalkBang)); Register(typeof(H0205_tagTalkDui), typeof(DTC0205_tagTalkDui)); Register(typeof(HA301_tagTrainHorseData), typeof(DTCA301_tagTrainHorseData)); Register(typeof(HA335_tagPyMCWorldAverageLv), typeof(DTCA335_tagPyMCWorldAverageLv)); Register(typeof(H1001_tagBillboard), typeof(DTC1001_tagBillboard)); Register(typeof(HA504_tagMCPlayerTechInfo), typeof(DTCA504_tagMCPlayerTechInfo)); Register(typeof(H0F03_tagRoleFamilyInfo), typeof(DTC0F03_tagRoleFamilyInfo)); Register(typeof(HA3A6_tagMCUpdateFamilyContribution), typeof(DTCA3A6_tagMCUpdateFamilyContribution)); Register(typeof(H0430_tagPlayerInFamilyInfoRefresh), typeof(DTC0430_tagPlayerInFamilyInfoRefresh)); Register(typeof(H0F05_tagFamilyChange), typeof(DTC0F05_tagFamilyChange)); Register(typeof(HA401_tagGCViewFamilyRequestInfo), typeof(DTCA401_tagGCViewFamilyRequestInfo)); Register(typeof(HA404_tagGCFamilyRedPacketInfo), typeof(DTCA404_tagGCFamilyRedPacketInfo)); Register(typeof(HA004_tagServerDateTime), typeof(DTCA004_tagServerDateTime)); Register(typeof(HA402_tagGCFamilyBossFBInfo), typeof(DTCA402_tagGCFamilyBossFBInfo)); Register(typeof(HA405_tagGCFamilyRedPacketGrabInfo), typeof(DTCA405_tagGCFamilyRedPacketGrabInfo)); Register(typeof(HA406_tagGCFamilyStoreItemInfo), typeof(DTCA406_tagGCFamilyStoreItemInfo)); Register(typeof(HA403_tagGCFamilyActionInfo), typeof(DTCA403_tagGCFamilyActionInfo)); Register(typeof(H0431_tagTimeTick), typeof(DTC0431_tagTimeTick)); Register(typeof(H0320_tagFBEnd), typeof(DTC0320_tagFBEnd)); Register(typeof(H0319_tagFBHelp), typeof(DTC0319_tagFBHelp)); Register(typeof(H0823_tagDelMission), typeof(DTC0823_tagDelMission)); Register(typeof(H0826_tagClearMissionDict), typeof(DTC0826_tagClearMissionDict)); Register(typeof(H0801_tagEventTalk), typeof(DTC0801_tagEventTalk)); Register(typeof(H0703_tagRolePickupItem), typeof(DTC0703_tagRolePickupItem)); Register(typeof(HA407_tagGCFamilyStoreItemClear), typeof(DTCA407_tagGCFamilyStoreItemClear)); Register(typeof(HA320_tagMCPlayerFBInfoData), typeof(DTCA320_tagMCPlayerFBInfoData)); Register(typeof(HA708_tagMCRunTaskAwardInfo), typeof(DTCA708_tagMCRunTaskAwardInfo)); Register(typeof(HA3BD_tagMCBuyEnterInfo), typeof(DTCA3BD_tagMCBuyEnterInfo)); Register(typeof(HA703_tagMCFBEnterTickList), typeof(DTCA703_tagMCFBEnterTickList)); Register(typeof(HA006_tagGCPyServerMapState), typeof(DTCA006_tagGCPyServerMapState)); Register(typeof(HA30A_tagMCFBEncourageInfo), typeof(DTCA30A_tagMCFBEncourageInfo)); Register(typeof(HA104_tagMCPlayerExpRate), typeof(DTCA104_tagMCPlayerExpRate)); Register(typeof(H0612_tagClearObjBuff), typeof(DTC0612_tagClearObjBuff)); Register(typeof(HA003_tagUniversalGameRecInfo), typeof(DTCA003_tagUniversalGameRecInfo)); Register(typeof(HA505_tagMCFamilyRedPacketGoldLimit), typeof(DTCA505_tagMCFamilyRedPacketGoldLimit)); Register(typeof(H0403_tagPlayerLoginLoadOK), typeof(DTC0403_tagPlayerLoginLoadOK));//数据初始化完成 Register(typeof(HA309_tagMCEquipPartSuiteLVInfo), typeof(DTCA309_tagMCEquipPartSuiteLVInfo)); //得到套装数据 Register(typeof(HA814_tagMCMakeItemAnswer), typeof(DTCA814_tagMCMakeItemAnswer)); //得到合成结果回应 Register(typeof(HA317_tagMCAllEquipAttrActiveInfo), typeof(DTCA317_tagMCAllEquipAttrActiveInfo)); //得到激活全身星级和全身强化的信息 Register(typeof(HA321_tagMCPrayElixirResult), typeof(DTCA321_tagMCPrayElixirResult)); //祈福丹药结果 #region 背包 Register(typeof(H0724_tagRolePackCanUseCount), typeof(DTC0724_tagRolePackCanUseCount)); Register(typeof(H0704_tagRolePackRefresh), typeof(DTC0704_tagRolePackRefresh)); Register(typeof(H0709_tagClearItem), typeof(DTC0709_tagClearItem)); Register(typeof(H0707_tagItemCountRefresh), typeof(DTC0707_tagItemCountRefresh)); Register(typeof(H0706_tagUseItemSuccess), typeof(DTC0706_tagUseItemSuccess)); Register(typeof(H0711_tagClearItemPack), typeof(DTC0711_tagClearItemPack)); Register(typeof(H0316_tagPackResetOK), typeof(DTC0316_tagPackResetOK)); Register(typeof(H0725_tagRolePackRefreshEx), typeof(DTC0725_tagRolePackRefreshEx)); #endregion #region 社交玩家 Register(typeof(HB301_tagGCAddSocialPlayer), typeof(DTCB301_tagGCAddSocialPlayer)); Register(typeof(HB302_tagGCDelSocialPlayer), typeof(DTCB302_tagGCDelSocialPlayer)); Register(typeof(HB303_tagGCFriendAskIfJoin), typeof(DTCB303_tagGCFriendAskIfJoin)); Register(typeof(HB304_tagGCSocialPlayers), typeof(DTCB304_tagGCSocialPlayers)); Register(typeof(HB305_tagGCSocialName), typeof(DTCB305_tagGCSocialName)); Register(typeof(HB306_tagGCSocialOnline), typeof(DTCB306_tagGCSocialOnline)); Register(typeof(HB307_tagGCSocialRefreshType), typeof(DTCB307_tagGCSocialRefreshType)); Register(typeof(HB308_tagGCGroupPlayers), typeof(DTCB308_tagGCGroupPlayers)); Register(typeof(HB309_tagGCAnswerPlayerShortInfo), typeof(DTCB309_tagGCAnswerPlayerShortInfo)); Register(typeof(HA9A8_tagGCRecommendFriendsInfo), typeof(DTCA9A8_tagGCRecommendFriendsInfo)); #endregion #region 移动相关定义 Register(typeof(H0501_tagObjMove), typeof(DTC0501_tagObjMove)); Register(typeof(H0502_tagObjStopMove), typeof(DTC0502_tagObjStopMove)); Register(typeof(H0503_tagPlayerMoveStart), typeof(DTC0503_tagPlayerMoveStart)); Register(typeof(H0504_tagPlayerMoveStop), typeof(DTC0504_tagPlayerMoveStop)); Register(typeof(H0505_tagRoleMoveFail), typeof(DTC0505_tagRoleMoveFail)); #endregion #region 角色出现消失 Register(typeof(H0405_tagPlayerDisappear), typeof(DTC0405_tagPlayerDisappear)); Register(typeof(H0406_tagNPCAppear), typeof(DTC0406_tagNPCAppear)); Register(typeof(H0407_tagNPCDisappear), typeof(DTC0407_tagNPCDisappear)); Register(typeof(H0408_tagPlayerSummonNPCAppear), typeof(DTC0408_tagPlayerSummonNPCAppear)); Register(typeof(H0434_tagAreaPlayerAppearEx), typeof(DTC0434_tagAreaPlayerAppearEx)); Register(typeof(H0435_tagPetAppear), typeof(DTC0435_tagPetAppear)); #endregion #region 角色战斗逻辑 Register(typeof(HA202_tagMCAttackMode), typeof(DTCA202_tagMCAttackMode)); Register(typeof(H0440_tagObjInfoRefreshEx), typeof(DTC0440_tagObjInfoRefreshEx)); Register(typeof(H0602_tagObjBaseAttack), typeof(DTC0602_tagObjBaseAttack)); Register(typeof(H0603_tagPlayerUseSkill), typeof(DTC0603_tagPlayerUseSkill)); Register(typeof(H0605_tagObjAddBuff), typeof(DTC0605_tagObjAddBuff)); Register(typeof(H0606_tagObjDelBuff), typeof(DTC0606_tagObjDelBuff)); Register(typeof(H0608_tagNPCDie), typeof(DTC0608_tagNPCDie)); Register(typeof(H0609_tagPlayerDie), typeof(DTC0609_tagPlayerDie)); Register(typeof(H0610_tagNPCUseSkill), typeof(DTC0610_tagNPCUseSkill)); Register(typeof(H0614_tagUseSkillPos), typeof(DTC0614_tagUseSkillPos)); Register(typeof(H0617_tagObjAddBuffPack), typeof(DTC0617_tagObjAddBuffPack)); Register(typeof(H0701_tagItemDrop), typeof(DTC0701_tagItemDrop)); Register(typeof(H0702_tagDropItemDisappear), typeof(DTC0702_tagDropItemDisappear)); Register(typeof(H0423_tagObjPropertyRefreshView), typeof(DTC0423_tagObjPropertyRefreshView)); Register(typeof(H0428_tagPlayerRideHorse), typeof(DTC0428_tagPlayerRideHorse)); Register(typeof(H0429_tagObjResetPos), typeof(DTC0429_tagObjResetPos)); Register(typeof(H0413_tagPlayerChangeEquip), typeof(DTC0413_tagPlayerChangeEquip)); Register(typeof(H0415_tagPlayerUnEquipItem), typeof(DTC0415_tagPlayerUnEquipItem)); Register(typeof(H0419_tagPlayerReborn), typeof(DTC0419_tagPlayerReborn)); Register(typeof(HB401_tagMCSkillHurtList), typeof(DTCB401_tagMCSkillHurtList)); Register(typeof(HB402_tagMCRush), typeof(DTCB402_tagMCRush)); Register(typeof(HB403_tagMCAttackFail), typeof(DTCB403_tagMCAttackFail)); Register(typeof(HB404_tagMCNPCSkillWarn), typeof(DTCB404_tagMCNPCSkillWarn)); Register(typeof(H0433_tagDownHorse), typeof(DTC0433_tagDownHorse)); #endregion #region 商店 Register(typeof(H0802_tagShopItem), typeof(DTC0802_tagShopItem)); Register(typeof(HA802_tagMCShopItemDayBuyCntInfo), typeof(DTCA802_tagMCShopItemDayBuyCntInfo)); Register(typeof(HA811_tagMCShoppingResult), typeof(DTCA811_tagMCShoppingResult)); #endregion #region 集市 Register(typeof(H1B01_tagPlayerBourseItemResult), typeof(DTC1B01_tagPlayerBourseItemResult)); Register(typeof(H1B02_tagBourseItemOnSaleResult), typeof(DTC1B02_tagBourseItemOnSaleResult)); Register(typeof(HA9AB_tagGCBourseRecordInfo), typeof(DTCA9AB_tagGCBourseRecordInfo)); Register(typeof(HA9AC_tagGCBourseItemPrice), typeof(DTCA9AC_tagGCBourseItemPrice)); #endregion #region 境界 Register(typeof(HA311_tagMCSyncRealmFBIsOpen), typeof(DTCA311_tagMCSyncRealmFBIsOpen)); Register(typeof(HA908_tagGCRealmFBHelpInfo), typeof(DTCA908_tagGCRealmFBHelpInfo)); Register(typeof(H0411_tagPlayerSit), typeof(DTC0411_tagPlayerSit)); Register(typeof(H0812_tagBeginPrepare), typeof(DTC0812_tagBeginPrepare)); Register(typeof(H0813_tagPrepareEnd), typeof(DTC0813_tagPrepareEnd)); #endregion #region 法宝 Register(typeof(HA340_tagMCSuccessInfoList), typeof(DTCA340_tagMCSuccessInfoInfoList)); Register(typeof(HA341_tagMCSuccessFinish), typeof(DTCA341_tagMCSuccessFinish)); Register(typeof(HA342_tagMCSuccessFinishAwardRecordList), typeof(DTCA342_tagMCSuccessFinishAwardRecordList)); Register(typeof(HA312_tagMCMagicWeaponData), typeof(DTCA312_tagMCMagicWeaponData)); #endregion #region 组队 Register(typeof(HB901_tagGCInviteJoinTeamInfo), typeof(DTCB901_tagGCInviteJoinTeamInfo)); Register(typeof(HB902_tagGCTeamMemberInfo), typeof(DTCB902_tagGCTeamMemberInfo)); Register(typeof(HB903_tagGCTeamInfoChange), typeof(DTCB903_tagGCTeamInfoChange)); Register(typeof(HB904_tagGCSceneTeamRefresh), typeof(DTCB904_tagGCSceneTeamRefresh)); Register(typeof(HB905_tagGCTeamMemberRefreshProperty), typeof(DTCB905_tagGCTeamMemberRefreshProperty)); Register(typeof(H0905_tagTeamClear), typeof(DTC0905_tagTeamClear)); Register(typeof(H0906_tagPlayerLeaveTeamMsg), typeof(DTC0906_tagPlayerLeaveTeamMsg)); Register(typeof(H0907_tagPlayerAskJoinTeam), typeof(DTC0907_tagPlayerAskJoinTeam)); Register(typeof(H0912_tagTeamMemberLoginInfo), typeof(DTC0912_tagTeamMemberLoginInfo)); Register(typeof(H0913_tagTeamMemberChangeMap), typeof(DTC0913_tagTeamMemberChangeMap)); Register(typeof(HB907_tagGCRequestJoinTeam), typeof(DTCB907_tagGCRequestJoinTeam)); Register(typeof(HB908_tagGCRecommendNearbyPlayerList), typeof(DTCB908_tagGCRecommendNearbyPlayerList)); Register(typeof(HB909_tagGCTagMapTeamList), typeof(DTCB909_tagGCTagMapTeamList)); Register(typeof(HB910_tagGCTeamMatchState), typeof(DTCB910_tagGCTeamMatchState)); Register(typeof(HB911_tagGCTeamEnterFBPrepare), typeof(DTCB911_tagGCTeamEnterFBPrepare)); #endregion #region 宝石 Register(typeof(HA3BC_tagMCStoneInfo), typeof(DTCA3BC_tagMCStoneInfo)); #endregion #region 福利 #region 签到 Register(typeof(HA30D_tagMCDaySignInfo), typeof(DTCA30D_tagMCDaySignInfo)); #endregion #region 祈愿 Register(typeof(HA330_tagMCBuySomething), typeof(DTCA330_tagMCBuySomething)); #endregion #endregion #region 死亡复活 Register(typeof(HB103_tagMCPlayerDeadTime), typeof(DTCB103_tagMCPlayerDeadTime)); #endregion #region Vip Register(typeof(HA601_tagMCNotifyVipTime), typeof(DTCA601_tagMCNotifyVipTime)); Register(typeof(HA604_tagMCVIPInfo), typeof(DTCA604_tagMCVIPInfo)); Register(typeof(HA605_tagMCVIPAwardMsg), typeof(DTCA605_tagMCVIPAwardMsg)); #endregion Register(typeof(HA315_tagMCDailyActionCnt), typeof(DTCA315_tagMCDailyActionCnt)); Register(typeof(HA333_tagMCDailyActivityInfoList), typeof(DTCA333_tagMCDailyActivityInfoList)); #region 守护 Register(typeof(HA812_tagMCGuradPickupItemSucc), typeof(DTCA812_tagMCGuradPickupItemSucc)); #endregion #region 炼丹炉 Register(typeof(HA3BE_tagMCMagicWeaponMsg), typeof(DTCA3BE_tagMCMagicWeaponMsg)); Register(typeof(HA3BF_tagMCPlayerStoveMsg), typeof(DTCA3BF_tagMCPlayerStoveMsg)); #endregion #region 打宝系统 Register(typeof(HA909_tagGCBossAttentionInfo), typeof(DTCA909_tagGCBossAttentionInfo)); Register(typeof(HA902_tagGCGameWorldBossInfo), typeof(DTCA902_tagGCGameWorldBossInfo)); #endregion #region 仙盟活跃 Register(typeof(HA316_tagMCFamilyActivityInfo), typeof(DTCA316_tagMCFamilyActivityInfo)); #endregion Register(typeof(HB405_tagMCAddExp), typeof(DTCB405_tagMCAddExp)); Register(typeof(HB912_tagGCTeamMemFuncDataList), typeof(DTCB912_tagGCTeamMemFuncDataList)); #region 我要太极 Register(typeof(HAB22_tagMCDiceExResult), typeof(DTCAB22_tagMCDiceExResult)); Register(typeof(HAB23_tagMCDiceAward), typeof(DTCAB23_tagMCDiceAward)); #endregion Register(typeof(HB409_tagMCTJGInfo), typeof(DTCB409_tagMCTJGInfo)); Register(typeof(HA349_tagMCRecoverNum), typeof(DTCA349_tagMCRecoverNum)); Register(typeof(HB410_tagMCTJGDeadPay), typeof(DTCB410_tagMCTJGDeadPay)); Register(typeof(HB104_tagMCStoryMissionStateInfo), typeof(DTCB104_tagMCStoryMissionStateInfo)); #region 仙魔之争 Register(typeof(HAC02_tagGCXMZZInfo), typeof(DTCAC02_tagGCXMZZInfo)); Register(typeof(HAC03_tagGCXMZZSelfInfo), typeof(DTCAC03_tagGCXMZZSelfInfo)); Register(typeof(HAC04_tagGCXMZZFightInfo), typeof(DTCAC04_tagGCXMZZFightInfo)); #endregion #region 宝箱 Register(typeof(HA809_tagMCItemDayUseCntInfo), typeof(DTCA809_tagMCItemDayUseCntInfo)); Register(typeof(HA810_tagMCNotifyUseItemGetItem), typeof(DTCA810_tagMCNotifyUseItemGetItem)); #endregion #region 七天登入 Register(typeof(HAA01_tagMCTotalLoginDayCntInfo), typeof(DTCAA01_tagMCTotalLoginDayCntInfo)); #endregion #region 七天在线奖励 Register(typeof(HA308_tagMCOnlinePrize), typeof(DTCA308_tagMCOnlinePrize)); #endregion Register(typeof(HA337_tagMCGoldInvestInfo), typeof(DTCA337_tagMCGoldInvestInfo)); #region 寻宝 Register(typeof(HA350_tagMCTreasureResult), typeof(DTCA350_tagMCTreasureResult)); Register(typeof(HA351_tagMCTreasureInfo), typeof(DTCA351_tagMCTreasureInfo)); #endregion Register(typeof(HA348_tagMCXBXZAwardRecordList), typeof(DTCA348_tagMCXBXZAwardRecordList)); Register(typeof(HA31C_tagMCEquipDecomposeInfo), typeof(DTCA31C_tagMCEquipDecomposeInfo)); Register(typeof(HAA08_tagMCFirstGoldTime), typeof(DTCAA08_tagMCFirstGoldTime)); Register(typeof(HB202_tagMCPushNotificationsSetting), typeof(DTCB202_tagMCPushNotificationsSetting)); Register(typeof(HA318_tagMCFreeGoodsInfo), typeof(DTCA318_tagMCFreeGoodsInfo)); Register(typeof(HAA12_tagMCFlashGiftbagInfo), typeof(DTCAA12_tagMCFlashGiftbagInfo)); Register(typeof(HAA13_tagMCFlashGiftbagPlayerInfo), typeof(DTCAA13_tagMCFlashGiftbagPlayerInfo)); #region 仙界盛典 Register(typeof(HAC09_tagGCFairyCeremonyInfo), typeof(DTCAC09_tagGCFairyCeremonyInfo)); Register(typeof(HAA14_tagMCXJSDRecharge), typeof(DTCAA14_tagMCXJSDRecharge)); Register(typeof(HAA15_tagMCAllPeoplePartyInfo), typeof(DTCAA15_tagMCAllPeoplePartyInfo)); #endregion #region 神兽 Register(typeof(HA3C0_tagMCDogzInfo), typeof(DTCA3C0_tagMCDogzInfo)); Register(typeof(HA3C1_tagMCDogzHelpbattleState), typeof(DTCA3C1_tagMCDogzHelpbattleState)); #endregion } private static void Register(Type _pack, Type _business) { var packInstance = _pack.Assembly.CreateInstance(_pack.Name) as GameNetPackBasic; var businessInstance = _business.Assembly.CreateInstance(_business.Name) as DtcBasic; if (packToBusinessTable.ContainsKey(packInstance.cmd)) { DebugEx.LogFormat("重复封包登记: {0}!", _pack.Name); } else { packToBusinessTable[packInstance.cmd] = businessInstance; packageTable[packInstance.cmd] = _pack; } } public static bool Contain(ushort _cmd) { return packToBusinessTable.ContainsKey(_cmd); } public static void Distribute(GameNetPackBasic _package) { try { packToBusinessTable[_package.cmd].Done(_package); } catch (Exception ex) { DebugEx.LogError(ex); } } static byte[] vCmdBytes = new byte[2]; /// /// 转换一个协议包 /// /// /// public static GameNetPackBasic TransPack(byte[] vBytes) { vBytes = GameNetEncode.BaseXorSub(vBytes); #if UNITY_EDITOR int length = vBytes.Length; string vStr = ""; for (int i = 0; i < length; i++) { vStr += vBytes[i].ToString("x2").ToUpper() + ","; } #endif Array.Copy(vBytes, 0, vCmdBytes, 0, 2); ushort vPackCmd = (ushort)((ushort)(vCmdBytes[0] << 8) + vCmdBytes[1]); if (packageTable.ContainsKey(vPackCmd)) // 存在相应的登记 { var packageType = packageTable[vPackCmd]; // 实例化并强转为协议包基类 var packageInstance = packageType.Assembly.CreateInstance(packageType.Name) as GameNetPackBasic; packageInstance.ReadFromBytes(vBytes);// 解析内容 if (packageInstance.cmd == (ushort)0x03F0 || packageInstance.cmd == (ushort)0x1801) { byte[] vPyBody = new byte[vBytes.Length - 4]; Array.Copy(vBytes, 4, vPyBody, 0, vPyBody.Length); packageInstance = TransForPyPack(vPyBody); } #if UNITY_EDITOR NetPkgCtl.AddNetPkg(vStr, NetPkgType.Server, packageInstance.ToString(), FieldPrint.PrintFields(packageInstance), FieldPrint.PrintFieldsExpand(packageInstance, true)); #endif return packageInstance; } else { #if UNITY_EDITOR NetPkgCtl.AddNetPkg(vStr, NetPkgType.Server, string.Empty, string.Empty, null); DebugEx.LogErrorFormat("C#层收到未登记的解包协议:{0},{1}", vCmdBytes[0].ToString("x2"), vCmdBytes[1].ToString("x2")); #endif } return null; } /// /// 解析PY的模拟包 /// /// /// private static GameNetPackBasic TransForPyPack(byte[] vBytes) { GameNetPackBasic vNetPackInst = null; ushort vPackCmd = (ushort)((ushort)(vBytes[0] << 8) + vBytes[1]); if (packageTable.ContainsKey(vPackCmd)) // 存在相应的登记 { Type vNetPackType = packageTable[vPackCmd]; vNetPackInst = vNetPackType.Assembly.CreateInstance(vNetPackType.Name) as GameNetPackBasic; vNetPackInst.ReadFromBytes(vBytes);// 解析内容 } else { DebugEx.LogError("收到未定义的解包协议:" + vBytes[0].ToString("x2").ToUpper() + "," + vBytes[1].ToString("x2").ToUpper()); } return vNetPackInst; } }