#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package # # @todo:¶ÁÈ¡PY±í # @author hxp # @date 2018-05-10 # @version 1.0 # # ÏêϸÃèÊö: ¶ÁÈ¡PY±í # #------------------------------------------------------------------------------- #"""Version = 2018-05-10 12:00""" #------------------------------------------------------------------------------- import FormulaControl import ChConfig import LogUI import hashlib import os '''±í½á¹¹¶¨Òå×Öµä { ±íÃû:( (×Ö¶ÎÀàÐÍ, ×Ö¶ÎÃû, ÊÇ·ñ²éѯË÷Òý), ... ), ... } ''' Def_IpyTable = { "Dienstgrad":( ("DWORD", "ID", 1), ("WORD", "Type", 0), ("DWORD", "ExpireTime", 0), ("list", "LightType", 0), ("list", "LightAttribute", 0), ("list", "Skills", 0), ), "RolePoint":( ("BYTE", "AttrID", 1), ("dict", "AddAttrInfoPerPoint", 0), ("BYTE", "FightPowerPerPoint", 0), ("dict", "PointQualityAttrDict", 0), ("list", "PointQualityIntervalList", 0), ), "LingQiAttr":( ("BYTE", "ItemID", 1), ("list", "LingQiAttrID", 0), ("list", "LingQiAttrValue", 0), ("DWORD", "LingQiAttrScore", 0), ("dict", "UpCostItem", 0), ("DWORD", "NextItemID", 0), ), "Realm":( ("WORD", "Lv", 1), ("BYTE", "LvLarge", 0), ("DWORD", "NeedLV", 0), ("DWORD", "NeedItemID", 0), ("WORD", "NeedItemCnt", 0), ("list", "NeedEquip", 0), ("list", "AddAttrType", 0), ("list", "AddAttrNum", 0), ("DWORD", "BossID", 0), ("DWORD", "BuffID", 0), ("DWORD", "ExpRate", 0), ("DWORD", "ExpLimit", 0), ("dict", "LearnSkillIDInfo", 0), ("BYTE", "AddFreePoint", 0), ), "GodWeapon":( ("WORD", "Type", 1), ("WORD", "LV", 1), ("DWORD", "Exp", 0), ("list", "AttrType", 0), ("list", "AttrNum", 0), ("DWORD", "SkillID", 0), ("char", "SysMark", 0), ), "FuncConfig":( ("char", "Key", 1), ("char", "Numerical1", 0), ("char", "Numerical2", 0), ("char", "Numerical3", 0), ("char", "Numerical4", 0), ("char", "Numerical5", 0), ), "FuncOpenLV":( ("DWORD", "FuncId", 1), ("DWORD", "LimitLV", 0), ("DWORD", "LimitMagicWeapon", 0), ("WORD", "LimiRealmLV", 0), ("DWORD", "LimitMissionID", 0), ("BYTE", "LimitVIPLV", 0), ("char", "MailKey", 0), ), "ItemCompound":( ("WORD", "ID", 1), ("BYTE", "ComposeGroup", 0), ("list", "MakeID", 0), ("BYTE", "IsFirstSuccMakeJobItem", 0), ("list", "UnfixedItemID", 0), ("BYTE", "UnfixedItemCount", 0), ("list", "FixedItemID", 0), ("list", "FixedItemCount", 0), ("DWORD", "NeedMoney", 0), ("WORD", "SuccessRate", 0), ("WORD", "SuccessRateMax", 0), ("list", "SuccessRateIncrease", 0), ("BYTE", "AddonsCountMax", 0), ("char", "SysMark", 0), ("BYTE", "SysMarkParamType", 0), ), "ItemPlus":( ("BYTE", "Type", 1), ("WORD", "LV", 1), ("list", "AttrType", 0), ("list", "AttrValue", 0), ("DWORD", "CostCount", 0), ("list", "CostItemInfo", 0), ("DWORD", "AddExp", 0), ("DWORD", "TotalExp", 0), ), "EquipControl":( ("BYTE", "ClassLV", 0), ("BYTE", "NeedRealmLV", 0), ), "ItemPlusMaster":( ("BYTE", "ClassLV", 1), ("WORD", "MasterPlusLV", 0), ("list", "MasterPlusAttrIDList", 0), ("list", "MasterPlusAttrValueList", 0), ), "ItemPlusMax":( ("BYTE", "Type", 1), ("BYTE", "ClassLV", 1), ("WORD", "PlusLVMax", 0), ), "RoleEquipStars":( ("BYTE", "StarsNeed", 1), ("list", "AttrType", 0), ("list", "AttrValue", 0), ), "EquipLegendAttrCount":( ("BYTE", "ItemType", 1), ("BYTE", "ItemColor", 1), ("BYTE", "IsSuit", 1), ("BYTE", "ItemQuality", 1), ("list", "LegendAttrCountInfo", 0), ), "EquipLegendAttrType":( ("BYTE", "ItemType", 1), ("dict", "LegendAttrTypeLib", 0), ), "EquipLegendAttrLib":( ("BYTE", "LegendAttrID", 1), ("dict", "LegendAttrLib", 0), ), "EquipLegendAttrValue":( ("BYTE", "ItemType", 1), ("BYTE", "ItemClassLV", 1), ("BYTE", "ItemColor", 1), ("BYTE", "IsSuit", 1), ("BYTE", "ItemQuality", 1), ("dict", "LVLegendAttrLibNumInfo", 0), ), "Dogz":( ("BYTE", "DogzID", 1), ("list", "BaseAttrTypes", 0), ("list", "BaseAttrValues", 0), ("list", "HelpBattleSkills", 0), ("DWORD", "FightPowerEx", 0), ("list", "EquipPlaceColorList", 0), ("list", "HelpBattleNotify", 0), ), "DogzEquipPlus":( ("BYTE", "EquipPlace", 1), ("BYTE", "PlusLV", 1), ("list", "PlusAttrTypes", 0), ("list", "PlusAttrValues", 0), ("DWORD", "PlusLVUPTotalExp", 0), ), "Rune":( ("DWORD", "ID", 1), ("list", "AttrType", 0), ("DWORD", "TowerID", 0), ), "EquipWash":( ("BYTE", "WashType", 1), ("BYTE", "WashLV", 1), ("BYTE", "AttrType1", 0), ("DWORD", "AttrMax1", 0), ("dict", "AttrRandDict1", 0), ("DWORD", "AttrCostGoldMin1", 0), ("DWORD", "AttrCostGoldMax1", 0), ("BYTE", "AttrType2", 0), ("DWORD", "AttrMax2", 0), ("dict", "AttrRandDict2", 0), ("DWORD", "AttrCostGoldMin2", 0), ("DWORD", "AttrCostGoldMax2", 0), ("BYTE", "AttrType3", 0), ("DWORD", "AttrMax3", 0), ("dict", "AttrRandDict3", 0), ("DWORD", "AttrCostGoldMin3", 0), ("DWORD", "AttrCostGoldMax3", 0), ("DWORD", "CostItemID", 0), ("BYTE", "CostItemCount", 0), ("list", "GoldWashCostList", 0), ), "AttrFruit":( ("DWORD", "ID", 1), ("BYTE", "FuncID", 0), ("dict", "MaxUseCnt", 0), ("list", "AddItemInfo", 0), ("WORD", "RecycleMoney", 0), ("DWORD", "FightPowerEx", 0), ), "PetInfo":( ("DWORD", "ID", 1), ("BYTE", "Quality", 0), ("char", "UnlockSys", 0), ("DWORD", "UnLockNeedItemID", 0), ("BYTE", "UnLockNeedItemCnt", 0), ("DWORD", "DecomposeExp", 0), ("BYTE", "InitRank", 0), ("WORD", "MaxRank", 0), ("WORD", "UseNeedRank", 0), ("list", "SkillID", 0), ("list", "SkillUnLock", 0), ("list", "SkillUnLockSys", 0), ("DWORD", "InitFightPower", 0), ), "EquipDecompose":( ("WORD", "LV", 1), ("DWORD", "UpNeedExp", 0), ("dict", "Attr", 0), ), "PetClassCost":( ("DWORD", "PetID", 1), ("DWORD", "Class", 1), ("DWORD", "UpNeedExp", 0), ("DWORD", "AtkAdd", 0), ), "PetEatEquip":( ("BYTE", "EquipColor", 1), ("BYTE", "EquipClass", 1), ("DWORD", "Exp", 0), ("DWORD", "FamilyStoreItemScore", 0), ), "HorseLVUp":( ("BYTE", "HorseLV", 1), ("DWORD", "HorseSkinID", 0), ("WORD", "NeedEatCount", 0), ("list", "LVAttrType", 0), ("list", "LVAttrValue", 0), ), "HorseSkinPlus":( ("BYTE", "ID", 1), ("DWORD", "HorseSkinPlusID", 0), ("DWORD", "UnlockItemID", 0), ("BYTE", "UnlockItemCnt", 0), ("list", "AttrType", 0), ("list", "AttrValue", 0), ("DWORD", "InitFightPower", 0), ), "PlayerLV":( ("WORD", "LV", 1), ("DWORD", "ExpPoint", 0), ("DWORD", "Exp", 0), ("BYTE", "TalentPoint", 0), ("DWORD", "ReExp", 0), ("DWORD", "ReMaxHP", 0), ("DWORD", "ReAtk", 0), ("DWORD", "ReDef", 0), ("DWORD", "ReHit", 0), ("DWORD", "ReMiss", 0), ("DWORD", "ReAtkSpeed", 0), ("DWORD", "ReSkillAtkRate", 0), ("DWORD", "ReDamagePer", 0), ("DWORD", "ReDamReduce", 0), ("DWORD", "ReIgnoreDefRate", 0), ("DWORD", "ReLuckyHitRate", 0), ("DWORD", "ReLuckyHit", 0), ("DWORD", "ReBleedDamage", 0), ("DWORD", "ReIceAtk", 0), ("DWORD", "ReIceDef", 0), ("DWORD", "RePetAtk", 0), ("DWORD", "RePetSkillAtkRate", 0), ("DWORD", "RePetDamPer", 0), ("DWORD", "ReFinalHurt", 0), ("DWORD", "ReFinalHurtReduce", 0), ("DWORD", "RePotionReply", 0), ("DWORD", "RePotionCD", 0), ("DWORD", "AttackEff", 0), ("DWORD", "ReFightPower", 0), ("DWORD", "IceLodeFightPower", 0), ), "GMAttr":( ("DWORD", "GMAttrID", 1), ("BYTE", "IsValid", 0), ("char", "GMAccID", 0), ("WORD", "GMMaxLV", 0), ("WORD", "AttrLV", 0), ("float", "AttrPer", 0), ("dict", "AttrSpecDict", 0), ("dict", "AttrExDict", 0), ), "NPCStrengthen":( ("DWORD", "NPCID", 1), ("BYTE", "IsStrengthenByPlayerCount", 0), ("BYTE", "LVStrengthenMark", 0), ("BYTE", "LVStrengthenType", 0), ("BYTE", "CmpNPCBaseLV", 0), ("DWORD", "HitTime", 0), ("DWORD", "DefCoefficient", 0), ("DWORD", "AtkCoefficient", 0), ("DWORD", "AdjustCoefficient", 0), ("DWORD", "AtkInterval", 0), ("DWORD", "HitRate", 0), ("DWORD", "MissRate", 0), ("DWORD", "MonterNum", 0), ("DWORD", "IceAtkCoefficient", 0), ("DWORD", "IceDefCoefficient", 0), ("DWORD", "MaxEnduranceTime", 0), ("DWORD", "FightPowerCoefficient", 0), ), "NPCTimeLostHP":( ("DWORD", "NPCID", 1), ("DWORD", "LostHPPerSecond", 0), ("BYTE", "MaxPlayerCount", 0), ("DWORD", "LostHPPerSecondEx", 0), ("BYTE", "FightPowerMinByLV", 0), ("DWORD", "FightPowerMin", 0), ("DWORD", "FightPowerMax", 0), ("DWORD", "EveryFightPower", 0), ("DWORD", "EveryFightPowerLostHPEx", 0), ), "EquipSuitAttr":( ("WORD", "SuiteID", 1), ("BYTE", "SuiteCnt", 0), ("BYTE", "Star", 0), ("dict", "AttrInfo", 0), ("DWORD", "SkillID", 0), ("BYTE", "IsNotify", 0), ("WORD", "ActivateIndex", 0), ), "WingRefineAttr":( ("BYTE", "WingClassLV", 1), ("dict", "AttrInfo", 0), ("dict", "ItemColorInfo", 0), ("DWORD", "MaxRefineExp", 0), ), "WingRefineExp":( ("DWORD", "ItemID", 1), ("DWORD", "RandExpMin", 0), ("DWORD", "RandExpMax", 0), ("dict", "ExpMaterial", 0), ), "FamilyTech":( ("DWORD", "TechID", 1), ("BYTE", "AttrType", 0), ("DWORD", "AttrValue", 0), ("DWORD", "Contribution", 0), ("DWORD", "PowerEx", 0), ), "FightPowerParam":( ("WORD", "LV", 1), ("DWORD", "CftHit", 0), ("DWORD", "CftMiss", 0), ("DWORD", "CftIgnoreDefRate", 0), ("DWORD", "CftDamChanceDef", 0), ("DWORD", "CftFaintRate", 0), ("DWORD", "CftSuperHitRateReduce", 0), ("DWORD", "CftSuperHitRate", 0), ("DWORD", "CftLuckyHitRate", 0), ("DWORD", "CftLuckyHitRateReduce", 0), ("DWORD", "CftSkillAtkRate", 0), ("DWORD", "CftSkillAtkRateReduce", 0), ("DWORD", "CftFinalHurtPer", 0), ("DWORD", "CftFinalHurtReducePer", 0), ("DWORD", "CftDamagePerPVP", 0), ("DWORD", "CftDamagePerPVPReduce", 0), ("DWORD", "CftNPCHurtAddPer", 0), ("DWORD", "CftNormalHurtPer", 0), ("DWORD", "CftFabaoHurtPer", 0), ("DWORD", "CftDamBackPer", 0), ("DWORD", "CftIgnoreDefRateReduce", 0), ("DWORD", "CftFaintDefRate", 0), ("DWORD", "CftAtkSpeed", 0), ("DWORD", "CftJobAHurtAddPer", 0), ("DWORD", "CftJobBHurtAddPer", 0), ("DWORD", "CftJobCHurtAddPer", 0), ("DWORD", "CftJobAAtkReducePer", 0), ("DWORD", "CftJobBAtkReducePer", 0), ("DWORD", "CftJobCAtkReducePer", 0), ), "NPCDropItem":( ("DWORD", "NPCID", 1), ("WORD", "MaxWorldLV", 0), ("WORD", "MaxDropLV", 0), ("BYTE", "CanDropRatePlus", 0), ("BYTE", "IsDropJobSelf", 0), ("list", "PieRateDrop", 0), ("BYTE", "PieRateDoCnt", 0), ("dict", "IndepRateDrop", 0), ("BYTE", "IndepRateDoCnt", 0), ("dict", "EquipColorMaxDropCount", 0), ("dict", "EquipColorSuitInfo", 0), ("dict", "EquipPartKeyRateInfo", 0), ("BYTE", "ColorSuitPartOptimization", 0), ("dict", "KillCountDropEquipPub", 0), ("dict", "ItemIDDropRate", 0), ("dict", "ItemIDMaxDropCount", 0), ("dict", "ItemKeyDropRate", 0), ("dict", "ItemKeyDropRateJob", 0), ("dict", "ItemKeyMaxDropCount", 0), ("BYTE", "DropMoneyDoCnt", 0), ("WORD", "DropMoneyRate", 0), ("WORD", "DropMoneyMin", 0), ("WORD", "DropMoneyMax", 0), ("dict", "KillCountDropPub", 0), ("list", "KillCountDropPri", 0), ("list", "PriItemIDDrop", 0), ("BYTE", "AucionItemCanSell", 0), ), "RuneTower":( ("DWORD", "ID", 1), ("DWORD", "RunePoint", 0), ("DWORD", "Ysog", 0), ("DWORD", "NPCID", 0), ("BYTE", "IsNotify", 0), ("list", "FixEndAward", 0), ("dict", "GoodDrop", 0), ("DWORD", "SweepRunePoint", 0), ("DWORD", "SweepYsog", 0), ("dict", "SweepGoodDrop", 0), ), "ChinMap":( ("DWORD", "MapID", 1), ("BYTE", "CanRide", 0), ("BYTE", "CanOutPet", 0), ), "FBFunc":( ("DWORD", "DataMapID", 1), ("BYTE", "DayTimes", 0), ("BYTE", "DayResetType", 0), ("BYTE", "WeekTimes", 0), ("BYTE", "WeekResetType", 0), ("list", "RewardRate", 0), ("DWORD", "BuyTimesVIPPriID", 0), ("DWORD", "ExtraTimesVIPPriID", 0), ("DWORD", "ExtraTimesMWPriID", 0), ("BYTE", "GuardPick", 0), ("WORD", "OfflineTime", 0), ("WORD", "FBPoint", 0), ("WORD", "HelpPoint", 0), ("BYTE", "DayHelpCountMax", 0), ), "FBLine":( ("DWORD", "DataMapID", 1), ("BYTE", "LineID", 1), ("DWORD", "MapID", 0), ("WORD", "LVLimitMin", 0), ("WORD", "LVLimitMax", 0), ("DWORD", "TicketID", 0), ("list", "TicketCostCnt", 0), ("WORD", "TicketPrice", 0), ("WORD", "SweepLVLimit", 0), ("DWORD", "SweepItemID", 0), ("BYTE", "SweepCostCnt", 0), ("eval", "EnterPosInfo", 0), ("eval", "StepTime", 0), ("eval", "RefreshNPC", 0), ("eval", "GradeInfo", 0), ("eval", "RewardInfo", 0), ), "FBHelpBattle":( ("DWORD", "DataMapID", 1), ("BYTE", "LineID", 1), ("DWORD", "FightPowerMin", 0), ("DWORD", "RobotFightPower", 0), ("WORD", "RobotLV", 0), ("DWORD", "RobotBaseHurt", 0), ("WORD", "RobotHPCoefficient", 0), ("dict", "RobotSkillsDict", 0), ), "NPCCustomRefresh":( ("DWORD", "ID", 1), ("list", "RefreshMarkInfo", 0), ("DWORD", "RefreshNPCID", 0), ("list", "RandNPCIDList", 0), ("list", "NPCIDCountList", 0), ("WORD", "MaxCount", 0), ("WORD", "TotalMaxCount", 0), ("BYTE", "IsLineOneOnly", 0), ("DWORD", "RefreshTick", 0), ("BYTE", "IsRepeat", 0), ), "DailyAction":( ("DWORD", "DailyID", 1), ("dict", "OpenTimeDict", 0), ("DWORD", "Duration", 0), ("DWORD", "DayTimes", 0), ("DWORD", "DayBuyTimes", 0), ("BYTE", "BuyTimesPrivilegeID", 0), ("DWORD", "BuyNeedMoney", 0), ("DWORD", "DayItemAddTimes", 0), ("DWORD", "DayItemID", 0), ("BYTE", "DayResetType", 0), ("DWORD", "WeekTimes", 0), ("BYTE", "WeekResetType", 0), ), "EquipGSParam":( ("BYTE", "ClassLV", 1), ("BYTE", "EquipColor", 1), ("BYTE", "IsSuit", 1), ("BYTE", "ItemQuality", 1), ("DWORD", "BaseEquipMaxHPAddPerC", 0), ("DWORD", "BaseEquipAtkAddPerC", 0), ("DWORD", "SuperHitC", 0), ("DWORD", "SuperHitPerC", 0), ("DWORD", "LuckyHitRateC", 0), ("DWORD", "LuckyHitRateReduceC", 0), ("DWORD", "LuckPerC", 0), ("DWORD", "PerLVAtkC", 0), ("DWORD", "PerLVMaxHPC", 0), ("DWORD", "DropMoneyPerC", 0), ("DWORD", "SuperHitReduceC", 0), ("DWORD", "SuperHitRateReduceC", 0), ("DWORD", "HitC", 0), ("DWORD", "MissC", 0), ("DWORD", "PetDamPerC", 0), ("DWORD", "MaxHPPerC", 0), ("DWORD", "AtkPerC", 0), ("DWORD", "SkillAtkRateC", 0), ("DWORD", "SkillAtkRateReduceC", 0), ("DWORD", "SkillAddPer1C", 0), ("DWORD", "SkillAddPer2C", 0), ("DWORD", "SkillAddPer3C", 0), ("DWORD", "SkillAddPer4C", 0), ("DWORD", "SkillAddPer5C", 0), ("DWORD", "SkillAddPer6C", 0), ("DWORD", "SkillAddPer7C", 0), ("DWORD", "SkillReducePer1C", 0), ("DWORD", "SkillReducePer2C", 0), ("DWORD", "SkillReducePer3C", 0), ("DWORD", "SkillReducePer4C", 0), ("DWORD", "SkillReducePer5C", 0), ("DWORD", "SkillReducePer6C", 0), ("DWORD", "SkillReducePer7C", 0), ("DWORD", "ReduceSkillCDPerC", 0), ("DWORD", "LuckyHitPerC", 0), ("DWORD", "FaintDefRateC", 0), ("DWORD", "SuperHitRateC", 0), ), "Success":( ("DWORD", "ID", 1), ("WORD", "Type", 0), ("DWORD", "NeedCnt", 0), ("list", "Condition", 0), ("list", "PreSuccess", 0), ("dict", "AwardItem", 0), ("dict", "AwardItem2", 0), ("dict", "Money", 0), ("DWORD", "Exp", 0), ("dict", "AwardAttr", 0), ("DWORD", "RedPacketID", 0), ("DWORD", "MagicWeaponID", 0), ("DWORD", "MagicWeaponExp", 0), ), "Treasure":( ("DWORD", "ID", 1), ("BYTE", "TreasureType", 0), ("DWORD", "PreTreasure", 0), ("DWORD", "FBMapID", 0), ("DWORD", "FBLineID", 0), ("DWORD", "NeedLV", 0), ("dict", "NeedItem", 0), ), "TreasureUp":( ("DWORD", "MWID", 1), ("BYTE", "LV", 1), ("DWORD", "NeedExp", 0), ("dict", "AddAttr", 0), ("list", "UnLockSkill", 0), ("DWORD", "PowerEx", 0), ), "ContineSignAward":( ("BYTE", "ContineDay", 1), ("list", "ItemID", 0), ("BYTE", "IsBind", 0), ("list", "ItemNum", 0), ("list", "JobItemList", 0), ), "SignAward":( ("BYTE", "RewardID", 1), ("list", "ItemID", 0), ("BYTE", "IsBind", 0), ("BYTE", "VipLv", 0), ("list", "OrdinaryNum", 0), ("BYTE", "VipMultiple", 0), ), "VIPAward":( ("BYTE", "VIPLV", 1), ("dict", "ItemID", 0), ("WORD", "Price", 0), ("WORD", "OldPrice", 0), ), "AppointItem":( ("DWORD", "ID", 1), ("BYTE", "CancelUseLimit", 0), ("list", "LegendAttrID", 0), ("list", "LegendAttrValue", 0), ), "AuctionItem":( ("DWORD", "AuctionItemID", 1), ), "VipPrivilege":( ("DWORD", "VIPPriID", 1), ("DWORD", "VIP0", 0), ("DWORD", "VIP1", 0), ("DWORD", "VIP2", 0), ("DWORD", "VIP3", 0), ("DWORD", "VIP4", 0), ("DWORD", "VIP5", 0), ("DWORD", "VIP6", 0), ("DWORD", "VIP7", 0), ("DWORD", "VIP8", 0), ("DWORD", "VIP9", 0), ("DWORD", "VIP10", 0), ("DWORD", "VIP11", 0), ("DWORD", "VIP12", 0), ("DWORD", "VIP13", 0), ("DWORD", "VIP14", 0), ("DWORD", "VIP15", 0), ), "Store":( ("DWORD", "ID", 1), ("DWORD", "ShopType", 0), ("BYTE", "OperationActionShop", 0), ("DWORD", "ItemID", 0), ("WORD", "ItemCnt", 0), ("BYTE", "IsBind", 0), ("list", "ItemListEx", 0), ("DWORD", "MainItemID", 0), ("list", "JobItem", 0), ("BYTE", "RefreshType", 0), ("list", "LimitVIPLV", 0), ("DWORD", "LimitLV", 0), ("list", "LimitCnt", 0), ("DWORD", "ServerLimitCnt", 0), ("BYTE", "MoneyType", 0), ("DWORD", "MoneyNum", 0), ("DWORD", "MoneyOriginal", 0), ("DWORD", "LimitValue", 0), ("char", "NotifyMark", 0), ("char", "MailKey", 0), ), "ActSpringSale":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("list", "StartTimeList", 0), ("list", "EndTimeList", 0), ("WORD", "AdvanceMinutes", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("dict", "ShopTypeList", 0), ("char", "MailKey", 0), ("list", "MailItemPrize", 0), ), "DailyQuest":( ("DWORD", "ID", 1), ("BYTE", "RelatedType", 0), ("DWORD", "RelatedID", 0), ("WORD", "UnLockFuncID", 0), ("BYTE", "OnceActivityTime", 0), ("BYTE", "OnceActivity", 0), ("WORD", "TotalActiveValue", 0), ), "DailyLivenessReward":( ("BYTE", "ID", 1), ("WORD", "Liveness", 0), ("list", "StageLV", 0), ("list", "ItemID", 0), ("list", "ItemCount", 0), ("list", "ItemBind", 0), ), "ActivityPlaceReward":( ("BYTE", "ID", 1), ("BYTE", "PlaceCount", 0), ("WORD", "PlaceMaxLV", 0), ("list", "FixedItemRewardList", 0), ("BYTE", "RandItemCountA", 0), ("list", "RandItemRewardListA", 0), ("BYTE", "RandItemCountB", 0), ("list", "RandItemRewardListB", 0), ), "RefineStove":( ("BYTE", "StoveLV", 1), ("DWORD", "UpNeedExp", 0), ), "Alchemy":( ("DWORD", "ID", 1), ("DWORD", "AlchemItemID", 0), ("BYTE", "AlchemType", 0), ("BYTE", "AlchemyQuality", 0), ("DWORD", "LearnNeedItemID", 0), ("BYTE", "LearnNeedAlchemLV", 0), ("WORD", "LearnNeedLingGenPoint", 0), ("WORD", "NeedTime", 0), ("WORD", "AlchemyExp", 0), ("dict", "Material", 0), ), "AlchemyResult":( ("BYTE", "AlchemyQuality", 1), ("DWORD", "LuckValue", 0), ("list", "CntRateList", 0), ), "BOSSInfo":( ("DWORD", "NPCID", 1), ("DWORD", "MapID", 0), ("BYTE", "RefreshLine", 0), ("BYTE", "RefreshMark", 0), ("BYTE", "IsNeedShunt", 0), ("BYTE", "RelatedType", 0), ("char", "RelatedID", 0), ("DWORD", "StoneNPCID", 0), ("BYTE", "CanAssist", 0), ("BYTE", "SkillResist", 0), ), "BOSSFirstKill":( ("DWORD", "NPCID", 1), ("WORD", "PerPlayerMoneyAward", 0), ("list", "PersonFirstKillAward", 0), ), "ElderGodArea":( ("DWORD", "NPCID", 1), ("BYTE", "MonsterAnger", 0), ), "PersonalBoss":( ("DWORD", "NPCID", 0), ("DWORD", "FuncLineID", 1), ), "FamilyActivity":( ("DWORD", "ID", 1), ("WORD", "UnLockFuncID", 0), ("BYTE", "TotalActivityTime", 0), ("WORD", "SingleTimes", 0), ("WORD", "SingleActiveValue", 0), ), "FamilyRedPack":( ("WORD", "ID", 1), ("WORD", "GetType", 0), ("WORD", "MoneyNum", 0), ("BYTE", "MoneyType", 0), ("BYTE", "PacketCnt", 0), ), "ActFeastRedPacketSucc":( ("BYTE", "FeastDay", 1), ("list", "FeastSuccIDList", 0), ), "NPCShow":( ("DWORD", "NPCID", 1), ("DWORD", "MapID", 1), ("BYTE", "LineID", 0), ("DWORD", "ProtectTime", 0), ("DWORD", "BindMissionID", 0), ("BYTE", "ShowType", 0), ), "SealDemon":( ("DWORD", "NPCID", 1), ("BYTE", "LineID", 0), ("list", "OwnerAwardItemEx", 0), ), "FbEncourage":( ("DWORD", "DataMapID", 1), ("BYTE", "InspireType", 1), ("WORD", "InspireMaxLV", 0), ("char", "MoneyCount", 0), ), "MapRefreshNPC":( ("DWORD", "MapID", 1), ("BYTE", "RefreshNum", 0), ("list", "NPCIDList", 0), ("list", "RefreshMarkList", 0), ("BYTE", "PointMaxCount", 0), ("BYTE", "TotalMaxCount", 0), ("BYTE", "RefreshSeconds", 0), ("BYTE", "RefreshPerMinutes", 0), ), "RuneCompound":( ("DWORD", "TagItemID", 1), ("list", "NeedItem", 0), ("WORD", "NeedMJ", 0), ), "ResourcesBack":( ("BYTE", "ID", 1), ("DWORD", "RelatedID", 0), ("BYTE", "CanBackTimes", 0), ("BYTE", "NormalCostJade", 0), ("WORD", "VipCostJade", 0), ("dict", "JadeReward", 0), ("DWORD", "CostCopper", 0), ("dict", "CopperReward", 0), ("list", "JobItemList", 0), ), "CollectNPC":( ("DWORD", "NPCID", 1), ("BYTE", "IsMissionCollectNPC", 0), ("BYTE", "PrepareTime", 0), ("list", "LostHPPer", 0), ("BYTE", "MaxCollectCount", 0), ("BYTE", "CollectResetType", 0), ("char", "CollectCountLimitNotify", 0), ("list", "CollectAward", 0), ("dict", "CollectAppointAward", 0), ("BYTE", "AlchemyDiffLV", 0), ("BYTE", "NotifyCollectResult", 0), ("BYTE", "CanBreakCollect", 0), ), "TreasureNPC":( ("DWORD", "NPCID", 1), ("dict", "AttackCountDropWeightInfo", 0), ("list", "AttackDropWeightList", 0), ("list", "AttackDropWeightListEx", 0), ("BYTE", "DropCountEx", 0), ("BYTE", "AlchemyDiffLV", 0), ("char", "NotDropNotify", 0), ), "Chests":( ("DWORD", "ChestsItemID", 1), ("DWORD", "CostItemID", 0), ("BYTE", "CostItemCount", 0), ("WORD", "CostGold", 0), ("BYTE", "ShowType", 0), ("BYTE", "IsBind", 0), ("BYTE", "AucionItemCanSell", 0), ("list", "AucionItemDiffSellIDList", 0), ), "ChestsAward":( ("DWORD", "ChestsItemID", 1), ("WORD", "AwardLV", 0), ("dict", "SelectItemDict", 0), ("dict", "FixedItemDict", 0), ("list", "RandItemList1", 0), ("list", "RandTimeList1", 0), ("list", "RandItemList2", 0), ("list", "RandTimeList2", 0), ("dict", "RandItemByUseCount", 0), ("list", "JobItemList", 0), ("BYTE", "MoneyType", 0), ("DWORD", "MoneyCount", 0), ("list", "NeedNotifyItemList", 0), ("BYTE", "IsDropJobSelf", 0), ("list", "PieRateDrop", 0), ("BYTE", "PieRateDoCnt", 0), ("dict", "IndepRateDrop", 0), ("dict", "EquipColorSuitInfo", 0), ("dict", "EquipPartKeyRateInfo", 0), ), "VIPKillNPC":( ("WORD", "KillLV", 1), ("DWORD", "LVExpPoint", 0), ("DWORD", "LVExp", 0), ("DWORD", "AddMinAtk", 0), ("DWORD", "AddMaxAtk", 0), ), "OSCBillRankAward":( ("BYTE", "OSCBillType", 1), ("BYTE", "RankA", 0), ("BYTE", "RankB", 0), ("dict", "RankAward", 0), ), "OSCBillTagAward":( ("BYTE", "OSCBillType", 1), ("WORD", "TagCondition", 0), ("dict", "TagAward", 0), ), "LoginDayAward":( ("BYTE", "DayID", 1), ("dict", "Reward", 0), ), "OnlineAward":( ("BYTE", "DayID", 1), ("list", "StageTime", 0), ("dict", "Reward", 0), ), "SpringSale":( ("BYTE", "GiftID", 1), ("BYTE", "SellDay", 0), ("BYTE", "BuyNumLimit", 0), ("WORD", "GiftPrice", 0), ("list", "GiftItemList", 0), ), "OrderInfo":( ("char", "OrderInfo", 1), ("char", "AppID", 1), ("float", "PayRMBNum", 0), ("DWORD", "CTGID", 0), ("DWORD", "GiftbagID", 0), ("DWORD", "CoinExp", 0), ), "CTG":( ("BYTE", "RecordID", 1), ("BYTE", "CanResetBuyCount", 0), ("BYTE", "TotalBuyCount", 0), ("BYTE", "DailyBuyCount", 0), ("WORD", "GainGold", 0), ("WORD", "GainGoldPrize", 0), ("WORD", "FirstGoldPrize", 0), ("list", "GainItemList", 0), ("dict", "ActWorldLVGainItemInfo", 0), ("char", "NotifyMark", 0), ("BYTE", "PayType", 0), ), "FirstGold":( ("BYTE", "Day", 1), ("dict", "JobItemInfo", 0), ("list", "CommItemList", 0), ), "LVAward":( ("BYTE", "AwardID", 1), ("WORD", "LV", 0), ("WORD", "LimitCnt", 0), ("dict", "Reward", 0), ("BYTE", "VIPLimit", 0), ("list", "VIPAward", 0), ), "Invest":( ("WORD", "ID", 1), ("BYTE", "Type", 0), ("BYTE", "NeedDay", 0), ("WORD", "NeedLV", 0), ("DWORD", "NeedNPCID", 0), ("dict", "Reward", 0), ), "XBXZ":( ("DWORD", "ID", 1), ("BYTE", "Type", 0), ("DWORD", "NeedCnt", 0), ("list", "Condition", 0), ("WORD", "MWID", 0), ("list", "AwardItem", 0), ("list", "Money", 0), ), "TreasureHouse":( ("BYTE", "TreasureType", 1), ("WORD", "MinLV", 0), ("dict", "GridItemInfo", 0), ("list", "JobItemList", 0), ("list", "GridItemRateListFree", 0), ("list", "FreeGridItemRateList2", 0), ("dict", "FreeGridItemRateList3", 0), ("list", "GridItemRateList1", 0), ("list", "GridItemRateList2", 0), ("dict", "GridItemRateList3", 0), ("BYTE", "LuckyGridNum", 0), ), "FreeGoods":( ("BYTE", "ID", 1), ("dict", "AwardItem", 0), ("WORD", "NeedMoney", 0), ("DWORD", "ReturnDays", 0), ), "ActFlashGiftbag":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("list", "StartTimeList", 0), ("list", "EndTimeList", 0), ("WORD", "AdvanceMinutes", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("dict", "GiftbagTypeList", 0), ("char", "MailKey", 0), ("list", "MailItemPrize", 0), ), "FlashGiftbag":( ("DWORD", "GiftbagID", 1), ("WORD", "GiftbagType", 0), ("float", "OriginalRMB", 0), ("WORD", "BuyCountLimit", 0), ("list", "GiftItemList", 0), ("DWORD", "MainItemID", 0), ("char", "NotifyKey", 0), ), "ActDailyGiftbag":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("WORD", "GiftbagType", 0), ), "DailyGiftbag":( ("WORD", "GiftbagType", 1), ("DWORD", "GiftbagID", 1), ("WORD", "BuyCountLimit", 0), ("list", "GiftItemList", 0), ), "ActExpRate":( ("DWORD", "CfgID", 1), ("WORD", "LVLimit", 0), ("DWORD", "AddExpRate", 0), ), "ActCostRebate":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("list", "TemplateIDList", 0), ), "CostRebateTemplate":( ("DWORD", "TemplateID", 1), ("DWORD", "NeedCostGold", 0), ("BYTE", "AwardIndex", 0), ("dict", "AwardItemList", 0), ("char", "NotifyKey", 0), ), "ActCollectWords":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "LastDayOnlyExchange", 0), ("WORD", "TemplateID", 0), ("WORD", "DropDiffLVLimit", 0), ("list", "DropItemRateList", 0), ("list", "DropItemRateListBoss", 0), ), "CollectWordsExchange":( ("DWORD", "TemplateID", 1), ("BYTE", "ExchangeNum", 0), ("list", "ExchangeItemInfo", 0), ("BYTE", "ExchangeCountMax", 0), ("list", "NeedItemList", 0), ("BYTE", "NeedNotify", 0), ), "ActBossReborn":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("BYTE", "TemplateID", 0), ), "BossReborn":( ("BYTE", "TemplateID", 1), ("BYTE", "ID", 1), ("DWORD", "TotalTimes", 0), ("WORD", "SingleTimes", 0), ("dict", "Reward", 0), ), "ActRealmPoint":( ("DWORD", "CfgID", 1), ("WORD", "Multiple", 0), ("WORD", "LVLimit", 0), ("DWORD", "PointLimit", 0), ), "TrialExchange":( ("DWORD", "ID", 1), ("list", "ExchangeItemIDList", 0), ("DWORD", "ExchangeItemCount", 0), ("DWORD", "ExchangeItemIsBind", 0), ("DWORD", "CostItemID", 0), ("DWORD", "CostItemCount", 0), ), "AllPeopleParty":( ("BYTE", "ID", 1), ("WORD", "TotalTimes", 0), ("WORD", "AddPoint", 0), ), "AllPeoplePartyAward":( ("BYTE", "WorldLvNum", 1), ("DWORD", "Index", 1), ("DWORD", "NeedPoint", 0), ("dict", "Award", 0), ), "MapEventPoint":( ("DWORD", "MapID", 1), ("DWORD", "NPCID", 1), ("WORD", "LowLV", 0), ("WORD", "HighestLV", 0), ("DWORD", "Defense", 0), ), "TalentSkill":( ("DWORD", "SkillID", 1), ("BYTE", "TalentType", 0), ("BYTE", "Series", 0), ), "ActFlashSale":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("list", "StartTimeList", 0), ("list", "EndTimeList", 0), ("WORD", "AdvanceMinutes", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("list", "ShopTypeList", 0), ("char", "MailKey", 0), ("list", "MailItemPrize", 0), ), "ActWishingWell":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("BYTE", "TemplateID", 0), ), "WishingWell":( ("BYTE", "TemplateID", 1), ("BYTE", "IsFree", 0), ("list", "WorldLVLimit", 0), ("DWORD", "ItemID", 0), ("WORD", "ItemCnt", 0), ("BYTE", "IsBind", 0), ("DWORD", "Weight", 0), ("DWORD", "Mark", 0), ("BYTE", "Rare", 0), ), "FunctionForecast":( ("DWORD", "FuncID", 1), ("dict", "Award", 0), ), "ChatBubbleBox":( ("BYTE", "BoxID", 1), ("WORD", "NeedLV", 0), ("BYTE", "NeedVIPLVGift", 0), ), "ActRechargePrize":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("list", "TemplateIDList", 0), ), "RechargePrizeTemplate":( ("DWORD", "TemplateID", 1), ("WORD", "CTGID", 0), ("DWORD", "GoldPrize", 0), ("BYTE", "PrizeCountLimit", 0), ), "ActTotalRecharge":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("list", "TemplateIDList", 0), ), "TotalRechargeTemplate":( ("DWORD", "TemplateID", 1), ("float", "NeedGold", 0), ("BYTE", "AwardIndex", 0), ("dict", "AwardItem", 0), ("char", "NotifyKey", 0), ), "ActRechargeRebateGold":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("list", "TemplateIDList", 0), ), "RechargeRebateGoldTemplate":( ("DWORD", "TemplateID", 1), ("DWORD", "RMBMin", 0), ("DWORD", "RMBMax", 0), ("WORD", "RebateRate", 0), ), "ActGrowupBuy":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("list", "CTGIDGroupList", 0), ), "ActManyDayRecharge":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("WORD", "TemplateID", 0), ), "ActManyDayRechargeAward":( ("DWORD", "TemplateID", 1), ("float", "NeedRMB", 0), ("BYTE", "NeedDays", 0), ("BYTE", "AwardIndex", 0), ("dict", "AwardItemInfo", 0), ("char", "NotifyKey", 0), ), "ActTurntable":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "CTGTypeEffValue", 0), ("list", "CTGPrizeList", 0), ("list", "UseGoldPrizeList", 0), ("list", "LibChooseCountList", 0), ("list", "SuperItemLimitRule", 0), ("dict", "CommItemLib", 0), ("dict", "GoodItemLib", 0), ("dict", "SuperItemLib", 0), ("char", "WorldNotifyKey", 0), ), "ActSingleRecharge":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "CTGTypeEffValue", 0), ("BYTE", "IsOfflineAct", 0), ("BYTE", "AwardRuleType", 0), ("list", "TemplateIDList", 0), ), "ActSingleRechargeAward":( ("DWORD", "TemplateID", 1), ("float", "SingleRechargeValue", 0), ("BYTE", "AwardIndex", 0), ("dict", "AwardItem", 0), ("char", "NotifyKey", 0), ), "MagicWeaponFB":( ("DWORD", "MWID", 1), ("BYTE", "LineID", 0), ("BYTE", "Level", 1), ("list", "RefreshNPC", 0), ("dict", "AttrDict", 0), ), "IceLodeStarAward":( ("BYTE", "Index", 1), ("BYTE", "Star", 0), ("list", "LVLimit", 0), ("list", "ItemList", 0), ), "CrossRealmPKDan":( ("BYTE", "DanLV", 1), ("WORD", "LVUpScore", 0), ), "CrossRealmPKDanAward":( ("char", "CrossZoneName", 1), ("BYTE", "SeasonID", 1), ("BYTE", "DanLV", 1), ("list", "DanLVAwardList", 0), ("list", "SeasonDanLVAwardList", 0), ), "CrossRealmPKOrderAward":( ("char", "CrossZoneName", 1), ("BYTE", "SeasonID", 1), ("dict", "OrderAwardInfo", 0), ), "CrossZoneComm":( ("char", "CrossZoneName", 1), ("BYTE", "ZoneID", 1), ("list", "ServerGroupIDList", 0), ), "CrossZonePK":( ("char", "CrossZoneName", 1), ("BYTE", "ZoneID", 1), ("list", "ServerGroupIDList", 0), ), "CrossPenglaiZoneMap":( ("BYTE", "ZoneID", 0), ("DWORD", "MapID", 1), ("DWORD", "DataMapID", 1), ("BYTE", "CopyMapID", 1), ("WORD", "PosX", 0), ("WORD", "PosY", 0), ), "GatherSoul":( ("DWORD", "ItemID", 1), ("list", "AttrType", 0), ("BYTE", "SoulGrade", 0), ), "GatherSoulCompound":( ("DWORD", "TagItemID", 1), ("WORD", "NeedLV", 0), ("list", "NeedItem", 0), ("WORD", "NeedSoulSplinters", 0), ("WORD", "NeedSoulCore", 0), ), "GatherSoulAttr":( ("WORD", "AttrType", 1), ("char", "AttrInfo1", 0), ("dict", "AttrInfo2", 0), ("dict", "AttrInfo3", 0), ("dict", "AttrInfo4", 0), ("dict", "AttrInfo5", 0), ), "MagicWeaponOfKing":( ("DWORD", "MWID", 1), ("BYTE", "AwardMark", 1), ("dict", "AddAttr", 0), ), "Coat":( ("DWORD", "CoatID", 1), ("list", "EquipItemID", 0), ("DWORD", "UnlockItemID", 0), ("DWORD", "MaxLV", 0), ("list", "CostItemCnt", 0), ("dict", "StarAttr", 0), ), "CoatChestUp":( ("DWORD", "LV", 1), ("BYTE", "NeedExp", 0), ("dict", "AddAttr", 0), ), "ActWeekParty":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "AdvanceMinutes", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("list", "TemplateID", 0), ("dict", "PointAward", 0), ), "WeekParty":( ("BYTE", "TemplateID", 1), ("BYTE", "ActionType", 0), ("DWORD", "TotalTimes", 0), ("WORD", "SingleTimes", 0), ("list", "Reward", 0), ("WORD", "Point", 0), ), "ActLoginAward":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "AdvanceMinutes", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("list", "TemplateID", 0), ), "LoginAward":( ("BYTE", "TemplateID", 1), ("BYTE", "ActionType", 0), ("DWORD", "TotalTimes", 0), ("WORD", "SingleTimes", 0), ("char", "Reward", 0), ), "ActFeastLogin":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("dict", "TemplateIDInfo", 0), ), "ActFeastLoginAward":( ("BYTE", "TemplateID", 1), ("BYTE", "DayNum", 0), ("list", "LoginAwardItemList", 0), ), "ActFeastWish":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "ResetType", 0), ("dict", "TemplateIDInfo", 0), ), "ActFeastWishBottle":( ("BYTE", "TemplateID", 1), ("BYTE", "WishBottleNum", 0), ("WORD", "NeedWishValue", 0), ("BYTE", "ChooseTimeMax", 0), ("dict", "ChoosePrizeItem", 0), ("list", "GoodItemIDList", 0), ("char", "WorldNotifyKey", 0), ), "ActFeastWishPool":( ("BYTE", "TemplateID", 1), ("list", "WishPoolItemWeightInfo", 0), ("list", "WishPoolClientItemShow", 0), ("list", "GoodItemIDList", 0), ("char", "WorldNotifyKey", 0), ), "ActFeastTravel":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "LVLimit", 0), ("BYTE", "ResetType", 0), ("dict", "TemplateIDInfo", 0), ), "ActFeastTravelTask":( ("BYTE", "TraveTasklD", 1), ("WORD", "FinishNeedValue", 0), ("WORD", "FinishTimeMax", 0), ("BYTE", "AddTravelPoint", 0), ), "ActFeastTravelAward":( ("BYTE", "TemplatelD", 1), ("BYTE", "RecordIndex", 0), ("WORD", "NeedTravelPoint", 0), ("BYTE", "AwardCountMax", 0), ("list", "TravelAwardInfo", 0), ), "ZhuXianBoss":( ("DWORD", "NPCID", 0), ("BYTE", "LineID", 1), ("WORD", "RealmLV", 0), ("DWORD", "ZhuXianScore", 0), ), "ActFeastWeekParty":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("WORD", "AdvanceMinutes", 0), ("BYTE", "IsDayReset", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("list", "TemplateID", 0), ("dict", "PointAward", 0), ), "FeastWeekParty":( ("BYTE", "TemplateID", 1), ("BYTE", "ActionType", 0), ("DWORD", "TotalTimes", 0), ("WORD", "SingleTimes", 0), ("list", "Reward", 0), ("WORD", "Point", 0), ), "NewAllPeopleParty":( ("BYTE", "ID", 1), ("WORD", "TotalTimes", 0), ("WORD", "AddPoint", 0), ), "NewAllPeoplePartyAward":( ("BYTE", "WorldLvNum", 1), ("DWORD", "Index", 1), ("DWORD", "NeedPoint", 0), ("dict", "Award", 0), ), "ActLuckyTreasure":( ("DWORD", "CfgID", 1), ("char", "StartDate", 0), ("char", "EndDate", 0), ("BYTE", "ResetType", 0), ("WORD", "LVLimit", 0), ("BYTE", "TemplateID", 0), ("WORD", "LuckyPoint", 0), ), "LuckyTreasureTemplate":( ("BYTE", "TemplateID", 1), ("list", "WorldLVLimit", 0), ("DWORD", "ItemID", 0), ("WORD", "ItemCnt", 0), ("BYTE", "IsBind", 0), ("DWORD", "Weight", 0), ), "CrossActCTGBillboardDabiao":( ("DWORD", "TemplateID", 1), ("float", "CTGNeed", 0), ("BYTE", "AwardIndex", 0), ("list", "AwardItemList", 0), ), "CrossActCTGBillboardOrder":( ("DWORD", "TemplateID", 1), ("WORD", "OrderA", 0), ("WORD", "OrderB", 0), ("float", "CTGAtleast", 0), ("list", "AwardItemList", 0), ), "MysteryShop":( ("list", "LVRange", 0), ("DWORD", "GoodsID", 0), ), "EquipPlaceIndexMap":( ("DWORD", "GridIndex", 0), ("DWORD", "ClassLV", 1), ("DWORD", "EquipPlace", 1), ), "EquipShenAttr":( ("DWORD", "EquipItemID", 1), ("list", "ShenAttrIDList", 0), ("list", "ShenAttrValueList", 0), ("list", "XianAttrIDList", 0), ("list", "XianAttrValueList", 0), ("list", "JiAttrIDList", 0), ("list", "JiAttrValueList", 0), ("list", "LegendAttrIDList", 0), ("list", "LegendAttrValueList", 0), ), "EquipShenEvolve":( ("DWORD", "EquipItemID", 1), ("DWORD", "EvolveEquipID", 0), ("list", "EvolveNeedItemIDInfo", 0), ("BYTE", "EvolveNeedSuitCount", 0), ("BYTE", "EvolveNeedEquipID", 0), ), "EquipStarUp":( ("BYTE", "ClassLV", 1), ("BYTE", "EquipPlace", 1), ("BYTE", "Star", 1), ("list", "CostEquipPlace", 0), ("BYTE", "IsJobLimit", 0), ("list", "CostEquipColor", 0), ("BYTE", "CostEquipCnt", 0), ("BYTE", "UnSuitRate", 0), ("BYTE", "SuitRate", 0), ("dict", "CostItemDict", 0), ("dict", "StarAttrInfo", 0), ("dict", "BaseAttrInfo", 0), ), "EquipPlusEvolve":( ("BYTE", "EquipPlace", 1), ("BYTE", "EvolveLV", 1), ("WORD", "NeedPlusLV", 0), ("dict", "CostItem", 0), ("dict", "Attr", 0), ), "FamilyBossAward":( ("DWORD", "BossID", 1), ("list", "WorldLV", 0), ("list", "Rank", 0), ("list", "Award1", 0), ("dict", "Award2", 0), ), "ItemWashMax":( ("BYTE", "Type", 1), ("BYTE", "Star", 1), ("WORD", "LevelMax", 0), ), "HorsePetBossAward":( ("BYTE", "LineID", 1), ("list", "WorldLV", 0), ("list", "Rank", 0), ("list", "Award1", 0), ("list", "Award2", 0), ), "FairyDomain":( ("WORD", "ID", 1), ("BYTE", "EventType", 0), ("DWORD", "MapID", 0), ("BYTE", "LineID", 0), ("DWORD", "BossID", 0), ("BYTE", "EventFBType", 0), ("BYTE", "CostEnergy", 0), ("BYTE", "NeedAlchemyLV", 0), ("list", "NeedLV", 0), ("DWORD", "Weight", 0), ("DWORD", "HourCntPriLimit", 0), ("DWORD", "DayCntPriLimit", 0), ), "FairyAdventures":( ("WORD", "ID", 1), ("DWORD", "OpenServerDay", 0), ("BYTE", "EventID", 0), ("list", "Condition", 0), ("list", "GearAward", 0), ("list", "BasicAward", 0), ), "FairyDomainAppoint":( ("WORD", "Cnt", 1), ("DWORD", "EventID", 0), ("list", "Award", 0), ("list", "RandomAward", 0), ), "FBBuyBuff":( ("DWORD", "MapId", 1), ("WORD", "MoneyCnt", 1), ("DWORD", "BuffID", 0), ("WORD", "BuffCD", 0), ), "SkillElement":( ("DWORD", "ElementSkillID", 1), ("BYTE", "ElementSkillNum", 0), ("DWORD", "MainSkillID", 0), ("DWORD", "NeedLV", 0), ), "SkyTower":( ("DWORD", "FloorID", 1), ("DWORD", "BossID", 0), ("dict", "Reward", 0), ("WORD", "NeedLV", 0), ("DWORD", "FightPower", 0), ("BYTE", "IsNotify", 0), ), "SkyTowerServerChallenge":( ("DWORD", "FloorID", 1), ("BYTE", "RewardRecordIndex", 0), ("dict", "Reward", 0), ), "LingGenEffect":( ("DWORD", "ID", 0), ("DWORD", "PointID", 1), ("BYTE", "QualityLV", 1), ), "HorsePetSkin":( ("BYTE", "Type", 1), ("DWORD", "ID", 1), ("BYTE", "SkinLV", 1), ("DWORD", "NeedExp", 0), ("dict", "AttrInfo", 0), ("BYTE", "SkinIndex", 0), ), "AssistThanksGift":( ("DWORD", "GiftID", 1), ("list", "RequestPlayerAward", 0), ("list", "AssistPlayerAward", 0), ), "FuncSysPrivilege":( ("BYTE", "FuncSysID", 1), ("BYTE", "DayNum", 0), ("list", "DayAwardItemInfo", 0), ), "HistoryRechargeAward":( ("BYTE", "ID", 1), ("float", "NeedRMB", 0), ("dict", "Reward", 0), ), } # ³ÆºÅ±í class IPY_Dienstgrad(): def __init__(self): self.ID = 0 self.Type = 0 self.ExpireTime = 0 self.LightType = [] self.LightAttribute = [] self.Skills = [] return def GetID(self): return self.ID # Í·ÏÎid def GetType(self): return self.Type # Í·ÏÎÀàÐÍ def GetExpireTime(self): return self.ExpireTime # ÓÐЧʱ¼ä def GetLightType(self): return self.LightType # µãÁÁÊôÐÔÀàÐÍ def GetLightAttribute(self): return self.LightAttribute # µãÁÁÊôÐÔÖµ def GetSkills(self): return self.Skills # ±»¶¯¼¼ÄÜ # Áé¸ù±í class IPY_RolePoint(): def __init__(self): self.AttrID = 0 self.AddAttrInfoPerPoint = {} self.FightPowerPerPoint = 0 self.PointQualityAttrDict = {} self.PointQualityIntervalList = [] return def GetAttrID(self): return self.AttrID # ÊôÐÔID def GetAddAttrInfoPerPoint(self): return self.AddAttrInfoPerPoint # ÿµãÔö¼ÓÊôÐÔÐÅÏ¢ {"Ö°Òµ":[[ÿXµã,ÊôÐÔID,Öµ], ...], ..} def GetFightPowerPerPoint(self): return self.FightPowerPerPoint # ÿµã¸½¼ÓÕ½¶·Á¦ def GetPointQualityAttrDict(self): return self.PointQualityAttrDict # µãÊýÆ·Öʽø½×Ôö¼ÓÊôÐÔ, {Ö°Òµ:{ÊôÐÔID:[½×¶ÎÊôÐÔ,..],..},..} def GetPointQualityIntervalList(self): return self.PointQualityIntervalList # µãÊýÆ·Öʽø½×ÊôÐÔµãÇø¼äÁбí # ÁéÆ÷ÊôÐÔ±í class IPY_LingQiAttr(): def __init__(self): self.ItemID = 0 self.LingQiAttrID = [] self.LingQiAttrValue = [] self.LingQiAttrScore = 0 self.UpCostItem = {} self.NextItemID = 0 return def GetItemID(self): return self.ItemID # ÊôÐÔID def GetLingQiAttrID(self): return self.LingQiAttrID # ÁéÆ÷ÊôÐÔID def GetLingQiAttrValue(self): return self.LingQiAttrValue # ÁéÆ÷ÊôÐÔÊýÖµ def GetLingQiAttrScore(self): return self.LingQiAttrScore # ÁéÆ÷ÊôÐÔÆÀ·Ö def GetUpCostItem(self): return self.UpCostItem # Í»ÆÆÐèÒª²ÄÁÏ def GetNextItemID(self): return self.NextItemID # Í»ÆÆºóÎïÆ·ID # ¾³½ç±í class IPY_Realm(): def __init__(self): self.Lv = 0 self.LvLarge = 0 self.NeedLV = 0 self.NeedItemID = 0 self.NeedItemCnt = 0 self.NeedEquip = [] self.AddAttrType = [] self.AddAttrNum = [] self.BossID = 0 self.BuffID = 0 self.ExpRate = 0 self.ExpLimit = 0 self.LearnSkillIDInfo = {} self.AddFreePoint = 0 return def GetLv(self): return self.Lv # ¾³½çµÈ¼¶ def GetLvLarge(self): return self.LvLarge # ´ó¾³½ç def GetNeedLV(self): return self.NeedLV # ÐèÒªµÈ¼¶ def GetNeedItemID(self): return self.NeedItemID # ÐèÒªµÀ¾ßID def GetNeedItemCnt(self): return self.NeedItemCnt # ÏûºÄµÄµÀ¾ßÊýÁ¿ def GetNeedEquip(self): return self.NeedEquip # ÐèÒª8²¿Î»×°±¸Ìõ¼þ½×¼¶|Æ·ÖÊ|ÊÇ·ñÌ××° def GetAddAttrType(self): return self.AddAttrType # ¾³½ç¼Ó³ÉÊôÐÔÀàÐÍ def GetAddAttrNum(self): return self.AddAttrNum # ¾³½ç¼Ó³ÉÊôÐÔÖµ def GetBossID(self): return self.BossID # ¶É½Ùbossid def GetBuffID(self): return self.BuffID # ¸øÈ«·þÔÚÏßÍæ¼ÒÔö¼Óbuff def GetExpRate(self): return self.ExpRate # ÐÞΪ³Ø¾­ÑéËÙÂÊ def GetExpLimit(self): return self.ExpLimit # ÐÞΪ³Ø¾­ÑéÉÏÏÞ def GetLearnSkillIDInfo(self): return self.LearnSkillIDInfo # ѧϰ¼¼ÄÜIDÐÅÏ¢ {"Ö°Òµ":[¼¼ÄÜID, ...], ...} def GetAddFreePoint(self): return self.AddFreePoint # Ôö¼Ó×ÔÓÉÊôÐÔµã # Éñ±ø±í class IPY_GodWeapon(): def __init__(self): self.Type = 0 self.LV = 0 self.Exp = 0 self.AttrType = [] self.AttrNum = [] self.SkillID = 0 self.SysMark = "" return def GetType(self): return self.Type # Éñ±øÀàÐÍ def GetLV(self): return self.LV # µÈ¼¶ def GetExp(self): return self.Exp def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetAttrNum(self): return self.AttrNum # ÊôÐÔÖµ def GetSkillID(self): return self.SkillID # ¼¤»î¼¼ÄÜID def GetSysMark(self): return self.SysMark # ϵͳÌáʾ # ¹¦ÄÜÅäÖñí¸ñ class IPY_FuncConfig(): def __init__(self): self.Key = "" self.Numerical1 = "" self.Numerical2 = "" self.Numerical3 = "" self.Numerical4 = "" self.Numerical5 = "" return def GetKey(self): return self.Key # ±êʶ def GetNumerical1(self): return self.Numerical1 # Êý¾Ý1 def GetNumerical2(self): return self.Numerical2 # Êý¾Ý2 def GetNumerical3(self): return self.Numerical3 # Êý¾Ý3 def GetNumerical4(self): return self.Numerical4 # Êý¾Ý4 def GetNumerical5(self): return self.Numerical5 # Êý¾Ý5 # µÈ¼¶¿ªÆô¹¦ÄÜ class IPY_FuncOpenLV(): def __init__(self): self.FuncId = 0 self.LimitLV = 0 self.LimitMagicWeapon = 0 self.LimiRealmLV = 0 self.LimitMissionID = 0 self.LimitVIPLV = 0 self.MailKey = "" return def GetFuncId(self): return self.FuncId # ¹¦Äܱêʶ def GetLimitLV(self): return self.LimitLV # ¿ªÆôµÈ¼¶ def GetLimitMagicWeapon(self): return self.LimitMagicWeapon # ÐèÒª½âËø·¨±¦ID def GetLimiRealmLV(self): return self.LimiRealmLV # ÐèÒª¾³½çµÈ¼¶ def GetLimitMissionID(self): return self.LimitMissionID # ÐèÒªÍê³ÉµÄÈÎÎñID def GetLimitVIPLV(self): return self.LimitVIPLV # ÐèÒªVIPµÈ¼¶ def GetMailKey(self): return self.MailKey # Óʼþ # ºÏ³É±í class IPY_ItemCompound(): def __init__(self): self.ID = 0 self.ComposeGroup = 0 self.MakeID = [] self.IsFirstSuccMakeJobItem = 0 self.UnfixedItemID = [] self.UnfixedItemCount = 0 self.FixedItemID = [] self.FixedItemCount = [] self.NeedMoney = 0 self.SuccessRate = 0 self.SuccessRateMax = 0 self.SuccessRateIncrease = [] self.AddonsCountMax = 0 self.SysMark = "" self.SysMarkParamType = 0 return def GetID(self): return self.ID # ºÏ³ÉÅäÖñàºÅID def GetComposeGroup(self): return self.ComposeGroup # ºÏ³É¹é×éÀàÐÍ def GetMakeID(self): return self.MakeID # ¿ÉºÏ³ÉµÄµÀ¾ßID£¬¶à¸öÔòËæ»úÒ»¸ö def GetIsFirstSuccMakeJobItem(self): return self.IsFirstSuccMakeJobItem # Ê״γɹ¦ÊÇ·ñ±Ø³ö±¾Ö°Òµ def GetUnfixedItemID(self): return self.UnfixedItemID # ²»¹Ì¶¨µÀ¾ßID, ¶à¸öIDʱÔòÈÎÒâÒ»ÖÖ¾ù¿É def GetUnfixedItemCount(self): return self.UnfixedItemCount # ²»¹Ì¶¨µÀ¾ßÏûºÄÊýÁ¿ def GetFixedItemID(self): return self.FixedItemID # ÏûºÄ¹Ì¶¨µÀ¾ßID, ¶à¸öIDʱ´ú±íÿ¸öID¾ùÐèÏûºÄ def GetFixedItemCount(self): return self.FixedItemCount # ÏûºÄ¹Ì¶¨µÀ¾ßÊýÁ¿£¬Ã¿¸öID¶ÔÓ¦ÊýÁ¿ def GetNeedMoney(self): return self.NeedMoney # ÏûºÄÍ­Ç® def GetSuccessRate(self): return self.SuccessRate # ³É¹¦ÂÊÍò·ÖÂÊ def GetSuccessRateMax(self): return self.SuccessRateMax # ×î´ó³É¹¦ÂÊÍò·ÖÂÊ def GetSuccessRateIncrease(self): return self.SuccessRateIncrease # Ìá¸ß³É¹¦ÂʵÀ¾ß, µÀ¾ßID|¸öÊý|Ìá¸ßµÄ¸ÅÂÊ def GetAddonsCountMax(self): return self.AddonsCountMax # ×î´ó¿É¸½¼Ó²ÄÁÏÊý, Ôö¼Ó¸ÅÂÊÓÃ, ·Ç±ØÐë, 0´ú±í²»¿É¸½¼Ó²ÄÁÏ def GetSysMark(self): return self.SysMark # Ìáʾmark def GetSysMarkParamType(self): return self.SysMarkParamType # ϵͳÌáʾ²ÎÊý×éºÏÀàÐÍ # ÎïÆ·Ç¿»¯Ð§¹û±í class IPY_ItemPlus(): def __init__(self): self.Type = 0 self.LV = 0 self.AttrType = [] self.AttrValue = [] self.CostCount = 0 self.CostItemInfo = [] self.AddExp = 0 self.TotalExp = 0 return def GetType(self): return self.Type # Ç¿»¯ÀàÐÍ def GetLV(self): return self.LV # Ç¿»¯µÈ¼¶ def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetAttrValue(self): return self.AttrValue # ÊôÐÔÖµ def GetCostCount(self): return self.CostCount # ÏûºÄÍ­Ç® def GetCostItemInfo(self): return self.CostItemInfo # ÏûºÄÎïÆ·²ÄÁϼ°¸öÊý [itemID, itemCount] def GetAddExp(self): return self.AddExp # ÌáÉýÊìÁ·¶ÈÖµ def GetTotalExp(self): return self.TotalExp # Éý¼¶ËùÐèÊìÁ·¶È×ÜÖµ # ×°±¸×ܱí class IPY_EquipControl(): def __init__(self): self.ClassLV = 0 self.NeedRealmLV = 0 return def GetClassLV(self): return self.ClassLV # ½× def GetNeedRealmLV(self): return self.NeedRealmLV # ÐèÒªµÄ¾³½ç # ×°±¸Ç¿»¯´óʦ±í class IPY_ItemPlusMaster(): def __init__(self): self.ClassLV = 0 self.MasterPlusLV = 0 self.MasterPlusAttrIDList = [] self.MasterPlusAttrValueList = [] return def GetClassLV(self): return self.ClassLV # ½× def GetMasterPlusLV(self): return self.MasterPlusLV # ´óʦǿ»¯µÈ¼¶ def GetMasterPlusAttrIDList(self): return self.MasterPlusAttrIDList # ¼¤»îÊôÐÔÀàÐÍÁбí def GetMasterPlusAttrValueList(self): return self.MasterPlusAttrValueList # ¼¤»îÊôÐÔÖµÁбí # ×°±¸Ç¿»¯µÈ¼¶ÉÏÏÞ class IPY_ItemPlusMax(): def __init__(self): self.Type = 0 self.ClassLV = 0 self.PlusLVMax = 0 return def GetType(self): return self.Type # Ç¿»¯ÀàÐÍ def GetClassLV(self): return self.ClassLV # ½× def GetPlusLVMax(self): return self.PlusLVMax # ×î´óÇ¿»¯µÈ¼¶ # ×°±¸È«ÉíÐÇÊýÊôÐÔ class IPY_RoleEquipStars(): def __init__(self): self.StarsNeed = 0 self.AttrType = [] self.AttrValue = [] return def GetStarsNeed(self): return self.StarsNeed # È«ÉíÐÇÊý def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetAttrValue(self): return self.AttrValue # ÊôÐÔÖµ # ×°±¸´«ÆæÊôÐÔÌõÊý±í class IPY_EquipLegendAttrCount(): def __init__(self): self.ItemType = 0 self.ItemColor = 0 self.IsSuit = 0 self.ItemQuality = 0 self.LegendAttrCountInfo = [] return def GetItemType(self): return self.ItemType # ÎïÆ·ÀàÐÍ def GetItemColor(self): return self.ItemColor # ÎïÆ·ÑÕÉ« def GetIsSuit(self): return self.IsSuit # ÊÇ·ñÌ××° def GetItemQuality(self): return self.ItemQuality # ÎïÆ·ÐǼ¶ def GetLegendAttrCountInfo(self): return self.LegendAttrCountInfo # ´«ÆæÊôÐÔÌõÊýÐÅÏ¢ [[ÌõÊý, [ÊôÐÔÀàÐÍ¿â±àºÅ, ...]], ...] # ×°±¸´«ÆæÊôÐÔÀàÐͱí class IPY_EquipLegendAttrType(): def __init__(self): self.ItemType = 0 self.LegendAttrTypeLib = {} return def GetItemType(self): return self.ItemType # ÎïÆ·ÀàÐÍ def GetLegendAttrTypeLib(self): return self.LegendAttrTypeLib # ´«ÆæÊôÐÔÀàÐÍ¿â {ÊôÐÔÀàÐÍ¿â±àºÅ:[ÊôÐÔID,...], ...} # ×°±¸´«ÆæÊôÐÔÖµ¿â±í class IPY_EquipLegendAttrLib(): def __init__(self): self.LegendAttrID = 0 self.LegendAttrLib = {} return def GetLegendAttrID(self): return self.LegendAttrID # ´«ÆæÊôÐÔID def GetLegendAttrLib(self): return self.LegendAttrLib # ÊôÐÔ¿âÐÅÏ¢ {¿â±àºÅ:[Ëæ»úÊýÖµ, ...], ...} # ×°±¸´«ÆæÊôÐԵȼ¶ÊýÖµ±í class IPY_EquipLegendAttrValue(): def __init__(self): self.ItemType = 0 self.ItemClassLV = 0 self.ItemColor = 0 self.IsSuit = 0 self.ItemQuality = 0 self.LVLegendAttrLibNumInfo = {} return def GetItemType(self): return self.ItemType # ÎïÆ·ÀàÐÍ def GetItemClassLV(self): return self.ItemClassLV # ÎïÆ·½×¼¶ def GetItemColor(self): return self.ItemColor # ÎïÆ·ÑÕÉ« def GetIsSuit(self): return self.IsSuit # ÊÇ·ñÌ××° def GetItemQuality(self): return self.ItemQuality # ÎïÆ·ÐǼ¶ def GetLVLegendAttrLibNumInfo(self): return self.LVLegendAttrLibNumInfo # ÊôÐÔIDµÈ¼¶¶Î¶ÔÓ¦ÊýÖµ¿â±àºÅ {ÊôÐÔID:{µÈ¼¶:¿â±àºÅ, ...}} # ÉñÊÞ±í class IPY_Dogz(): def __init__(self): self.DogzID = 0 self.BaseAttrTypes = [] self.BaseAttrValues = [] self.HelpBattleSkills = [] self.FightPowerEx = 0 self.EquipPlaceColorList = [] self.HelpBattleNotify = [] return def GetDogzID(self): return self.DogzID # ÉñÊÞID def GetBaseAttrTypes(self): return self.BaseAttrTypes # »ù´¡ÊôÐÔÀàÐÍÁбí def GetBaseAttrValues(self): return self.BaseAttrValues # »ù´¡ÊôÐÔÖµÁбí def GetHelpBattleSkills(self): return self.HelpBattleSkills # ÖúÕ½¼¼ÄÜIDÁбí def GetFightPowerEx(self): return self.FightPowerEx # ÖúÕ½¸½¼ÓÕ½Á¦ def GetEquipPlaceColorList(self): return self.EquipPlaceColorList # ´©´÷×°±¸ÑÕÉ«ÏÞÖÆ def GetHelpBattleNotify(self): return self.HelpBattleNotify # ÖúÕ½¹ã²¥ ["¹ã²¥key",[²ÎÊý1,²ÎÊý2,...],¹ã²¥CD·ÖÖÓ] # ÉñÊÞÇ¿»¯±í class IPY_DogzEquipPlus(): def __init__(self): self.EquipPlace = 0 self.PlusLV = 0 self.PlusAttrTypes = [] self.PlusAttrValues = [] self.PlusLVUPTotalExp = 0 return def GetEquipPlace(self): return self.EquipPlace # ×°±¸Î» def GetPlusLV(self): return self.PlusLV # Ç¿»¯µÈ¼¶ def GetPlusAttrTypes(self): return self.PlusAttrTypes # Ç¿»¯ÊôÐÔÀàÐÍÁбí def GetPlusAttrValues(self): return self.PlusAttrValues # Ç¿»¯ÊôÐÔÖµÁбí def GetPlusLVUPTotalExp(self): return self.PlusLVUPTotalExp # Éý¼¶ËùÐèÀÛ¼ÆÊìÁ·¶È×ÜÖµ # ·ûÓ¡±í class IPY_Rune(): def __init__(self): self.ID = 0 self.AttrType = [] self.TowerID = 0 return def GetID(self): return self.ID # ±àºÅID def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetTowerID(self): return self.TowerID # ½âËø·ûÓ¡Ëþ±àºÅ # Ï´Á·±í class IPY_EquipWash(): def __init__(self): self.WashType = 0 self.WashLV = 0 self.AttrType1 = 0 self.AttrMax1 = 0 self.AttrRandDict1 = {} self.AttrCostGoldMin1 = 0 self.AttrCostGoldMax1 = 0 self.AttrType2 = 0 self.AttrMax2 = 0 self.AttrRandDict2 = {} self.AttrCostGoldMin2 = 0 self.AttrCostGoldMax2 = 0 self.AttrType3 = 0 self.AttrMax3 = 0 self.AttrRandDict3 = {} self.AttrCostGoldMin3 = 0 self.AttrCostGoldMax3 = 0 self.CostItemID = 0 self.CostItemCount = 0 self.GoldWashCostList = [] return def GetWashType(self): return self.WashType # ×°±¸¹é×éÀàÐÍ def GetWashLV(self): return self.WashLV # Ï´Á·µÈ¼¶ def GetAttrType1(self): return self.AttrType1 # ÊôÐÔ1ÀàÐÍ def GetAttrMax1(self): return self.AttrMax1 # ÊôÐÔ1µ±Ç°µÈ¼¶Ï´Á·ÉÏÏÞ def GetAttrRandDict1(self): return self.AttrRandDict1 # ÊôÐÔ1Ëæ»ú·¶Î§ def GetAttrCostGoldMin1(self): return self.AttrCostGoldMin1 # ÊôÐÔ1ÏÉÓñÏ´Á·ÏÂÏÞÖµ def GetAttrCostGoldMax1(self): return self.AttrCostGoldMax1 # ÊôÐÔ1ÏÉÓñÏ´Á·ÉÏÏÞÖµ def GetAttrType2(self): return self.AttrType2 # ÊôÐÔ2ÀàÐÍ def GetAttrMax2(self): return self.AttrMax2 # ÊôÐÔ2µ±Ç°µÈ¼¶Ï´Á·ÉÏÏÞ def GetAttrRandDict2(self): return self.AttrRandDict2 # ÊôÐÔ2Ëæ»ú·¶Î§ def GetAttrCostGoldMin2(self): return self.AttrCostGoldMin2 # ÊôÐÔ2ÏÉÓñÏ´Á·ÏÂÏÞÖµ def GetAttrCostGoldMax2(self): return self.AttrCostGoldMax2 # ÊôÐÔ2ÏÉÓñÏ´Á·ÉÏÏÞÖµ def GetAttrType3(self): return self.AttrType3 # ÊôÐÔ3ÀàÐÍ def GetAttrMax3(self): return self.AttrMax3 # ÊôÐÔ3µ±Ç°µÈ¼¶Ï´Á·ÉÏÏÞ def GetAttrRandDict3(self): return self.AttrRandDict3 # ÊôÐÔ3Ëæ»ú·¶Î§ def GetAttrCostGoldMin3(self): return self.AttrCostGoldMin3 # ÊôÐÔ3ÏÉÓñÏ´Á·ÏÂÏÞÖµ def GetAttrCostGoldMax3(self): return self.AttrCostGoldMax3 # ÊôÐÔ3ÏÉÓñÏ´Á·ÉÏÏÞÖµ def GetCostItemID(self): return self.CostItemID # ¹Ì¶¨ÏûºÄÎïÆ·ID def GetCostItemCount(self): return self.CostItemCount # ¹Ì¶¨ÏûºÄÎïÆ·¸öÊý def GetGoldWashCostList(self): return self.GoldWashCostList # ÏÉÓñÏ´Á·ÌõÊý¶ÔÓ¦ÏûºÄ # ÊôÐÔ¹ûʵ±í class IPY_AttrFruit(): def __init__(self): self.ID = 0 self.FuncID = 0 self.MaxUseCnt = {} self.AddItemInfo = [] self.RecycleMoney = 0 self.FightPowerEx = 0 return def GetID(self): return self.ID # ÎïÆ·ID def GetFuncID(self): return self.FuncID # ËùÊô¹¦ÄÜID def GetMaxUseCnt(self): return self.MaxUseCnt # ¾³½ç¶ÔÓ¦×î´ó¿ÉʹÓÃÊýÁ¿ def GetAddItemInfo(self): return self.AddItemInfo # [Ôö·ùµ¤ID,µ¥´ÎÎïÆ·ÊýÁ¿,µ¥´ÎÔö¼ÓÉÏÏÞ] def GetRecycleMoney(self): return self.RecycleMoney # »ØÊÕ»õ±ÒÖµ def GetFightPowerEx(self): return self.FightPowerEx # ¸½¼ÓÕ½¶·Á¦ # ÁéÊÞ±í class IPY_PetInfo(): def __init__(self): self.ID = 0 self.Quality = 0 self.UnlockSys = "" self.UnLockNeedItemID = 0 self.UnLockNeedItemCnt = 0 self.DecomposeExp = 0 self.InitRank = 0 self.MaxRank = 0 self.UseNeedRank = 0 self.SkillID = [] self.SkillUnLock = [] self.SkillUnLockSys = [] self.InitFightPower = 0 return def GetID(self): return self.ID # ÁéÊÞNPCID def GetQuality(self): return self.Quality # Æ·ÖÊ def GetUnlockSys(self): return self.UnlockSys # ½âËø¹ã²¥Ìáʾ def GetUnLockNeedItemID(self): return self.UnLockNeedItemID # ½âËøÁéÊÞÎïÆ·ID def GetUnLockNeedItemCnt(self): return self.UnLockNeedItemCnt # ½âËøËùÐèÎïÆ·ÊýÁ¿ def GetDecomposeExp(self): return self.DecomposeExp # ·Ö½âµ¥¸ö½âËøÎïÆ·¿É»ñµÃÉý½×¾­Ñé def GetInitRank(self): return self.InitRank # ÁéÊÞ³õʼ½×Êý def GetMaxRank(self): return self.MaxRank # ÁéÊÞ×î¸ß½×Êý def GetUseNeedRank(self): return self.UseNeedRank # ¶àÉٽ׿ÉÇл»Íâ¹Û def GetSkillID(self): return self.SkillID # ÁéÊÞ¼¼ÄÜID def GetSkillUnLock(self): return self.SkillUnLock # ÁéÊÞ¼¼ÄܽâËøÐèÒª½×Êý def GetSkillUnLockSys(self): return self.SkillUnLockSys # ÁéÊÞ¼¼ÄܽâËøÌáʾ def GetInitFightPower(self): return self.InitFightPower # ³õʼսÁ¦ # ×°±¸·Ö½âÊôÐÔ±í class IPY_EquipDecompose(): def __init__(self): self.LV = 0 self.UpNeedExp = 0 self.Attr = {} return def GetLV(self): return self.LV # µÈ¼¶ def GetUpNeedExp(self): return self.UpNeedExp # Éý¼¶ËùÐè¾­ÑéÊý def GetAttr(self): return self.Attr # ÊôÐÔ¼Ó³É # ÁéÊÞÉý½×ÏûºÄ±í class IPY_PetClassCost(): def __init__(self): self.PetID = 0 self.Class = 0 self.UpNeedExp = 0 self.AtkAdd = 0 return def GetPetID(self): return self.PetID # ÁéÊÞNPCID def GetClass(self): return self.Class # ÁéÊÞ½×Êý def GetUpNeedExp(self): return self.UpNeedExp # ÁéÊÞÉý½×ËùÐè¾­ÑéÊý def GetAtkAdd(self): return self.AtkAdd # ÿ½×¹¥»÷Á¦¼Ó³É # ÁéÊÞÎüÊÕ×°±¸±í class IPY_PetEatEquip(): def __init__(self): self.EquipColor = 0 self.EquipClass = 0 self.Exp = 0 self.FamilyStoreItemScore = 0 return def GetEquipColor(self): return self.EquipColor # ×°±¸Æ·ÖÊ def GetEquipClass(self): return self.EquipClass # ×°±¸½×Êý def GetExp(self): return self.Exp # »ñµÃÁéÊÞÉý¼¶¾­Ñé def GetFamilyStoreItemScore(self): return self.FamilyStoreItemScore # ÏÉÃ˱¦¿â»ý·Ö # ×øÆïÉý¼¶±í class IPY_HorseLVUp(): def __init__(self): self.HorseLV = 0 self.HorseSkinID = 0 self.NeedEatCount = 0 self.LVAttrType = [] self.LVAttrValue = [] return def GetHorseLV(self): return self.HorseLV # ×øÆïµÈ¼¶ def GetHorseSkinID(self): return self.HorseSkinID # Íâ¹ÛÎïÆ·ID def GetNeedEatCount(self): return self.NeedEatCount # Éý¼¶ËùÐè¸öÊý£¨·ÇÀۼƣ© def GetLVAttrType(self): return self.LVAttrType # ÿ¼¶¶îÍâÊôÐÔÀàÐÍ£¨·ÇÀÛ»ý£© def GetLVAttrValue(self): return self.LVAttrValue # ÿ¼¶¶îÍâÊôÐÔÖµ£¨·ÇÀÛ»ý£© # ×øÆï»Ã»¯±í class IPY_HorseSkinPlus(): def __init__(self): self.ID = 0 self.HorseSkinPlusID = 0 self.UnlockItemID = 0 self.UnlockItemCnt = 0 self.AttrType = [] self.AttrValue = [] self.InitFightPower = 0 return def GetID(self): return self.ID # »Ã»¯±àºÅID def GetHorseSkinPlusID(self): return self.HorseSkinPlusID # Íâ¹ÛÎïÆ·ID def GetUnlockItemID(self): return self.UnlockItemID # ½âËø×øÆïÎïÆ·±àºÅ def GetUnlockItemCnt(self): return self.UnlockItemCnt # ½âËøËùÐèÎïÆ·ÊýÁ¿ def GetAttrType(self): return self.AttrType # ¼¤»î¼Ó³ÉÊôÐÔÀàÐÍ def GetAttrValue(self): return self.AttrValue # ¼¤»î¼Ó³ÉÊôÐÔÖµ def GetInitFightPower(self): return self.InitFightPower # Ƥ·ô¶îÍâÕ½Á¦ # Íæ¼ÒµÈ¼¶±í class IPY_PlayerLV(): def __init__(self): self.LV = 0 self.ExpPoint = 0 self.Exp = 0 self.TalentPoint = 0 self.ReExp = 0 self.ReMaxHP = 0 self.ReAtk = 0 self.ReDef = 0 self.ReHit = 0 self.ReMiss = 0 self.ReAtkSpeed = 0 self.ReSkillAtkRate = 0 self.ReDamagePer = 0 self.ReDamReduce = 0 self.ReIgnoreDefRate = 0 self.ReLuckyHitRate = 0 self.ReLuckyHit = 0 self.ReBleedDamage = 0 self.ReIceAtk = 0 self.ReIceDef = 0 self.RePetAtk = 0 self.RePetSkillAtkRate = 0 self.RePetDamPer = 0 self.ReFinalHurt = 0 self.ReFinalHurtReduce = 0 self.RePotionReply = 0 self.RePotionCD = 0 self.AttackEff = 0 self.ReFightPower = 0 self.IceLodeFightPower = 0 return def GetLV(self): return self.LV # Íæ¼ÒµÈ¼¶ def GetExpPoint(self): return self.ExpPoint # Éý¼¶ËùÐè¾­Ñéµã,ÿ¸ö¾­Ñéµã´ú±íµÄ¾­ÑéÓÉÏîÄ¿¾ö¶¨ def GetExp(self): return self.Exp # ³ý¾­Ñéµã×ܾ­ÑéÍâÉý¼¶»¹ÐèµÄ¾­Ñé def GetTalentPoint(self): return self.TalentPoint # µÈ¼¶»ñµÃµÄÌ츳µã def GetReExp(self): return self.ReExp # µÈ¼¶¾­ÑéЧÂÊ(second) def GetReMaxHP(self): return self.ReMaxHP # ÉúÃü def GetReAtk(self): return self.ReAtk # ¹¥»÷ def GetReDef(self): return self.ReDef # ·ÀÓù def GetReHit(self): return self.ReHit # ÃüÖÐ def GetReMiss(self): return self.ReMiss # ÉÁ±Ü def GetReAtkSpeed(self): return self.ReAtkSpeed # ¹¥ËÙ def GetReSkillAtkRate(self): return self.ReSkillAtkRate # ¼¼ÄÜÉ˺¦±ÈÀý def GetReDamagePer(self): return self.ReDamagePer # Ôö¼ÓÉ˺¦ def GetReDamReduce(self): return self.ReDamReduce # ¼õÉÙÉ˺¦ def GetReIgnoreDefRate(self): return self.ReIgnoreDefRate # ÎÞÊÓ·ÀÓù±ÈÀý def GetReLuckyHitRate(self): return self.ReLuckyHitRate # »áÐÄÒ»»÷ÂÊ def GetReLuckyHit(self): return self.ReLuckyHit # »áÐÄÒ»»÷É˺¦ def GetReBleedDamage(self): return self.ReBleedDamage # Á÷ѪÉ˺¦Ôö¼Ó def GetReIceAtk(self): return self.ReIceAtk # ÕæÊµÉ˺¦ def GetReIceDef(self): return self.ReIceDef # ÕæÊµµÖÓù def GetRePetAtk(self): return self.RePetAtk # Áé³è¹¥»÷ def GetRePetSkillAtkRate(self): return self.RePetSkillAtkRate # Áé³è¼¼ÄÜ def GetRePetDamPer(self): return self.RePetDamPer # Áé³èÉ˺¦Ôö¼Ó def GetReFinalHurt(self): return self.ReFinalHurt # ¹Ì¶¨É˺¦Ôö¼Ó def GetReFinalHurtReduce(self): return self.ReFinalHurtReduce # ¹Ì¶¨É˺¦¼õÉÙ def GetRePotionReply(self): return self.RePotionReply # Ѫƿ»Ö¸´Á¿ def GetRePotionCD(self): return self.RePotionCD # ѪƿCD def GetAttackEff(self): return self.AttackEff # ¹Ò»úЧÂÊ def GetReFightPower(self): return self.ReFightPower # Õ½¶·Á¦ def GetIceLodeFightPower(self): return self.IceLodeFightPower # ±ù¾§¿óÂöɨµ´Õ½¶·Á¦ # GM²âÊÔÊôÐÔ±í class IPY_GMAttr(): def __init__(self): self.GMAttrID = 0 self.IsValid = 0 self.GMAccID = "" self.GMMaxLV = 0 self.AttrLV = 0 self.AttrPer = 0.0 self.AttrSpecDict = {} self.AttrExDict = {} return def GetGMAttrID(self): return self.GMAttrID # Êý¾ÝID def GetIsValid(self): return self.IsValid # ÊÇ·ñÓÐЧµÄ def GetGMAccID(self): return self.GMAccID # GMÍæ¼ÒÕ˺Šdef GetGMMaxLV(self): return self.GMMaxLV # ÓÐЧµÄ×î´óµÈ¼¶ def GetAttrLV(self): return self.AttrLV # ¶ÔÓ¦µÈ¼¶±íÖеÄÊôÐÔ def GetAttrPer(self): return self.AttrPer # ¶ÔÓ¦µÈ¼¶±íÖеıÈÀý def GetAttrSpecDict(self): return self.AttrSpecDict # ÌØÊâÊôÐÔÖµ×Öµä {attrKey:value, ...} def GetAttrExDict(self): return self.AttrExDict # ÌØÊâÊôÐÔÖµ×Öµä {attrKey:value, ...} # ³É³¤Ð͹ÖÎï²ÎÊý¹«Ê½±í class IPY_NPCStrengthen(): def __init__(self): self.NPCID = 0 self.IsStrengthenByPlayerCount = 0 self.LVStrengthenMark = 0 self.LVStrengthenType = 0 self.CmpNPCBaseLV = 0 self.HitTime = 0 self.DefCoefficient = 0 self.AtkCoefficient = 0 self.AdjustCoefficient = 0 self.AtkInterval = 0 self.HitRate = 0 self.MissRate = 0 self.MonterNum = 0 self.IceAtkCoefficient = 0 self.IceDefCoefficient = 0 self.MaxEnduranceTime = 0 self.FightPowerCoefficient = 0 return def GetNPCID(self): return self.NPCID # NPCID def GetIsStrengthenByPlayerCount(self): return self.IsStrengthenByPlayerCount # ÊÇ·ñ¸ù¾ÝÈËÊý³É³¤ def GetLVStrengthenMark(self): return self.LVStrengthenMark # µÈ¼¶³É³¤ÊôÐÔ¹«Ê½±ê¼Ç def GetLVStrengthenType(self): return self.LVStrengthenType # µÈ¼¶³É³¤ÀàÐÍ, 0-²»°´µÈ¼¶³É³¤£»1-°´Íæ¼Òƽ¾ùµÈ¼¶£»2-°´Íæ¼Ò×î´óµÈ¼¶£»3-°´ÊÀ½çµÈ¼¶£» def GetCmpNPCBaseLV(self): return self.CmpNPCBaseLV # ÊÇ·ñ±È½ÏNPC±íµÈ¼¶, ÊǵĻ°È¡NPC±íÅäÖõȼ¶Óë³É³¤µÈ¼¶ÖнϴóµÈ¼¶ def GetHitTime(self): return self.HitTime # ÊÜ»÷´ÎÊý def GetDefCoefficient(self): return self.DefCoefficient # ÈËÎï·ÀÓùϵÊý def GetAtkCoefficient(self): return self.AtkCoefficient # ÈËÎï¹¥»÷ϵÊý def GetAdjustCoefficient(self): return self.AdjustCoefficient # µ÷ÕûϵÊý±ÈÀý def GetAtkInterval(self): return self.AtkInterval # ¹ÖÎï¹¥»÷¼ä¸ô def GetHitRate(self): return self.HitRate # ¶ÔÈËÎïµÄÃüÖÐÂÊ def GetMissRate(self): return self.MissRate # ¶ÔÈËÎïµÄÉÁ±ÜÂÊ def GetMonterNum(self): return self.MonterNum # ¹ÖÎïÊý def GetIceAtkCoefficient(self): return self.IceAtkCoefficient # ÔªËØ¹¥»÷±ÈÀý def GetIceDefCoefficient(self): return self.IceDefCoefficient # ÔªËØ¿¹ÐÔ±ÈÀý def GetMaxEnduranceTime(self): return self.MaxEnduranceTime # Íæ¼Ò×î´ó³ÐÊÜÉ˺¦Ê±¼ä def GetFightPowerCoefficient(self): return self.FightPowerCoefficient # Ñ¹ÖÆÕ½¶·Á¦ÏµÊý # NPCʱ¼äµôѪ±í class IPY_NPCTimeLostHP(): def __init__(self): self.NPCID = 0 self.LostHPPerSecond = 0 self.MaxPlayerCount = 0 self.LostHPPerSecondEx = 0 self.FightPowerMinByLV = 0 self.FightPowerMin = 0 self.FightPowerMax = 0 self.EveryFightPower = 0 self.EveryFightPowerLostHPEx = 0 return def GetNPCID(self): return self.NPCID # NPCID def GetLostHPPerSecond(self): return self.LostHPPerSecond # µ¥ÈËÿÃëµôѪÁ¿ def GetMaxPlayerCount(self): return self.MaxPlayerCount # ×î´óÈËÊý def GetLostHPPerSecondEx(self): return self.LostHPPerSecondEx # ÿÔö¼ÓÒ»È˸½¼ÓµôѪÁ¿ def GetFightPowerMinByLV(self): return self.FightPowerMinByLV # ±ê×¼Õ½Á¦ÊÇ·ñÈ¡µÈ¼¶±í def GetFightPowerMin(self): return self.FightPowerMin # ±ê×¼Õ½Á¦ def GetFightPowerMax(self): return self.FightPowerMax # ÉÏÏÞÕ½Á¦ def GetEveryFightPower(self): return self.EveryFightPower # ÿxµãÕ½Á¦ def GetEveryFightPowerLostHPEx(self): return self.EveryFightPowerLostHPEx # ÿxµãÕ½Á¦¸½¼ÓÉ˺¦ # ×°±¸Ì××°ÊôÐÔ±í class IPY_EquipSuitAttr(): def __init__(self): self.SuiteID = 0 self.SuiteCnt = 0 self.Star = 0 self.AttrInfo = {} self.SkillID = 0 self.IsNotify = 0 self.ActivateIndex = 0 return def GetSuiteID(self): return self.SuiteID # Ì××°ID def GetSuiteCnt(self): return self.SuiteCnt # Ì××°¼þÊý def GetStar(self): return self.Star # ÐÇÊý def GetAttrInfo(self): return self.AttrInfo # ÊôÐÔ def GetSkillID(self): return self.SkillID # ¼¼ÄÜID def GetIsNotify(self): return self.IsNotify # ÊÇ·ñ¹ã²¥ def GetActivateIndex(self): return self.ActivateIndex # ¼¤»îË÷Òý # ÓðÒí¾«Á¶ÊôÐÔ±í class IPY_WingRefineAttr(): def __init__(self): self.WingClassLV = 0 self.AttrInfo = {} self.ItemColorInfo = {} self.MaxRefineExp = 0 return def GetWingClassLV(self): return self.WingClassLV # ³á°ò½×¼¶ def GetAttrInfo(self): return self.AttrInfo # ¾«Á¶ÊôÐÔÐÅÏ¢ def GetItemColorInfo(self): return self.ItemColorInfo # ¾«Á¶¾­Ñé¶ÔÓ¦ÑÕÉ«ÐÅÏ¢ def GetMaxRefineExp(self): return self.MaxRefineExp # ±¾½××î´ó¾«Á¶Öµ # ÓðÒí¾«Á¶¾­Ñé±í class IPY_WingRefineExp(): def __init__(self): self.ItemID = 0 self.RandExpMin = 0 self.RandExpMax = 0 self.ExpMaterial = {} return def GetItemID(self): return self.ItemID # ¾«Á¶ÎïÆ·ID def GetRandExpMin(self): return self.RandExpMin # ×îÐ¡Ëæ»ú¾«Á¶Öµ def GetRandExpMax(self): return self.RandExpMax # ×î´óËæ»ú¾«Á¶Öµ def GetExpMaterial(self): return self.ExpMaterial # ³á°ò´úÊý¶ÔÓ¦¾«Á¶Öµ # ÏÉÃ˿Ƽ¼±í class IPY_FamilyTech(): def __init__(self): self.TechID = 0 self.AttrType = 0 self.AttrValue = 0 self.Contribution = 0 self.PowerEx = 0 return def GetTechID(self): return self.TechID # ¿Æ¼¼ID*1000+µÈ¼¶ def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetAttrValue(self): return self.AttrValue # ÊôÐÔÖµ def GetContribution(self): return self.Contribution # ÐèÒª¹±Ï×¶È def GetPowerEx(self): return self.PowerEx # ¶îÍâÕ½Á¦ # Õ½¶·Á¦²ÎÊýµÈ¼¶ÏµÊý±í class IPY_FightPowerParam(): def __init__(self): self.LV = 0 self.CftHit = 0 self.CftMiss = 0 self.CftIgnoreDefRate = 0 self.CftDamChanceDef = 0 self.CftFaintRate = 0 self.CftSuperHitRateReduce = 0 self.CftSuperHitRate = 0 self.CftLuckyHitRate = 0 self.CftLuckyHitRateReduce = 0 self.CftSkillAtkRate = 0 self.CftSkillAtkRateReduce = 0 self.CftFinalHurtPer = 0 self.CftFinalHurtReducePer = 0 self.CftDamagePerPVP = 0 self.CftDamagePerPVPReduce = 0 self.CftNPCHurtAddPer = 0 self.CftNormalHurtPer = 0 self.CftFabaoHurtPer = 0 self.CftDamBackPer = 0 self.CftIgnoreDefRateReduce = 0 self.CftFaintDefRate = 0 self.CftAtkSpeed = 0 self.CftJobAHurtAddPer = 0 self.CftJobBHurtAddPer = 0 self.CftJobCHurtAddPer = 0 self.CftJobAAtkReducePer = 0 self.CftJobBAtkReducePer = 0 self.CftJobCAtkReducePer = 0 return def GetLV(self): return self.LV # µÈ¼¶ def GetCftHit(self): return self.CftHit # ÃüÖÐϵÊý def GetCftMiss(self): return self.CftMiss # ÉÁ±ÜϵÊý def GetCftIgnoreDefRate(self): return self.CftIgnoreDefRate # ÎÞÊÓ·ÀÓùϵÊý def GetCftDamChanceDef(self): return self.CftDamChanceDef # µÖÓùϵÊý def GetCftFaintRate(self): return self.CftFaintRate # »÷ÔÎϵÊý def GetCftSuperHitRateReduce(self): return self.CftSuperHitRateReduce # ±©»÷ÂÊ¿¹ÐÔϵÊý def GetCftSuperHitRate(self): return self.CftSuperHitRate # ±©»÷ÂÊϵÊý def GetCftLuckyHitRate(self): return self.CftLuckyHitRate # »áÐÄÒ»»÷ÂÊϵÊý def GetCftLuckyHitRateReduce(self): return self.CftLuckyHitRateReduce # »áÐÄÒ»»÷¿¹ÐÔϵÊý def GetCftSkillAtkRate(self): return self.CftSkillAtkRate # ¼¼ÄÜÉ˺¦ÏµÊý def GetCftSkillAtkRateReduce(self): return self.CftSkillAtkRateReduce # ¼¼ÄܼõÉËϵÊý def GetCftFinalHurtPer(self): return self.CftFinalHurtPer # ×îÖÕÉ˺¦¼Ó³ÉϵÊý def GetCftFinalHurtReducePer(self): return self.CftFinalHurtReducePer # ×îÖÕÉ˺¦¼õÃâϵÊý def GetCftDamagePerPVP(self): return self.CftDamagePerPVP # PVPÉ˺¦Ôö¼ÓϵÊý def GetCftDamagePerPVPReduce(self): return self.CftDamagePerPVPReduce # PVPÉ˺¦¼õÉÙϵÊý def GetCftNPCHurtAddPer(self): return self.CftNPCHurtAddPer # PVE¼¼ÄܼӳÉϵÊý def GetCftNormalHurtPer(self): return self.CftNormalHurtPer # ÆÕͨ¸½¼ÓÉ˺¦¼Ó³ÉϵÊý def GetCftFabaoHurtPer(self): return self.CftFabaoHurtPer # ·¨±¦¸½¼ÓÉ˺¦¼Ó³ÉϵÊý def GetCftDamBackPer(self): return self.CftDamBackPer # É˺¦·´ÉäϵÊý def GetCftIgnoreDefRateReduce(self): return self.CftIgnoreDefRateReduce # ÎÞÊÓ·ÀÓù¿¹ÐÔϵÊý def GetCftFaintDefRate(self): return self.CftFaintDefRate # ¿ØÖƵֿ¹ÏµÊý def GetCftAtkSpeed(self): return self.CftAtkSpeed # ¹¥ËÙϵÊý def GetCftJobAHurtAddPer(self): return self.CftJobAHurtAddPer # ¶ÔÄ¿±êսʿÉ˺¦¼Ó³É def GetCftJobBHurtAddPer(self): return self.CftJobBHurtAddPer # ¶ÔÄ¿±ê·¨Ê¦É˺¦¼Ó³É def GetCftJobCHurtAddPer(self): return self.CftJobCHurtAddPer # ¶ÔÄ¿±ê¹­¼ýÉ˺¦¼Ó³É def GetCftJobAAtkReducePer(self): return self.CftJobAAtkReducePer # սʿ¹¥»÷É˺¦¼õÃâ def GetCftJobBAtkReducePer(self): return self.CftJobBAtkReducePer # ·¨Ê¦¹¥»÷É˺¦¼õÃâ def GetCftJobCAtkReducePer(self): return self.CftJobCAtkReducePer # ¹­¼ý¹¥»÷É˺¦¼õÃâ # NPCµôÂä±í class IPY_NPCDropItem(): def __init__(self): self.NPCID = 0 self.MaxWorldLV = 0 self.MaxDropLV = 0 self.CanDropRatePlus = 0 self.IsDropJobSelf = 0 self.PieRateDrop = [] self.PieRateDoCnt = 0 self.IndepRateDrop = {} self.IndepRateDoCnt = 0 self.EquipColorMaxDropCount = {} self.EquipColorSuitInfo = {} self.EquipPartKeyRateInfo = {} self.ColorSuitPartOptimization = 0 self.KillCountDropEquipPub = {} self.ItemIDDropRate = {} self.ItemIDMaxDropCount = {} self.ItemKeyDropRate = {} self.ItemKeyDropRateJob = {} self.ItemKeyMaxDropCount = {} self.DropMoneyDoCnt = 0 self.DropMoneyRate = 0 self.DropMoneyMin = 0 self.DropMoneyMax = 0 self.KillCountDropPub = {} self.KillCountDropPri = [] self.PriItemIDDrop = [] self.AucionItemCanSell = 0 return def GetNPCID(self): return self.NPCID # NPCID def GetMaxWorldLV(self): return self.MaxWorldLV # ×î´óÊÀ½çµÈ¼¶£¬0Ϊ²»ÏÞÖÆ£¬²»ÊÜ×î´óµôÂäµÈ¼¶Ó°Ïì def GetMaxDropLV(self): return self.MaxDropLV # ×î´ó¿ÉµôÂäµÄÍæ¼ÒµÈ¼¶, ²»Ó°ÏìÊÀ½çµÈ¼¶ def GetCanDropRatePlus(self): return self.CanDropRatePlus # ¶îÍâÌáÉýµôÂʵÄÊÇ·ñÓÐЧ def GetIsDropJobSelf(self): return self.IsDropJobSelf # ÊÇ·ñÖ»µôÂä±¾Ö°Òµ def GetPieRateDrop(self): return self.PieRateDrop # ±ýͼ¸ÅÂʵôÂäÐÅÏ¢ [(¸ÅÂÊ,0),(¸ÅÂÊ,(½×,ÑÕÉ«)),...] def GetPieRateDoCnt(self): return self.PieRateDoCnt # ±ýͼ¸ÅÂÊÖ´ÐдÎÊý def GetIndepRateDrop(self): return self.IndepRateDrop # ¶ÀÁ¢¸ÅÂʵôÂäÐÅÏ¢ {(½×,ÑÕÉ«):¸ÅÂÊ,...} def GetIndepRateDoCnt(self): return self.IndepRateDoCnt # ¶ÀÁ¢¸ÅÂÊÖ´ÐдÎÊý def GetEquipColorMaxDropCount(self): return self.EquipColorMaxDropCount # ×°±¸ÑÕÉ«×î´óµôÂäÎïÆ·Êý {ÑÕÉ«:ÉÏÏÞÊýÁ¿,...} def GetEquipColorSuitInfo(self): return self.EquipColorSuitInfo # ×°±¸ÑÕÉ«¶ÔÓ¦Ì××°¸ÅÂÊ {ÑÕÉ«:Ì××°¸ÅÂÊ, ...} def GetEquipPartKeyRateInfo(self): return self.EquipPartKeyRateInfo # ×°±¸²¿Î»¼¯ºÏÐÅÏ¢ {(ÑÕÉ«,ÊÇ·ñÌ××°):²¿Î»¼¯ºÏkey, ...} def GetColorSuitPartOptimization(self): return self.ColorSuitPartOptimization # ²¿Î»ÑÕÉ«ÌׯÀ·ÖÓÅÑ¡µôÂ䣬ʮλ´ú±íÑÕÉ«£¬¸öλ´ú±íÌ××° def GetKillCountDropEquipPub(self): return self.KillCountDropEquipPub # µÚx´Î»÷ɱ¸½¼Ó±Øµô×°±¸ {´ÎÊý:[½×,ÑÕÉ«,ÊÇ·ñÌ××°,²¿Î»¼¯ºÏkey], ...} def GetItemIDDropRate(self): return self.ItemIDDropRate # Ö¸¶¨ÎïÆ·IDµôÂÊÐÅÏ¢ {ÎïÆ·ID:¸ÅÂÊ, ...} def GetItemIDMaxDropCount(self): return self.ItemIDMaxDropCount # Ö¸¶¨ÎïÆ·ID×î´óµôÂä¸öÊý,ûÅäĬÈÏ1´Î {ÎïÆ·ID:Ëæ»ú´ÎÊý,...} def GetItemKeyDropRate(self): return self.ItemKeyDropRate # ÎïÆ·ID¼¯ºÏKey¸ÅÂÊ, Ëæ»úÒ»¸ö, ÓÅÏȼ¶µÍ {ÎïÆ·ID¼¯ºÏkey:¸ÅÂÊ, ...} def GetItemKeyDropRateJob(self): return self.ItemKeyDropRateJob # ÎïÆ·ID¼¯ºÏKey¸ÅÂÊ, ×ÔÉíÖ°Òµ, ÓÅÏȼ¶¸ß {ÎïÆ·ID¼¯ºÏkey:¸ÅÂÊ, ...} def GetItemKeyMaxDropCount(self): return self.ItemKeyMaxDropCount # ÎïÆ·ID¼¯ºÏKeyËæ»ú´ÎÊý,ûÅäĬÈÏ1´Î {ÎïÆ·ID¼¯ºÏkey:Ëæ»ú´ÎÊý,...} def GetDropMoneyDoCnt(self): return self.DropMoneyDoCnt # µôÂä½ð±ÒÖ´ÐдÎÊý def GetDropMoneyRate(self): return self.DropMoneyRate # µôÂä½ð±Ò¸ÅÂÊ def GetDropMoneyMin(self): return self.DropMoneyMin # µôÂä½ð±Ò×îСֵ def GetDropMoneyMax(self): return self.DropMoneyMax # µôÂä½ð±Ò×î´óÖµ def GetKillCountDropPub(self): return self.KillCountDropPub # »÷ɱ´ÎÊý±Øµô£¨¹«¹²£©{»÷ɱ´ÎÊý:[[ÎïÆ·ID, ...], [Ëæ»úÎïÆ·ID, ...]], ...} def GetKillCountDropPri(self): return self.KillCountDropPri # »÷ɱ´ÎÊý±Øµô£¨Ë½ÓУ©[»÷ɱ´ÎÊý,[ÎïÆ·ID,...],ÊÇ·ñÖ±½Ó·ÅÈë±³°ü] def GetPriItemIDDrop(self): return self.PriItemIDDrop # ËùÓйéÊôÕß˽ÓеôÂäÎïÆ·IDÁбí,ÿÈËÒ»·Ý,ĬÈϰó¶¨,ûÓÐÖ°ÒµÇø·Ö[ÎïÆ·ID, ...] def GetAucionItemCanSell(self): return self.AucionItemCanSell # µôÂäÅÄÆ·¿É·ñÉϼܼ¯ÊÐ # ·ûÓ¡Ëþ±í class IPY_RuneTower(): def __init__(self): self.ID = 0 self.RunePoint = 0 self.Ysog = 0 self.NPCID = 0 self.IsNotify = 0 self.FixEndAward = [] self.GoodDrop = {} self.SweepRunePoint = 0 self.SweepYsog = 0 self.SweepGoodDrop = {} return def GetID(self): return self.ID # Ëþ±àºÅ def GetRunePoint(self): return self.RunePoint # ¹ý¹Ø¸ø·ûÓ¡¾«»ª def GetYsog(self): return self.Ysog # ¹ý¹Ø¸øÄ§¾« def GetNPCID(self): return self.NPCID # npcid def GetIsNotify(self): return self.IsNotify # ÊÇ·ñ¹ã²¥ def GetFixEndAward(self): return self.FixEndAward # ¹Ì¶¨½áËã½±Àø def GetGoodDrop(self): return self.GoodDrop # ÕäÏ¡·ûӡͨ¹ØµôÂä¸ÅÂÊ def GetSweepRunePoint(self): return self.SweepRunePoint # ɨµ´·ûÓ¡¾«»ª def GetSweepYsog(self): return self.SweepYsog # ɨµ´Ä§¾« def GetSweepGoodDrop(self): return self.SweepGoodDrop # ɨµ´ÕäÏ¡·ûÓ¡ # µØÍ¼±í¸ñ class IPY_ChinMap(): def __init__(self): self.MapID = 0 self.CanRide = 0 self.CanOutPet = 0 return def GetMapID(self): return self.MapID # µØÍ¼ID def GetCanRide(self): return self.CanRide # ¿É·ñÆï³Ë def GetCanOutPet(self): return self.CanOutPet # ¿É·ñÕÙ»½³èÎï # ¸±±¾×ܱí class IPY_FBFunc(): def __init__(self): self.DataMapID = 0 self.DayTimes = 0 self.DayResetType = 0 self.WeekTimes = 0 self.WeekResetType = 0 self.RewardRate = [] self.BuyTimesVIPPriID = 0 self.ExtraTimesVIPPriID = 0 self.ExtraTimesMWPriID = 0 self.GuardPick = 0 self.OfflineTime = 0 self.FBPoint = 0 self.HelpPoint = 0 self.DayHelpCountMax = 0 return def GetDataMapID(self): return self.DataMapID # Êý¾ÝµØÍ¼ID def GetDayTimes(self): return self.DayTimes # ÿÈÕ¿ÉÌôÕ½´ÎÊý, 0Ϊ²»ÏÞÖÆ def GetDayResetType(self): return self.DayResetType # ÿÈÕ´ÎÊýÖØÖÃÀàÐÍ; 0-²»ÖØÖÃ,1-0µã,2-5µã def GetWeekTimes(self): return self.WeekTimes # ÿÖÜ¿ÉÌôÕ½´ÎÊý, 0Ϊ²»ÏÞÖÆ def GetWeekResetType(self): return self.WeekResetType # ÿÖÜ´ÎÊýÖØÖÃÀàÐÍ; 0-²»ÖØÖÃ,1-0µã,2-5µã def GetRewardRate(self): return self.RewardRate # ÆÀ¼¶½±Àø±ÈÀý def GetBuyTimesVIPPriID(self): return self.BuyTimesVIPPriID # ¹ºÂò´ÎÊýVIPȨÏÞID def GetExtraTimesVIPPriID(self): return self.ExtraTimesVIPPriID # ¶îÍâ´ÎÊýVIPȨÏÞID def GetExtraTimesMWPriID(self): return self.ExtraTimesMWPriID # ¶îÍâ´ÎÊý·¨±¦È¨ÏÞID def GetGuardPick(self): return self.GuardPick # ¸ÃµØÍ¼ÊØ»¤ÊÇ·ñÄÜʰȡ def GetOfflineTime(self): return self.OfflineTime # ÀëÏß¶à¾ÃÍ˳ö¸±±¾(Ãë) def GetFBPoint(self): return self.FBPoint # ¸±±¾¹ý¹ØÏÉÔµ±Ò def GetHelpPoint(self): return self.HelpPoint # ÖúÕ½ÏÉÔµ±Ò(0´ú±í²»¿ÉÖúÕ½) def GetDayHelpCountMax(self): return self.DayHelpCountMax # ÿÈÕÊÖ¶¯ÖúÕ½»ñµÃÏÉÔµ±Ò´ÎÊý£¨·Ç¾µÏñ£© # ¸±±¾¹¦ÄÜÏß·±í class IPY_FBLine(): def __init__(self): self.DataMapID = 0 self.LineID = 0 self.MapID = 0 self.LVLimitMin = 0 self.LVLimitMax = 0 self.TicketID = 0 self.TicketCostCnt = [] self.TicketPrice = 0 self.SweepLVLimit = 0 self.SweepItemID = 0 self.SweepCostCnt = 0 self.EnterPosInfo = 0 self.StepTime = 0 self.RefreshNPC = 0 self.GradeInfo = 0 self.RewardInfo = 0 return def GetDataMapID(self): return self.DataMapID # Êý¾ÝµØÍ¼ID def GetLineID(self): return self.LineID # ¹¦ÄÜÏß·ID def GetMapID(self): return self.MapID # ³¡¾°µØÍ¼ID def GetLVLimitMin(self): return self.LVLimitMin # ×îµÍµÈ¼¶ÏÞÖÆ, 0Ϊ²»ÏÞÖÆ def GetLVLimitMax(self): return self.LVLimitMax # ×î¸ßµÈ¼¶ÏÞÖÆ, 0Ϊ²»ÏÞÖÆ def GetTicketID(self): return self.TicketID # ÃÅÆ±ID def GetTicketCostCnt(self): return self.TicketCostCnt # ÃÅÆ±ÏûºÄÊýÐÅÏ¢ def GetTicketPrice(self): return self.TicketPrice # ÃÅÆ±µ¥¼Û(²»ÄÜÓÃÇ®µÖµÄÅä0) def GetSweepLVLimit(self): return self.SweepLVLimit # ɨµ´µÈ¼¶ÏÞÖÆ, 0Ϊ²»ÏÞÖÆ def GetSweepItemID(self): return self.SweepItemID # ɨµ´ËùÐèµÀ¾ßID def GetSweepCostCnt(self): return self.SweepCostCnt # ɨµ´ËùÐèµÀ¾ß¸öÊý def GetEnterPosInfo(self): return self.EnterPosInfo # ½øÈë×ø±êÐÅÏ¢ def GetStepTime(self): return self.StepTime # ½×¶Îʱ¼ä def GetRefreshNPC(self): return self.RefreshNPC # ±êÊÔµãË¢¹ÖÅäÖà def GetGradeInfo(self): return self.GradeInfo # ÆÀ¼¶¹æÔò def GetRewardInfo(self): return self.RewardInfo # ½±ÀøÐÅÏ¢ # ¸±±¾ÖúÕ½±í class IPY_FBHelpBattle(): def __init__(self): self.DataMapID = 0 self.LineID = 0 self.FightPowerMin = 0 self.RobotFightPower = 0 self.RobotLV = 0 self.RobotBaseHurt = 0 self.RobotHPCoefficient = 0 self.RobotSkillsDict = {} return def GetDataMapID(self): return self.DataMapID # Êý¾ÝµØÍ¼ID def GetLineID(self): return self.LineID # ¹¦ÄÜÏß·ID def GetFightPowerMin(self): return self.FightPowerMin # ÖúÕ½×îµÍÕ½Á¦£¬Ò²ÊǸ±±¾±£µ×Õ½Á¦ def GetRobotFightPower(self): return self.RobotFightPower # ÖúÕ½NPCÕ½Á¦ def GetRobotLV(self): return self.RobotLV # ÖúÕ½NPCµÈ¼¶ def GetRobotBaseHurt(self): return self.RobotBaseHurt # ÖúÕ½NPC±£µ×É˺¦ def GetRobotHPCoefficient(self): return self.RobotHPCoefficient # ÖúÕ½NPCÉúÃüϵÊý def GetRobotSkillsDict(self): return self.RobotSkillsDict # ÖúÕ½NPC¼¼ÄÜ, {"Ö°Òµ":[¼¼ÄÜÁбí], ...} # ¸±±¾Ë¢¹Ö±êʶµã±í class IPY_NPCCustomRefresh(): def __init__(self): self.ID = 0 self.RefreshMarkInfo = [] self.RefreshNPCID = 0 self.RandNPCIDList = [] self.NPCIDCountList = [] self.MaxCount = 0 self.TotalMaxCount = 0 self.IsLineOneOnly = 0 self.RefreshTick = 0 self.IsRepeat = 0 return def GetID(self): return self.ID # Ë¢¹Ö¹æÔòID def GetRefreshMarkInfo(self): return self.RefreshMarkInfo # ±êÊÔµã, µ±ÅäÖöà¸öÊ±ÎªËæ»ú±êÊÔµã, ²»Öظ´ def GetRefreshNPCID(self): return self.RefreshNPCID # Ö¸¶¨NPCID def GetRandNPCIDList(self): return self.RandNPCIDList # µ¥´ÎËæ»úË¢¹ÖNPCID def GetNPCIDCountList(self): return self.NPCIDCountList # µ¥´ÎÖ¸¶¨Ë¢¹ÖNPC def GetMaxCount(self): return self.MaxCount # µ¥¸öµã×î´ó´æÔÚ¹ÖÎïÊý def GetTotalMaxCount(self): return self.TotalMaxCount # Ïàͬ±êÊÔµã×ÜË¢¹ÖÎïÊý def GetIsLineOneOnly(self): return self.IsLineOneOnly # ÊÇ·ñ½öÔÚ1ÏßË¢¹Ö def GetRefreshTick(self): return self.RefreshTick # Ë¢¹Ö¼ä¸ôÃë def GetIsRepeat(self): return self.IsRepeat # ÊÇ·ñÑ­»·Ë¢¹Ö # ÈÕ³£»î¶¯±í class IPY_DailyAction(): def __init__(self): self.DailyID = 0 self.OpenTimeDict = {} self.Duration = 0 self.DayTimes = 0 self.DayBuyTimes = 0 self.BuyTimesPrivilegeID = 0 self.BuyNeedMoney = 0 self.DayItemAddTimes = 0 self.DayItemID = 0 self.DayResetType = 0 self.WeekTimes = 0 self.WeekResetType = 0 return def GetDailyID(self): return self.DailyID # »î¶¯ID def GetOpenTimeDict(self): return self.OpenTimeDict # ¿ªÆôʱ¼ä def GetDuration(self): return self.Duration # ³ÖÐøÊ±¼ä, 0Ϊ²»ÏÞÖÆ def GetDayTimes(self): return self.DayTimes # ÿÈÕ´ÎÊý, 0Ϊ²»ÏÞÖÆ def GetDayBuyTimes(self): return self.DayBuyTimes # ÿÈտɹºÂò´ÎÊý def GetBuyTimesPrivilegeID(self): return self.BuyTimesPrivilegeID # ¹ºÂò´ÎÊýVIPȨÏÞID def GetBuyNeedMoney(self): return self.BuyNeedMoney # ¹ºÂò´ÎÊýÐèÒªÏÉÓñ def GetDayItemAddTimes(self): return self.DayItemAddTimes # ÿÈÕ¿ÉÓÃÎïÆ·Ôö¼Ó´ÎÊý def GetDayItemID(self): return self.DayItemID # Ôö¼Ó´ÎÊýµÄÎïÆ·ID def GetDayResetType(self): return self.DayResetType # ÿÈÕ´ÎÊýÖØÖÃÀàÐÍ; 0-²»ÖØÖÃ,1-0µã,2-5µã def GetWeekTimes(self): return self.WeekTimes # ÿÖÜ´ÎÊý, 0Ϊ²»ÏÞÖÆ def GetWeekResetType(self): return self.WeekResetType # ÿÖÜ´ÎÊýÖØÖÃÀàÐÍ; 0-²»ÖØÖÃ,1-0µã,2-5µã # ×°±¸ÆÀ·ÖÊôÐÔϵÊý±í class IPY_EquipGSParam(): def __init__(self): self.ClassLV = 0 self.EquipColor = 0 self.IsSuit = 0 self.ItemQuality = 0 self.BaseEquipMaxHPAddPerC = 0 self.BaseEquipAtkAddPerC = 0 self.SuperHitC = 0 self.SuperHitPerC = 0 self.LuckyHitRateC = 0 self.LuckyHitRateReduceC = 0 self.LuckPerC = 0 self.PerLVAtkC = 0 self.PerLVMaxHPC = 0 self.DropMoneyPerC = 0 self.SuperHitReduceC = 0 self.SuperHitRateReduceC = 0 self.HitC = 0 self.MissC = 0 self.PetDamPerC = 0 self.MaxHPPerC = 0 self.AtkPerC = 0 self.SkillAtkRateC = 0 self.SkillAtkRateReduceC = 0 self.SkillAddPer1C = 0 self.SkillAddPer2C = 0 self.SkillAddPer3C = 0 self.SkillAddPer4C = 0 self.SkillAddPer5C = 0 self.SkillAddPer6C = 0 self.SkillAddPer7C = 0 self.SkillReducePer1C = 0 self.SkillReducePer2C = 0 self.SkillReducePer3C = 0 self.SkillReducePer4C = 0 self.SkillReducePer5C = 0 self.SkillReducePer6C = 0 self.SkillReducePer7C = 0 self.ReduceSkillCDPerC = 0 self.LuckyHitPerC = 0 self.FaintDefRateC = 0 self.SuperHitRateC = 0 return def GetClassLV(self): return self.ClassLV # ×°±¸½×¼¶ def GetEquipColor(self): return self.EquipColor # ×°±¸ÑÕÉ« def GetIsSuit(self): return self.IsSuit # ÊÇ·ñÌ××° def GetItemQuality(self): return self.ItemQuality # ÎïÆ·ÐǼ¶ def GetBaseEquipMaxHPAddPerC(self): return self.BaseEquipMaxHPAddPerC # »ù´¡·À¾ßÉúÃü°Ù·Ö±ÈϵÊý def GetBaseEquipAtkAddPerC(self): return self.BaseEquipAtkAddPerC # »ù´¡ÎäÆ÷¹¥»÷°Ù·Ö±ÈϵÊý def GetSuperHitC(self): return self.SuperHitC # ±©»÷ֵϵÊý def GetSuperHitPerC(self): return self.SuperHitPerC # ±©»÷Öµ°Ù·Ö±ÈϵÊý def GetLuckyHitRateC(self): return self.LuckyHitRateC # »áÐÄÒ»»÷ÂÊϵÊý def GetLuckyHitRateReduceC(self): return self.LuckyHitRateReduceC # »áÐÄÒ»»÷¿¹ÐÔϵÊý def GetLuckPerC(self): return self.LuckPerC # ÆøÔ˰ٷֱÈϵÊý def GetPerLVAtkC(self): return self.PerLVAtkC # ÿ¼¶Ôö¼Ó¹¥»÷Á¦ÏµÊý def GetPerLVMaxHPC(self): return self.PerLVMaxHPC # ÿ¼¶Ôö¼ÓÉúÃüֵϵÊý def GetDropMoneyPerC(self): return self.DropMoneyPerC # Ôö¼ÓµôÂä½ð±ÒÁ¿°Ù·Ö±ÈϵÊý def GetSuperHitReduceC(self): return self.SuperHitReduceC # ±©»÷¼õÉ˰ٷֱÈϵÊý def GetSuperHitRateReduceC(self): return self.SuperHitRateReduceC # ±©»÷¿¹ÐÔϵÊý def GetHitC(self): return self.HitC # ÃüÖÐϵÊý def GetMissC(self): return self.MissC # ÉÁ±ÜϵÊý def GetPetDamPerC(self): return self.PetDamPerC # Áé³èÔöÉ˰ٷֱÈϵÊý def GetMaxHPPerC(self): return self.MaxHPPerC # ÉúÃü¼Ó³ÉϵÊý def GetAtkPerC(self): return self.AtkPerC # ¹¥»÷¼Ó³ÉϵÊý def GetSkillAtkRateC(self): return self.SkillAtkRateC # ¼¼ÄܼӳÉϵÊý def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC # ¼¼ÄܼõÃâϵÊý def GetSkillAddPer1C(self): return self.SkillAddPer1C # ¼¼ÄÜÉ˺¦ÔöÇ¿1ϵÊý def GetSkillAddPer2C(self): return self.SkillAddPer2C # ¼¼ÄÜÉ˺¦ÔöÇ¿2ϵÊý def GetSkillAddPer3C(self): return self.SkillAddPer3C # ¼¼ÄÜÉ˺¦ÔöÇ¿3ϵÊý def GetSkillAddPer4C(self): return self.SkillAddPer4C # ¼¼ÄÜÉ˺¦ÔöÇ¿4ϵÊý def GetSkillAddPer5C(self): return self.SkillAddPer5C # ¼¼ÄÜÉ˺¦ÔöÇ¿5ϵÊý def GetSkillAddPer6C(self): return self.SkillAddPer6C # ¼¼ÄÜÉ˺¦ÔöÇ¿6ϵÊý def GetSkillAddPer7C(self): return self.SkillAddPer7C # ¼¼ÄÜÉ˺¦ÔöÇ¿7ϵÊý def GetSkillReducePer1C(self): return self.SkillReducePer1C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ1ϵÊý def GetSkillReducePer2C(self): return self.SkillReducePer2C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ2ϵÊý def GetSkillReducePer3C(self): return self.SkillReducePer3C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ3ϵÊý def GetSkillReducePer4C(self): return self.SkillReducePer4C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ4ϵÊý def GetSkillReducePer5C(self): return self.SkillReducePer5C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ5ϵÊý def GetSkillReducePer6C(self): return self.SkillReducePer6C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ6ϵÊý def GetSkillReducePer7C(self): return self.SkillReducePer7C # Êܵ½¼¼ÄÜÉ˺¦¼õÉÙ7ϵÊý def GetReduceSkillCDPerC(self): return self.ReduceSkillCDPerC # ¼õÉÙËùÓм¼ÄÜCDϵÊý def GetLuckyHitPerC(self): return self.LuckyHitPerC # »áÐÄÉ˺¦¼Ó³ÉϵÊý def GetFaintDefRateC(self): return self.FaintDefRateC # ¿ØÖƵֿ¹ÏµÊý def GetSuperHitRateC(self): return self.SuperHitRateC # ±©»÷ÂʼӳÉϵÊý # ³É¾Í±í class IPY_Success(): def __init__(self): self.ID = 0 self.Type = 0 self.NeedCnt = 0 self.Condition = [] self.PreSuccess = [] self.AwardItem = {} self.AwardItem2 = {} self.Money = {} self.Exp = 0 self.AwardAttr = {} self.RedPacketID = 0 self.MagicWeaponID = 0 self.MagicWeaponExp = 0 return def GetID(self): return self.ID # ³É¾ÍID def GetType(self): return self.Type # ³É¾ÍÀàÐÍ def GetNeedCnt(self): return self.NeedCnt # ÐèÒªÊýÁ¿ def GetCondition(self): return self.Condition # ¸¨ÖúÌõ¼þ def GetPreSuccess(self): return self.PreSuccess # ÐèÒª´ï³ÉǰÖÃ³É¾Í def GetAwardItem(self): return self.AwardItem # ½±ÀøÎïÆ·Áбí def GetAwardItem2(self): return self.AwardItem2 # ͨÐÐÖ¤½±ÀøÎïÆ·Áбí def GetMoney(self): return self.Money # ½ðÇ® def GetExp(self): return self.Exp # ¾­Ñé def GetAwardAttr(self): return self.AwardAttr # ½±ÀøÊôÐÔ def GetRedPacketID(self): return self.RedPacketID # ºì°üID def GetMagicWeaponID(self): return self.MagicWeaponID # ·¨±¦ID def GetMagicWeaponExp(self): return self.MagicWeaponExp # ·¨±¦Éý¼¶¾­Ñé # ·¨±¦±í class IPY_Treasure(): def __init__(self): self.ID = 0 self.TreasureType = 0 self.PreTreasure = 0 self.FBMapID = 0 self.FBLineID = 0 self.NeedLV = 0 self.NeedItem = {} return def GetID(self): return self.ID # ID def GetTreasureType(self): return self.TreasureType # ·¨±¦ÀàÐÍ def GetPreTreasure(self): return self.PreTreasure # ǰÖ÷¨±¦ def GetFBMapID(self): return self.FBMapID # ¸±±¾ID def GetFBLineID(self): return self.FBLineID # ¸±±¾Ïß·ID def GetNeedLV(self): return self.NeedLV # ÐèÒªµÈ¼¶ def GetNeedItem(self): return self.NeedItem # ÐèÒªÏûºÄÎïÆ· # ·¨±¦Éý¼¶±í class IPY_TreasureUp(): def __init__(self): self.MWID = 0 self.LV = 0 self.NeedExp = 0 self.AddAttr = {} self.UnLockSkill = [] self.PowerEx = 0 return def GetMWID(self): return self.MWID # ·¨±¦ID def GetLV(self): return self.LV # ·¨±¦µÈ¼¶ def GetNeedExp(self): return self.NeedExp # ÐèÒª¾­Ñé def GetAddAttr(self): return self.AddAttr # ÊôÐÔ def GetUnLockSkill(self): return self.UnLockSkill # ½âËøµÄ¼¼ÄÜ def GetPowerEx(self): return self.PowerEx # ¶îÍâ¹Ì¶¨Õ½Á¦ # Á¬ÐøÇ©µ½½±Àø±í class IPY_ContineSignAward(): def __init__(self): self.ContineDay = 0 self.ItemID = [] self.IsBind = 0 self.ItemNum = [] self.JobItemList = [] return def GetContineDay(self): return self.ContineDay # Á¬ÐøÇ©µ½ÌìÊý def GetItemID(self): return self.ItemID # ½±ÀøÎïÆ·ID def GetIsBind(self): return self.IsBind # ÎïÆ·ÊÇ·ñ°ó¶¨ def GetItemNum(self): return self.ItemNum # ÎïÆ·½±Àø×îСֵ def GetJobItemList(self): return self.JobItemList # Ö°ÒµÎïÆ·Áбí # Ç©µ½½±Àø±í class IPY_SignAward(): def __init__(self): self.RewardID = 0 self.ItemID = [] self.IsBind = 0 self.VipLv = 0 self.OrdinaryNum = [] self.VipMultiple = 0 return def GetRewardID(self): return self.RewardID # ½±ÀøID def GetItemID(self): return self.ItemID # ½±ÀøÎïÆ·ID def GetIsBind(self): return self.IsBind # ÎïÆ·ÊÇ·ñ°ó¶¨ def GetVipLv(self): return self.VipLv # vipµÈ¼¶ def GetOrdinaryNum(self): return self.OrdinaryNum # ½±ÀøÎïÆ·ÊýÁ¿ def GetVipMultiple(self): return self.VipMultiple # ½±Àø±¶ÂÊ # VIPÀñ°ü±í class IPY_VIPAward(): def __init__(self): self.VIPLV = 0 self.ItemID = {} self.Price = 0 self.OldPrice = 0 return def GetVIPLV(self): return self.VIPLV # VIPµÈ¼¶ def GetItemID(self): return self.ItemID # ½±ÀøÎïÆ·ÐÅÏ¢ def GetPrice(self): return self.Price # Àñ°üÏÖ¼Û def GetOldPrice(self): return self.OldPrice # Àñ°üÔ­¼Û # ¶¨ÖÆÎïÆ·±í class IPY_AppointItem(): def __init__(self): self.ID = 0 self.CancelUseLimit = 0 self.LegendAttrID = [] self.LegendAttrValue = [] return def GetID(self): return self.ID # ¶¨ÖÆÎïÆ·ID def GetCancelUseLimit(self): return self.CancelUseLimit # ´©´÷ÏÞÖÆ(³ýÖ°Òµ) def GetLegendAttrID(self): return self.LegendAttrID # ´«ÆæÊôÐÔID def GetLegendAttrValue(self): return self.LegendAttrValue # ´«ÆæÊôÐÔÖµ # ÅÄÂôÎïÆ·±í class IPY_AuctionItem(): def __init__(self): self.AuctionItemID = 0 return def GetAuctionItemID(self): return self.AuctionItemID # VIPÌØÈ¨±í class IPY_VipPrivilege(): def __init__(self): self.VIPPriID = 0 self.VIP0 = 0 self.VIP1 = 0 self.VIP2 = 0 self.VIP3 = 0 self.VIP4 = 0 self.VIP5 = 0 self.VIP6 = 0 self.VIP7 = 0 self.VIP8 = 0 self.VIP9 = 0 self.VIP10 = 0 self.VIP11 = 0 self.VIP12 = 0 self.VIP13 = 0 self.VIP14 = 0 self.VIP15 = 0 return def GetVIPPriID(self): return self.VIPPriID # ÌØÈ¨ID def GetVIP0(self): return self.VIP0 # VIP0¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP1(self): return self.VIP1 # VIP1¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP2(self): return self.VIP2 # VIP2¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP3(self): return self.VIP3 # VIP3¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP4(self): return self.VIP4 # VIP4¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP5(self): return self.VIP5 # VIP5¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP6(self): return self.VIP6 # VIP6¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP7(self): return self.VIP7 # VIP7¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP8(self): return self.VIP8 # VIP8¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP9(self): return self.VIP9 # VIP9¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP10(self): return self.VIP10 # VIP10¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP11(self): return self.VIP11 # VIP11¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP12(self): return self.VIP12 # VIP12¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP13(self): return self.VIP13 # VIP13¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP14(self): return self.VIP14 # VIP14¶ÔÓ¦µÄÌØÈ¨Öµ def GetVIP15(self): return self.VIP15 # VIP15¶ÔÓ¦µÄÌØÈ¨Öµ # É̳DZí class IPY_Store(): def __init__(self): self.ID = 0 self.ShopType = 0 self.OperationActionShop = 0 self.ItemID = 0 self.ItemCnt = 0 self.IsBind = 0 self.ItemListEx = [] self.MainItemID = 0 self.JobItem = [] self.RefreshType = 0 self.LimitVIPLV = [] self.LimitLV = 0 self.LimitCnt = [] self.ServerLimitCnt = 0 self.MoneyType = 0 self.MoneyNum = 0 self.MoneyOriginal = 0 self.LimitValue = 0 self.NotifyMark = "" self.MailKey = "" return def GetID(self): return self.ID # ID def GetShopType(self): return self.ShopType # É̵êÀàÐÍ def GetOperationActionShop(self): return self.OperationActionShop # ÊÇ·ñÔËÓª»î¶¯É̵ê def GetItemID(self): return self.ItemID # ÎïÆ·ID def GetItemCnt(self): return self.ItemCnt # ÎïÆ·ÊýÁ¿ def GetIsBind(self): return self.IsBind # ÊÇ·ñ°ó¶¨ def GetItemListEx(self): return self.ItemListEx # À©Õ¹ÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...] def GetMainItemID(self): return self.MainItemID # ±êµÄÎïÆ·ID def GetJobItem(self): return self.JobItem # Ö°ÒµÌæ»»ÎïÆ· def GetRefreshType(self): return self.RefreshType # Ë¢ÐÂÀàÐÍ 0-²»ÖØÖÃ,1-onWeek0µã,2-onWeek5µã,3-OnDay0µã,4-OnDay5µã def GetLimitVIPLV(self): return self.LimitVIPLV # VIPÏÞÖÆ def GetLimitLV(self): return self.LimitLV # µÈ¼¶ÏÞÖÆ def GetLimitCnt(self): return self.LimitCnt # ¸öÈËÏÞÖÆÊýÁ¿ def GetServerLimitCnt(self): return self.ServerLimitCnt # È«·þÏÞÖÆÊýÁ¿ def GetMoneyType(self): return self.MoneyType # ½ðÇ®ÀàÐÍ def GetMoneyNum(self): return self.MoneyNum # ½ðÇ®ÊýÁ¿ def GetMoneyOriginal(self): return self.MoneyOriginal # Ô­¼Û def GetLimitValue(self): return self.LimitValue # ÏÞÖÆÌõ¼þ def GetNotifyMark(self): return self.NotifyMark # ¹ã²¥Ìáʾ def GetMailKey(self): return self.MailKey # ±³°ü²»×ãʱÓʼþKEY # ÏÞÊ±ÌØ»Ý±í class IPY_ActSpringSale(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.StartTimeList = [] self.EndTimeList = [] self.AdvanceMinutes = 0 self.LVLimit = 0 self.IsDayReset = 0 self.ShopTypeList = {} self.MailKey = "" self.MailItemPrize = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetStartTimeList(self): return self.StartTimeList # ¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetEndTimeList(self): return self.EndTimeList # ½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetShopTypeList(self): return self.ShopTypeList # É̵êÀàÐÍÁбí def GetMailKey(self): return self.MailKey # »î¶¯¸üÐÂʱ·¢ËÍÓʼþkey def GetMailItemPrize(self): return self.MailItemPrize # »î¶¯¸üÐÂʱ·¢ËÍÓʼþ½±ÀøÎïÆ· # ÈÕ³£ÈÎÎñ±í class IPY_DailyQuest(): def __init__(self): self.ID = 0 self.RelatedType = 0 self.RelatedID = 0 self.UnLockFuncID = 0 self.OnceActivityTime = 0 self.OnceActivity = 0 self.TotalActiveValue = 0 return def GetID(self): return self.ID # ID def GetRelatedType(self): return self.RelatedType # ¹ØÁªÀàÐÍ def GetRelatedID(self): return self.RelatedID # ¹ØÁªID def GetUnLockFuncID(self): return self.UnLockFuncID # ½âËø¹¦ÄÜID def GetOnceActivityTime(self): return self.OnceActivityTime # Ôö¼Ó»îÔ¾ËùÐè´ÎÊý def GetOnceActivity(self): return self.OnceActivity # µ¥´Î»îÔ¾Öµ def GetTotalActiveValue(self): return self.TotalActiveValue # ×Ü»îÔ¾ # ÈÕ³£»îÔ¾½±Àø±í class IPY_DailyLivenessReward(): def __init__(self): self.ID = 0 self.Liveness = 0 self.StageLV = [] self.ItemID = [] self.ItemCount = [] self.ItemBind = [] return def GetID(self): return self.ID # ID def GetLiveness(self): return self.Liveness # ËùÐè»îÔ¾¶È def GetStageLV(self): return self.StageLV # ½×¶ÎµÈ¼¶ def GetItemID(self): return self.ItemID # ÎïÆ·ID def GetItemCount(self): return self.ItemCount # ÎïÆ·ÊýÁ¿ def GetItemBind(self): return self.ItemBind # ÊÇ·ñ°ó¶¨ # ÈÕ³£»îÔ¾·ÅÖñí class IPY_ActivityPlaceReward(): def __init__(self): self.ID = 0 self.PlaceCount = 0 self.PlaceMaxLV = 0 self.FixedItemRewardList = [] self.RandItemCountA = 0 self.RandItemRewardListA = [] self.RandItemCountB = 0 self.RandItemRewardListB = [] return def GetID(self): return self.ID # ID def GetPlaceCount(self): return self.PlaceCount # ·ÅÖö¨ÖÆ´ÎÊý def GetPlaceMaxLV(self): return self.PlaceMaxLV # ×î´óµÈ¼¶ def GetFixedItemRewardList(self): return self.FixedItemRewardList # ¹Ì¶¨½±Àø [[ÎïÆ·ID, ¸öÊý], ...] def GetRandItemCountA(self): return self.RandItemCountA # ±ýͼ½±Àø´ÎÊýA def GetRandItemRewardListA(self): return self.RandItemRewardListA # ±ýͼ½±Àø¿âA [[±ýͼ¸ÅÂÊ,ÎïÆ·ID], ...] ÎïÆ·IDÖ§³Ö0 def GetRandItemCountB(self): return self.RandItemCountB # ±ýͼ½±Àø´ÎÊýB def GetRandItemRewardListB(self): return self.RandItemRewardListB # ±ýͼ½±Àø¿âB [[±ýͼ¸ÅÂÊ,ÎïÆ·ID], ...] ÎïÆ·IDÖ§³Ö0 # Á¶µ¤Â¯µÈ¼¶±í class IPY_RefineStove(): def __init__(self): self.StoveLV = 0 self.UpNeedExp = 0 return def GetStoveLV(self): return self.StoveLV # Á¶µ¤Â¯µÈ¼¶ def GetUpNeedExp(self): return self.UpNeedExp # ÉýÏÂÒ»¼¶ËùÐè¾­Ñé # Á¶µ¤±í class IPY_Alchemy(): def __init__(self): self.ID = 0 self.AlchemItemID = 0 self.AlchemType = 0 self.AlchemyQuality = 0 self.LearnNeedItemID = 0 self.LearnNeedAlchemLV = 0 self.LearnNeedLingGenPoint = 0 self.NeedTime = 0 self.AlchemyExp = 0 self.Material = {} return def GetID(self): return self.ID # ÃØ·½Î¨Ò»ID²»¿É±ä¸ü def GetAlchemItemID(self): return self.AlchemItemID # µ¤Ò©ÎïÆ·ID def GetAlchemType(self): return self.AlchemType # ÃØ·½ÀàÐÍ1-Á鵤 2-Ïɵ¤ def GetAlchemyQuality(self): return self.AlchemyQuality # ÃØ·½Æ·¼¶ def GetLearnNeedItemID(self): return self.LearnNeedItemID # µ¤·½ÎïÆ·ID def GetLearnNeedAlchemLV(self): return self.LearnNeedAlchemLV # µ¤·½ÐèÒªÁ¶µ¤µÈ¼¶ def GetLearnNeedLingGenPoint(self): return self.LearnNeedLingGenPoint # µ¤·½ÐèÒª×ÜÁé¸ùµãÊý def GetNeedTime(self): return self.NeedTime # Á¶µ¤Ê±¼ä(Ãë) def GetAlchemyExp(self): return self.AlchemyExp # Á¶µ¤»ñµÃ¾­ÑéÖµ def GetMaterial(self): return self.Material # Á¶µ¤²ÄÁÏ # Á¶µ¤ÊýÁ¿±í class IPY_AlchemyResult(): def __init__(self): self.AlchemyQuality = 0 self.LuckValue = 0 self.CntRateList = [] return def GetAlchemyQuality(self): return self.AlchemyQuality # µ¤·½µÈ¼¶ def GetLuckValue(self): return self.LuckValue # »Û¸ù def GetCntRateList(self): return self.CntRateList # ÊýÁ¿±ýͼ # BOSSÐÅÏ¢±í class IPY_BOSSInfo(): def __init__(self): self.NPCID = 0 self.MapID = 0 self.RefreshLine = 0 self.RefreshMark = 0 self.IsNeedShunt = 0 self.RelatedType = 0 self.RelatedID = "" self.StoneNPCID = 0 self.CanAssist = 0 self.SkillResist = 0 return def GetNPCID(self): return self.NPCID # ID def GetMapID(self): return self.MapID # µØÍ¼ID def GetRefreshLine(self): return self.RefreshLine # Ë¢ÐÂÏß· def GetRefreshMark(self): return self.RefreshMark # ˢбêʶµã def GetIsNeedShunt(self): return self.IsNeedShunt # ÊÇ·ñÐèÒª·ÖÁ÷ def GetRelatedType(self): return self.RelatedType # Ë¢¹Ö¹ØÁªÀàÐÍ def GetRelatedID(self): return self.RelatedID # ¹ØÁªID ÈÕ³£»î¶¯ID »ò ÔËÓª»î¶¯Ãû def GetStoneNPCID(self): return self.StoneNPCID # ű®NPCID def GetCanAssist(self): return self.CanAssist # ÊÇ·ñ¿ÉЭÖú def GetSkillResist(self): return self.SkillResist # ÊÇ·ñ¼¼Äֿܵ¹ # BossÊ×ɱ class IPY_BOSSFirstKill(): def __init__(self): self.NPCID = 0 self.PerPlayerMoneyAward = 0 self.PersonFirstKillAward = [] return def GetNPCID(self): return self.NPCID # ID def GetPerPlayerMoneyAward(self): return self.PerPlayerMoneyAward # Ê×ɱȫ·þÍæ¼Ò½±ÀøÁéʯ¶î¶È/ÈË def GetPersonFirstKillAward(self): return self.PersonFirstKillAward # ¸öÈËÊ״λ÷ɱ½±Àø [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ¹ÅÉñ½ûµØ±í class IPY_ElderGodArea(): def __init__(self): self.NPCID = 0 self.MonsterAnger = 0 return def GetNPCID(self): return self.NPCID # ID def GetMonsterAnger(self): return self.MonsterAnger # ¹ÖÎïÅ­ÆøÖµ # ¸öÈËBOSS±í class IPY_PersonalBoss(): def __init__(self): self.NPCID = 0 self.FuncLineID = 0 return def GetNPCID(self): return self.NPCID # ID def GetFuncLineID(self): return self.FuncLineID # ¿ÉÌôÕ½µÈ¼¶ # ÏÉÃË»îÔ¾±í class IPY_FamilyActivity(): def __init__(self): self.ID = 0 self.UnLockFuncID = 0 self.TotalActivityTime = 0 self.SingleTimes = 0 self.SingleActiveValue = 0 return def GetID(self): return self.ID # ID def GetUnLockFuncID(self): return self.UnLockFuncID # ½âËø¹¦ÄÜID def GetTotalActivityTime(self): return self.TotalActivityTime # ×Ü´ÎÊý def GetSingleTimes(self): return self.SingleTimes # Ôö¼Ó»îÔ¾ÐèÒª´ÎÊý def GetSingleActiveValue(self): return self.SingleActiveValue # ÿÂÖÔö¼Ó»îÔ¾»ý·Ö # ÏÉÃ˺ì°ü±í class IPY_FamilyRedPack(): def __init__(self): self.ID = 0 self.GetType = 0 self.MoneyNum = 0 self.MoneyType = 0 self.PacketCnt = 0 return def GetID(self): return self.ID # ID def GetGetType(self): return self.GetType # »ñµÃ;¾¶ def GetMoneyNum(self): return self.MoneyNum # ºì°ü¶î¶È def GetMoneyType(self): return self.MoneyType # ½ðÇ®ÀàÐÍ def GetPacketCnt(self): return self.PacketCnt # ºì°ü¸öÊý # ½ÚÈÕºì°üÿÈճɾͱí class IPY_ActFeastRedPacketSucc(): def __init__(self): self.FeastDay = 0 self.FeastSuccIDList = [] return def GetFeastDay(self): return self.FeastDay # ½ÚÈÕµÚ¼¸Ìì def GetFeastSuccIDList(self): return self.FeastSuccIDList # ½ÚÈճɾÍIDÁбí # NPCÐã±í class IPY_NPCShow(): def __init__(self): self.NPCID = 0 self.MapID = 0 self.LineID = 0 self.ProtectTime = 0 self.BindMissionID = 0 self.ShowType = 0 return def GetNPCID(self): return self.NPCID def GetMapID(self): return self.MapID def GetLineID(self): return self.LineID def GetProtectTime(self): return self.ProtectTime # ±£»¤Ê±¼ä, ºÁÃë def GetBindMissionID(self): return self.BindMissionID # °ó¶¨µÄÈÎÎñID def GetShowType(self): return self.ShowType # 0-·þÎñ¶Ë֪ͨ,>0ǰ¶Ë´¦Àí # ·âħ̳BOSS±í class IPY_SealDemon(): def __init__(self): self.NPCID = 0 self.LineID = 0 self.OwnerAwardItemEx = [] return def GetNPCID(self): return self.NPCID # ID def GetLineID(self): return self.LineID def GetOwnerAwardItemEx(self): return self.OwnerAwardItemEx # µÚÒ»Ãû¶îÍâ½±ÀøÎïÆ·[[itemID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ¸±±¾¹ÄÎè±í class IPY_FbEncourage(): def __init__(self): self.DataMapID = 0 self.InspireType = 0 self.InspireMaxLV = 0 self.MoneyCount = "" return def GetDataMapID(self): return self.DataMapID # µØÍ¼ID def GetInspireType(self): return self.InspireType # ¹ÄÎèÀàÐÍ def GetInspireMaxLV(self): return self.InspireMaxLV # ¹ÄÎèµÈ¼¶ÏÞÖÆ def GetMoneyCount(self): return self.MoneyCount # µ¥´ÎÏûºÄ½ðÇ®ÊýÁ¿ # µØÍ¼±êÊÔµãNPCˢРclass IPY_MapRefreshNPC(): def __init__(self): self.MapID = 0 self.RefreshNum = 0 self.NPCIDList = [] self.RefreshMarkList = [] self.PointMaxCount = 0 self.TotalMaxCount = 0 self.RefreshSeconds = 0 self.RefreshPerMinutes = 0 return def GetMapID(self): return self.MapID # µØÍ¼ID def GetRefreshNum(self): return self.RefreshNum # Ë¢¹Ö¹æÔò±àºÅ def GetNPCIDList(self): return self.NPCIDList # NPCIDÁбí def GetRefreshMarkList(self): return self.RefreshMarkList # ±êÊÔµãÁбí def GetPointMaxCount(self): return self.PointMaxCount # µ¥¸öµã×î´ó´æÔÚ¹ÖÎïÊý def GetTotalMaxCount(self): return self.TotalMaxCount # ËùÓеã×ܹÖÎïÊý def GetRefreshSeconds(self): return self.RefreshSeconds # Ë¢¹Ö¼ä¸ôÃë def GetRefreshPerMinutes(self): return self.RefreshPerMinutes # ÿÕûX·ÖË¢¹Ö # ·ûÓ¡ºÏ³É±í class IPY_RuneCompound(): def __init__(self): self.TagItemID = 0 self.NeedItem = [] self.NeedMJ = 0 return def GetTagItemID(self): return self.TagItemID # ºÏ³ÉµÄ·ûÓ¡ÎïÆ·ID def GetNeedItem(self): return self.NeedItem # ÐèÒªµÄÎïÆ·ID def GetNeedMJ(self): return self.NeedMJ # ÐèÒªµÄħ¾«ÊýÁ¿ # ×ÊÔ´Õһرí class IPY_ResourcesBack(): def __init__(self): self.ID = 0 self.RelatedID = 0 self.CanBackTimes = 0 self.NormalCostJade = 0 self.VipCostJade = 0 self.JadeReward = {} self.CostCopper = 0 self.CopperReward = {} self.JobItemList = [] return def GetID(self): return self.ID # ID def GetRelatedID(self): return self.RelatedID # ¹ØÁªÈÕ³£ÈÎÎñ±íID def GetCanBackTimes(self): return self.CanBackTimes # ÄÜ·ñÕһشÎÊý def GetNormalCostJade(self): return self.NormalCostJade # °óÓñÕÒ»ØÆÕͨ´ÎÊý¼Û¸ñ def GetVipCostJade(self): return self.VipCostJade # °óÓñÕÒ»ØVIP´ÎÊýÕһؼ۸ñ def GetJadeReward(self): return self.JadeReward # °óÓñÕһؽ±Àø def GetCostCopper(self): return self.CostCopper # Í­Ç®ÕÒ»ØÍ­Ç®ÏûºÄ def GetCopperReward(self): return self.CopperReward # Í­Ç®Õһؽ±Àø def GetJobItemList(self): return self.JobItemList # Ö°ÒµÎïÆ·Áбí # ²É¼¯Îï±í class IPY_CollectNPC(): def __init__(self): self.NPCID = 0 self.IsMissionCollectNPC = 0 self.PrepareTime = 0 self.LostHPPer = [] self.MaxCollectCount = 0 self.CollectResetType = 0 self.CollectCountLimitNotify = "" self.CollectAward = [] self.CollectAppointAward = {} self.AlchemyDiffLV = 0 self.NotifyCollectResult = 0 self.CanBreakCollect = 0 return def GetNPCID(self): return self.NPCID # ID def GetIsMissionCollectNPC(self): return self.IsMissionCollectNPC # ÊÇ·ñÈÎÎñ²É¼¯Îï def GetPrepareTime(self): return self.PrepareTime # ²É¼¯ºÄʱ£¬Ãë def GetLostHPPer(self): return self.LostHPPer # ²É¼¯µôѪ£¬[ÿXÃë,µôѪ°Ù·Ö±È] def GetMaxCollectCount(self): return self.MaxCollectCount # ¿É²É¼¯´ÎÊý£¬0ÎÞÏÞÖÆ def GetCollectResetType(self): return self.CollectResetType # ²É¼¯´ÎÊýÖØÖÃÀàÐÍ£¬0-²»ÖØÖã¬1-ÿÈÕ5µãÖØÖà def GetCollectCountLimitNotify(self): return self.CollectCountLimitNotify # Î޲ɼ¯´ÎÊý²É¼¯Ìáʾ def GetCollectAward(self): return self.CollectAward # ²É¼¯½±ÀøÎïÆ·£¬È¨ÖØÁбí [[È¨ÖØ, [ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·]], ...] def GetCollectAppointAward(self): return self.CollectAppointAward # ²É¼¯´ÎÊý¶¨ÖƲú³ö {´ÎÊý:[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...} def GetAlchemyDiffLV(self): return self.AlchemyDiffLV # ¹ýÂËÁ¶µ¤µÈ¼¶²î£¬0-²»¹ýÂË£¬>0¹ýÂË´óÓÚ×ÔÉíÁ¶µ¤µÈ¼¶X¼¶µÄÎïÆ· def GetNotifyCollectResult(self): return self.NotifyCollectResult # ÊÇ·ñ֪ͨ²É¼¯½á¹û def GetCanBreakCollect(self): return self.CanBreakCollect # ±»¹¥»÷ÊÇ·ñ´ò¶Ï²É¼¯ # ±¦Ïä¹Ö±í class IPY_TreasureNPC(): def __init__(self): self.NPCID = 0 self.AttackCountDropWeightInfo = {} self.AttackDropWeightList = [] self.AttackDropWeightListEx = [] self.DropCountEx = 0 self.AlchemyDiffLV = 0 self.NotDropNotify = "" return def GetNPCID(self): return self.NPCID # ±¦Ïä¹ÖNPCID def GetAttackCountDropWeightInfo(self): return self.AttackCountDropWeightInfo # ¹¥»÷´ÎÊý¶ÔÓ¦µôÂäÈ¨ÖØ±ýͼ {´ÎÊý:[[È¨ÖØ, [ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·]], ...], ...} def GetAttackDropWeightList(self): return self.AttackDropWeightList # ³£¹æ¹¥»÷È¨ÖØ±ýͼ [[È¨ÖØ, [ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·]], ...] def GetAttackDropWeightListEx(self): return self.AttackDropWeightListEx # ¶îÍâµôÂäÈ¨ÖØ±ýͼ¿â£¬Ã¿´Î¹¥»÷¶¼»áµôÂä [[È¨ÖØ, [ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·]], ...] def GetDropCountEx(self): return self.DropCountEx # ¶îÍâ¿âÖ´ÐдÎÊý def GetAlchemyDiffLV(self): return self.AlchemyDiffLV # ¹ýÂËÁ¶µ¤µÈ¼¶²î£¬0-²»¹ýÂË£¬>0¹ýÂË´óÓÚ×ÔÉíÁ¶µ¤µÈ¼¶X¼¶µÄÎïÆ· def GetNotDropNotify(self): return self.NotDropNotify # ûÓеôÂäʱÌáʾÐÅÏ¢ # ±¦Ïä±í¿ªÆô class IPY_Chests(): def __init__(self): self.ChestsItemID = 0 self.CostItemID = 0 self.CostItemCount = 0 self.CostGold = 0 self.ShowType = 0 self.IsBind = 0 self.AucionItemCanSell = 0 self.AucionItemDiffSellIDList = [] return def GetChestsItemID(self): return self.ChestsItemID # ±¦ÏäÎïÆ·ID def GetCostItemID(self): return self.CostItemID # ÏûºÄÎïÆ·ID def GetCostItemCount(self): return self.CostItemCount # ÏûºÄÎïÆ·¸öÊý def GetCostGold(self): return self.CostGold # ÏûºÄÏÉÓñ def GetShowType(self): return self.ShowType # ǰ¶Ë±íÏÖÀàÐÍ0-ÎÞ±íÏÖ, >0ÓбíÏÖÐèͬ²½½á¹û£¬¾ßÌåÀàÐÍǰ¶Ë×Ô¶¨Òå def GetIsBind(self): return self.IsBind # ¿ª³öÎïÆ·ÊÇ·ñ°ó¶¨ def GetAucionItemCanSell(self): return self.AucionItemCanSell # ¿ª³öÅÄÆ·¿É·ñÉϼܼ¯ÊÐ def GetAucionItemDiffSellIDList(self): return self.AucionItemDiffSellIDList # ¿É·ñÉϼܲîÒìÅÄÆ·IDÁÐ±í£¬¼´¿ÉÉϼܴú±í²»¿ÉÉϼܵÄÅÄÆ·IDÁÐ±í£¬²»¿ÉÉϼܴú±í¿ÉÉϼܵÄÅÄÆ·IDÁбí # ±¦Ïä±í²ú³ö±í class IPY_ChestsAward(): def __init__(self): self.ChestsItemID = 0 self.AwardLV = 0 self.SelectItemDict = {} self.FixedItemDict = {} self.RandItemList1 = [] self.RandTimeList1 = [] self.RandItemList2 = [] self.RandTimeList2 = [] self.RandItemByUseCount = {} self.JobItemList = [] self.MoneyType = 0 self.MoneyCount = 0 self.NeedNotifyItemList = [] self.IsDropJobSelf = 0 self.PieRateDrop = [] self.PieRateDoCnt = 0 self.IndepRateDrop = {} self.EquipColorSuitInfo = {} self.EquipPartKeyRateInfo = {} return def GetChestsItemID(self): return self.ChestsItemID # ±¦ÏäÎïÆ·ID def GetAwardLV(self): return self.AwardLV # ±¦Ïä½±ÀøµÈ¼¶ def GetSelectItemDict(self): return self.SelectItemDict # Ñ¡ÔñÎïÆ·ID¶ÔÓ¦¸öÊý×ֵ䣬¹æ¶¨Ö»ÄÜѡһ¸ö def GetFixedItemDict(self): return self.FixedItemDict # ¹Ì¶¨²ú³öÎïÆ·ID¶ÔÓ¦¸öÊý×Öµä def GetRandItemList1(self): return self.RandItemList1 # Ëæ»úÎïÆ·±ýͼÁбí1 def GetRandTimeList1(self): return self.RandTimeList1 # Ëæ»ú´ÎÊý±ýͼÁбí1 def GetRandItemList2(self): return self.RandItemList2 # Ëæ»úÎïÆ·±ýͼÁбí2 def GetRandTimeList2(self): return self.RandTimeList2 # Ëæ»ú´ÎÊý±ýͼÁбí2 def GetRandItemByUseCount(self): return self.RandItemByUseCount # ±¦Ï俪ÆôX´Î¶ÔÓ¦ÌØÊâ²ú³ö£¬Óë±ýͼÁбí2»¥³â def GetJobItemList(self): return self.JobItemList # Ö°ÒµÎïÆ·Áбí def GetMoneyType(self): return self.MoneyType # »õ±ÒÀàÐÍ def GetMoneyCount(self): return self.MoneyCount # »õ±ÒÊýÁ¿ def GetNeedNotifyItemList(self): return self.NeedNotifyItemList # ÐèÒª¹ã²¥µÄÎïÆ·IDÁбí def GetIsDropJobSelf(self): return self.IsDropJobSelf # ÊÇ·ñÖ»µôÂä±¾Ö°Òµ def GetPieRateDrop(self): return self.PieRateDrop # ±ýͼ¸ÅÂʵôÂäÐÅÏ¢ [(¸ÅÂÊ,0),(¸ÅÂÊ,(½×,ÑÕÉ«)),...] def GetPieRateDoCnt(self): return self.PieRateDoCnt # ±ýͼ¸ÅÂÊÖ´ÐдÎÊý def GetIndepRateDrop(self): return self.IndepRateDrop # ¶ÀÁ¢¸ÅÂʵôÂäÐÅÏ¢ {(½×,ÑÕÉ«):¸ÅÂÊ,...} def GetEquipColorSuitInfo(self): return self.EquipColorSuitInfo # ×°±¸ÑÕÉ«¶ÔÓ¦Ì××°¸ÅÂÊ {ÑÕÉ«:Ì××°¸ÅÂÊ, ...} def GetEquipPartKeyRateInfo(self): return self.EquipPartKeyRateInfo # ×°±¸²¿Î»¼¯ºÏÐÅÏ¢ {(ÑÕÉ«,ÊÇ·ñÌ××°):²¿Î»¼¯ºÏkey, ...} # VIPɱ¹Ö¼Ó¹¥»÷±í class IPY_VIPKillNPC(): def __init__(self): self.KillLV = 0 self.LVExpPoint = 0 self.LVExp = 0 self.AddMinAtk = 0 self.AddMaxAtk = 0 return def GetKillLV(self): return self.KillLV # ɱ¹Ö³É³¤µÈ¼¶ def GetLVExpPoint(self): return self.LVExpPoint # Éý¼¶ËùÐè¾­Ñéµã,ÿ¸ö¾­Ñéµã´ú±íµÄ¾­ÑéÓÉÏîÄ¿¾ö¶¨ def GetLVExp(self): return self.LVExp # ³ý¾­Ñéµã×ܾ­ÑéÍâÉý¼¶»¹ÐèµÄ¾­Ñé def GetAddMinAtk(self): return self.AddMinAtk # Ôö¼Ó×îС¹¥»÷ def GetAddMaxAtk(self): return self.AddMaxAtk # Ôö¼Ó×î´ó¹¥»÷ # È«Ãñ³å°ñÅÅÐн±Àø±í class IPY_OSCBillRankAward(): def __init__(self): self.OSCBillType = 0 self.RankA = 0 self.RankB = 0 self.RankAward = {} return def GetOSCBillType(self): return self.OSCBillType # ³å°ñÀàÐÍ def GetRankA(self): return self.RankA # ÅÅÃûA def GetRankB(self): return self.RankB # ÖÁÅÅÃûB def GetRankAward(self): return self.RankAward # ÅÅÃû½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} # È«Ãñ³å°ñ´ï³É½±Àø±í class IPY_OSCBillTagAward(): def __init__(self): self.OSCBillType = 0 self.TagCondition = 0 self.TagAward = {} return def GetOSCBillType(self): return self.OSCBillType # ³å°ñÀàÐÍ def GetTagCondition(self): return self.TagCondition # Ä¿±êÌõ¼þÖµ def GetTagAward(self): return self.TagAward # Ä¿±ê½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} # ÆßÌìµÇ¼½±Àø±í class IPY_LoginDayAward(): def __init__(self): self.DayID = 0 self.Reward = {} return def GetDayID(self): return self.DayID # ÌìÊý def GetReward(self): return self.Reward # ½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} # ÆßÌìÔÚÏß½±Àø±í class IPY_OnlineAward(): def __init__(self): self.DayID = 0 self.StageTime = [] self.Reward = {} return def GetDayID(self): return self.DayID # ÌìÊý def GetStageTime(self): return self.StageTime # ½×¶ÎËùÐèʱ¼ä(·ÖÖÓ) def GetReward(self): return self.Reward # ½±Àø {"Ë÷Òý":[[ÎïÆ·ID,¸öÊý],...], ...} # ÆßÌìÏÞÊ±ÌØ»Ý±í class IPY_SpringSale(): def __init__(self): self.GiftID = 0 self.SellDay = 0 self.BuyNumLimit = 0 self.GiftPrice = 0 self.GiftItemList = [] return def GetGiftID(self): return self.GiftID # Àñ°üID def GetSellDay(self): return self.SellDay # ´´½ÇµÚ¼¸ÌìÉÏ¼Ü def GetBuyNumLimit(self): return self.BuyNumLimit # ÿÈËÏÞ¹ºÊýÁ¿ def GetGiftPrice(self): return self.GiftPrice # Àñ°ü¼Û¸ñ£¬ÏÉÓñ def GetGiftItemList(self): return self.GiftItemList # Àñ°üÎïÆ·ÐÅÏ¢Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...] # ³äÖµÉÌÆ·±àºÅ±í class IPY_OrderInfo(): def __init__(self): self.OrderInfo = "" self.AppID = "" self.PayRMBNum = 0.0 self.CTGID = 0 self.GiftbagID = 0 self.CoinExp = 0 return def GetOrderInfo(self): return self.OrderInfo # ÉÌÆ·±àºÅ def GetAppID(self): return self.AppID # appID def GetPayRMBNum(self): return self.PayRMBNum # ¸¶·Ñ¶î¶È£¬Ôª def GetCTGID(self): return self.CTGID # ¶ÔÓ¦³äÖµID def GetGiftbagID(self): return self.GiftbagID # ¶ÔÓ¦ÏÞʱÀñ°ü±àºÅ def GetCoinExp(self): return self.CoinExp # ¶ÔӦת»¯¾­Ñé # ³äÖµ±í class IPY_CTG(): def __init__(self): self.RecordID = 0 self.CanResetBuyCount = 0 self.TotalBuyCount = 0 self.DailyBuyCount = 0 self.GainGold = 0 self.GainGoldPrize = 0 self.FirstGoldPrize = 0 self.GainItemList = [] self.ActWorldLVGainItemInfo = {} self.NotifyMark = "" self.PayType = 0 return def GetRecordID(self): return self.RecordID # ¼Ç¼ID def GetCanResetBuyCount(self): return self.CanResetBuyCount # ÊÇ·ñÔÊÐíÖØÖôÎÊý def GetTotalBuyCount(self): return self.TotalBuyCount # ×ÜÏÞ¹º´ÎÊý def GetDailyBuyCount(self): return self.DailyBuyCount # ÿÈÕÏÞ¹º´ÎÊý def GetGainGold(self): return self.GainGold # »ñµÃÏÉÓñÊý def GetGainGoldPrize(self): return self.GainGoldPrize # ÔùËÍÏÉÓñÊý def GetFirstGoldPrize(self): return self.FirstGoldPrize # Ê״γäÖµ¸ÃµµÎ»ÔùËÍÏÉÓñ def GetGainItemList(self): return self.GainItemList # »ñµÃÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...] def GetActWorldLVGainItemInfo(self): return self.ActWorldLVGainItemInfo # ¸ù¾Ý»î¶¯ÊÀ½çµÈ¼¶»ñµÃÎïÆ·ÐÅÏ¢£¬»î¶¯×¨Óà {"ÊÀ½çµÈ¼¶":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...], ...} def GetNotifyMark(self): return self.NotifyMark # ¹ã²¥Ìáʾ def GetPayType(self): return self.PayType # ³äÖµÀàÐÍ # Ê׳ä±í class IPY_FirstGold(): def __init__(self): self.Day = 0 self.JobItemInfo = {} self.CommItemList = [] return def GetDay(self): return self.Day # Ê׳äµÚ¼¸Ìì def GetJobItemInfo(self): return self.JobItemInfo # Ö°ÒµÎïÆ·½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý], ...], ...} def GetCommItemList(self): return self.CommItemList # ͨÓÃÎïÆ·½±Àø [[ÎïÆ·ID,¸öÊý], ...] # µÈ¼¶½±Àø±í class IPY_LVAward(): def __init__(self): self.AwardID = 0 self.LV = 0 self.LimitCnt = 0 self.Reward = {} self.VIPLimit = 0 self.VIPAward = [] return def GetAwardID(self): return self.AwardID # ½±ÀøID def GetLV(self): return self.LV # µÈ¼¶ def GetLimitCnt(self): return self.LimitCnt # È«·þÏÞÖÆÊýÁ¿ def GetReward(self): return self.Reward # ½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} def GetVIPLimit(self): return self.VIPLimit # ÐèÒªVIP¼¸ def GetVIPAward(self): return self.VIPAward # vip½±Àø[[ÎïÆ·ID,¸öÊý],...] # Ͷ×ʱí class IPY_Invest(): def __init__(self): self.ID = 0 self.Type = 0 self.NeedDay = 0 self.NeedLV = 0 self.NeedNPCID = 0 self.Reward = {} return def GetID(self): return self.ID # ID def GetType(self): return self.Type # Ͷ×ÊÀàÐÍ def GetNeedDay(self): return self.NeedDay # ÐèÒªÌìÊý def GetNeedLV(self): return self.NeedLV # ÐèÒªµÈ¼¶ def GetNeedNPCID(self): return self.NeedNPCID # ÐèÒªNPCID def GetReward(self): return self.Reward # ½±Àø {"key":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...], ...} # Ïɱ¦Ñ°Ö÷±í class IPY_XBXZ(): def __init__(self): self.ID = 0 self.Type = 0 self.NeedCnt = 0 self.Condition = [] self.MWID = 0 self.AwardItem = [] self.Money = [] return def GetID(self): return self.ID # ID def GetType(self): return self.Type # ÀàÐÍ def GetNeedCnt(self): return self.NeedCnt # ÐèÒªÊýÁ¿ def GetCondition(self): return self.Condition # Ìõ¼þ def GetMWID(self): return self.MWID # ·¨±¦ID def GetAwardItem(self): return self.AwardItem # ½±ÀøÎïÆ·Áбí def GetMoney(self): return self.Money # ½ðÇ® # Ѱ±¦²ú³ö¿â±í class IPY_TreasureHouse(): def __init__(self): self.TreasureType = 0 self.MinLV = 0 self.GridItemInfo = {} self.JobItemList = [] self.GridItemRateListFree = [] self.FreeGridItemRateList2 = [] self.FreeGridItemRateList3 = {} self.GridItemRateList1 = [] self.GridItemRateList2 = [] self.GridItemRateList3 = {} self.LuckyGridNum = 0 return def GetTreasureType(self): return self.TreasureType # Ѱ±¦ÀàÐÍ def GetMinLV(self): return self.MinLV # ×îСµÈ¼¶ def GetGridItemInfo(self): return self.GridItemInfo # ¸ñ×Ó±àºÅ¶ÔÓ¦ÎïÆ·ÐÅÏ¢ {"±àºÅ":[ÎïÆ·ID, ¸öÊý], ...} def GetJobItemList(self): return self.JobItemList # Ö°ÒµÎïÆ·×éÁбí [[Ö°Òµ1ÎïÆ·, Ö°Òµ2ÎïÆ·, ...], ...] def GetGridItemRateListFree(self): return self.GridItemRateListFree # Ãâ·Ñ²ú³ö¸ñ×Ó±àºÅ±ýͼ [[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...] def GetFreeGridItemRateList2(self): return self.FreeGridItemRateList2 # Ãâ·ÑÿÂúx´Î±£µ×²ú³ö¸ñ×Ó±àºÅ±ýͼ [[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...] def GetFreeGridItemRateList3(self): return self.FreeGridItemRateList3 # Ãâ·ÑµÚx´Î±Ø³ö²ú³ö¸ñ×Ó±àºÅ±ýͼ {´ÎÊý:[[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...], ...} def GetGridItemRateList1(self): return self.GridItemRateList1 # ³£¹æ²ú³ö¸ñ×Ó±àºÅ±ýͼ [[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...] def GetGridItemRateList2(self): return self.GridItemRateList2 # ÿÂúx´Î±£µ×²ú³ö¸ñ×Ó±àºÅ±ýͼ [[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...] def GetGridItemRateList3(self): return self.GridItemRateList3 # µÚx´Î±Ø³ö²ú³ö¸ñ×Ó±àºÅ±ýͼ {´ÎÊý:[[¸ÅÂÊ, ¸ñ×Ó±àºÅ], ...], ...} def GetLuckyGridNum(self): return self.LuckyGridNum # ÐÒÔ˼ӳɸñ×Ó±àºÅ # ¼«Æ·°×Äñí class IPY_FreeGoods(): def __init__(self): self.ID = 0 self.AwardItem = {} self.NeedMoney = 0 self.ReturnDays = 0 return def GetID(self): return self.ID # ID def GetAwardItem(self): return self.AwardItem # ½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} def GetNeedMoney(self): return self.NeedMoney # ÐèÒªÏÉÓñ def GetReturnDays(self): return self.ReturnDays # ·µ»¹ËùÐèÌì # ÏÞʱÀñ°ü»î¶¯±í class IPY_ActFlashGiftbag(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.StartTimeList = [] self.EndTimeList = [] self.AdvanceMinutes = 0 self.LVLimit = 0 self.IsDayReset = 0 self.GiftbagTypeList = {} self.MailKey = "" self.MailItemPrize = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetStartTimeList(self): return self.StartTimeList # ¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetEndTimeList(self): return self.EndTimeList # ½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetGiftbagTypeList(self): return self.GiftbagTypeList # Àñ°üÀàÐÍÁбí def GetMailKey(self): return self.MailKey # »î¶¯¸üÐÂʱ·¢ËÍÓʼþkey def GetMailItemPrize(self): return self.MailItemPrize # »î¶¯¸üÐÂʱ·¢ËÍÓʼþ½±ÀøÎïÆ· # ÏÞʱÀñ°üÄ£°å±í class IPY_FlashGiftbag(): def __init__(self): self.GiftbagID = 0 self.GiftbagType = 0 self.OriginalRMB = 0.0 self.BuyCountLimit = 0 self.GiftItemList = [] self.MainItemID = 0 self.NotifyKey = "" return def GetGiftbagID(self): return self.GiftbagID # Àñ°ü±àºÅ def GetGiftbagType(self): return self.GiftbagType # Àñ°üÀàÐÍ def GetOriginalRMB(self): return self.OriginalRMB # Ô­¼Û£¨RMB£© def GetBuyCountLimit(self): return self.BuyCountLimit # ÏÞ¹º´ÎÊý,0²»ÏÞ¹º def GetGiftItemList(self): return self.GiftItemList # Àñ°üÎïÆ·ÐÅÏ¢Áбí [(ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨),...] def GetMainItemID(self): return self.MainItemID # ±êµÄÎïÆ·ID def GetNotifyKey(self): return self.NotifyKey # È«·þ¹ã²¥key£¬Ä¬ÈÏÁ½¸ö²ÎÊý(Íæ¼ÒÃû, µµÎ»¶î¶È) # ÿÈÕÀñ°ü»î¶¯±í class IPY_ActDailyGiftbag(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.GiftbagType = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetGiftbagType(self): return self.GiftbagType # Àñ°üÄ£°åÀàÐÍ # ÿÈÕÀñ°üÄ£°å±í class IPY_DailyGiftbag(): def __init__(self): self.GiftbagType = 0 self.GiftbagID = 0 self.BuyCountLimit = 0 self.GiftItemList = [] return def GetGiftbagType(self): return self.GiftbagType # Àñ°üÄ£°åÀàÐÍ def GetGiftbagID(self): return self.GiftbagID # Àñ°ü±àºÅ def GetBuyCountLimit(self): return self.BuyCountLimit # ÏÞ¹º´ÎÊý,0²»ÏÞ¹º def GetGiftItemList(self): return self.GiftItemList # Àñ°üÎïÆ·ÐÅÏ¢Áбí [(ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨),...] # Ë«±¶¾­Ñé»î¶¯±í class IPY_ActExpRate(): def __init__(self): self.CfgID = 0 self.LVLimit = 0 self.AddExpRate = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetAddExpRate(self): return self.AddExpRate # ¾­Ñé±¶Âʼӳɣ¬Íò·ÖÂÊ # Ïû·Ñ·µÀû»î¶¯±í class IPY_ActCostRebate(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.TemplateIDList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetTemplateIDList(self): return self.TemplateIDList # Ä£°åIDÁбí # Ïû·Ñ·µÀûÄ£°å±í class IPY_CostRebateTemplate(): def __init__(self): self.TemplateID = 0 self.NeedCostGold = 0 self.AwardIndex = 0 self.AwardItemList = {} self.NotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetNeedCostGold(self): return self.NeedCostGold # ÐèÒªÏû·ÑÏÉÓñÊý def GetAwardIndex(self): return self.AwardIndex # ·µÀû½±ÀøË÷Òý0~31,ͬ¸öÄ£°åÖв»Öظ´ def GetAwardItemList(self): return self.AwardItemList # ·µÀûÎïÆ·ÐÅÏ¢Áбí {ÊÀ½çµÈ¼¶·¶Î§:[({Ö°Òµ:ÎïÆ·ID,..},¸öÊý,ÊÇ·ñ°ó¶¨), ...]} def GetNotifyKey(self): return self.NotifyKey # È«·þ¹ã²¥key£¬Ä¬ÈÏÁ½¸ö²ÎÊý(Íæ¼ÒÃû, µµÎ»¶î¶È) # ¼¯×ֻʱ¼ä±í class IPY_ActCollectWords(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.LastDayOnlyExchange = 0 self.TemplateID = 0 self.DropDiffLVLimit = 0 self.DropItemRateList = [] self.DropItemRateListBoss = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetLastDayOnlyExchange(self): return self.LastDayOnlyExchange # ×îºóÒ»ÌìÊÇ·ñ½ö¶Ò»» def GetTemplateID(self): return self.TemplateID # ¶Ò»»Ä£°å±àºÅ def GetDropDiffLVLimit(self): return self.DropDiffLVLimit # µôÂäµÈ¼¶²îÖµÏÞÖÆ def GetDropItemRateList(self): return self.DropItemRateList # С¹ÖµôÂä±ýͼ¸ÅÂÊ def GetDropItemRateListBoss(self): return self.DropItemRateListBoss # BossµôÂä±ýͼ¸ÅÂÊ # ¼¯×ֻ¶Ò»»Ä£°å±í class IPY_CollectWordsExchange(): def __init__(self): self.TemplateID = 0 self.ExchangeNum = 0 self.ExchangeItemInfo = [] self.ExchangeCountMax = 0 self.NeedItemList = [] self.NeedNotify = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetExchangeNum(self): return self.ExchangeNum # ¶Ò»»±àºÅ£¨Í¬¸öÄ£°åÖÐÐèΨһ²»¿É±ä£© def GetExchangeItemInfo(self): return self.ExchangeItemInfo # ¶Ò»»Ä¿±êÎïÆ·[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨] def GetExchangeCountMax(self): return self.ExchangeCountMax # ×î´ó¶Ò»»´ÎÊý(0²»ÏÞÖÆ) def GetNeedItemList(self): return self.NeedItemList # ËùÐèÎïÆ·ÐÅÏ¢Áбí [[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...] def GetNeedNotify(self): return self.NeedNotify # ÊÇ·ñÐèÒª¹ã²¥ # BOSS¸´»î»î¶¯Ê±¼ä±í class IPY_ActBossReborn(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.ResetType = 0 self.LVLimit = 0 self.TemplateID = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ # BOSS¸´»î±í class IPY_BossReborn(): def __init__(self): self.TemplateID = 0 self.ID = 0 self.TotalTimes = 0 self.SingleTimes = 0 self.Reward = {} return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetID(self): return self.ID # »î¶¯ÌõÄ¿ID def GetTotalTimes(self): return self.TotalTimes # ¿ÉÍê³ÉµÄ×Ü´ÎÊý£¬0±íʾ²»ÏÞ´ÎÊý def GetSingleTimes(self): return self.SingleTimes # µ¥´ÎÁì½±ÐèÒªµÄ´ÎÊý def GetReward(self): return self.Reward # ½±ÀøÎïÆ·ID1 # ¶à±¶ÐÞÐеã»î¶¯Ê±¼ä±í class IPY_ActRealmPoint(): def __init__(self): self.CfgID = 0 self.Multiple = 0 self.LVLimit = 0 self.PointLimit = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetMultiple(self): return self.Multiple # ±¶Êý def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetPointLimit(self): return self.PointLimit # ÏÞÖÆ¶îÍâÐÞÐеã # ×ÚÃÅÊÔÁ¶¶Ò»»±í class IPY_TrialExchange(): def __init__(self): self.ID = 0 self.ExchangeItemIDList = [] self.ExchangeItemCount = 0 self.ExchangeItemIsBind = 0 self.CostItemID = 0 self.CostItemCount = 0 return def GetID(self): return self.ID # ¶Ò»»ID def GetExchangeItemIDList(self): return self.ExchangeItemIDList # ¶Ò»»ÎïÆ·ID def GetExchangeItemCount(self): return self.ExchangeItemCount # ¶Ò»»ÎïÆ·¸öÊý def GetExchangeItemIsBind(self): return self.ExchangeItemIsBind # ¶Ò»»ÎïÆ·ÊÇ·ñ°ó¶¨ def GetCostItemID(self): return self.CostItemID # ÏûºÄÎïÆ·ID def GetCostItemCount(self): return self.CostItemCount # ÏûºÄÎïÆ·¸öÊý # ÏɽçÊ¢µä-È«ÃñÀ´à˱í class IPY_AllPeopleParty(): def __init__(self): self.ID = 0 self.TotalTimes = 0 self.AddPoint = 0 return def GetID(self): return self.ID # ID def GetTotalTimes(self): return self.TotalTimes # ×Ü´ÎÊý def GetAddPoint(self): return self.AddPoint # ÿÍê³É´ÎÊý»ñµÃà˵ã # ÏɽçÊ¢µä-È«ÃñÀ´à˽±Àø±í class IPY_AllPeoplePartyAward(): def __init__(self): self.WorldLvNum = 0 self.Index = 0 self.NeedPoint = 0 self.Award = {} return def GetWorldLvNum(self): return self.WorldLvNum # ÊÀ½çµÈ¼¶µµ def GetIndex(self): return self.Index # Ë÷Òý def GetNeedPoint(self): return self.NeedPoint # ÐèÒªµãÊý def GetAward(self): return self.Award # ½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...], ...} # µØÍ¼NPCÅäÖñí-¹Ò»úµã class IPY_MapEventPoint(): def __init__(self): self.MapID = 0 self.NPCID = 0 self.LowLV = 0 self.HighestLV = 0 self.Defense = 0 return def GetMapID(self): return self.MapID def GetNPCID(self): return self.NPCID def GetLowLV(self): return self.LowLV # ÍÆ¼ö×îµÍµÈ¼¶ def GetHighestLV(self): return self.HighestLV # ÍÆ¼ö×î¸ßµÈ¼¶ def GetDefense(self): return self.Defense # ÍÆ¼ö·ÀÓù # Ì츳¼¼Äܱí class IPY_TalentSkill(): def __init__(self): self.SkillID = 0 self.TalentType = 0 self.Series = 0 return def GetSkillID(self): return self.SkillID # ¼¼ÄÜID def GetTalentType(self): return self.TalentType # Ì츳ÀàÐÍ def GetSeries(self): return self.Series # Ì츳ϵ±ð # ÏÞʱÇÀ¹º±í class IPY_ActFlashSale(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.StartTimeList = [] self.EndTimeList = [] self.AdvanceMinutes = 0 self.LVLimit = 0 self.IsDayReset = 0 self.ShopTypeList = [] self.MailKey = "" self.MailItemPrize = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetStartTimeList(self): return self.StartTimeList # ¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetEndTimeList(self): return self.EndTimeList # ½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetShopTypeList(self): return self.ShopTypeList # É̵êÀàÐÍÁбí def GetMailKey(self): return self.MailKey # »î¶¯¸üÐÂʱ·¢ËÍÓʼþkey def GetMailItemPrize(self): return self.MailItemPrize # »î¶¯¸üÐÂʱ·¢ËÍÓʼþ½±ÀøÎïÆ· # ÐíÔ¸³Ø»î¶¯Ê±¼ä±í class IPY_ActWishingWell(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.IsDayReset = 0 self.ResetType = 0 self.LVLimit = 0 self.TemplateID = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ # ÐíÔ¸³Ø¿âÄ£°å±í class IPY_WishingWell(): def __init__(self): self.TemplateID = 0 self.IsFree = 0 self.WorldLVLimit = [] self.ItemID = 0 self.ItemCnt = 0 self.IsBind = 0 self.Weight = 0 self.Mark = 0 self.Rare = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetIsFree(self): return self.IsFree # ÊÇ·ñÃâ·Ñ¿â def GetWorldLVLimit(self): return self.WorldLVLimit # ÊÀ½çµÈ¼¶·¶Î§ def GetItemID(self): return self.ItemID # ÎïÆ·ID def GetItemCnt(self): return self.ItemCnt # ÎïÆ·ÊýÁ¿ def GetIsBind(self): return self.IsBind # ÊÇ·ñ°ó¶¨ def GetWeight(self): return self.Weight # È¨ÖØ def GetMark(self): return self.Mark # ÅÅÐòÓñêʶ def GetRare(self): return self.Rare # Õäϡֵ # ¹¦ÄÜÔ¤¸æ±í class IPY_FunctionForecast(): def __init__(self): self.FuncID = 0 self.Award = {} return def GetFuncID(self): return self.FuncID # ¹¦ÄÜID def GetAward(self): return self.Award # ÊôÐÔÀàÐÍ # ÁÄÌìÆøÅݱí class IPY_ChatBubbleBox(): def __init__(self): self.BoxID = 0 self.NeedLV = 0 self.NeedVIPLVGift = 0 return def GetBoxID(self): return self.BoxID # ÆøÅÝ¿òID def GetNeedLV(self): return self.NeedLV # ËùÐèµÈ¼¶ def GetNeedVIPLVGift(self): return self.NeedVIPLVGift # ËùÐ蹺ÂòVIPµÈ¼¶Àñ°ü # ³äÖµ·µÀû»î¶¯±í class IPY_ActRechargePrize(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.TemplateIDList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetTemplateIDList(self): return self.TemplateIDList # Ä£°åIDÁбí # ³äÖµ·µÀûÄ£°å±í class IPY_RechargePrizeTemplate(): def __init__(self): self.TemplateID = 0 self.CTGID = 0 self.GoldPrize = 0 self.PrizeCountLimit = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetCTGID(self): return self.CTGID # ³äÖµ±í³äÖµID def GetGoldPrize(self): return self.GoldPrize # ·µÀûÏÉÓñÊý def GetPrizeCountLimit(self): return self.PrizeCountLimit # ×î´óÔùËÍ´ÎÊý # ÀۼƳäÖµ»î¶¯±í class IPY_ActTotalRecharge(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.TemplateIDList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetTemplateIDList(self): return self.TemplateIDList # Ä£°åIDÁбí # ÀۼƳäֵģ°å±í class IPY_TotalRechargeTemplate(): def __init__(self): self.TemplateID = 0 self.NeedGold = 0.0 self.AwardIndex = 0 self.AwardItem = {} self.NotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetNeedGold(self): return self.NeedGold # ÐèÒª³äÖµRMB£¬Ôª def GetAwardIndex(self): return self.AwardIndex # ·µÀû½±ÀøË÷Òý0~31,ͬ¸öÄ£°åÖв»Öظ´ def GetAwardItem(self): return self.AwardItem # ·µÀûÎïÆ·ÐÅÏ¢Áбí {Ö°Òµ:[(ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨),...]} def GetNotifyKey(self): return self.NotifyKey # È«·þ¹ã²¥key£¬Ä¬ÈÏÁ½¸ö²ÎÊý(Íæ¼ÒÃû, µµÎ»¶î¶È) # ÀۼƳäÖµ·µÀûÏÉÓñ»î¶¯±í class IPY_ActRechargeRebateGold(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.TemplateIDList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetTemplateIDList(self): return self.TemplateIDList # Ä£°åIDÁбí # ÀۼƳäÖµ·µÀûÏÉÓñÄ£°å±í class IPY_RechargeRebateGoldTemplate(): def __init__(self): self.TemplateID = 0 self.RMBMin = 0 self.RMBMax = 0 self.RebateRate = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetRMBMin(self): return self.RMBMin # ³äÖµRMB×îСֵ def GetRMBMax(self): return self.RMBMax # ³äÖµRMB×î´óÖµ def GetRebateRate(self): return self.RebateRate # ·µÀûÏÉÓñ±ÈÀý°Ù·Ö±È # ³É³¤±ØÂò»î¶¯±í class IPY_ActGrowupBuy(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.CTGIDGroupList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetCTGIDGroupList(self): return self.CTGIDGroupList # ³äÖµ±àºÅ×éÁбí [[ctgID, ...], ...] # ¶àÈÕÁ¬³ä»î¶¯±í class IPY_ActManyDayRecharge(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.TemplateID = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ # ¶àÈÕÁ¬³äÄ£°å±í class IPY_ActManyDayRechargeAward(): def __init__(self): self.TemplateID = 0 self.NeedRMB = 0.0 self.NeedDays = 0 self.AwardIndex = 0 self.AwardItemInfo = {} self.NotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetNeedRMB(self): return self.NeedRMB # ËùÐè³äÖµ¶î¶È def GetNeedDays(self): return self.NeedDays # ËùÐè³äÖµÌìÊý def GetAwardIndex(self): return self.AwardIndex # ½±ÀøË÷Òý def GetAwardItemInfo(self): return self.AwardItemInfo # ½±ÀøÎïÆ·ÐÅÏ¢ {ÊÀ½çµÈ¼¶·¶Î§:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...]} def GetNotifyKey(self): return self.NotifyKey # ¹ã²¥ # תÅ̻±í class IPY_ActTurntable(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.CTGTypeEffValue = 0 self.CTGPrizeList = [] self.UseGoldPrizeList = [] self.LibChooseCountList = [] self.SuperItemLimitRule = [] self.CommItemLib = {} self.GoodItemLib = {} self.SuperItemLib = {} self.WorldNotifyKey = "" return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetCTGTypeEffValue(self): return self.CTGTypeEffValue # ³äÖµÓÐЧÀàÐÍÖµ def GetCTGPrizeList(self): return self.CTGPrizeList # ÀۼƳäÖµ½±Àø´ÎÊý def GetUseGoldPrizeList(self): return self.UseGoldPrizeList # ÀÛ¼ÆÏû·ÑXÏÉÓñ½±Àø´ÎÊý def GetLibChooseCountList(self): return self.LibChooseCountList # ¸÷µÀ¾ß¿âÑ¡Ôñ¸öÊý def GetSuperItemLimitRule(self): return self.SuperItemLimitRule # ÖÕ¼«¿â²ú³öÍò·ÖÂÊ|ÖÁÉÙX´Îºó¿É²ú³ö def GetCommItemLib(self): return self.CommItemLib # ÆÕͨµÀ¾ß¿â {(ÊÀ½çµÈ¼¶A,ÊÀ½çµÈ¼¶B):[[¿ÉÑ¡ÎïÆ·ID, ¸öÊý, ÊÇ·ñÅÄÆ·], ...], ...} def GetGoodItemLib(self): return self.GoodItemLib # ¼«Æ·µÀ¾ß¿â {(ÊÀ½çµÈ¼¶A,ÊÀ½çµÈ¼¶B):[[¿ÉÑ¡ÎïÆ·ID, ¸öÊý, ÊÇ·ñÅÄÆ·], ...], ...} def GetSuperItemLib(self): return self.SuperItemLib # ³¬¼¶µÀ¾ß¿â {(ÊÀ½çµÈ¼¶A,ÊÀ½çµÈ¼¶B):[[¿ÉÑ¡ÎïÆ·ID, ¸öÊý, ÊÇ·ñÅÄÆ·], ...], ...} def GetWorldNotifyKey(self): return self.WorldNotifyKey # ºÃÎïÆ·È«·þ¹ã²¥mark£¬¼«Æ·¼°³¬¼¶µÀ¾ßĬÈÏÈ«·þ¹ã²¥ # µ¥±ÊÀÛ³ä»î¶¯±í class IPY_ActSingleRecharge(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.IsDayReset = 0 self.CTGTypeEffValue = 0 self.IsOfflineAct = 0 self.AwardRuleType = 0 self.TemplateIDList = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetCTGTypeEffValue(self): return self.CTGTypeEffValue # ³äÖµÓÐЧÀàÐÍÖµ def GetIsOfflineAct(self): return self.IsOfflineAct # ÊÇ·ñÏßÏ» def GetAwardRuleType(self): return self.AwardRuleType # Áì½±¹æÔòÀàÐÍ 0-ÏòϼæÈÝ£»1-Æ¥Åä×î¸ßµµ£»2-¾«È·Æ¥Åä¶ÔÓ¦µµ´Î def GetTemplateIDList(self): return self.TemplateIDList # Ä£°åIDÁбí # µ¥±ÊÀÛ³äÄ£°å±í class IPY_ActSingleRechargeAward(): def __init__(self): self.TemplateID = 0 self.SingleRechargeValue = 0.0 self.AwardIndex = 0 self.AwardItem = {} self.NotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetSingleRechargeValue(self): return self.SingleRechargeValue # µ¥±Ê³äÖµ¶î¶È def GetAwardIndex(self): return self.AwardIndex # ·µÀû½±ÀøË÷Òý0~31,ͬ¸öÄ£°åÖв»Öظ´ def GetAwardItem(self): return self.AwardItem # ·µÀûÎïÆ·ÐÅÏ¢Áбí {Ö°Òµ:[(ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨),...]} def GetNotifyKey(self): return self.NotifyKey # È«·þ¹ã²¥key£¬Ä¬ÈÏÁ½¸ö²ÎÊý(Íæ¼ÒÃû, µµÎ»¶î¶È) # ·¨±¦¸±±¾±í class IPY_MagicWeaponFB(): def __init__(self): self.MWID = 0 self.LineID = 0 self.Level = 0 self.RefreshNPC = [] self.AttrDict = {} return def GetMWID(self): return self.MWID # ·¨±¦ID def GetLineID(self): return self.LineID # ¸±±¾¹¦ÄÜÏß·ID def GetLevel(self): return self.Level # ¹Ø¿¨ def GetRefreshNPC(self): return self.RefreshNPC # Ë¢¹ÖÅäÖà def GetAttrDict(self): return self.AttrDict # ÊôÐÔ # ±ù¾§¿óÂöÐǼ¶½±Àø±í class IPY_IceLodeStarAward(): def __init__(self): self.Index = 0 self.Star = 0 self.LVLimit = [] self.ItemList = [] return def GetIndex(self): return self.Index # ½±ÀøË÷Òý def GetStar(self): return self.Star # ÐÇÊý def GetLVLimit(self): return self.LVLimit # µÈ¼¶·¶Î§ def GetItemList(self): return self.ItemList # ½±Àø # ¿ç·þ¾º¼¼³¡¶Îλ±í class IPY_CrossRealmPKDan(): def __init__(self): self.DanLV = 0 self.LVUpScore = 0 return def GetDanLV(self): return self.DanLV # ¶ÎλµÈ¼¶ def GetLVUpScore(self): return self.LVUpScore # Éý¶ÎλËùÐè»ý·Ö # ¿ç·þ¾º¼¼³¡¶Îλ½±Àø±í class IPY_CrossRealmPKDanAward(): def __init__(self): self.CrossZoneName = "" self.SeasonID = 0 self.DanLV = 0 self.DanLVAwardList = [] self.SeasonDanLVAwardList = [] return def GetCrossZoneName(self): return self.CrossZoneName # ¿ç·þ·ÖÇøÃû def GetSeasonID(self): return self.SeasonID # Èü¼¾ID def GetDanLV(self): return self.DanLV # ¶ÎλµÈ¼¶ def GetDanLVAwardList(self): return self.DanLVAwardList # ¶Îλ´ï±ê½±ÀøÎïÆ·Áбí [[½±ÀøÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...] def GetSeasonDanLVAwardList(self): return self.SeasonDanLVAwardList # Èü¼¾¶Îλ½±ÀøÎïÆ·Áбí [[½±ÀøÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...] # ¿ç·þ¾º¼¼³¡ÅÅÃû½±Àø±í class IPY_CrossRealmPKOrderAward(): def __init__(self): self.CrossZoneName = "" self.SeasonID = 0 self.OrderAwardInfo = {} return def GetCrossZoneName(self): return self.CrossZoneName # ¿ç·þ·ÖÇøÃû def GetSeasonID(self): return self.SeasonID # Èü¼¾ID def GetOrderAwardInfo(self): return self.OrderAwardInfo # Èü¼¾ÅÅÃû½±ÀøÐÅÏ¢ {"ÅÅÃû":[[½±ÀøÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨], ...], ...} # ¿ç·þ·ÖÇø±íͨÓà class IPY_CrossZoneComm(): def __init__(self): self.CrossZoneName = "" self.ZoneID = 0 self.ServerGroupIDList = [] return def GetCrossZoneName(self): return self.CrossZoneName # ¿ç·þ·ÖÇøÃû def GetZoneID(self): return self.ZoneID # ÈüÇøID def GetServerGroupIDList(self): return self.ServerGroupIDList # ÈüÇø·þÎñÆ÷×éIDÁбí # ¿ç·þ·ÖÇø±í¾º¼¼³¡ class IPY_CrossZonePK(): def __init__(self): self.CrossZoneName = "" self.ZoneID = 0 self.ServerGroupIDList = [] return def GetCrossZoneName(self): return self.CrossZoneName # ¿ç·þ·ÖÇøÃû def GetZoneID(self): return self.ZoneID # ÈüÇøID def GetServerGroupIDList(self): return self.ServerGroupIDList # ÈüÇø·þÎñÆ÷×éIDÁбí # ¿ç·þBossÅîÀ³Ïɾ³·ÖÇøµØÍ¼±í class IPY_CrossPenglaiZoneMap(): def __init__(self): self.ZoneID = 0 self.MapID = 0 self.DataMapID = 0 self.CopyMapID = 0 self.PosX = 0 self.PosY = 0 return def GetZoneID(self): return self.ZoneID # ·ÖÇøID def GetMapID(self): return self.MapID # ³¡¾°µØÍ¼ID def GetDataMapID(self): return self.DataMapID # Êý¾ÝµØÍ¼ID def GetCopyMapID(self): return self.CopyMapID # ÐéÄâÏß·ID def GetPosX(self): return self.PosX # ×ø±êX def GetPosY(self): return self.PosY # ×ø±êY # ¾Û»ê±í class IPY_GatherSoul(): def __init__(self): self.ItemID = 0 self.AttrType = [] self.SoulGrade = 0 return def GetItemID(self): return self.ItemID # ÎïÆ·ID def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetSoulGrade(self): return self.SoulGrade # »ê½×¶Î # ¾Û»êºÏ³É±í class IPY_GatherSoulCompound(): def __init__(self): self.TagItemID = 0 self.NeedLV = 0 self.NeedItem = [] self.NeedSoulSplinters = 0 self.NeedSoulCore = 0 return def GetTagItemID(self): return self.TagItemID # ºÏ³ÉµÄÎïÆ·ID def GetNeedLV(self): return self.NeedLV # ÐèÒªµÄÍæ¼ÒµÈ¼¶ def GetNeedItem(self): return self.NeedItem # ÐèÒªµÄÎïÆ·ID def GetNeedSoulSplinters(self): return self.NeedSoulSplinters # ÐèÒªµÄ¾Û»êË鯬 def GetNeedSoulCore(self): return self.NeedSoulCore # ÐèÒªµÄºËÐÄ»· # ¾Û»êÊôÐÔ±í class IPY_GatherSoulAttr(): def __init__(self): self.AttrType = 0 self.AttrInfo1 = "" self.AttrInfo2 = {} self.AttrInfo3 = {} self.AttrInfo4 = {} self.AttrInfo5 = {} return def GetAttrType(self): return self.AttrType # ÊôÐÔÀàÐÍ def GetAttrInfo1(self): return self.AttrInfo1 # »ù´¡ÊôÐÔ-²ÎÊý¾Û»êµÈ¼¶level def GetAttrInfo2(self): return self.AttrInfo2 # Æ·ÖÊϵÊý(Æ·ÖÊ_ϵÊý|¡­) def GetAttrInfo3(self): return self.AttrInfo3 # ¶àÊôÐÔϵÊý def GetAttrInfo4(self): return self.AttrInfo4 # ³õʼÊôÐÔ(Æ·ÖÊ_ÊôÐÔÖµ|¡­) def GetAttrInfo5(self): return self.AttrInfo5 # ½×¶ÎϵÊý # ÍõÕß·¨±¦±í class IPY_MagicWeaponOfKing(): def __init__(self): self.MWID = 0 self.AwardMark = 0 self.AddAttr = {} return def GetMWID(self): return self.MWID # ·¨±¦ID def GetAwardMark(self): return self.AwardMark # Èü¼¾½±ÀøµÈ¼¶ def GetAddAttr(self): return self.AddAttr # ÊôÐÔ # ʱװ±í class IPY_Coat(): def __init__(self): self.CoatID = 0 self.EquipItemID = [] self.UnlockItemID = 0 self.MaxLV = 0 self.CostItemCnt = [] self.StarAttr = {} return def GetCoatID(self): return self.CoatID # ʱװ±àºÅ def GetEquipItemID(self): return self.EquipItemID # ×°±¸ÎïÆ·ID(°´Ö°ÒµË³Ðò) def GetUnlockItemID(self): return self.UnlockItemID # ²ÄÁÏÎïÆ·ID def GetMaxLV(self): return self.MaxLV # ×î´óÐǼ¶ def GetCostItemCnt(self): return self.CostItemCnt # ²ÄÁÏÊýÁ¿ def GetStarAttr(self): return self.StarAttr # ÊôÐÔ # ʱװ¹ñÉý¼¶±í class IPY_CoatChestUp(): def __init__(self): self.LV = 0 self.NeedExp = 0 self.AddAttr = {} return def GetLV(self): return self.LV # µÈ¼¶ def GetNeedExp(self): return self.NeedExp # Éý¼¶ËùÐè¾­Ñé def GetAddAttr(self): return self.AddAttr # ÊôÐÔ # ÖÜ¿ñ»¶»î¶¯Ê±¼ä±í class IPY_ActWeekParty(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.AdvanceMinutes = 0 self.IsDayReset = 0 self.ResetType = 0 self.LVLimit = 0 self.TemplateID = [] self.PointAward = {} return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ def GetPointAward(self): return self.PointAward # ×Ü»ý·Ö½±Àø # ÖÜ¿ñ»¶±í class IPY_WeekParty(): def __init__(self): self.TemplateID = 0 self.ActionType = 0 self.TotalTimes = 0 self.SingleTimes = 0 self.Reward = [] self.Point = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetActionType(self): return self.ActionType # »î¶¯ÌõÄ¿ID def GetTotalTimes(self): return self.TotalTimes # ¿ÉÍê³ÉµÄ×Ü´ÎÊý£¬0±íʾ²»ÏÞ´ÎÊý def GetSingleTimes(self): return self.SingleTimes # µ¥´ÎÁì½±ÐèÒªµÄ´ÎÊý def GetReward(self): return self.Reward # ½±ÀøÎïÆ· def GetPoint(self): return self.Point # »ý·Ö # µÇ¼½±ÀøÊ±¼ä±í class IPY_ActLoginAward(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.AdvanceMinutes = 0 self.IsDayReset = 0 self.ResetType = 0 self.LVLimit = 0 self.TemplateID = [] return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ # µÇ¼½±ÀøÄ£°å±í class IPY_LoginAward(): def __init__(self): self.TemplateID = 0 self.ActionType = 0 self.TotalTimes = 0 self.SingleTimes = 0 self.Reward = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetActionType(self): return self.ActionType # »î¶¯ÌõÄ¿ID def GetTotalTimes(self): return self.TotalTimes # ¿ÉÍê³ÉµÄ×Ü´ÎÊý£¬0±íʾ²»ÏÞ´ÎÊý def GetSingleTimes(self): return self.SingleTimes # µ¥´ÎÁì½±ÐèÒªµÄ´ÎÊý def GetReward(self): return self.Reward # ½±ÀøÎïÆ· # ½ÚÈյǼ½±ÀøÊ±¼ä±í class IPY_ActFeastLogin(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.TemplateIDInfo = {} return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateIDInfo(self): return self.TemplateIDInfo # Ä£°åÐÅÏ¢ {(ÊÀ½çµÈ¼¶A,B):½±ÀøÄ£°å±àºÅ, ...} # ½ÚÈյǼ½±ÀøÄ£°å±í class IPY_ActFeastLoginAward(): def __init__(self): self.TemplateID = 0 self.DayNum = 0 self.LoginAwardItemList = [] return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetDayNum(self): return self.DayNum # µÚXÌì´Ó1¿ªÊ¼ def GetLoginAwardItemList(self): return self.LoginAwardItemList # ½±ÀøÁбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ½ÚÈÕ×£¸£Ê±¼ä±í class IPY_ActFeastWish(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.ResetType = 0 self.TemplateIDInfo = {} return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetTemplateIDInfo(self): return self.TemplateIDInfo # Ä£°åÐÅÏ¢ {(ÊÀ½çµÈ¼¶A,B):Ä£°å±àºÅ, ...} # ½ÚÈÕ×£¸£Æ¿Ä£°å±í class IPY_ActFeastWishBottle(): def __init__(self): self.TemplateID = 0 self.WishBottleNum = 0 self.NeedWishValue = 0 self.ChooseTimeMax = 0 self.ChoosePrizeItem = {} self.GoodItemIDList = [] self.WorldNotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetWishBottleNum(self): return self.WishBottleNum # ×£¸£Æ¿±àºÅ def GetNeedWishValue(self): return self.NeedWishValue # µ¥´ÎÁì½±ËùÐè×£¸£Öµ def GetChooseTimeMax(self): return self.ChooseTimeMax # ×î´ó¿ÉÁì½±´ÎÊý def GetChoosePrizeItem(self): return self.ChoosePrizeItem # Ñ¡Ôñ½±ÀøÎïÆ·ÐÅÏ¢£¬Ñ¡ÍêΪֹ {¼Ç¼Ë÷Òý:[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...} def GetGoodItemIDList(self): return self.GoodItemIDList # ÐèÒª¹ã²¥µÄÎïÆ·IDÁбí [ÎïÆ·ID, ...] def GetWorldNotifyKey(self): return self.WorldNotifyKey # È«·þ¹ã²¥key£¬²ÎÊý(Íæ¼ÒÃû, ÎïÆ·ID, ÎïÆ·Êý¾Ý, ¸öÊý,) # ½ÚÈÕ×£¸£³ØÄ£°å±í class IPY_ActFeastWishPool(): def __init__(self): self.TemplateID = 0 self.WishPoolItemWeightInfo = [] self.WishPoolClientItemShow = [] self.GoodItemIDList = [] self.WorldNotifyKey = "" return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetWishPoolItemWeightInfo(self): return self.WishPoolItemWeightInfo # ×£¸£³Ø²ú³öÎïÆ·È¨ÖØ [[È¨ÖØ, [ÎïÆ·ID,¸öÊý]], ..] def GetWishPoolClientItemShow(self): return self.WishPoolClientItemShow # ǰ¶ËչʾÎïÆ·Áбí [ÎïÆ·ID, ...] def GetGoodItemIDList(self): return self.GoodItemIDList # ÐèÒª¹ã²¥µÄÎïÆ·IDÁбí [ÎïÆ·ID, ...] def GetWorldNotifyKey(self): return self.WorldNotifyKey # È«·þ¹ã²¥key£¬²ÎÊý(Íæ¼ÒÃû, ÎïÆ·ID, ÎïÆ·Êý¾Ý, ¸öÊý,) # ½ÚÈÕÓÎÀúʱ¼ä±í class IPY_ActFeastTravel(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.LVLimit = 0 self.ResetType = 0 self.TemplateIDInfo = {} return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetTemplateIDInfo(self): return self.TemplateIDInfo # Ä£°åÐÅÏ¢ {(ÊÀ½çµÈ¼¶A,B):Ä£°å±àºÅ, ...} # ½ÚÈÕÓÎÀúÈÎÎñ±í class IPY_ActFeastTravelTask(): def __init__(self): self.TraveTasklD = 0 self.FinishNeedValue = 0 self.FinishTimeMax = 0 self.AddTravelPoint = 0 return def GetTraveTasklD(self): return self.TraveTasklD # ÓÎÀúID def GetFinishNeedValue(self): return self.FinishNeedValue # Íê³ÉËùÐè½ø¶ÈÖµ def GetFinishTimeMax(self): return self.FinishTimeMax # ×Ü¿ÉÍê³É´ÎÊý£¬0²»ÏÞ def GetAddTravelPoint(self): return self.AddTravelPoint # Íê³É´ÎÊý»ñµÃÓÎÀúÖµ # ½ÚÈÕÓÎÀú½±Àø±í class IPY_ActFeastTravelAward(): def __init__(self): self.TemplatelD = 0 self.RecordIndex = 0 self.NeedTravelPoint = 0 self.AwardCountMax = 0 self.TravelAwardInfo = [] return def GetTemplatelD(self): return self.TemplatelD # ½±ÀøÄ£°åID def GetRecordIndex(self): return self.RecordIndex # ½±Àø¼Ç¼Ë÷Òý def GetNeedTravelPoint(self): return self.NeedTravelPoint # Áì½±ËùÐèÓÎÀúÖµ def GetAwardCountMax(self): return self.AwardCountMax # ¿ÉÁìÈ¡´ÎÊý£¬0´ú±í²»ÏÞ def GetTravelAwardInfo(self): return self.TravelAwardInfo # ÓÎÀú½±Àø [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ÖïÏÉBOSS±í class IPY_ZhuXianBoss(): def __init__(self): self.NPCID = 0 self.LineID = 0 self.RealmLV = 0 self.ZhuXianScore = 0 return def GetNPCID(self): return self.NPCID # ID def GetLineID(self): return self.LineID def GetRealmLV(self): return self.RealmLV # ÐèÒª¾³½ç def GetZhuXianScore(self): return self.ZhuXianScore # ÐèÒªÖïÏÉ×ÜÆÀ·Ö # ½ÚÈÕѲÀñ»î¶¯Ê±¼ä±í class IPY_ActFeastWeekParty(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.AdvanceMinutes = 0 self.IsDayReset = 0 self.ResetType = 0 self.LVLimit = 0 self.TemplateID = [] self.PointAward = {} return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetAdvanceMinutes(self): return self.AdvanceMinutes # ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ def GetIsDayReset(self): return self.IsDayReset # ÊÇ·ñÿÌìÖØÖà def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ def GetPointAward(self): return self.PointAward # ×Ü»ý·Ö½±Àø # ½ÚÈÕѲÀñÄ£°å±í class IPY_FeastWeekParty(): def __init__(self): self.TemplateID = 0 self.ActionType = 0 self.TotalTimes = 0 self.SingleTimes = 0 self.Reward = [] self.Point = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetActionType(self): return self.ActionType # »î¶¯ÌõÄ¿ID def GetTotalTimes(self): return self.TotalTimes # ¿ÉÍê³ÉµÄ×Ü´ÎÊý£¬0±íʾ²»ÏÞ´ÎÊý def GetSingleTimes(self): return self.SingleTimes # µ¥´ÎÁì½±ÐèÒªµÄ´ÎÊý def GetReward(self): return self.Reward # ½±ÀøÎïÆ· def GetPoint(self): return self.Point # »ý·Ö # ÐÂÏɽçÊ¢µä-È«ÃñÀ´à˱í class IPY_NewAllPeopleParty(): def __init__(self): self.ID = 0 self.TotalTimes = 0 self.AddPoint = 0 return def GetID(self): return self.ID # ID def GetTotalTimes(self): return self.TotalTimes # ×Ü´ÎÊý def GetAddPoint(self): return self.AddPoint # ÿÍê³É´ÎÊý»ñµÃà˵ã # ÐÂÏɽçÊ¢µä-È«ÃñÀ´à˽±Àø±í class IPY_NewAllPeoplePartyAward(): def __init__(self): self.WorldLvNum = 0 self.Index = 0 self.NeedPoint = 0 self.Award = {} return def GetWorldLvNum(self): return self.WorldLvNum # ÊÀ½çµÈ¼¶µµ def GetIndex(self): return self.Index # Ë÷Òý def GetNeedPoint(self): return self.NeedPoint # ÐèÒªµãÊý def GetAward(self): return self.Award # ½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...], ...} # ÐÒÔ˼ø±¦»î¶¯Ê±¼ä±í class IPY_ActLuckyTreasure(): def __init__(self): self.CfgID = 0 self.StartDate = "" self.EndDate = "" self.ResetType = 0 self.LVLimit = 0 self.TemplateID = 0 self.LuckyPoint = 0 return def GetCfgID(self): return self.CfgID # ÅäÖÃID def GetStartDate(self): return self.StartDate # ¿ªÆôÈÕÆÚ def GetEndDate(self): return self.EndDate # ½áÊøÈÕÆÚ def GetResetType(self): return self.ResetType # ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà def GetLVLimit(self): return self.LVLimit # ÏÞÖÆµÈ¼¶ def GetTemplateID(self): return self.TemplateID # Ä£°å±àºÅ def GetLuckyPoint(self): return self.LuckyPoint # ×ÜÐÒÔËÖµ # ÐÒÔ˼ø±¦¿âÄ£°å±í class IPY_LuckyTreasureTemplate(): def __init__(self): self.TemplateID = 0 self.WorldLVLimit = [] self.ItemID = 0 self.ItemCnt = 0 self.IsBind = 0 self.Weight = 0 return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetWorldLVLimit(self): return self.WorldLVLimit # ÊÀ½çµÈ¼¶·¶Î§ def GetItemID(self): return self.ItemID # ÎïÆ·ID def GetItemCnt(self): return self.ItemCnt # ÎïÆ·ÊýÁ¿ def GetIsBind(self): return self.IsBind # ÊÇ·ñ°ó¶¨ def GetWeight(self): return self.Weight # È¨ÖØ # ¿ç·þ³äÖµÅÅÐÐÄ£°å´ï±ê½±Àø±í class IPY_CrossActCTGBillboardDabiao(): def __init__(self): self.TemplateID = 0 self.CTGNeed = 0.0 self.AwardIndex = 0 self.AwardItemList = [] return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetCTGNeed(self): return self.CTGNeed # Ðè³äÖµRMB def GetAwardIndex(self): return self.AwardIndex # ½±Àø¼Ç¼Ë÷Òý£¬´Ó0¿ªÊ¼£¬Í¬¸öÄ£°å²»¿ÉÖØ¸´£¬²»¿É±ä¸ü def GetAwardItemList(self): return self.AwardItemList # ½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ¿ç·þ³äÖµÅÅÐÐÄ£°åÃû´Î½±Àø±í class IPY_CrossActCTGBillboardOrder(): def __init__(self): self.TemplateID = 0 self.OrderA = 0 self.OrderB = 0 self.CTGAtleast = 0.0 self.AwardItemList = [] return def GetTemplateID(self): return self.TemplateID # Ä£°åID def GetOrderA(self): return self.OrderA # Ãû´ÎA def GetOrderB(self): return self.OrderB # ÖÁÃû´ÎB def GetCTGAtleast(self): return self.CTGAtleast # ÖÁÉÙ³äÖµRMB def GetAwardItemList(self): return self.AwardItemList # ½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ÉñÃØÉ̵ê±í class IPY_MysteryShop(): def __init__(self): self.LVRange = [] self.GoodsID = 0 return def GetLVRange(self): return self.LVRange # µÈ¼¶·¶Î§ def GetGoodsID(self): return self.GoodsID # É̳DZíID # ×°±¸Î»±³°üË÷ÒýÓ³Éä±í class IPY_EquipPlaceIndexMap(): def __init__(self): self.GridIndex = 0 self.ClassLV = 0 self.EquipPlace = 0 return def GetGridIndex(self): return self.GridIndex # ±³°ü¸ñ×ÓË÷Òý def GetClassLV(self): return self.ClassLV # ½×¼¶(ÎïÆ·±íLV×Ö¶Î) def GetEquipPlace(self): return self.EquipPlace # ×°±¸Î»(ÎïÆ·±íEquipPlace×Ö¶Î) # ×°±¸Éñ×°±í class IPY_EquipShenAttr(): def __init__(self): self.EquipItemID = 0 self.ShenAttrIDList = [] self.ShenAttrValueList = [] self.XianAttrIDList = [] self.XianAttrValueList = [] self.JiAttrIDList = [] self.JiAttrValueList = [] self.LegendAttrIDList = [] self.LegendAttrValueList = [] return def GetEquipItemID(self): return self.EquipItemID # ×°±¸ID def GetShenAttrIDList(self): return self.ShenAttrIDList # ÉñÆ·´«ÆæÊôÐÔIDÁбí def GetShenAttrValueList(self): return self.ShenAttrValueList # ÉñÆ·´«ÆæÊôÐÔÖµÁбí def GetXianAttrIDList(self): return self.XianAttrIDList # ÏÉÆ·´«ÆæÊôÐÔIDÁбí def GetXianAttrValueList(self): return self.XianAttrValueList # ÏÉÆ·´«ÆæÊôÐÔÖµÁбí def GetJiAttrIDList(self): return self.JiAttrIDList # ¼«Æ·´«ÆæÊôÐÔIDÁбí def GetJiAttrValueList(self): return self.JiAttrValueList # ¼«Æ·´«ÆæÊôÐÔÖµÁбí def GetLegendAttrIDList(self): return self.LegendAttrIDList # ÆÕͨ´«ÆæÊôÐÔIDÁбí def GetLegendAttrValueList(self): return self.LegendAttrValueList # ÆÕͨ´«ÆæÊôÐÔÖµÁбí # ×°±¸Éñ×°½ø½×±í class IPY_EquipShenEvolve(): def __init__(self): self.EquipItemID = 0 self.EvolveEquipID = 0 self.EvolveNeedItemIDInfo = [] self.EvolveNeedSuitCount = 0 self.EvolveNeedEquipID = 0 return def GetEquipItemID(self): return self.EquipItemID # ×°±¸ID def GetEvolveEquipID(self): return self.EvolveEquipID # ¿É½ø½×Ä¿±ê×°±¸ID def GetEvolveNeedItemIDInfo(self): return self.EvolveNeedItemIDInfo # ½ø½×ËùÐ踽¼Ó²ÄÁϼ°¸öÊý def GetEvolveNeedSuitCount(self): return self.EvolveNeedSuitCount # ½ø½×ËùÐè±¾½×Ì××°¼þÊý def GetEvolveNeedEquipID(self): return self.EvolveNeedEquipID # ½ø½×ËùÐè¹Ì¶¨×°±¸ID # ×°±¸ÉýÐDZí class IPY_EquipStarUp(): def __init__(self): self.ClassLV = 0 self.EquipPlace = 0 self.Star = 0 self.CostEquipPlace = [] self.IsJobLimit = 0 self.CostEquipColor = [] self.CostEquipCnt = 0 self.UnSuitRate = 0 self.SuitRate = 0 self.CostItemDict = {} self.StarAttrInfo = {} self.BaseAttrInfo = {} return def GetClassLV(self): return self.ClassLV # ½×¼¶ def GetEquipPlace(self): return self.EquipPlace # ×°±¸Î» def GetStar(self): return self.Star # ÐÇÊý def GetCostEquipPlace(self): return self.CostEquipPlace # ¿ÉÓÃ×°±¸²¿Î» def GetIsJobLimit(self): return self.IsJobLimit # ÊÇ·ñÖ»Óñ¾Ö°Òµ×°±¸²ÄÁÏ def GetCostEquipColor(self): return self.CostEquipColor # ¿ÉÓÃ×°±¸Æ·ÖÊ def GetCostEquipCnt(self): return self.CostEquipCnt # ×°±¸ÊýÁ¿ def GetUnSuitRate(self): return self.UnSuitRate # µ¥¼þ·ÇÌ××°¼Ó³É¸ÅÂÊ def GetSuitRate(self): return self.SuitRate # µ¥¼þÌ××°¼Ó³É¸ÅÂÊ def GetCostItemDict(self): return self.CostItemDict # ÌØÊâ²ÄÁÏ def GetStarAttrInfo(self): return self.StarAttrInfo # ÐǼ¶ÊôÐÔ def GetBaseAttrInfo(self): return self.BaseAttrInfo # »ù´¡ÊôÐÔÔö¼Ó # ×°±¸Ç¿»¯½ø»¯±í class IPY_EquipPlusEvolve(): def __init__(self): self.EquipPlace = 0 self.EvolveLV = 0 self.NeedPlusLV = 0 self.CostItem = {} self.Attr = {} return def GetEquipPlace(self): return self.EquipPlace # ×°±¸Î» def GetEvolveLV(self): return self.EvolveLV # ½ø»¯µÈ¼¶ def GetNeedPlusLV(self): return self.NeedPlusLV # ÐèҪǿ»¯µÈ¼¶ def GetCostItem(self): return self.CostItem # ÏûºÄ²ÄÁÏ def GetAttr(self): return self.Attr # ÊôÐÔ # ÏÉÃËBoss½±Àø±í class IPY_FamilyBossAward(): def __init__(self): self.BossID = 0 self.WorldLV = [] self.Rank = [] self.Award1 = [] self.Award2 = {} return def GetBossID(self): return self.BossID # BossID def GetWorldLV(self): return self.WorldLV # ÊÀ½çµÈ¼¶ def GetRank(self): return self.Rank # ÅÅÃû def GetAward1(self): return self.Award1 # ½±Àø [[¶ÀÁ¢¸ÅÂÊÍò·ÖÂÊ,[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·]],..] def GetAward2(self): return self.Award2 # ±ýͼ½±Àø{Ëæ»ú´ÎÊý:[(¸ÅÂÊ,[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·]),..]} # ×°±¸Ï´Á·µÈ¼¶ÉÏÏÞ class IPY_ItemWashMax(): def __init__(self): self.Type = 0 self.Star = 0 self.LevelMax = 0 return def GetType(self): return self.Type # °´×°±¸Î»¶ÔÓ¦ÀàÐͲéÕÒ def GetStar(self): return self.Star # ×°±¸ÐÇÊý def GetLevelMax(self): return self.LevelMax # Ï´Á·µÈ¼¶ÉÏÏÞ # Æï³èBoss½±Àø±í class IPY_HorsePetBossAward(): def __init__(self): self.LineID = 0 self.WorldLV = [] self.Rank = [] self.Award1 = [] self.Award2 = [] return def GetLineID(self): return self.LineID # Ïß·ID def GetWorldLV(self): return self.WorldLV # ÊÀ½çµÈ¼¶ def GetRank(self): return self.Rank # ÅÅÃû def GetAward1(self): return self.Award1 # ½±Àø [[¶ÀÁ¢¸ÅÂÊÍò·ÖÂÊ,[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·]],..] def GetAward2(self): return self.Award2 # ±ýͼ½±Àø [[(¸ÅÂÊ,[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·]),..]] # çÎç¿ÏÉÓò±í class IPY_FairyDomain(): def __init__(self): self.ID = 0 self.EventType = 0 self.MapID = 0 self.LineID = 0 self.BossID = 0 self.EventFBType = 0 self.CostEnergy = 0 self.NeedAlchemyLV = 0 self.NeedLV = [] self.Weight = 0 self.HourCntPriLimit = 0 self.DayCntPriLimit = 0 return def GetID(self): return self.ID # ʼþ±àºÅ def GetEventType(self): return self.EventType # ʼþÀàÐÍ def GetMapID(self): return self.MapID # ¸±±¾id def GetLineID(self): return self.LineID # ¸±±¾Ïß·id def GetBossID(self): return self.BossID # ¸±±¾BossID def GetEventFBType(self): return self.EventFBType # ʼþ¸±±¾ÀàÐÍ£¬0-ǰ¶Ë£¬1-±¾·þ£¬2-¿ç·þ def GetCostEnergy(self): return self.CostEnergy # ÏûºÄÌåÁ¦ def GetNeedAlchemyLV(self): return self.NeedAlchemyLV # ³öÏÖµÄÁ¶µ¤µÈ¼¶ÒªÇó def GetNeedLV(self): return self.NeedLV # ³öÏÖµÄÍæ¼ÒµÈ¼¶ÒªÇó def GetWeight(self): return self.Weight # È¨ÖØ def GetHourCntPriLimit(self): return self.HourCntPriLimit # ¸öÈËÿСʱ´ÎÊýÏÞÖÆ def GetDayCntPriLimit(self): return self.DayCntPriLimit # ¸öÈËÿÌì´ÎÊýÏÞÖÆ # çÎç¿ÆæÓö±í class IPY_FairyAdventures(): def __init__(self): self.ID = 0 self.OpenServerDay = 0 self.EventID = 0 self.Condition = [] self.GearAward = [] self.BasicAward = [] return def GetID(self): return self.ID # ΨһID def GetOpenServerDay(self): return self.OpenServerDay # ¿ª·þÌì def GetEventID(self): return self.EventID # ʼþ±àºÅ def GetCondition(self): return self.Condition # Ìõ¼þ def GetGearAward(self): return self.GearAward # µµÎ»½±Àø def GetBasicAward(self): return self.BasicAward # ±£µ×½±Àø # çÎç¿ÏÉÓò¶¨ÖƱí class IPY_FairyDomainAppoint(): def __init__(self): self.Cnt = 0 self.EventID = 0 self.Award = [] self.RandomAward = [] return def GetCnt(self): return self.Cnt # ´ÎÊý def GetEventID(self): return self.EventID # ʼþ±àºÅ def GetAward(self): return self.Award # ¶¨Öƽ±Àø£¨Ã»Åä×ßÕý³£½±Àø¹æÔò£©[[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·],..] def GetRandomAward(self): return self.RandomAward # Ëæ»ú½±Àø [[(È¨ÖØ,[ÎïÆ·ID,ÊýÁ¿,ÊÇ·ñÅÄÆ·]),..],..] # ¸±±¾Buff±í class IPY_FBBuyBuff(): def __init__(self): self.MapId = 0 self.MoneyCnt = 0 self.BuffID = 0 self.BuffCD = 0 return def GetMapId(self): return self.MapId # def GetMoneyCnt(self): return self.MoneyCnt # ÏÉÓñÊýÁ¿ def GetBuffID(self): return self.BuffID # BuffID def GetBuffCD(self): return self.BuffCD # ¼ä¸ôʱ¼äs # ¼¼ÄÜÉý¼¶±í class IPY_SkillElement(): def __init__(self): self.ElementSkillID = 0 self.ElementSkillNum = 0 self.MainSkillID = 0 self.NeedLV = 0 return def GetElementSkillID(self): return self.ElementSkillID # ר¾«¼¼ÄÜID def GetElementSkillNum(self): return self.ElementSkillNum # ר¾«¼¼ÄܱàºÅ def GetMainSkillID(self): return self.MainSkillID # Ö÷¼¼ÄÜID def GetNeedLV(self): return self.NeedLV # Ñ¡ÔñÐèÒªµÈ¼¶ # ÌìÐÇËþ±í class IPY_SkyTower(): def __init__(self): self.FloorID = 0 self.BossID = 0 self.Reward = {} self.NeedLV = 0 self.FightPower = 0 self.IsNotify = 0 return def GetFloorID(self): return self.FloorID # ²ã def GetBossID(self): return self.BossID # bossID def GetReward(self): return self.Reward # ½±Àø def GetNeedLV(self): return self.NeedLV # ÒªÇóµÈ¼¶ def GetFightPower(self): return self.FightPower # ÍÆ¼öÕ½Á¦ def GetIsNotify(self): return self.IsNotify # ÊÇ·ñ¹ã²¥ # ÌìÐÇËþÈ«·þÌôÕ½±í class IPY_SkyTowerServerChallenge(): def __init__(self): self.FloorID = 0 self.RewardRecordIndex = 0 self.Reward = {} return def GetFloorID(self): return self.FloorID # ²ã def GetRewardRecordIndex(self): return self.RewardRecordIndex # ½±Àø¼Ç¼λË÷Òý def GetReward(self): return self.Reward # ½±Àø # Áé¸ùÌØÐ§±í class IPY_LingGenEffect(): def __init__(self): self.ID = 0 self.PointID = 0 self.QualityLV = 0 return def GetID(self): return self.ID # ΨһID def GetPointID(self): return self.PointID # Áé¸ùID def GetQualityLV(self): return self.QualityLV # Æ·¼¶ # Æï³è»Ã»¯±í class IPY_HorsePetSkin(): def __init__(self): self.Type = 0 self.ID = 0 self.SkinLV = 0 self.NeedExp = 0 self.AttrInfo = {} self.SkinIndex = 0 return def GetType(self): return self.Type # 1×øÆï2Áé³è def GetID(self): return self.ID # ¹ØÁªID(×øÆï±íºÍÁé³è±íID) def GetSkinLV(self): return self.SkinLV # »Ã»¯µÈ¼¶ def GetNeedExp(self): return self.NeedExp # Éý¼¶ÐèÒª¾­Ñé def GetAttrInfo(self): return self.AttrInfo # ÊôÐÔ def GetSkinIndex(self): return self.SkinIndex # Íâ¹Û # ЭÖú¸ÐлÀñºÐ±í class IPY_AssistThanksGift(): def __init__(self): self.GiftID = 0 self.RequestPlayerAward = [] self.AssistPlayerAward = [] return def GetGiftID(self): return self.GiftID # ÀñºÐÎïÆ·ID def GetRequestPlayerAward(self): return self.RequestPlayerAward # ·¢²¼½±ÀøÎïÆ· ÎïÆ·ID|¸öÊý def GetAssistPlayerAward(self): return self.AssistPlayerAward # ЭÖú½±ÀøÎïÆ· ÎïÆ·ID|¸öÊý # ¹¦ÄÜÌØÈ¨½±Àø±í class IPY_FuncSysPrivilege(): def __init__(self): self.FuncSysID = 0 self.DayNum = 0 self.DayAwardItemInfo = [] return def GetFuncSysID(self): return self.FuncSysID # ¹¦ÄÜϵͳID def GetDayNum(self): return self.DayNum # µÚXÌì def GetDayAwardItemInfo(self): return self.DayAwardItemInfo # ½±ÀøÎïÆ·ÐÅÏ¢ [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] # ÀۼƳäÖµ½±Àø±í class IPY_HistoryRechargeAward(): def __init__(self): self.ID = 0 self.NeedRMB = 0.0 self.Reward = {} return def GetID(self): return self.ID # id def GetNeedRMB(self): return self.NeedRMB # ËùÐè³äÖµÔª def GetReward(self): return self.Reward # Ö°Òµ¶ÔÓ¦µÄ½±ÀøÄÚÈÝ,ÿ¸öÖ°Òµ4×éÊý¾Ý£¬ÎïÆ·IDºÍÎïÆ·ÊýÁ¿(1.ǹºÀ2.µÀʦ3.½£ÐÞ) def Log(msg, playerID=0, par=0): LogUI.Msg("%s\t%s\t%s" % (par, playerID, msg)) return def ErrLog(msg, playerID=0, par=0): LogUI.Msg("%s\t%s\t###Error:%s" % (par, playerID, msg)) return ## PY±íÊý¾Ý¹ÜÀíÀà class IPY_DataMgr(): def __init__(self): self.fileMD5Dict = {} # Êý¾Ý±íÎļþmd5×Öµä, ÓÃÓÚ¶Ô±ÈÎļþ²îÒìÅжÏÊÇ·ñÖØ¶Á {dtName:md5, ...} self.ipyConfigEx = {} # ×Ô¶¨ÒåÊý¾Ý»º´æ {key:configData, ...} self.ipyDataIndexMap = {} # Êý¾Ý±íË÷Òý²éѯ»º´æ {dtName:{args:[index, ...], ...}, ...} self.ipyDataIndexMapEx = {} # Êý¾Ý±í×Ô¶¨Òå²éѯÌõ¼þ²éѯ»º´æ {dtName_(findKey,...):{(findKeyValue, ...):[index, ...], ...}, ...} self.ipyFuncConfigDict = {} # ¹¦ÄÜÅäÖÃ±í»º´æ {key:IPY_FuncConfig, ...} self.IpyDataClear() return def IpyDataClear(self): Log("IPY_DataMgr Init...") self.ipyConfigEx = {} self.ipyDienstgradCache = self.__LoadFileData("Dienstgrad", IPY_Dienstgrad) self.ipyDienstgradLen = len(self.ipyDienstgradCache) self.ipyRolePointCache = self.__LoadFileData("RolePoint", IPY_RolePoint) self.ipyRolePointLen = len(self.ipyRolePointCache) self.ipyLingQiAttrCache = self.__LoadFileData("LingQiAttr", IPY_LingQiAttr) self.ipyLingQiAttrLen = len(self.ipyLingQiAttrCache) self.ipyRealmCache = self.__LoadFileData("Realm", IPY_Realm) self.ipyRealmLen = len(self.ipyRealmCache) self.ipyGodWeaponCache = self.__LoadFileData("GodWeapon", IPY_GodWeapon) self.ipyGodWeaponLen = len(self.ipyGodWeaponCache) self.ipyFuncConfigCache = self.__LoadFileData("FuncConfig", IPY_FuncConfig) self.ipyFuncConfigLen = len(self.ipyFuncConfigCache) self.ipyFuncOpenLVCache = self.__LoadFileData("FuncOpenLV", IPY_FuncOpenLV) self.ipyFuncOpenLVLen = len(self.ipyFuncOpenLVCache) self.ipyItemCompoundCache = self.__LoadFileData("ItemCompound", IPY_ItemCompound) self.ipyItemCompoundLen = len(self.ipyItemCompoundCache) self.ipyItemPlusCache = self.__LoadFileData("ItemPlus", IPY_ItemPlus) self.ipyItemPlusLen = len(self.ipyItemPlusCache) self.ipyEquipControlCache = self.__LoadFileData("EquipControl", IPY_EquipControl) self.ipyEquipControlLen = len(self.ipyEquipControlCache) self.ipyItemPlusMasterCache = self.__LoadFileData("ItemPlusMaster", IPY_ItemPlusMaster) self.ipyItemPlusMasterLen = len(self.ipyItemPlusMasterCache) self.ipyItemPlusMaxCache = self.__LoadFileData("ItemPlusMax", IPY_ItemPlusMax) self.ipyItemPlusMaxLen = len(self.ipyItemPlusMaxCache) self.ipyRoleEquipStarsCache = self.__LoadFileData("RoleEquipStars", IPY_RoleEquipStars) self.ipyRoleEquipStarsLen = len(self.ipyRoleEquipStarsCache) self.ipyEquipLegendAttrCountCache = self.__LoadFileData("EquipLegendAttrCount", IPY_EquipLegendAttrCount) self.ipyEquipLegendAttrCountLen = len(self.ipyEquipLegendAttrCountCache) self.ipyEquipLegendAttrTypeCache = self.__LoadFileData("EquipLegendAttrType", IPY_EquipLegendAttrType) self.ipyEquipLegendAttrTypeLen = len(self.ipyEquipLegendAttrTypeCache) self.ipyEquipLegendAttrLibCache = self.__LoadFileData("EquipLegendAttrLib", IPY_EquipLegendAttrLib) self.ipyEquipLegendAttrLibLen = len(self.ipyEquipLegendAttrLibCache) self.ipyEquipLegendAttrValueCache = self.__LoadFileData("EquipLegendAttrValue", IPY_EquipLegendAttrValue) self.ipyEquipLegendAttrValueLen = len(self.ipyEquipLegendAttrValueCache) self.ipyDogzCache = self.__LoadFileData("Dogz", IPY_Dogz) self.ipyDogzLen = len(self.ipyDogzCache) self.ipyDogzEquipPlusCache = self.__LoadFileData("DogzEquipPlus", IPY_DogzEquipPlus) self.ipyDogzEquipPlusLen = len(self.ipyDogzEquipPlusCache) self.ipyRuneCache = self.__LoadFileData("Rune", IPY_Rune) self.ipyRuneLen = len(self.ipyRuneCache) self.ipyEquipWashCache = self.__LoadFileData("EquipWash", IPY_EquipWash) self.ipyEquipWashLen = len(self.ipyEquipWashCache) self.ipyAttrFruitCache = self.__LoadFileData("AttrFruit", IPY_AttrFruit) self.ipyAttrFruitLen = len(self.ipyAttrFruitCache) self.ipyPetInfoCache = self.__LoadFileData("PetInfo", IPY_PetInfo) self.ipyPetInfoLen = len(self.ipyPetInfoCache) self.ipyEquipDecomposeCache = self.__LoadFileData("EquipDecompose", IPY_EquipDecompose) self.ipyEquipDecomposeLen = len(self.ipyEquipDecomposeCache) self.ipyPetClassCostCache = self.__LoadFileData("PetClassCost", IPY_PetClassCost) self.ipyPetClassCostLen = len(self.ipyPetClassCostCache) self.ipyPetEatEquipCache = self.__LoadFileData("PetEatEquip", IPY_PetEatEquip) self.ipyPetEatEquipLen = len(self.ipyPetEatEquipCache) self.ipyHorseLVUpCache = self.__LoadFileData("HorseLVUp", IPY_HorseLVUp) self.ipyHorseLVUpLen = len(self.ipyHorseLVUpCache) self.ipyHorseSkinPlusCache = self.__LoadFileData("HorseSkinPlus", IPY_HorseSkinPlus) self.ipyHorseSkinPlusLen = len(self.ipyHorseSkinPlusCache) self.ipyPlayerLVCache = self.__LoadFileData("PlayerLV", IPY_PlayerLV) self.ipyPlayerLVLen = len(self.ipyPlayerLVCache) self.ipyGMAttrCache = self.__LoadFileData("GMAttr", IPY_GMAttr) self.ipyGMAttrLen = len(self.ipyGMAttrCache) self.ipyNPCStrengthenCache = self.__LoadFileData("NPCStrengthen", IPY_NPCStrengthen) self.ipyNPCStrengthenLen = len(self.ipyNPCStrengthenCache) self.ipyNPCTimeLostHPCache = self.__LoadFileData("NPCTimeLostHP", IPY_NPCTimeLostHP) self.ipyNPCTimeLostHPLen = len(self.ipyNPCTimeLostHPCache) self.ipyEquipSuitAttrCache = self.__LoadFileData("EquipSuitAttr", IPY_EquipSuitAttr) self.ipyEquipSuitAttrLen = len(self.ipyEquipSuitAttrCache) self.ipyWingRefineAttrCache = self.__LoadFileData("WingRefineAttr", IPY_WingRefineAttr) self.ipyWingRefineAttrLen = len(self.ipyWingRefineAttrCache) self.ipyWingRefineExpCache = self.__LoadFileData("WingRefineExp", IPY_WingRefineExp) self.ipyWingRefineExpLen = len(self.ipyWingRefineExpCache) self.ipyFamilyTechCache = self.__LoadFileData("FamilyTech", IPY_FamilyTech) self.ipyFamilyTechLen = len(self.ipyFamilyTechCache) self.ipyFightPowerParamCache = self.__LoadFileData("FightPowerParam", IPY_FightPowerParam) self.ipyFightPowerParamLen = len(self.ipyFightPowerParamCache) self.ipyNPCDropItemCache = self.__LoadFileData("NPCDropItem", IPY_NPCDropItem) self.ipyNPCDropItemLen = len(self.ipyNPCDropItemCache) self.ipyRuneTowerCache = self.__LoadFileData("RuneTower", IPY_RuneTower) self.ipyRuneTowerLen = len(self.ipyRuneTowerCache) self.ipyChinMapCache = self.__LoadFileData("ChinMap", IPY_ChinMap) self.ipyChinMapLen = len(self.ipyChinMapCache) self.ipyFBFuncCache = self.__LoadFileData("FBFunc", IPY_FBFunc) self.ipyFBFuncLen = len(self.ipyFBFuncCache) self.ipyFBLineCache = self.__LoadFileData("FBLine", IPY_FBLine) self.ipyFBLineLen = len(self.ipyFBLineCache) self.ipyFBHelpBattleCache = self.__LoadFileData("FBHelpBattle", IPY_FBHelpBattle) self.ipyFBHelpBattleLen = len(self.ipyFBHelpBattleCache) self.ipyNPCCustomRefreshCache = self.__LoadFileData("NPCCustomRefresh", IPY_NPCCustomRefresh) self.ipyNPCCustomRefreshLen = len(self.ipyNPCCustomRefreshCache) self.ipyDailyActionCache = self.__LoadFileData("DailyAction", IPY_DailyAction) self.ipyDailyActionLen = len(self.ipyDailyActionCache) self.ipyEquipGSParamCache = self.__LoadFileData("EquipGSParam", IPY_EquipGSParam) self.ipyEquipGSParamLen = len(self.ipyEquipGSParamCache) self.ipySuccessCache = self.__LoadFileData("Success", IPY_Success) self.ipySuccessLen = len(self.ipySuccessCache) self.ipyTreasureCache = self.__LoadFileData("Treasure", IPY_Treasure) self.ipyTreasureLen = len(self.ipyTreasureCache) self.ipyTreasureUpCache = self.__LoadFileData("TreasureUp", IPY_TreasureUp) self.ipyTreasureUpLen = len(self.ipyTreasureUpCache) self.ipyContineSignAwardCache = self.__LoadFileData("ContineSignAward", IPY_ContineSignAward) self.ipyContineSignAwardLen = len(self.ipyContineSignAwardCache) self.ipySignAwardCache = self.__LoadFileData("SignAward", IPY_SignAward) self.ipySignAwardLen = len(self.ipySignAwardCache) self.ipyVIPAwardCache = self.__LoadFileData("VIPAward", IPY_VIPAward) self.ipyVIPAwardLen = len(self.ipyVIPAwardCache) self.ipyAppointItemCache = self.__LoadFileData("AppointItem", IPY_AppointItem) self.ipyAppointItemLen = len(self.ipyAppointItemCache) self.ipyAuctionItemCache = self.__LoadFileData("AuctionItem", IPY_AuctionItem) self.ipyAuctionItemLen = len(self.ipyAuctionItemCache) self.ipyVipPrivilegeCache = self.__LoadFileData("VipPrivilege", IPY_VipPrivilege) self.ipyVipPrivilegeLen = len(self.ipyVipPrivilegeCache) self.ipyStoreCache = self.__LoadFileData("Store", IPY_Store) self.ipyStoreLen = len(self.ipyStoreCache) self.ipyActSpringSaleCache = self.__LoadFileData("ActSpringSale", IPY_ActSpringSale) self.ipyActSpringSaleLen = len(self.ipyActSpringSaleCache) self.ipyDailyQuestCache = self.__LoadFileData("DailyQuest", IPY_DailyQuest) self.ipyDailyQuestLen = len(self.ipyDailyQuestCache) self.ipyDailyLivenessRewardCache = self.__LoadFileData("DailyLivenessReward", IPY_DailyLivenessReward) self.ipyDailyLivenessRewardLen = len(self.ipyDailyLivenessRewardCache) self.ipyActivityPlaceRewardCache = self.__LoadFileData("ActivityPlaceReward", IPY_ActivityPlaceReward) self.ipyActivityPlaceRewardLen = len(self.ipyActivityPlaceRewardCache) self.ipyRefineStoveCache = self.__LoadFileData("RefineStove", IPY_RefineStove) self.ipyRefineStoveLen = len(self.ipyRefineStoveCache) self.ipyAlchemyCache = self.__LoadFileData("Alchemy", IPY_Alchemy) self.ipyAlchemyLen = len(self.ipyAlchemyCache) self.ipyAlchemyResultCache = self.__LoadFileData("AlchemyResult", IPY_AlchemyResult) self.ipyAlchemyResultLen = len(self.ipyAlchemyResultCache) self.ipyBOSSInfoCache = self.__LoadFileData("BOSSInfo", IPY_BOSSInfo) self.ipyBOSSInfoLen = len(self.ipyBOSSInfoCache) self.ipyBOSSFirstKillCache = self.__LoadFileData("BOSSFirstKill", IPY_BOSSFirstKill) self.ipyBOSSFirstKillLen = len(self.ipyBOSSFirstKillCache) self.ipyElderGodAreaCache = self.__LoadFileData("ElderGodArea", IPY_ElderGodArea) self.ipyElderGodAreaLen = len(self.ipyElderGodAreaCache) self.ipyPersonalBossCache = self.__LoadFileData("PersonalBoss", IPY_PersonalBoss) self.ipyPersonalBossLen = len(self.ipyPersonalBossCache) self.ipyFamilyActivityCache = self.__LoadFileData("FamilyActivity", IPY_FamilyActivity) self.ipyFamilyActivityLen = len(self.ipyFamilyActivityCache) self.ipyFamilyRedPackCache = self.__LoadFileData("FamilyRedPack", IPY_FamilyRedPack) self.ipyFamilyRedPackLen = len(self.ipyFamilyRedPackCache) self.ipyActFeastRedPacketSuccCache = self.__LoadFileData("ActFeastRedPacketSucc", IPY_ActFeastRedPacketSucc) self.ipyActFeastRedPacketSuccLen = len(self.ipyActFeastRedPacketSuccCache) self.ipyNPCShowCache = self.__LoadFileData("NPCShow", IPY_NPCShow) self.ipyNPCShowLen = len(self.ipyNPCShowCache) self.ipySealDemonCache = self.__LoadFileData("SealDemon", IPY_SealDemon) self.ipySealDemonLen = len(self.ipySealDemonCache) self.ipyFbEncourageCache = self.__LoadFileData("FbEncourage", IPY_FbEncourage) self.ipyFbEncourageLen = len(self.ipyFbEncourageCache) self.ipyMapRefreshNPCCache = self.__LoadFileData("MapRefreshNPC", IPY_MapRefreshNPC) self.ipyMapRefreshNPCLen = len(self.ipyMapRefreshNPCCache) self.ipyRuneCompoundCache = self.__LoadFileData("RuneCompound", IPY_RuneCompound) self.ipyRuneCompoundLen = len(self.ipyRuneCompoundCache) self.ipyResourcesBackCache = self.__LoadFileData("ResourcesBack", IPY_ResourcesBack) self.ipyResourcesBackLen = len(self.ipyResourcesBackCache) self.ipyCollectNPCCache = self.__LoadFileData("CollectNPC", IPY_CollectNPC) self.ipyCollectNPCLen = len(self.ipyCollectNPCCache) self.ipyTreasureNPCCache = self.__LoadFileData("TreasureNPC", IPY_TreasureNPC) self.ipyTreasureNPCLen = len(self.ipyTreasureNPCCache) self.ipyChestsCache = self.__LoadFileData("Chests", IPY_Chests) self.ipyChestsLen = len(self.ipyChestsCache) self.ipyChestsAwardCache = self.__LoadFileData("ChestsAward", IPY_ChestsAward) self.ipyChestsAwardLen = len(self.ipyChestsAwardCache) self.ipyVIPKillNPCCache = self.__LoadFileData("VIPKillNPC", IPY_VIPKillNPC) self.ipyVIPKillNPCLen = len(self.ipyVIPKillNPCCache) self.ipyOSCBillRankAwardCache = self.__LoadFileData("OSCBillRankAward", IPY_OSCBillRankAward) self.ipyOSCBillRankAwardLen = len(self.ipyOSCBillRankAwardCache) self.ipyOSCBillTagAwardCache = self.__LoadFileData("OSCBillTagAward", IPY_OSCBillTagAward) self.ipyOSCBillTagAwardLen = len(self.ipyOSCBillTagAwardCache) self.ipyLoginDayAwardCache = self.__LoadFileData("LoginDayAward", IPY_LoginDayAward) self.ipyLoginDayAwardLen = len(self.ipyLoginDayAwardCache) self.ipyOnlineAwardCache = self.__LoadFileData("OnlineAward", IPY_OnlineAward) self.ipyOnlineAwardLen = len(self.ipyOnlineAwardCache) self.ipySpringSaleCache = self.__LoadFileData("SpringSale", IPY_SpringSale) self.ipySpringSaleLen = len(self.ipySpringSaleCache) self.ipyOrderInfoCache = self.__LoadFileData("OrderInfo", IPY_OrderInfo) self.ipyOrderInfoLen = len(self.ipyOrderInfoCache) self.ipyCTGCache = self.__LoadFileData("CTG", IPY_CTG) self.ipyCTGLen = len(self.ipyCTGCache) self.ipyFirstGoldCache = self.__LoadFileData("FirstGold", IPY_FirstGold) self.ipyFirstGoldLen = len(self.ipyFirstGoldCache) self.ipyLVAwardCache = self.__LoadFileData("LVAward", IPY_LVAward) self.ipyLVAwardLen = len(self.ipyLVAwardCache) self.ipyInvestCache = self.__LoadFileData("Invest", IPY_Invest) self.ipyInvestLen = len(self.ipyInvestCache) self.ipyXBXZCache = self.__LoadFileData("XBXZ", IPY_XBXZ) self.ipyXBXZLen = len(self.ipyXBXZCache) self.ipyTreasureHouseCache = self.__LoadFileData("TreasureHouse", IPY_TreasureHouse) self.ipyTreasureHouseLen = len(self.ipyTreasureHouseCache) self.ipyFreeGoodsCache = self.__LoadFileData("FreeGoods", IPY_FreeGoods) self.ipyFreeGoodsLen = len(self.ipyFreeGoodsCache) self.ipyActFlashGiftbagCache = self.__LoadFileData("ActFlashGiftbag", IPY_ActFlashGiftbag) self.ipyActFlashGiftbagLen = len(self.ipyActFlashGiftbagCache) self.ipyFlashGiftbagCache = self.__LoadFileData("FlashGiftbag", IPY_FlashGiftbag) self.ipyFlashGiftbagLen = len(self.ipyFlashGiftbagCache) self.ipyActDailyGiftbagCache = self.__LoadFileData("ActDailyGiftbag", IPY_ActDailyGiftbag) self.ipyActDailyGiftbagLen = len(self.ipyActDailyGiftbagCache) self.ipyDailyGiftbagCache = self.__LoadFileData("DailyGiftbag", IPY_DailyGiftbag) self.ipyDailyGiftbagLen = len(self.ipyDailyGiftbagCache) self.ipyActExpRateCache = self.__LoadFileData("ActExpRate", IPY_ActExpRate) self.ipyActExpRateLen = len(self.ipyActExpRateCache) self.ipyActCostRebateCache = self.__LoadFileData("ActCostRebate", IPY_ActCostRebate) self.ipyActCostRebateLen = len(self.ipyActCostRebateCache) self.ipyCostRebateTemplateCache = self.__LoadFileData("CostRebateTemplate", IPY_CostRebateTemplate) self.ipyCostRebateTemplateLen = len(self.ipyCostRebateTemplateCache) self.ipyActCollectWordsCache = self.__LoadFileData("ActCollectWords", IPY_ActCollectWords) self.ipyActCollectWordsLen = len(self.ipyActCollectWordsCache) self.ipyCollectWordsExchangeCache = self.__LoadFileData("CollectWordsExchange", IPY_CollectWordsExchange) self.ipyCollectWordsExchangeLen = len(self.ipyCollectWordsExchangeCache) self.ipyActBossRebornCache = self.__LoadFileData("ActBossReborn", IPY_ActBossReborn) self.ipyActBossRebornLen = len(self.ipyActBossRebornCache) self.ipyBossRebornCache = self.__LoadFileData("BossReborn", IPY_BossReborn) self.ipyBossRebornLen = len(self.ipyBossRebornCache) self.ipyActRealmPointCache = self.__LoadFileData("ActRealmPoint", IPY_ActRealmPoint) self.ipyActRealmPointLen = len(self.ipyActRealmPointCache) self.ipyTrialExchangeCache = self.__LoadFileData("TrialExchange", IPY_TrialExchange) self.ipyTrialExchangeLen = len(self.ipyTrialExchangeCache) self.ipyAllPeoplePartyCache = self.__LoadFileData("AllPeopleParty", IPY_AllPeopleParty) self.ipyAllPeoplePartyLen = len(self.ipyAllPeoplePartyCache) self.ipyAllPeoplePartyAwardCache = self.__LoadFileData("AllPeoplePartyAward", IPY_AllPeoplePartyAward) self.ipyAllPeoplePartyAwardLen = len(self.ipyAllPeoplePartyAwardCache) self.ipyMapEventPointCache = self.__LoadFileData("MapEventPoint", IPY_MapEventPoint) self.ipyMapEventPointLen = len(self.ipyMapEventPointCache) self.ipyTalentSkillCache = self.__LoadFileData("TalentSkill", IPY_TalentSkill) self.ipyTalentSkillLen = len(self.ipyTalentSkillCache) self.ipyActFlashSaleCache = self.__LoadFileData("ActFlashSale", IPY_ActFlashSale) self.ipyActFlashSaleLen = len(self.ipyActFlashSaleCache) self.ipyActWishingWellCache = self.__LoadFileData("ActWishingWell", IPY_ActWishingWell) self.ipyActWishingWellLen = len(self.ipyActWishingWellCache) self.ipyWishingWellCache = self.__LoadFileData("WishingWell", IPY_WishingWell) self.ipyWishingWellLen = len(self.ipyWishingWellCache) self.ipyFunctionForecastCache = self.__LoadFileData("FunctionForecast", IPY_FunctionForecast) self.ipyFunctionForecastLen = len(self.ipyFunctionForecastCache) self.ipyChatBubbleBoxCache = self.__LoadFileData("ChatBubbleBox", IPY_ChatBubbleBox) self.ipyChatBubbleBoxLen = len(self.ipyChatBubbleBoxCache) self.ipyActRechargePrizeCache = self.__LoadFileData("ActRechargePrize", IPY_ActRechargePrize) self.ipyActRechargePrizeLen = len(self.ipyActRechargePrizeCache) self.ipyRechargePrizeTemplateCache = self.__LoadFileData("RechargePrizeTemplate", IPY_RechargePrizeTemplate) self.ipyRechargePrizeTemplateLen = len(self.ipyRechargePrizeTemplateCache) self.ipyActTotalRechargeCache = self.__LoadFileData("ActTotalRecharge", IPY_ActTotalRecharge) self.ipyActTotalRechargeLen = len(self.ipyActTotalRechargeCache) self.ipyTotalRechargeTemplateCache = self.__LoadFileData("TotalRechargeTemplate", IPY_TotalRechargeTemplate) self.ipyTotalRechargeTemplateLen = len(self.ipyTotalRechargeTemplateCache) self.ipyActRechargeRebateGoldCache = self.__LoadFileData("ActRechargeRebateGold", IPY_ActRechargeRebateGold) self.ipyActRechargeRebateGoldLen = len(self.ipyActRechargeRebateGoldCache) self.ipyRechargeRebateGoldTemplateCache = self.__LoadFileData("RechargeRebateGoldTemplate", IPY_RechargeRebateGoldTemplate) self.ipyRechargeRebateGoldTemplateLen = len(self.ipyRechargeRebateGoldTemplateCache) self.ipyActGrowupBuyCache = self.__LoadFileData("ActGrowupBuy", IPY_ActGrowupBuy) self.ipyActGrowupBuyLen = len(self.ipyActGrowupBuyCache) self.ipyActManyDayRechargeCache = self.__LoadFileData("ActManyDayRecharge", IPY_ActManyDayRecharge) self.ipyActManyDayRechargeLen = len(self.ipyActManyDayRechargeCache) self.ipyActManyDayRechargeAwardCache = self.__LoadFileData("ActManyDayRechargeAward", IPY_ActManyDayRechargeAward) self.ipyActManyDayRechargeAwardLen = len(self.ipyActManyDayRechargeAwardCache) self.ipyActTurntableCache = self.__LoadFileData("ActTurntable", IPY_ActTurntable) self.ipyActTurntableLen = len(self.ipyActTurntableCache) self.ipyActSingleRechargeCache = self.__LoadFileData("ActSingleRecharge", IPY_ActSingleRecharge) self.ipyActSingleRechargeLen = len(self.ipyActSingleRechargeCache) self.ipyActSingleRechargeAwardCache = self.__LoadFileData("ActSingleRechargeAward", IPY_ActSingleRechargeAward) self.ipyActSingleRechargeAwardLen = len(self.ipyActSingleRechargeAwardCache) self.ipyMagicWeaponFBCache = self.__LoadFileData("MagicWeaponFB", IPY_MagicWeaponFB) self.ipyMagicWeaponFBLen = len(self.ipyMagicWeaponFBCache) self.ipyIceLodeStarAwardCache = self.__LoadFileData("IceLodeStarAward", IPY_IceLodeStarAward) self.ipyIceLodeStarAwardLen = len(self.ipyIceLodeStarAwardCache) self.ipyCrossRealmPKDanCache = self.__LoadFileData("CrossRealmPKDan", IPY_CrossRealmPKDan) self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache) self.ipyCrossRealmPKDanAwardCache = self.__LoadFileData("CrossRealmPKDanAward", IPY_CrossRealmPKDanAward) self.ipyCrossRealmPKDanAwardLen = len(self.ipyCrossRealmPKDanAwardCache) self.ipyCrossRealmPKOrderAwardCache = self.__LoadFileData("CrossRealmPKOrderAward", IPY_CrossRealmPKOrderAward) self.ipyCrossRealmPKOrderAwardLen = len(self.ipyCrossRealmPKOrderAwardCache) self.ipyCrossZoneCommCache = self.__LoadFileData("CrossZoneComm", IPY_CrossZoneComm) self.ipyCrossZoneCommLen = len(self.ipyCrossZoneCommCache) self.ipyCrossZonePKCache = self.__LoadFileData("CrossZonePK", IPY_CrossZonePK) self.ipyCrossZonePKLen = len(self.ipyCrossZonePKCache) self.ipyCrossPenglaiZoneMapCache = self.__LoadFileData("CrossPenglaiZoneMap", IPY_CrossPenglaiZoneMap) self.ipyCrossPenglaiZoneMapLen = len(self.ipyCrossPenglaiZoneMapCache) self.ipyGatherSoulCache = self.__LoadFileData("GatherSoul", IPY_GatherSoul) self.ipyGatherSoulLen = len(self.ipyGatherSoulCache) self.ipyGatherSoulCompoundCache = self.__LoadFileData("GatherSoulCompound", IPY_GatherSoulCompound) self.ipyGatherSoulCompoundLen = len(self.ipyGatherSoulCompoundCache) self.ipyGatherSoulAttrCache = self.__LoadFileData("GatherSoulAttr", IPY_GatherSoulAttr) self.ipyGatherSoulAttrLen = len(self.ipyGatherSoulAttrCache) self.ipyMagicWeaponOfKingCache = self.__LoadFileData("MagicWeaponOfKing", IPY_MagicWeaponOfKing) self.ipyMagicWeaponOfKingLen = len(self.ipyMagicWeaponOfKingCache) self.ipyCoatCache = self.__LoadFileData("Coat", IPY_Coat) self.ipyCoatLen = len(self.ipyCoatCache) self.ipyCoatChestUpCache = self.__LoadFileData("CoatChestUp", IPY_CoatChestUp) self.ipyCoatChestUpLen = len(self.ipyCoatChestUpCache) self.ipyActWeekPartyCache = self.__LoadFileData("ActWeekParty", IPY_ActWeekParty) self.ipyActWeekPartyLen = len(self.ipyActWeekPartyCache) self.ipyWeekPartyCache = self.__LoadFileData("WeekParty", IPY_WeekParty) self.ipyWeekPartyLen = len(self.ipyWeekPartyCache) self.ipyActLoginAwardCache = self.__LoadFileData("ActLoginAward", IPY_ActLoginAward) self.ipyActLoginAwardLen = len(self.ipyActLoginAwardCache) self.ipyLoginAwardCache = self.__LoadFileData("LoginAward", IPY_LoginAward) self.ipyLoginAwardLen = len(self.ipyLoginAwardCache) self.ipyActFeastLoginCache = self.__LoadFileData("ActFeastLogin", IPY_ActFeastLogin) self.ipyActFeastLoginLen = len(self.ipyActFeastLoginCache) self.ipyActFeastLoginAwardCache = self.__LoadFileData("ActFeastLoginAward", IPY_ActFeastLoginAward) self.ipyActFeastLoginAwardLen = len(self.ipyActFeastLoginAwardCache) self.ipyActFeastWishCache = self.__LoadFileData("ActFeastWish", IPY_ActFeastWish) self.ipyActFeastWishLen = len(self.ipyActFeastWishCache) self.ipyActFeastWishBottleCache = self.__LoadFileData("ActFeastWishBottle", IPY_ActFeastWishBottle) self.ipyActFeastWishBottleLen = len(self.ipyActFeastWishBottleCache) self.ipyActFeastWishPoolCache = self.__LoadFileData("ActFeastWishPool", IPY_ActFeastWishPool) self.ipyActFeastWishPoolLen = len(self.ipyActFeastWishPoolCache) self.ipyActFeastTravelCache = self.__LoadFileData("ActFeastTravel", IPY_ActFeastTravel) self.ipyActFeastTravelLen = len(self.ipyActFeastTravelCache) self.ipyActFeastTravelTaskCache = self.__LoadFileData("ActFeastTravelTask", IPY_ActFeastTravelTask) self.ipyActFeastTravelTaskLen = len(self.ipyActFeastTravelTaskCache) self.ipyActFeastTravelAwardCache = self.__LoadFileData("ActFeastTravelAward", IPY_ActFeastTravelAward) self.ipyActFeastTravelAwardLen = len(self.ipyActFeastTravelAwardCache) self.ipyZhuXianBossCache = self.__LoadFileData("ZhuXianBoss", IPY_ZhuXianBoss) self.ipyZhuXianBossLen = len(self.ipyZhuXianBossCache) self.ipyActFeastWeekPartyCache = self.__LoadFileData("ActFeastWeekParty", IPY_ActFeastWeekParty) self.ipyActFeastWeekPartyLen = len(self.ipyActFeastWeekPartyCache) self.ipyFeastWeekPartyCache = self.__LoadFileData("FeastWeekParty", IPY_FeastWeekParty) self.ipyFeastWeekPartyLen = len(self.ipyFeastWeekPartyCache) self.ipyNewAllPeoplePartyCache = self.__LoadFileData("NewAllPeopleParty", IPY_NewAllPeopleParty) self.ipyNewAllPeoplePartyLen = len(self.ipyNewAllPeoplePartyCache) self.ipyNewAllPeoplePartyAwardCache = self.__LoadFileData("NewAllPeoplePartyAward", IPY_NewAllPeoplePartyAward) self.ipyNewAllPeoplePartyAwardLen = len(self.ipyNewAllPeoplePartyAwardCache) self.ipyActLuckyTreasureCache = self.__LoadFileData("ActLuckyTreasure", IPY_ActLuckyTreasure) self.ipyActLuckyTreasureLen = len(self.ipyActLuckyTreasureCache) self.ipyLuckyTreasureTemplateCache = self.__LoadFileData("LuckyTreasureTemplate", IPY_LuckyTreasureTemplate) self.ipyLuckyTreasureTemplateLen = len(self.ipyLuckyTreasureTemplateCache) self.ipyCrossActCTGBillboardDabiaoCache = self.__LoadFileData("CrossActCTGBillboardDabiao", IPY_CrossActCTGBillboardDabiao) self.ipyCrossActCTGBillboardDabiaoLen = len(self.ipyCrossActCTGBillboardDabiaoCache) self.ipyCrossActCTGBillboardOrderCache = self.__LoadFileData("CrossActCTGBillboardOrder", IPY_CrossActCTGBillboardOrder) self.ipyCrossActCTGBillboardOrderLen = len(self.ipyCrossActCTGBillboardOrderCache) self.ipyMysteryShopCache = self.__LoadFileData("MysteryShop", IPY_MysteryShop) self.ipyMysteryShopLen = len(self.ipyMysteryShopCache) self.ipyEquipPlaceIndexMapCache = self.__LoadFileData("EquipPlaceIndexMap", IPY_EquipPlaceIndexMap) self.ipyEquipPlaceIndexMapLen = len(self.ipyEquipPlaceIndexMapCache) self.ipyEquipShenAttrCache = self.__LoadFileData("EquipShenAttr", IPY_EquipShenAttr) self.ipyEquipShenAttrLen = len(self.ipyEquipShenAttrCache) self.ipyEquipShenEvolveCache = self.__LoadFileData("EquipShenEvolve", IPY_EquipShenEvolve) self.ipyEquipShenEvolveLen = len(self.ipyEquipShenEvolveCache) self.ipyEquipStarUpCache = self.__LoadFileData("EquipStarUp", IPY_EquipStarUp) self.ipyEquipStarUpLen = len(self.ipyEquipStarUpCache) self.ipyEquipPlusEvolveCache = self.__LoadFileData("EquipPlusEvolve", IPY_EquipPlusEvolve) self.ipyEquipPlusEvolveLen = len(self.ipyEquipPlusEvolveCache) self.ipyFamilyBossAwardCache = self.__LoadFileData("FamilyBossAward", IPY_FamilyBossAward) self.ipyFamilyBossAwardLen = len(self.ipyFamilyBossAwardCache) self.ipyItemWashMaxCache = self.__LoadFileData("ItemWashMax", IPY_ItemWashMax) self.ipyItemWashMaxLen = len(self.ipyItemWashMaxCache) self.ipyHorsePetBossAwardCache = self.__LoadFileData("HorsePetBossAward", IPY_HorsePetBossAward) self.ipyHorsePetBossAwardLen = len(self.ipyHorsePetBossAwardCache) self.ipyFairyDomainCache = self.__LoadFileData("FairyDomain", IPY_FairyDomain) self.ipyFairyDomainLen = len(self.ipyFairyDomainCache) self.ipyFairyAdventuresCache = self.__LoadFileData("FairyAdventures", IPY_FairyAdventures) self.ipyFairyAdventuresLen = len(self.ipyFairyAdventuresCache) self.ipyFairyDomainAppointCache = self.__LoadFileData("FairyDomainAppoint", IPY_FairyDomainAppoint) self.ipyFairyDomainAppointLen = len(self.ipyFairyDomainAppointCache) self.ipyFBBuyBuffCache = self.__LoadFileData("FBBuyBuff", IPY_FBBuyBuff) self.ipyFBBuyBuffLen = len(self.ipyFBBuyBuffCache) self.ipySkillElementCache = self.__LoadFileData("SkillElement", IPY_SkillElement) self.ipySkillElementLen = len(self.ipySkillElementCache) self.ipySkyTowerCache = self.__LoadFileData("SkyTower", IPY_SkyTower) self.ipySkyTowerLen = len(self.ipySkyTowerCache) self.ipySkyTowerServerChallengeCache = self.__LoadFileData("SkyTowerServerChallenge", IPY_SkyTowerServerChallenge) self.ipySkyTowerServerChallengeLen = len(self.ipySkyTowerServerChallengeCache) self.ipyLingGenEffectCache = self.__LoadFileData("LingGenEffect", IPY_LingGenEffect) self.ipyLingGenEffectLen = len(self.ipyLingGenEffectCache) self.ipyHorsePetSkinCache = self.__LoadFileData("HorsePetSkin", IPY_HorsePetSkin) self.ipyHorsePetSkinLen = len(self.ipyHorsePetSkinCache) self.ipyAssistThanksGiftCache = self.__LoadFileData("AssistThanksGift", IPY_AssistThanksGift) self.ipyAssistThanksGiftLen = len(self.ipyAssistThanksGiftCache) self.ipyFuncSysPrivilegeCache = self.__LoadFileData("FuncSysPrivilege", IPY_FuncSysPrivilege) self.ipyFuncSysPrivilegeLen = len(self.ipyFuncSysPrivilegeCache) self.ipyHistoryRechargeAwardCache = self.__LoadFileData("HistoryRechargeAward", IPY_HistoryRechargeAward) self.ipyHistoryRechargeAwardLen = len(self.ipyHistoryRechargeAwardCache) Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict)) Log("IPY_DataMgr InitOK!") return def __LoadFileData(self, tableName, Class): curPath = ChConfig.GetDBPath() + "\\PySysDB\\tag" + tableName + ".txt" if not os.path.isfile(curPath): ErrLog("can not find file = %s,%s" % (tableName, curPath)) raise Exception("can not find file = %s,%s" % (tableName, curPath)) fileObj = open(curPath, 'rb') content = fileObj.read() fileObj.close() md5_obj = hashlib.md5() md5_obj.update(content) newMD5Code = md5_obj.hexdigest() if tableName in self.fileMD5Dict: oldMD5Code = self.fileMD5Dict[tableName] if newMD5Code == oldMD5Code: return getattr(self, "ipy%sCache" % tableName) if tableName in self.ipyDataIndexMap: self.ipyDataIndexMap.pop(tableName) for dtName_Findkey in self.ipyDataIndexMapEx.keys(): findStr = "%s_" % tableName if findStr in dtName_Findkey: self.ipyDataIndexMapEx.pop(dtName_Findkey) if tableName == "FuncConfig": self.ipyFuncConfigDict = {} self.fileMD5Dict[tableName] = newMD5Code dataIndex = 0 indexDict = {} cacheList = [] fieldList = Def_IpyTable[tableName] infoList = content.split('\r\n') for line in xrange(len(infoList)): if line == 0: continue if not infoList[line]: #ErrLog("line not content! %s, line=%s" % (tableName, line)) continue rowList = infoList[line].split('\t') if len(fieldList) != len(rowList): ErrLog("field count error!, %s, line=%s, len=%s,rowCount=%s" % (tableName, line, len(fieldList), len(rowList))) raise Exception("field count error!, %s, line=%s, len=%s,rowCount=%s" % (tableName, line,len(fieldList), len(rowList))) try: indexKey = [] classObj = Class() for j, value in enumerate(rowList): fieldType, fieldName, isIndex = fieldList[j] if fieldType == "char": attrValue = value elif fieldType == "dict": attrValue = self.__StrToDict(value) elif fieldType == "list": attrValue = self.__StrToList(value) elif fieldType == "eval": attrValue = self.__StrToEval(value) elif fieldType == "float": attrValue = float(value) else: attrValue = 0 if not value.isdigit() else int(value) setattr(classObj, "%s" % fieldName, attrValue) if isIndex: indexKey.append(attrValue) cacheList.append(classObj) indexKey = tuple(indexKey) indexList = indexDict.get(indexKey, []) indexList.append(dataIndex) indexDict[indexKey] = indexList dataIndex += 1 except BaseException: ErrLog("SetIpyDataError: tableName=%s,line=%s,fieldName=%s,fieldType=%s,value=%s" % (tableName, line, fieldName, fieldType, value)) raise if tableName == "FuncConfig": self.__LoadFuncConfigData(fieldList, rowList) if tableName != "FuncConfig": self.ipyDataIndexMap[tableName] = indexDict Log("LoadIpydata: %s, content count=%s" % (tableName, len(cacheList))) return cacheList def __LoadFuncConfigData(self, fieldList, rowList): funcConfigObj = IPY_FuncConfig() key = rowList[0] funcConfigObj.Key = key for i, strValue in enumerate(rowList): if i == 0: continue try: fieldName = fieldList[i][1] strValue = strValue.lstrip().rstrip() if strValue.isdigit(): configValue = int(strValue) elif (strValue.startswith("{") and strValue.endswith("}")) \ or (strValue.startswith("[") and strValue.endswith("]")) \ or (strValue.startswith("(") and strValue.endswith(")")): configValue = eval(strValue) elif "_" in strValue and type(self.__StrToDict(strValue)) == dict: configValue = self.__StrToDict(strValue) elif ChConfig.Def_Str_Montant in strValue: configValue = eval("(%s,)" % strValue.replace(ChConfig.Def_Str_Montant, ",")) elif strValue in ["-", ""]: configValue = "" else: configValue = self.__ToFloat(strValue) except BaseException: ErrLog("SetIpyDataError: tableName=%s,key=%s,i=%s,value=%s" % ("FuncConfig", key, i, strValue)) raise setattr(funcConfigObj, fieldName, configValue) self.ipyFuncConfigDict[key] = funcConfigObj return def __ToFloat(self, strValue): try: value = float(strValue) except: return strValue return value def __StrToEval(self, strValue): if not strValue or strValue in ["0", "-", ""]: return return eval(strValue) def __StrToDict(self, strValue): setDict = {} if "{" in strValue and "}" in strValue: setDict = eval(strValue) elif strValue in ["0", "-", ""]: pass else: keyValueList = strValue.split(ChConfig.Def_Str_Montant) for keyValue in keyValueList: if "_" not in keyValue: continue kv = keyValue.split("_") if len(kv) != 2: return key, value = kv if key.isdigit(): key = int(key) if value.isdigit(): value = int(value) setDict[key] = value return setDict def __StrToList(self, strValue): setList = [] if ("[" in strValue and "]" in strValue) or ("(" in strValue and ")" in strValue): setList = eval(strValue) elif strValue in ["0", "-", ""]: pass elif strValue.isdigit(): setList = (int(strValue),) else: for value in strValue.split(ChConfig.Def_Str_Montant): if value.isdigit(): value = int(value) setList.append(value) if setList: setList = tuple(setList) return setList def GetDienstgradCount(self): return self.ipyDienstgradLen def GetDienstgradByIndex(self, index): return self.ipyDienstgradCache[index] def GetRolePointCount(self): return self.ipyRolePointLen def GetRolePointByIndex(self, index): return self.ipyRolePointCache[index] def GetLingQiAttrCount(self): return self.ipyLingQiAttrLen def GetLingQiAttrByIndex(self, index): return self.ipyLingQiAttrCache[index] def GetRealmCount(self): return self.ipyRealmLen def GetRealmByIndex(self, index): return self.ipyRealmCache[index] def GetGodWeaponCount(self): return self.ipyGodWeaponLen def GetGodWeaponByIndex(self, index): return self.ipyGodWeaponCache[index] def GetFuncConfigCount(self): return self.ipyFuncConfigLen def GetFuncConfigByIndex(self, index): return self.ipyFuncConfigCache[index] def GetFuncOpenLVCount(self): return self.ipyFuncOpenLVLen def GetFuncOpenLVByIndex(self, index): return self.ipyFuncOpenLVCache[index] def GetItemCompoundCount(self): return self.ipyItemCompoundLen def GetItemCompoundByIndex(self, index): return self.ipyItemCompoundCache[index] def GetItemPlusCount(self): return self.ipyItemPlusLen def GetItemPlusByIndex(self, index): return self.ipyItemPlusCache[index] def GetEquipControlCount(self): return self.ipyEquipControlLen def GetEquipControlByIndex(self, index): return self.ipyEquipControlCache[index] def GetItemPlusMasterCount(self): return self.ipyItemPlusMasterLen def GetItemPlusMasterByIndex(self, index): return self.ipyItemPlusMasterCache[index] def GetItemPlusMaxCount(self): return self.ipyItemPlusMaxLen def GetItemPlusMaxByIndex(self, index): return self.ipyItemPlusMaxCache[index] def GetRoleEquipStarsCount(self): return self.ipyRoleEquipStarsLen def GetRoleEquipStarsByIndex(self, index): return self.ipyRoleEquipStarsCache[index] def GetEquipLegendAttrCountCount(self): return self.ipyEquipLegendAttrCountLen def GetEquipLegendAttrCountByIndex(self, index): return self.ipyEquipLegendAttrCountCache[index] def GetEquipLegendAttrTypeCount(self): return self.ipyEquipLegendAttrTypeLen def GetEquipLegendAttrTypeByIndex(self, index): return self.ipyEquipLegendAttrTypeCache[index] def GetEquipLegendAttrLibCount(self): return self.ipyEquipLegendAttrLibLen def GetEquipLegendAttrLibByIndex(self, index): return self.ipyEquipLegendAttrLibCache[index] def GetEquipLegendAttrValueCount(self): return self.ipyEquipLegendAttrValueLen def GetEquipLegendAttrValueByIndex(self, index): return self.ipyEquipLegendAttrValueCache[index] def GetDogzCount(self): return self.ipyDogzLen def GetDogzByIndex(self, index): return self.ipyDogzCache[index] def GetDogzEquipPlusCount(self): return self.ipyDogzEquipPlusLen def GetDogzEquipPlusByIndex(self, index): return self.ipyDogzEquipPlusCache[index] def GetRuneCount(self): return self.ipyRuneLen def GetRuneByIndex(self, index): return self.ipyRuneCache[index] def GetEquipWashCount(self): return self.ipyEquipWashLen def GetEquipWashByIndex(self, index): return self.ipyEquipWashCache[index] def GetAttrFruitCount(self): return self.ipyAttrFruitLen def GetAttrFruitByIndex(self, index): return self.ipyAttrFruitCache[index] def GetPetInfoCount(self): return self.ipyPetInfoLen def GetPetInfoByIndex(self, index): return self.ipyPetInfoCache[index] def GetEquipDecomposeCount(self): return self.ipyEquipDecomposeLen def GetEquipDecomposeByIndex(self, index): return self.ipyEquipDecomposeCache[index] def GetPetClassCostCount(self): return self.ipyPetClassCostLen def GetPetClassCostByIndex(self, index): return self.ipyPetClassCostCache[index] def GetPetEatEquipCount(self): return self.ipyPetEatEquipLen def GetPetEatEquipByIndex(self, index): return self.ipyPetEatEquipCache[index] def GetHorseLVUpCount(self): return self.ipyHorseLVUpLen def GetHorseLVUpByIndex(self, index): return self.ipyHorseLVUpCache[index] def GetHorseSkinPlusCount(self): return self.ipyHorseSkinPlusLen def GetHorseSkinPlusByIndex(self, index): return self.ipyHorseSkinPlusCache[index] def GetPlayerLVCount(self): return self.ipyPlayerLVLen def GetPlayerLVByIndex(self, index): return self.ipyPlayerLVCache[index] def GetGMAttrCount(self): return self.ipyGMAttrLen def GetGMAttrByIndex(self, index): return self.ipyGMAttrCache[index] def GetNPCStrengthenCount(self): return self.ipyNPCStrengthenLen def GetNPCStrengthenByIndex(self, index): return self.ipyNPCStrengthenCache[index] def GetNPCTimeLostHPCount(self): return self.ipyNPCTimeLostHPLen def GetNPCTimeLostHPByIndex(self, index): return self.ipyNPCTimeLostHPCache[index] def GetEquipSuitAttrCount(self): return self.ipyEquipSuitAttrLen def GetEquipSuitAttrByIndex(self, index): return self.ipyEquipSuitAttrCache[index] def GetWingRefineAttrCount(self): return self.ipyWingRefineAttrLen def GetWingRefineAttrByIndex(self, index): return self.ipyWingRefineAttrCache[index] def GetWingRefineExpCount(self): return self.ipyWingRefineExpLen def GetWingRefineExpByIndex(self, index): return self.ipyWingRefineExpCache[index] def GetFamilyTechCount(self): return self.ipyFamilyTechLen def GetFamilyTechByIndex(self, index): return self.ipyFamilyTechCache[index] def GetFightPowerParamCount(self): return self.ipyFightPowerParamLen def GetFightPowerParamByIndex(self, index): return self.ipyFightPowerParamCache[index] def GetNPCDropItemCount(self): return self.ipyNPCDropItemLen def GetNPCDropItemByIndex(self, index): return self.ipyNPCDropItemCache[index] def GetRuneTowerCount(self): return self.ipyRuneTowerLen def GetRuneTowerByIndex(self, index): return self.ipyRuneTowerCache[index] def GetChinMapCount(self): return self.ipyChinMapLen def GetChinMapByIndex(self, index): return self.ipyChinMapCache[index] def GetFBFuncCount(self): return self.ipyFBFuncLen def GetFBFuncByIndex(self, index): return self.ipyFBFuncCache[index] def GetFBLineCount(self): return self.ipyFBLineLen def GetFBLineByIndex(self, index): return self.ipyFBLineCache[index] def GetFBHelpBattleCount(self): return self.ipyFBHelpBattleLen def GetFBHelpBattleByIndex(self, index): return self.ipyFBHelpBattleCache[index] def GetNPCCustomRefreshCount(self): return self.ipyNPCCustomRefreshLen def GetNPCCustomRefreshByIndex(self, index): return self.ipyNPCCustomRefreshCache[index] def GetDailyActionCount(self): return self.ipyDailyActionLen def GetDailyActionByIndex(self, index): return self.ipyDailyActionCache[index] def GetEquipGSParamCount(self): return self.ipyEquipGSParamLen def GetEquipGSParamByIndex(self, index): return self.ipyEquipGSParamCache[index] def GetSuccessCount(self): return self.ipySuccessLen def GetSuccessByIndex(self, index): return self.ipySuccessCache[index] def GetTreasureCount(self): return self.ipyTreasureLen def GetTreasureByIndex(self, index): return self.ipyTreasureCache[index] def GetTreasureUpCount(self): return self.ipyTreasureUpLen def GetTreasureUpByIndex(self, index): return self.ipyTreasureUpCache[index] def GetContineSignAwardCount(self): return self.ipyContineSignAwardLen def GetContineSignAwardByIndex(self, index): return self.ipyContineSignAwardCache[index] def GetSignAwardCount(self): return self.ipySignAwardLen def GetSignAwardByIndex(self, index): return self.ipySignAwardCache[index] def GetVIPAwardCount(self): return self.ipyVIPAwardLen def GetVIPAwardByIndex(self, index): return self.ipyVIPAwardCache[index] def GetAppointItemCount(self): return self.ipyAppointItemLen def GetAppointItemByIndex(self, index): return self.ipyAppointItemCache[index] def GetAuctionItemCount(self): return self.ipyAuctionItemLen def GetAuctionItemByIndex(self, index): return self.ipyAuctionItemCache[index] def GetVipPrivilegeCount(self): return self.ipyVipPrivilegeLen def GetVipPrivilegeByIndex(self, index): return self.ipyVipPrivilegeCache[index] def GetStoreCount(self): return self.ipyStoreLen def GetStoreByIndex(self, index): return self.ipyStoreCache[index] def GetActSpringSaleCount(self): return self.ipyActSpringSaleLen def GetActSpringSaleByIndex(self, index): return self.ipyActSpringSaleCache[index] def GetDailyQuestCount(self): return self.ipyDailyQuestLen def GetDailyQuestByIndex(self, index): return self.ipyDailyQuestCache[index] def GetDailyLivenessRewardCount(self): return self.ipyDailyLivenessRewardLen def GetDailyLivenessRewardByIndex(self, index): return self.ipyDailyLivenessRewardCache[index] def GetActivityPlaceRewardCount(self): return self.ipyActivityPlaceRewardLen def GetActivityPlaceRewardByIndex(self, index): return self.ipyActivityPlaceRewardCache[index] def GetRefineStoveCount(self): return self.ipyRefineStoveLen def GetRefineStoveByIndex(self, index): return self.ipyRefineStoveCache[index] def GetAlchemyCount(self): return self.ipyAlchemyLen def GetAlchemyByIndex(self, index): return self.ipyAlchemyCache[index] def GetAlchemyResultCount(self): return self.ipyAlchemyResultLen def GetAlchemyResultByIndex(self, index): return self.ipyAlchemyResultCache[index] def GetBOSSInfoCount(self): return self.ipyBOSSInfoLen def GetBOSSInfoByIndex(self, index): return self.ipyBOSSInfoCache[index] def GetBOSSFirstKillCount(self): return self.ipyBOSSFirstKillLen def GetBOSSFirstKillByIndex(self, index): return self.ipyBOSSFirstKillCache[index] def GetElderGodAreaCount(self): return self.ipyElderGodAreaLen def GetElderGodAreaByIndex(self, index): return self.ipyElderGodAreaCache[index] def GetPersonalBossCount(self): return self.ipyPersonalBossLen def GetPersonalBossByIndex(self, index): return self.ipyPersonalBossCache[index] def GetFamilyActivityCount(self): return self.ipyFamilyActivityLen def GetFamilyActivityByIndex(self, index): return self.ipyFamilyActivityCache[index] def GetFamilyRedPackCount(self): return self.ipyFamilyRedPackLen def GetFamilyRedPackByIndex(self, index): return self.ipyFamilyRedPackCache[index] def GetActFeastRedPacketSuccCount(self): return self.ipyActFeastRedPacketSuccLen def GetActFeastRedPacketSuccByIndex(self, index): return self.ipyActFeastRedPacketSuccCache[index] def GetNPCShowCount(self): return self.ipyNPCShowLen def GetNPCShowByIndex(self, index): return self.ipyNPCShowCache[index] def GetSealDemonCount(self): return self.ipySealDemonLen def GetSealDemonByIndex(self, index): return self.ipySealDemonCache[index] def GetFbEncourageCount(self): return self.ipyFbEncourageLen def GetFbEncourageByIndex(self, index): return self.ipyFbEncourageCache[index] def GetMapRefreshNPCCount(self): return self.ipyMapRefreshNPCLen def GetMapRefreshNPCByIndex(self, index): return self.ipyMapRefreshNPCCache[index] def GetRuneCompoundCount(self): return self.ipyRuneCompoundLen def GetRuneCompoundByIndex(self, index): return self.ipyRuneCompoundCache[index] def GetResourcesBackCount(self): return self.ipyResourcesBackLen def GetResourcesBackByIndex(self, index): return self.ipyResourcesBackCache[index] def GetCollectNPCCount(self): return self.ipyCollectNPCLen def GetCollectNPCByIndex(self, index): return self.ipyCollectNPCCache[index] def GetTreasureNPCCount(self): return self.ipyTreasureNPCLen def GetTreasureNPCByIndex(self, index): return self.ipyTreasureNPCCache[index] def GetChestsCount(self): return self.ipyChestsLen def GetChestsByIndex(self, index): return self.ipyChestsCache[index] def GetChestsAwardCount(self): return self.ipyChestsAwardLen def GetChestsAwardByIndex(self, index): return self.ipyChestsAwardCache[index] def GetVIPKillNPCCount(self): return self.ipyVIPKillNPCLen def GetVIPKillNPCByIndex(self, index): return self.ipyVIPKillNPCCache[index] def GetOSCBillRankAwardCount(self): return self.ipyOSCBillRankAwardLen def GetOSCBillRankAwardByIndex(self, index): return self.ipyOSCBillRankAwardCache[index] def GetOSCBillTagAwardCount(self): return self.ipyOSCBillTagAwardLen def GetOSCBillTagAwardByIndex(self, index): return self.ipyOSCBillTagAwardCache[index] def GetLoginDayAwardCount(self): return self.ipyLoginDayAwardLen def GetLoginDayAwardByIndex(self, index): return self.ipyLoginDayAwardCache[index] def GetOnlineAwardCount(self): return self.ipyOnlineAwardLen def GetOnlineAwardByIndex(self, index): return self.ipyOnlineAwardCache[index] def GetSpringSaleCount(self): return self.ipySpringSaleLen def GetSpringSaleByIndex(self, index): return self.ipySpringSaleCache[index] def GetOrderInfoCount(self): return self.ipyOrderInfoLen def GetOrderInfoByIndex(self, index): return self.ipyOrderInfoCache[index] def GetCTGCount(self): return self.ipyCTGLen def GetCTGByIndex(self, index): return self.ipyCTGCache[index] def GetFirstGoldCount(self): return self.ipyFirstGoldLen def GetFirstGoldByIndex(self, index): return self.ipyFirstGoldCache[index] def GetLVAwardCount(self): return self.ipyLVAwardLen def GetLVAwardByIndex(self, index): return self.ipyLVAwardCache[index] def GetInvestCount(self): return self.ipyInvestLen def GetInvestByIndex(self, index): return self.ipyInvestCache[index] def GetXBXZCount(self): return self.ipyXBXZLen def GetXBXZByIndex(self, index): return self.ipyXBXZCache[index] def GetTreasureHouseCount(self): return self.ipyTreasureHouseLen def GetTreasureHouseByIndex(self, index): return self.ipyTreasureHouseCache[index] def GetFreeGoodsCount(self): return self.ipyFreeGoodsLen def GetFreeGoodsByIndex(self, index): return self.ipyFreeGoodsCache[index] def GetActFlashGiftbagCount(self): return self.ipyActFlashGiftbagLen def GetActFlashGiftbagByIndex(self, index): return self.ipyActFlashGiftbagCache[index] def GetFlashGiftbagCount(self): return self.ipyFlashGiftbagLen def GetFlashGiftbagByIndex(self, index): return self.ipyFlashGiftbagCache[index] def GetActDailyGiftbagCount(self): return self.ipyActDailyGiftbagLen def GetActDailyGiftbagByIndex(self, index): return self.ipyActDailyGiftbagCache[index] def GetDailyGiftbagCount(self): return self.ipyDailyGiftbagLen def GetDailyGiftbagByIndex(self, index): return self.ipyDailyGiftbagCache[index] def GetActExpRateCount(self): return self.ipyActExpRateLen def GetActExpRateByIndex(self, index): return self.ipyActExpRateCache[index] def GetActCostRebateCount(self): return self.ipyActCostRebateLen def GetActCostRebateByIndex(self, index): return self.ipyActCostRebateCache[index] def GetCostRebateTemplateCount(self): return self.ipyCostRebateTemplateLen def GetCostRebateTemplateByIndex(self, index): return self.ipyCostRebateTemplateCache[index] def GetActCollectWordsCount(self): return self.ipyActCollectWordsLen def GetActCollectWordsByIndex(self, index): return self.ipyActCollectWordsCache[index] def GetCollectWordsExchangeCount(self): return self.ipyCollectWordsExchangeLen def GetCollectWordsExchangeByIndex(self, index): return self.ipyCollectWordsExchangeCache[index] def GetActBossRebornCount(self): return self.ipyActBossRebornLen def GetActBossRebornByIndex(self, index): return self.ipyActBossRebornCache[index] def GetBossRebornCount(self): return self.ipyBossRebornLen def GetBossRebornByIndex(self, index): return self.ipyBossRebornCache[index] def GetActRealmPointCount(self): return self.ipyActRealmPointLen def GetActRealmPointByIndex(self, index): return self.ipyActRealmPointCache[index] def GetTrialExchangeCount(self): return self.ipyTrialExchangeLen def GetTrialExchangeByIndex(self, index): return self.ipyTrialExchangeCache[index] def GetAllPeoplePartyCount(self): return self.ipyAllPeoplePartyLen def GetAllPeoplePartyByIndex(self, index): return self.ipyAllPeoplePartyCache[index] def GetAllPeoplePartyAwardCount(self): return self.ipyAllPeoplePartyAwardLen def GetAllPeoplePartyAwardByIndex(self, index): return self.ipyAllPeoplePartyAwardCache[index] def GetMapEventPointCount(self): return self.ipyMapEventPointLen def GetMapEventPointByIndex(self, index): return self.ipyMapEventPointCache[index] def GetTalentSkillCount(self): return self.ipyTalentSkillLen def GetTalentSkillByIndex(self, index): return self.ipyTalentSkillCache[index] def GetActFlashSaleCount(self): return self.ipyActFlashSaleLen def GetActFlashSaleByIndex(self, index): return self.ipyActFlashSaleCache[index] def GetActWishingWellCount(self): return self.ipyActWishingWellLen def GetActWishingWellByIndex(self, index): return self.ipyActWishingWellCache[index] def GetWishingWellCount(self): return self.ipyWishingWellLen def GetWishingWellByIndex(self, index): return self.ipyWishingWellCache[index] def GetFunctionForecastCount(self): return self.ipyFunctionForecastLen def GetFunctionForecastByIndex(self, index): return self.ipyFunctionForecastCache[index] def GetChatBubbleBoxCount(self): return self.ipyChatBubbleBoxLen def GetChatBubbleBoxByIndex(self, index): return self.ipyChatBubbleBoxCache[index] def GetActRechargePrizeCount(self): return self.ipyActRechargePrizeLen def GetActRechargePrizeByIndex(self, index): return self.ipyActRechargePrizeCache[index] def GetRechargePrizeTemplateCount(self): return self.ipyRechargePrizeTemplateLen def GetRechargePrizeTemplateByIndex(self, index): return self.ipyRechargePrizeTemplateCache[index] def GetActTotalRechargeCount(self): return self.ipyActTotalRechargeLen def GetActTotalRechargeByIndex(self, index): return self.ipyActTotalRechargeCache[index] def GetTotalRechargeTemplateCount(self): return self.ipyTotalRechargeTemplateLen def GetTotalRechargeTemplateByIndex(self, index): return self.ipyTotalRechargeTemplateCache[index] def GetActRechargeRebateGoldCount(self): return self.ipyActRechargeRebateGoldLen def GetActRechargeRebateGoldByIndex(self, index): return self.ipyActRechargeRebateGoldCache[index] def GetRechargeRebateGoldTemplateCount(self): return self.ipyRechargeRebateGoldTemplateLen def GetRechargeRebateGoldTemplateByIndex(self, index): return self.ipyRechargeRebateGoldTemplateCache[index] def GetActGrowupBuyCount(self): return self.ipyActGrowupBuyLen def GetActGrowupBuyByIndex(self, index): return self.ipyActGrowupBuyCache[index] def GetActManyDayRechargeCount(self): return self.ipyActManyDayRechargeLen def GetActManyDayRechargeByIndex(self, index): return self.ipyActManyDayRechargeCache[index] def GetActManyDayRechargeAwardCount(self): return self.ipyActManyDayRechargeAwardLen def GetActManyDayRechargeAwardByIndex(self, index): return self.ipyActManyDayRechargeAwardCache[index] def GetActTurntableCount(self): return self.ipyActTurntableLen def GetActTurntableByIndex(self, index): return self.ipyActTurntableCache[index] def GetActSingleRechargeCount(self): return self.ipyActSingleRechargeLen def GetActSingleRechargeByIndex(self, index): return self.ipyActSingleRechargeCache[index] def GetActSingleRechargeAwardCount(self): return self.ipyActSingleRechargeAwardLen def GetActSingleRechargeAwardByIndex(self, index): return self.ipyActSingleRechargeAwardCache[index] def GetMagicWeaponFBCount(self): return self.ipyMagicWeaponFBLen def GetMagicWeaponFBByIndex(self, index): return self.ipyMagicWeaponFBCache[index] def GetIceLodeStarAwardCount(self): return self.ipyIceLodeStarAwardLen def GetIceLodeStarAwardByIndex(self, index): return self.ipyIceLodeStarAwardCache[index] def GetCrossRealmPKDanCount(self): return self.ipyCrossRealmPKDanLen def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index] def GetCrossRealmPKDanAwardCount(self): return self.ipyCrossRealmPKDanAwardLen def GetCrossRealmPKDanAwardByIndex(self, index): return self.ipyCrossRealmPKDanAwardCache[index] def GetCrossRealmPKOrderAwardCount(self): return self.ipyCrossRealmPKOrderAwardLen def GetCrossRealmPKOrderAwardByIndex(self, index): return self.ipyCrossRealmPKOrderAwardCache[index] def GetCrossZoneCommCount(self): return self.ipyCrossZoneCommLen def GetCrossZoneCommByIndex(self, index): return self.ipyCrossZoneCommCache[index] def GetCrossZonePKCount(self): return self.ipyCrossZonePKLen def GetCrossZonePKByIndex(self, index): return self.ipyCrossZonePKCache[index] def GetCrossPenglaiZoneMapCount(self): return self.ipyCrossPenglaiZoneMapLen def GetCrossPenglaiZoneMapByIndex(self, index): return self.ipyCrossPenglaiZoneMapCache[index] def GetGatherSoulCount(self): return self.ipyGatherSoulLen def GetGatherSoulByIndex(self, index): return self.ipyGatherSoulCache[index] def GetGatherSoulCompoundCount(self): return self.ipyGatherSoulCompoundLen def GetGatherSoulCompoundByIndex(self, index): return self.ipyGatherSoulCompoundCache[index] def GetGatherSoulAttrCount(self): return self.ipyGatherSoulAttrLen def GetGatherSoulAttrByIndex(self, index): return self.ipyGatherSoulAttrCache[index] def GetMagicWeaponOfKingCount(self): return self.ipyMagicWeaponOfKingLen def GetMagicWeaponOfKingByIndex(self, index): return self.ipyMagicWeaponOfKingCache[index] def GetCoatCount(self): return self.ipyCoatLen def GetCoatByIndex(self, index): return self.ipyCoatCache[index] def GetCoatChestUpCount(self): return self.ipyCoatChestUpLen def GetCoatChestUpByIndex(self, index): return self.ipyCoatChestUpCache[index] def GetActWeekPartyCount(self): return self.ipyActWeekPartyLen def GetActWeekPartyByIndex(self, index): return self.ipyActWeekPartyCache[index] def GetWeekPartyCount(self): return self.ipyWeekPartyLen def GetWeekPartyByIndex(self, index): return self.ipyWeekPartyCache[index] def GetActLoginAwardCount(self): return self.ipyActLoginAwardLen def GetActLoginAwardByIndex(self, index): return self.ipyActLoginAwardCache[index] def GetLoginAwardCount(self): return self.ipyLoginAwardLen def GetLoginAwardByIndex(self, index): return self.ipyLoginAwardCache[index] def GetActFeastLoginCount(self): return self.ipyActFeastLoginLen def GetActFeastLoginByIndex(self, index): return self.ipyActFeastLoginCache[index] def GetActFeastLoginAwardCount(self): return self.ipyActFeastLoginAwardLen def GetActFeastLoginAwardByIndex(self, index): return self.ipyActFeastLoginAwardCache[index] def GetActFeastWishCount(self): return self.ipyActFeastWishLen def GetActFeastWishByIndex(self, index): return self.ipyActFeastWishCache[index] def GetActFeastWishBottleCount(self): return self.ipyActFeastWishBottleLen def GetActFeastWishBottleByIndex(self, index): return self.ipyActFeastWishBottleCache[index] def GetActFeastWishPoolCount(self): return self.ipyActFeastWishPoolLen def GetActFeastWishPoolByIndex(self, index): return self.ipyActFeastWishPoolCache[index] def GetActFeastTravelCount(self): return self.ipyActFeastTravelLen def GetActFeastTravelByIndex(self, index): return self.ipyActFeastTravelCache[index] def GetActFeastTravelTaskCount(self): return self.ipyActFeastTravelTaskLen def GetActFeastTravelTaskByIndex(self, index): return self.ipyActFeastTravelTaskCache[index] def GetActFeastTravelAwardCount(self): return self.ipyActFeastTravelAwardLen def GetActFeastTravelAwardByIndex(self, index): return self.ipyActFeastTravelAwardCache[index] def GetZhuXianBossCount(self): return self.ipyZhuXianBossLen def GetZhuXianBossByIndex(self, index): return self.ipyZhuXianBossCache[index] def GetActFeastWeekPartyCount(self): return self.ipyActFeastWeekPartyLen def GetActFeastWeekPartyByIndex(self, index): return self.ipyActFeastWeekPartyCache[index] def GetFeastWeekPartyCount(self): return self.ipyFeastWeekPartyLen def GetFeastWeekPartyByIndex(self, index): return self.ipyFeastWeekPartyCache[index] def GetNewAllPeoplePartyCount(self): return self.ipyNewAllPeoplePartyLen def GetNewAllPeoplePartyByIndex(self, index): return self.ipyNewAllPeoplePartyCache[index] def GetNewAllPeoplePartyAwardCount(self): return self.ipyNewAllPeoplePartyAwardLen def GetNewAllPeoplePartyAwardByIndex(self, index): return self.ipyNewAllPeoplePartyAwardCache[index] def GetActLuckyTreasureCount(self): return self.ipyActLuckyTreasureLen def GetActLuckyTreasureByIndex(self, index): return self.ipyActLuckyTreasureCache[index] def GetLuckyTreasureTemplateCount(self): return self.ipyLuckyTreasureTemplateLen def GetLuckyTreasureTemplateByIndex(self, index): return self.ipyLuckyTreasureTemplateCache[index] def GetCrossActCTGBillboardDabiaoCount(self): return self.ipyCrossActCTGBillboardDabiaoLen def GetCrossActCTGBillboardDabiaoByIndex(self, index): return self.ipyCrossActCTGBillboardDabiaoCache[index] def GetCrossActCTGBillboardOrderCount(self): return self.ipyCrossActCTGBillboardOrderLen def GetCrossActCTGBillboardOrderByIndex(self, index): return self.ipyCrossActCTGBillboardOrderCache[index] def GetMysteryShopCount(self): return self.ipyMysteryShopLen def GetMysteryShopByIndex(self, index): return self.ipyMysteryShopCache[index] def GetEquipPlaceIndexMapCount(self): return self.ipyEquipPlaceIndexMapLen def GetEquipPlaceIndexMapByIndex(self, index): return self.ipyEquipPlaceIndexMapCache[index] def GetEquipShenAttrCount(self): return self.ipyEquipShenAttrLen def GetEquipShenAttrByIndex(self, index): return self.ipyEquipShenAttrCache[index] def GetEquipShenEvolveCount(self): return self.ipyEquipShenEvolveLen def GetEquipShenEvolveByIndex(self, index): return self.ipyEquipShenEvolveCache[index] def GetEquipStarUpCount(self): return self.ipyEquipStarUpLen def GetEquipStarUpByIndex(self, index): return self.ipyEquipStarUpCache[index] def GetEquipPlusEvolveCount(self): return self.ipyEquipPlusEvolveLen def GetEquipPlusEvolveByIndex(self, index): return self.ipyEquipPlusEvolveCache[index] def GetFamilyBossAwardCount(self): return self.ipyFamilyBossAwardLen def GetFamilyBossAwardByIndex(self, index): return self.ipyFamilyBossAwardCache[index] def GetItemWashMaxCount(self): return self.ipyItemWashMaxLen def GetItemWashMaxByIndex(self, index): return self.ipyItemWashMaxCache[index] def GetHorsePetBossAwardCount(self): return self.ipyHorsePetBossAwardLen def GetHorsePetBossAwardByIndex(self, index): return self.ipyHorsePetBossAwardCache[index] def GetFairyDomainCount(self): return self.ipyFairyDomainLen def GetFairyDomainByIndex(self, index): return self.ipyFairyDomainCache[index] def GetFairyAdventuresCount(self): return self.ipyFairyAdventuresLen def GetFairyAdventuresByIndex(self, index): return self.ipyFairyAdventuresCache[index] def GetFairyDomainAppointCount(self): return self.ipyFairyDomainAppointLen def GetFairyDomainAppointByIndex(self, index): return self.ipyFairyDomainAppointCache[index] def GetFBBuyBuffCount(self): return self.ipyFBBuyBuffLen def GetFBBuyBuffByIndex(self, index): return self.ipyFBBuyBuffCache[index] def GetSkillElementCount(self): return self.ipySkillElementLen def GetSkillElementByIndex(self, index): return self.ipySkillElementCache[index] def GetSkyTowerCount(self): return self.ipySkyTowerLen def GetSkyTowerByIndex(self, index): return self.ipySkyTowerCache[index] def GetSkyTowerServerChallengeCount(self): return self.ipySkyTowerServerChallengeLen def GetSkyTowerServerChallengeByIndex(self, index): return self.ipySkyTowerServerChallengeCache[index] def GetLingGenEffectCount(self): return self.ipyLingGenEffectLen def GetLingGenEffectByIndex(self, index): return self.ipyLingGenEffectCache[index] def GetHorsePetSkinCount(self): return self.ipyHorsePetSkinLen def GetHorsePetSkinByIndex(self, index): return self.ipyHorsePetSkinCache[index] def GetAssistThanksGiftCount(self): return self.ipyAssistThanksGiftLen def GetAssistThanksGiftByIndex(self, index): return self.ipyAssistThanksGiftCache[index] def GetFuncSysPrivilegeCount(self): return self.ipyFuncSysPrivilegeLen def GetFuncSysPrivilegeByIndex(self, index): return self.ipyFuncSysPrivilegeCache[index] def GetHistoryRechargeAwardCount(self): return self.ipyHistoryRechargeAwardLen def GetHistoryRechargeAwardByIndex(self, index): return self.ipyHistoryRechargeAwardCache[index] IPYData = IPY_DataMgr() def IPY_Data(): return IPYData def GetConfigEx(key): '''»ñÈ¡×Ô¶¨Òåkey»º´æÊý¾Ý ''' if key in IPYData.ipyConfigEx: return IPYData.ipyConfigEx[key] return def SetConfigEx(key, configData): '''ÉèÖÃ×Ô¶¨Òåkey»º´æÊý¾Ý ÓÐЩ±íµÄÅäÖÃÄÚÈÝ¿ÉÄÜÔÚʵ¼Ê¹¦ÄÜʹÓÃÖÐÖ±½ÓʹÓñíÊý¾ÝµÄ»°»á±È½ÏÂé·³£¬±ÈÈçÿ´Î¶¼Òª±éÀú»ñȡһЩ±íÊý¾Ý Èç¹û¾­¹ýÒ»²ãÊý¾Ýת»»ºóÔÙÀ´Ê¹ÓøÃÊý¾ÝµÄ»°»á¼ò»¯¹¦ÄÜÂß¼­»òÌá¸ßЧÂÊ£¬Ôò¿ÉÒÔͨ¹ýº¯Êý±£´æÒ»Ð©×Ô¶¨ÒåµÄ»º´æÄÚÈÝ£¬·½±ã¹¦ÄÜʹÓà Ҳ¿ÉÒÔÊÊÓÃÓÚÆäËû×Ô¶¨Ò建´æ´æ´¢ ''' IPYData.ipyConfigEx[key] = configData return configData def GetIpyGameData(dtName, *args): '''»ñÈ¡±íÊý¾Ý£¬ÊÊÓÃÓÚÊý¾ÝΨһµÄ£¬·µ»Øµ¥ÌõÊý¾ÝʵÀý @param dtName: ±íÃû£¬²»º¬tag @param args: ½¨±íʱÉèÖõÄË÷Òý×Ö¶Î˳Ðò¶ÔÓ¦µÄ²éѯֵ @return: ¶ÔÓ¦²éѯÌõ¼þµÄ ipyData Êý¾ÝʵÀý£¬Ö»·µ»Øµ¥¸öʵÀý @ʹÓÃ˵Ã÷: IpyGameDataPY.GetIpyGameData(±íÃû, Ë÷Òý1²éѯֵ, Ë÷Òý2²éѯֵ, ¡­ ) ''' if dtName not in IPYData.ipyDataIndexMap: ErrLog("Can not found ipyData dtName=%s" % (dtName)) return indexDict = IPYData.ipyDataIndexMap[dtName] if args not in indexDict: ErrLog("Can not found ipyData dtName=%s,indexValue=%s" % (dtName, args)) return indexList = indexDict[args] return getattr(IPYData, "ipy%sCache" % dtName)[indexList[0]] def GetIpyGameDataList(dtName, *args): '''»ñÈ¡±íÊý¾Ý£¬ÊÊÓÃÓÚ²éѯ½á¹ûÓжàÌõÊý¾ÝµÄ @param dtName: ±íÃû£¬²»º¬tag @param args: ½¨±íʱÉèÖõÄË÷Òý×Ö¶Î˳Ðò¶ÔÓ¦µÄ²éѯֵ @return: ¶ÔÓ¦²éѯÌõ¼þµÄ ipyData Êý¾ÝʵÀýÁбí @ʹÓÃ˵Ã÷: Óë GetIpyGameData º¯ÊýÏàͬ ''' if dtName not in IPYData.ipyDataIndexMap: ErrLog("Can not found ipyDataList dtName=%s" % (dtName)) return indexDict = IPYData.ipyDataIndexMap[dtName] if args not in indexDict: ErrLog("Can not found ipyDataList dtName=%s,indexValue=%s" % (dtName, args)) return indexList = indexDict[args] dataCache = getattr(IPYData, "ipy%sCache" % dtName) return [dataCache[i] for i in indexList] def GetIpyGameDataNotLog(dtName, *args): '''Óë GetIpyGameData º¯ÊýÏàͬ, Ö»ÊÇÕÒ²»µ½Êý¾Ýʱ²»»áÊä³öÈÕÖ¾ ''' if dtName not in IPYData.ipyDataIndexMap: #ErrLog("Can not found ipyData dtName=%s" % (dtName)) return indexDict = IPYData.ipyDataIndexMap[dtName] if args not in indexDict: #ErrLog("Can not found ipyData dtName=%s,indexValue=%s" % (dtName, args)) return indexList = indexDict[args] return getattr(IPYData, "ipy%sCache" % dtName)[indexList[0]] def GetIpyGameDataListNotLog(dtName, *args): '''Óë GetIpyGameDataList º¯ÊýÏàͬ, Ö»ÊÇÕÒ²»µ½Êý¾Ýʱ²»»áÊä³öÈÕÖ¾ ''' if dtName not in IPYData.ipyDataIndexMap: #ErrLog("Can not found ipyDataList dtName=%s" % (dtName)) return indexDict = IPYData.ipyDataIndexMap[dtName] if args not in indexDict: #ErrLog("Can not found ipyDataList dtName=%s,indexValue=%s" % (dtName, args)) return indexList = indexDict[args] dataCache = getattr(IPYData, "ipy%sCache" % dtName) return [dataCache[i] for i in indexList] def GetIpyGameDataByCondition(dtName, keyDict={}, returnList=False, isLogNone=True): '''¸ù¾Ý×Ô¶¨Òå²éѯÌõ¼þ²éѯ±íÊý¾Ý£¬ÓÉÓÚĿǰֻ֧³Ö½¨Á¢Ò»×é²éѯË÷Òý£¬ËùÒÔʹÓÃÆäËû²éѯÌõ¼þ²é±íʱֻÄÜͨ¹ý¸Ãº¯Êý²éÕÒ @param dtName: ±íÃû£¬²»º¬tag @param keyDict: ²éѯÌõ¼þ×Öµä {²éѯ×Ö¶ÎÃû:²éѯֵ, ...} @param returnList: ÊÇ·ñÒÔÁбíµÄÐÎʽ·µ»Ø²éѯÊý¾Ý£¬Ä¬ÈÏ·ñ @param isLogNone: ÕÒ²»µ½Êý¾ÝʱÊÇ·ñÊý¾ÝÈÕÖ¾£¬Ä¬ÈÏÊÇ @return: ÕÒ²»µ½Êý¾Ýʱ·µ»Ø None£¬ÓÐÊý¾Ýʱ¸ù¾Ý²ÎÊýÊÇ·ñ·µ»ØÁÐ±í·µ»Ø¶ÔÓ¦µÄÊý¾ÝʵÀý»òÊý¾ÝʵÀýÁбí ''' fieldList = keyDict.keys() valueList = keyDict.values() findFieldKey = "%s_%s" % (dtName, fieldList) findValueKey = tuple(valueList) cacheList = getattr(IPYData, "ipy%sCache" % dtName) if findFieldKey not in IPYData.ipyDataIndexMapEx: indexMapDict = {} for index, iData in enumerate(cacheList): valuekey = tuple([getattr(iData, "%s" % field) for field in fieldList]) indexList = indexMapDict.get(valuekey, []) indexList.append(index) indexMapDict[valuekey] = indexList IPYData.ipyDataIndexMapEx[findFieldKey] = indexMapDict indexMapDict = IPYData.ipyDataIndexMapEx[findFieldKey] if findValueKey not in indexMapDict: if isLogNone: ErrLog("GetIpyGameDataByCondition can not found data! %s %s" % (dtName, keyDict)) return indexList = indexMapDict[findValueKey] if not returnList: return cacheList[indexList[0]] return [cacheList[index] for index in indexList] def GetFuncCfgIpyData(key): '''¶Á¹¦ÄÜÅäÖñíÅäÖÃʵÀý @param key: ÅäÖÃkey @return: Ö±½Ó·µ»Ø¸ÃÅäÖÃkey¶ÔÓ¦µÄÅäÖÃipyDataʵÀý ''' if key not in IPYData.ipyFuncConfigDict: ErrLog("Can not found ipyData FuncConfig key=%s!" % key) return "" return IPYData.ipyFuncConfigDict[key] def GetFuncCfg(key, index=1): '''¶Á¹¦ÄÜÅäÖñíÅäÖÃרÓú¯Êý @param key: ÅäÖÃkey @param index: µÚ¼¸¸öÅäÖÃÖµ£¬Ö§³Ö1~5 @return: Ö±½Ó·µ»Ø¶ÔÓ¦µÄÊý¾ÝÀàÐÍ int¡¢str£¬²»ÓÃÔÙÊÖ¶¯×ªint ''' if key not in IPYData.ipyFuncConfigDict: ErrLog("Can not found ipyData FuncConfig key=%s!" % key) return "" cfgObj = IPYData.ipyFuncConfigDict[key] if index == 1: return cfgObj.Numerical1 if index == 2: return cfgObj.Numerical2 if index == 3: return cfgObj.Numerical3 if index == 4: return cfgObj.Numerical4 if index == 5: return cfgObj.Numerical5 ErrLog("Can not found ipyData FuncConfig key=%s,index=%s!" % (key, index)) return "" def GetFuncEvalCfg(key, index=1, defaultValue=[]): '''¶ÁÈ¡¹¦ÄÜÅäÖñíÅäÖÃÁÐ±í¡¢×Öµä¸ñʽרÓú¯Êý @param key: ÅäÖÃkey @param index: µÚ¼¸¸öÅäÖÃÖµ£¬Ö§³Ö1~5 @return: Ö±½Ó·µ»Ø¶ÔÓ¦µÄÊý¾ÝÀàÐÍ list¡¢dict¡¢tuple£¬²»ÓÃÔÙeval ÓÉÓڲ߻®ÓÐ×Ô¶¨ÒåµÄÁбí½á¹¹ obj|¡­ , µ±¸ÃÁбíÅäÖÃÖ»ÓÐÒ»¸öÔªËØÊ±£¬´ËʱÅäÖõÄÄÚÈÝΪµ¥¸öÊýÖµ£¬¼ÓÔØµÄÅäÖõÄʱºò´ËÌõÊý¾Ý»á±»×ªÎªintÐÍ ¹ÊʹÓøÃרÓú¯Êý·µ»ØÁбí½á¹¹£¬·½±ã¹¦ÄÜ¿ª·¢Ê±²»ÓÃÔÙ¿¼ÂÇÁбíΪintʱµÄÇé¿ö£» µ±È»Èç¹ûÅäÖõÄÄÚÈݱ¾Éí¾ÍΪpythonµÄÁÐ±í¡¢×Öµä½á¹¹µÄ»°¿ÉʹÓÃÉÏÃæµÄº¯Êý ²»¹ýΪÁËͳһ£¬½¨Ò鹦ÄÜÅäÖñí¶ÁÁÐ±í¡¢×Öµäʱ¶¼Ê¹Óøú¯Êý ''' if key not in IPYData.ipyFuncConfigDict: ErrLog("Can not found ipyData FuncConfig key=%s!" % key) return defaultValue cfgObj = IPYData.ipyFuncConfigDict[key] if index == 1: curConfig = cfgObj.Numerical1 elif index == 2: curConfig = cfgObj.Numerical2 elif index == 3: curConfig = cfgObj.Numerical3 elif index == 4: curConfig = cfgObj.Numerical4 elif index == 5: curConfig = cfgObj.Numerical5 else: ErrLog("Can not found ipyData FuncConfig key=%s,index=%s!" % (key, index)) return defaultValue curType = type(curConfig) if curType in [list, tuple, dict]: return curConfig if curType == int: return [curConfig] return defaultValue def GetFuncCompileCfg(key, index=1): '''»ñÈ¡¹¦ÄÜÅäÖñíÒѱàÒë¹ýµÄ¹«Ê½ @param key: ÅäÖÃkey @param index: µÚ¼¸¸öÅäÖÃÖµ£¬Ö§³Ö1~5 @return: ·µ»ØÒѱàÒë¹ýµÄ¹«Ê½ ''' return FormulaControl.GetCompileFormula(key + str(index), str(GetFuncCfg(key, index))) def InterpolationSearch(dtName, keyName, keyValue, conditionDict={}): '''²éѯÌõ¼þÏÂÓë¶ÔÓ¦²éѯ×ֶβο¼ÖµÏà½üµÄÊý¾ÝʵÀý£»²Î¿¼ÖµÐ¡ÓÚÅäÖñí×îСֵʱ·µ»Ønone£¬´óÓÚ×î´óֵʱ·µ»Ø×î´óÖµ¶ÔÓ¦µÄʵÀý @param dtName: ±íÃû£¬²»º¬tag @param keyName: ²Î¿¼×Ö¶ÎÃû @param keyValue: ²Î¿¼×Ö¶ÎÖµ£¬´óÓÚµÈÓÚ×Ö¶Îֵʱ·µ»Ø¶ÔÓ¦Êý¾Ý @param conditionDict: ²éѯÌõ¼þ£¬{²éѯ×Ö¶ÎÃû:×Ö¶ÎÖµ, ...} @return: ÕÒ²»µ½Êý¾Ý·µ»Ø None £¬ ·ñÔò·µ»Ø¶ÔÓ¦µÄ ipyData Êý¾ÝʵÀý ''' if not conditionDict: dataList = getattr(IPYData, "ipy%sCache" % dtName) else: dataList = GetIpyGameDataByCondition(dtName, conditionDict, True) if not dataList: return low = 0 lowData = dataList[0] lowValue = getattr(lowData, "%s" % keyName) if keyValue < lowValue: return high = len(dataList) - 1 highData = dataList[high] highValue = getattr(highData, "%s" % keyName) if keyValue >= highValue: return highData near = low + int((high - low) * (keyValue - lowValue)/(highValue - lowValue)) nearData = dataList[near] nearValue = getattr(nearData, "%s" % keyName) if keyValue < nearValue: for i in xrange(near - 1, low - 1, -1): nearData = dataList[i] nearValue = getattr(nearData, "%s" % keyName) if nearValue <= keyValue: return nearData elif keyValue > nearValue: for i in xrange(near + 1, high + 1): nearData = dataList[i] nearValue = getattr(nearData, "%s" % keyName) if nearValue > keyValue: return dataList[i - 1] return nearData