From 8a5a4dc89554504aa6f106744498319b8ce4f2b8 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期三, 20 三月 2019 10:53:39 +0800
Subject: [PATCH] 6381 【后端】【2.0】任务接口开发
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 148 ++++++++++++++++++++----------------------------
1 files changed, 62 insertions(+), 86 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 2746289..b4436fa 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -43,16 +43,13 @@
"Realm":(
("WORD", "Lv", 1),
- ("BYTE", "IsBigRealm", 0),
- ("DWORD", "NeedPoint", 0),
+ ("DWORD", "NeedLV", 0),
("DWORD", "NeedItemID", 0),
("WORD", "NeedItemCnt", 0),
- ("dict", "NeedActiveTreasure", 0),
("list", "AddAttrType", 0),
("list", "AddAttrNum", 0),
("DWORD", "BossID", 0),
- ("dict", "SitTime", 0),
- ("dict", "TeamAward", 0),
+ ("DWORD", "BuffID", 0),
),
"GodWeapon":(
@@ -133,16 +130,12 @@
("BYTE", "ItemType", 1),
("BYTE", "ItemColor", 1),
("BYTE", "IsSuit", 1),
- ("BYTE", "FixedLegendAttrCount", 0),
- ("BYTE", "GoodLegendAttrCount", 0),
- ("BYTE", "OtherLegendAttrCount", 0),
+ ("list", "LegendAttrCountInfo", 0),
),
"EquipLegendAttrType":(
("BYTE", "ItemType", 1),
- ("list", "FixedLegendAttrList", 0),
- ("list", "GoodLegendAttrList", 0),
- ("list", "CommLegendAttrList", 0),
+ ("dict", "LegendAttrTypeLib", 0),
),
"EquipLegendAttrLib":(
@@ -416,10 +409,10 @@
("BYTE", "PieRateDoCnt", 0),
("dict", "IndepRateDrop", 0),
("BYTE", "IndepRateDoCnt", 0),
- ("dict", "IndepRateMaxDropCount", 0),
- ("dict", "EquipStarInfo", 0),
- ("list", "KillCountDropEquipEx", 0),
- ("list", "KillCountDropEquipEx2", 0),
+ ("dict", "EquipColorMaxDropCount", 0),
+ ("dict", "EquipColorSuitInfo", 0),
+ ("dict", "EquipPartKeyRateInfo", 0),
+ ("dict", "KillCountDropEquipPub", 0),
("dict", "ItemIDDropRate", 0),
("dict", "ItemIDMaxDropCount", 0),
("dict", "ItemKeyDropRate", 0),
@@ -429,8 +422,10 @@
("WORD", "DropMoneyRate", 0),
("WORD", "DropMoneyMin", 0),
("WORD", "DropMoneyMax", 0),
- ("list", "KillCountDrop", 0),
+ ("dict", "KillCountDropPub", 0),
+ ("list", "KillCountDropPri", 0),
("list", "PriItemIDDrop", 0),
+ ("BYTE", "AucionItemCanSell", 0),
),
"RuneTower":(
@@ -469,7 +464,6 @@
("DWORD", "MapID", 0),
("WORD", "LVLimitMin", 0),
("WORD", "LVLimitMax", 0),
- ("BYTE", "JobRankLimit", 0),
("DWORD", "TicketID", 0),
("list", "TicketCostCnt", 0),
("WORD", "TicketPrice", 0),
@@ -1165,14 +1159,6 @@
("list", "ItemList", 0),
),
- "GodWeaponEffect":(
- ("BYTE", "GWType", 0),
- ("WORD", "Level", 0),
- ("char", "NotifyCode", 0),
- ("DWORD", "FightPower", 0),
- ("dict", "Attr", 0),
- ),
-
"CrossRealmPKDan":(
("BYTE", "DanLV", 1),
("WORD", "LVUpScore", 0),
@@ -1417,6 +1403,12 @@
("list", "Rank", 0),
("list", "Award", 0),
),
+
+ "ItemWashMax":(
+ ("BYTE", "Type", 1),
+ ("BYTE", "Star", 1),
+ ("WORD", "LevelMax", 0),
+ ),
}
@@ -1444,29 +1436,23 @@
def __init__(self):
self.Lv = 0
- self.IsBigRealm = 0
- self.NeedPoint = 0
+ self.NeedLV = 0
self.NeedItemID = 0
self.NeedItemCnt = 0
- self.NeedActiveTreasure = {}
self.AddAttrType = []
self.AddAttrNum = []
self.BossID = 0
- self.SitTime = {}
- self.TeamAward = {}
+ self.BuffID = 0
return
def GetLv(self): return self.Lv # 境界等级
- def GetIsBigRealm(self): return self.IsBigRealm # 是否大境界
- def GetNeedPoint(self): return self.NeedPoint # 开启渡劫需要修炼点
- def GetNeedItemID(self): return self.NeedItemID # 开启渡劫需要道具ID
- def GetNeedItemCnt(self): return self.NeedItemCnt # 开启渡劫消耗的道具数量
- def GetNeedActiveTreasure(self): return self.NeedActiveTreasure # 开启渡劫需要激活法宝条件
+ def GetNeedLV(self): return self.NeedLV # 需要等级
+ def GetNeedItemID(self): return self.NeedItemID # 需要道具ID
+ def GetNeedItemCnt(self): return self.NeedItemCnt # 消耗的道具数量
def GetAddAttrType(self): return self.AddAttrType # 境界加成属性类型
def GetAddAttrNum(self): return self.AddAttrNum # 境界加成属性值
def GetBossID(self): return self.BossID # 渡劫bossid
- def GetSitTime(self): return self.SitTime # 打坐时间
- def GetTeamAward(self): return self.TeamAward # 组队帮打的人的奖励
+ def GetBuffID(self): return self.BuffID # 给全服在线玩家增加buff
# 神兵表
class IPY_GodWeapon():
@@ -1631,32 +1617,24 @@
self.ItemType = 0
self.ItemColor = 0
self.IsSuit = 0
- self.FixedLegendAttrCount = 0
- self.GoodLegendAttrCount = 0
- self.OtherLegendAttrCount = 0
+ self.LegendAttrCountInfo = []
return
def GetItemType(self): return self.ItemType # 物品类型
def GetItemColor(self): return self.ItemColor # 物品颜色
def GetIsSuit(self): return self.IsSuit # 是否套装
- def GetFixedLegendAttrCount(self): return self.FixedLegendAttrCount # 固定传奇属性条数
- def GetGoodLegendAttrCount(self): return self.GoodLegendAttrCount # 追求传奇属性保底条数
- def GetOtherLegendAttrCount(self): return self.OtherLegendAttrCount # 其他随机传奇属性条数
+ def GetLegendAttrCountInfo(self): return self.LegendAttrCountInfo # 传奇属性条数信息 [[条数, [属性类型库编号, ...]], ...]
# 装备传奇属性类型表
class IPY_EquipLegendAttrType():
def __init__(self):
self.ItemType = 0
- self.FixedLegendAttrList = []
- self.GoodLegendAttrList = []
- self.CommLegendAttrList = []
+ self.LegendAttrTypeLib = {}
return
def GetItemType(self): return self.ItemType # 物品类型
- def GetFixedLegendAttrList(self): return self.FixedLegendAttrList # 固定传奇属性列表
- def GetGoodLegendAttrList(self): return self.GoodLegendAttrList # 追求传奇属性列表
- def GetCommLegendAttrList(self): return self.CommLegendAttrList # 一般传奇属性列表
+ def GetLegendAttrTypeLib(self): return self.LegendAttrTypeLib # 传奇属性类型库 {属性类型库编号:[属性ID,...], ...}
# 装备传奇属性值库表
class IPY_EquipLegendAttrLib():
@@ -2215,10 +2193,10 @@
self.PieRateDoCnt = 0
self.IndepRateDrop = {}
self.IndepRateDoCnt = 0
- self.IndepRateMaxDropCount = {}
- self.EquipStarInfo = {}
- self.KillCountDropEquipEx = []
- self.KillCountDropEquipEx2 = []
+ self.EquipColorMaxDropCount = {}
+ self.EquipColorSuitInfo = {}
+ self.EquipPartKeyRateInfo = {}
+ self.KillCountDropEquipPub = {}
self.ItemIDDropRate = {}
self.ItemIDMaxDropCount = {}
self.ItemKeyDropRate = {}
@@ -2228,8 +2206,10 @@
self.DropMoneyRate = 0
self.DropMoneyMin = 0
self.DropMoneyMax = 0
- self.KillCountDrop = []
- self.PriItemIDDrop = []
+ self.KillCountDropPub = {}
+ self.KillCountDropPri = []
+ self.PriItemIDDrop = []
+ self.AucionItemCanSell = 0
return
def GetNPCID(self): return self.NPCID # NPCID
@@ -2237,14 +2217,14 @@
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),(概率,(阶,颜色,部位集合key)),...]
+ def GetPieRateDrop(self): return self.PieRateDrop # 饼图概率掉落信息 [(概率,0),(概率,(阶,颜色)),...]
def GetPieRateDoCnt(self): return self.PieRateDoCnt # 饼图概率执行次数
- def GetIndepRateDrop(self): return self.IndepRateDrop # 独立概率掉落信息 {(阶,颜色,部位集合key):概率,...}
+ def GetIndepRateDrop(self): return self.IndepRateDrop # 独立概率掉落信息 {(阶,颜色):概率,...}
def GetIndepRateDoCnt(self): return self.IndepRateDoCnt # 独立概率执行次数
- def GetIndepRateMaxDropCount(self): return self.IndepRateMaxDropCount # 独立概率装备颜色最大掉落物品数 {颜色:上限数量,...}
- def GetEquipStarInfo(self): return self.EquipStarInfo # 装备颜色对应星级产出规则 {颜色:[(概率, 星级),...], ...}
- def GetKillCountDropEquipEx(self): return self.KillCountDropEquipEx # 第x次击杀附加必掉装备 [次数,阶,颜色,[(概率,星级),...],部位集合key]
- def GetKillCountDropEquipEx2(self): return self.KillCountDropEquipEx2 # 前x次击杀附加必掉装备 [次数,阶,颜色,[(概率,星级),...],部位集合key]
+ def GetEquipColorMaxDropCount(self): return self.EquipColorMaxDropCount # 装备颜色最大掉落物品数 {颜色:上限数量,...}
+ def GetEquipColorSuitInfo(self): return self.EquipColorSuitInfo # 装备颜色对应套装概率 {颜色:套装概率, ...}
+ def GetEquipPartKeyRateInfo(self): return self.EquipPartKeyRateInfo # 装备部位集合信息 {(颜色,是否套装):部位集合key, ...}
+ 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:概率, ...}
@@ -2254,8 +2234,10 @@
def GetDropMoneyRate(self): return self.DropMoneyRate # 掉落金币概率
def GetDropMoneyMin(self): return self.DropMoneyMin # 掉落金币最小值
def GetDropMoneyMax(self): return self.DropMoneyMax # 掉落金币最大值
- def GetKillCountDrop(self): return self.KillCountDrop # 击杀次数必掉,防止版本变更重复掉,只支持一次机会 [击杀次数,是否直接放入背包,[物品ID,...]]
- def GetPriItemIDDrop(self): return self.PriItemIDDrop # 所有归属者私有掉落物品ID列表,每人一份,默认绑定,没有职业区分[物品ID, ...]
+ 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():
@@ -2328,7 +2310,6 @@
self.MapID = 0
self.LVLimitMin = 0
self.LVLimitMax = 0
- self.JobRankLimit = 0
self.TicketID = 0
self.TicketCostCnt = []
self.TicketPrice = 0
@@ -2347,7 +2328,6 @@
def GetMapID(self): return self.MapID # 场景地图ID
def GetLVLimitMin(self): return self.LVLimitMin # 最低等级限制, 0为不限制
def GetLVLimitMax(self): return self.LVLimitMax # 最高等级限制, 0为不限制
- def GetJobRankLimit(self): return self.JobRankLimit # 所需职业阶
def GetTicketID(self): return self.TicketID # 门票ID
def GetTicketCostCnt(self): return self.TicketCostCnt # 门票消耗数信息
def GetTicketPrice(self): return self.TicketPrice # 门票单价(不能用钱抵的配0)
@@ -3795,23 +3775,6 @@
def GetLVLimit(self): return self.LVLimit # 等级范围
def GetItemList(self): return self.ItemList # 奖励
-# 神兵特效表
-class IPY_GodWeaponEffect():
-
- def __init__(self):
- self.GWType = 0
- self.Level = 0
- self.NotifyCode = ""
- self.FightPower = 0
- self.Attr = {}
- return
-
- def GetGWType(self): return self.GWType # 神兵类型
- def GetLevel(self): return self.Level # 神兵等级
- def GetNotifyCode(self): return self.NotifyCode # 广播
- def GetFightPower(self): return self.FightPower # 增加战力
- def GetAttr(self): return self.Attr # 属性加成
-
# 跨服竞技场段位表
class IPY_CrossRealmPKDan():
@@ -4332,6 +4295,19 @@
def GetWorldLV(self): return self.WorldLV # 世界等级
def GetRank(self): return self.Rank # 排名
def GetAward(self): return self.Award # 奖励 [[独立概率万分率,[物品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 # 洗练等级上限
def Log(msg, playerID=0, par=0):
@@ -4575,8 +4551,6 @@
self.ipyMagicWeaponFBLen = len(self.ipyMagicWeaponFBCache)
self.ipyIceLodeStarAwardCache = self.__LoadFileData("IceLodeStarAward", IPY_IceLodeStarAward)
self.ipyIceLodeStarAwardLen = len(self.ipyIceLodeStarAwardCache)
- self.ipyGodWeaponEffectCache = self.__LoadFileData("GodWeaponEffect", IPY_GodWeaponEffect)
- self.ipyGodWeaponEffectLen = len(self.ipyGodWeaponEffectCache)
self.ipyCrossRealmPKDanCache = self.__LoadFileData("CrossRealmPKDan", IPY_CrossRealmPKDan)
self.ipyCrossRealmPKDanLen = len(self.ipyCrossRealmPKDanCache)
self.ipyCrossRealmPKDanAwardCache = self.__LoadFileData("CrossRealmPKDanAward", IPY_CrossRealmPKDanAward)
@@ -4639,6 +4613,8 @@
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)
Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
Log("IPY_DataMgr InitOK!")
return
@@ -5023,8 +4999,6 @@
def GetMagicWeaponFBByIndex(self, index): return self.ipyMagicWeaponFBCache[index]
def GetIceLodeStarAwardCount(self): return self.ipyIceLodeStarAwardLen
def GetIceLodeStarAwardByIndex(self, index): return self.ipyIceLodeStarAwardCache[index]
- def GetGodWeaponEffectCount(self): return self.ipyGodWeaponEffectLen
- def GetGodWeaponEffectByIndex(self, index): return self.ipyGodWeaponEffectCache[index]
def GetCrossRealmPKDanCount(self): return self.ipyCrossRealmPKDanLen
def GetCrossRealmPKDanByIndex(self, index): return self.ipyCrossRealmPKDanCache[index]
def GetCrossRealmPKDanAwardCount(self): return self.ipyCrossRealmPKDanAwardLen
@@ -5087,6 +5061,8 @@
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]
IPYData = IPY_DataMgr()
def IPY_Data(): return IPYData
--
Gitblit v1.8.0