From f50014d70d74530c3c7f918fcec9a0f49f367a3e Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 22 十月 2024 18:50:31 +0800
Subject: [PATCH] 10284 同步其他版本(修复查询离线玩家代币数值错误bug;优化GM命令ClearInvest、SetMoney;)
---
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 152 +++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 137 insertions(+), 15 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index edfafcd..fabe4d6 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -55,6 +55,16 @@
("list", "LimitServerGroupIDList", 0),
),
+ "PlayerFace":(
+ ("DWORD", "FaceID", 1),
+ ("BYTE", "UnlockDefault", 0),
+ ),
+
+ "PlayerFacePic":(
+ ("DWORD", "FacePicID", 1),
+ ("BYTE", "UnlockDefault", 0),
+ ),
+
"WorldLV":(
("WORD", "WorldLV", 1),
("DWORD", "OpenServerSecond", 0),
@@ -68,6 +78,13 @@
("DWORD", "NeedMoney", 0),
("DWORD", "WeekMissionMoneyMax", 0),
("BYTE", "BossFBCnt", 0),
+ ),
+
+ "FamilyEmblem":(
+ ("BYTE", "EmblemID", 1),
+ ("BYTE", "UnlockFamilyLV", 0),
+ ("DWORD", "ExpireMinutes", 0),
+ ("DWORD", "CustomFamilyID", 0),
),
"FamilyBossHurtAward":(
@@ -505,6 +522,9 @@
("BYTE", "Rank", 0),
("list", "AwardItemList", 0),
("list", "MemAwardItemList", 0),
+ ("DWORD", "NeedScore", 0),
+ ("dict", "ScoreAwardEx", 0),
+ ("WORD", "XiangongID", 0),
),
"CrossActBossTrial":(
@@ -521,7 +541,6 @@
("list", "NotifyInfoLoop", 0),
("BYTE", "IsDayReset", 0),
("BYTE", "ResetType", 0),
- ("list", "RankLimitList", 0),
("WORD", "PersonalTemplateID", 0),
("WORD", "FamilyTemplateID", 0),
),
@@ -556,6 +575,7 @@
("list", "AwardItemList", 0),
("DWORD", "NeedScore", 0),
("dict", "ScoreAwardEx", 0),
+ ("WORD", "XiangongID", 0),
),
"ActGubao":(
@@ -579,7 +599,6 @@
("char", "EndDate", 0),
("char", "JoinStartTime", 0),
("char", "JoinEndTime", 0),
- ("WORD", "RankLimitPersonal", 0),
("WORD", "PersonalTemplateID", 0),
),
@@ -587,6 +606,9 @@
("DWORD", "TemplateID", 1),
("BYTE", "Rank", 0),
("list", "AwardItemList", 0),
+ ("DWORD", "NeedScore", 0),
+ ("dict", "ScoreAwardEx", 0),
+ ("WORD", "XiangongID", 0),
),
"ActXianXiaMJ":(
@@ -612,7 +634,6 @@
("char", "JoinStartTime", 0),
("char", "JoinEndTime", 0),
("BYTE", "IsDayReset", 0),
- ("WORD", "RankLimitPersonal", 0),
("WORD", "PersonalTemplateID", 0),
),
@@ -620,6 +641,9 @@
("DWORD", "TemplateID", 1),
("BYTE", "Rank", 0),
("list", "AwardItemList", 0),
+ ("DWORD", "NeedScore", 0),
+ ("dict", "ScoreAwardEx", 0),
+ ("WORD", "XiangongID", 0),
),
"ActGodGift":(
@@ -856,6 +880,7 @@
("BYTE", "Rank", 1),
("list", "RankAwardItemList", 0),
("WORD", "MainOfficialID", 0),
+ ("WORD", "XiangongID", 0),
),
"ChampionshipOfficial":(
@@ -1139,6 +1164,16 @@
("list", "MoneyRange", 0),
),
+ "Xiangong":(
+ ("WORD", "XiangongID", 1),
+ ("BYTE", "ShowDays", 0),
+ ("BYTE", "MoneyType", 0),
+ ("DWORD", "MoneyValue", 0),
+ ("DWORD", "TitleID", 0),
+ ("list", "AwardItemList", 0),
+ ("char", "MailKey", 0),
+ ),
+
"FairyDomain":(
("WORD", "ID", 1),
("DWORD", "HourCntPubLimit", 0),
@@ -1184,6 +1219,26 @@
def GetLimitServerGroupIDRangeList(self): return self.attrTuple[0] # 限制创角的服务器组ID范围列表 list
def GetLimitServerGroupIDList(self): return self.attrTuple[1] # 限制创角的服务器组ID列表 list
+# 头像表
+class IPY_PlayerFace():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetFaceID(self): return self.attrTuple[0] # 头像ID DWORD
+ def GetUnlockDefault(self): return self.attrTuple[1] # 是否默认激活 BYTE
+
+# 头像框表
+class IPY_PlayerFacePic():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetFacePicID(self): return self.attrTuple[0] # 头像框ID DWORD
+ def GetUnlockDefault(self): return self.attrTuple[1] # 是否默认激活 BYTE
+
# 世界等级表格
class IPY_WorldLV():
@@ -1208,6 +1263,18 @@
def GetNeedMoney(self): return self.attrTuple[4] # 升级需要资金 DWORD
def GetWeekMissionMoneyMax(self): return self.attrTuple[5] # 每周任务最大可获得仙盟资金 DWORD
def GetBossFBCnt(self): return self.attrTuple[6] # BOSS副本次数 BYTE
+
+# 仙盟徽章表
+class IPY_FamilyEmblem():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetEmblemID(self): return self.attrTuple[0] # 徽章ID BYTE
+ def GetUnlockFamilyLV(self): return self.attrTuple[1] # 解锁仙盟等级,为0时代表其他方式解锁 BYTE
+ def GetExpireMinutes(self): return self.attrTuple[2] # 有效时长,分钟 DWORD
+ def GetCustomFamilyID(self): return self.attrTuple[3] # 定制仙盟ID DWORD
# 仙盟试炼伤血奖励表
class IPY_FamilyBossHurtAward():
@@ -1849,7 +1916,10 @@
def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
def GetRank(self): return self.attrTuple[1] # 名次 BYTE
def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] 仙盟榜时为盟主奖励,如果没有配置,则统一取成员奖励 list
- def GetMemAwardItemList(self): return self.attrTuple[3] # 仙盟榜成员奖励物品信息列表[[物品ID,个数,是否拍品], ...] list
+ def GetMemAwardItemList(self): return self.attrTuple[3] # 仙盟榜成员奖励物品信息列表[[物品ID,个数,是否拍品], ...] list
+ def GetNeedScore(self): return self.attrTuple[4] # 上榜所需积分 DWORD
+ def GetScoreAwardEx(self): return self.attrTuple[5] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+ def GetXiangongID(self): return self.attrTuple[6] # 晋升仙宫ID WORD
# Boss历练跨服活动表
class IPY_CrossActBossTrial():
@@ -1871,9 +1941,8 @@
def GetNotifyInfoLoop(self): return self.attrTuple[10] # 全服提示信息 - 循环广播[循环分钟, 广播key, [广播参数列表可选]] list
def GetIsDayReset(self): return self.attrTuple[11] # 是否每天重置 BYTE
def GetResetType(self): return self.attrTuple[12] # 重置类型,0-0点重置;1-5点重置 BYTE
- def GetRankLimitList(self): return self.attrTuple[13] # 上榜个数限制 个人|仙盟 list
- def GetPersonalTemplateID(self): return self.attrTuple[14] # 个人排行模板编号 WORD
- def GetFamilyTemplateID(self): return self.attrTuple[15] # 仙盟排行模板编号 WORD
+ def GetPersonalTemplateID(self): return self.attrTuple[13] # 个人排行模板编号 WORD
+ def GetFamilyTemplateID(self): return self.attrTuple[14] # 仙盟排行模板编号 WORD
# 骑宠养成活动时间表
class IPY_ActHorsePetTrain():
@@ -1920,7 +1989,8 @@
def GetRank(self): return self.attrTuple[1] # 名次 BYTE
def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
- def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+ def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+ def GetXiangongID(self): return self.attrTuple[5] # 晋升仙宫ID WORD
# 古宝养成活动时间表
class IPY_ActGubao():
@@ -1954,8 +2024,7 @@
def GetEndDate(self): return self.attrTuple[5] # 结束日期 char
def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
- def GetRankLimitPersonal(self): return self.attrTuple[8] # 个人上榜积分限制 WORD
- def GetPersonalTemplateID(self): return self.attrTuple[9] # 个人排行模板编号 WORD
+ def GetPersonalTemplateID(self): return self.attrTuple[8] # 个人排行模板编号 WORD
# 古宝养成榜单模版表
class IPY_ActGubaoBillTemp():
@@ -1966,7 +2035,10 @@
def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
def GetRank(self): return self.attrTuple[1] # 名次 BYTE
- def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+ def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+ def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
+ def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+ def GetXiangongID(self): return self.attrTuple[5] # 晋升仙宫ID WORD
# 仙匣秘境活动时间表
class IPY_ActXianXiaMJ():
@@ -2002,8 +2074,7 @@
def GetJoinStartTime(self): return self.attrTuple[6] # 参与开始时间点 char
def GetJoinEndTime(self): return self.attrTuple[7] # 参与结束时间点 char
def GetIsDayReset(self): return self.attrTuple[8] # 是否每天重置 BYTE
- def GetRankLimitPersonal(self): return self.attrTuple[9] # 个人上榜积分限制 WORD
- def GetPersonalTemplateID(self): return self.attrTuple[10] # 个人排行模板编号 WORD
+ def GetPersonalTemplateID(self): return self.attrTuple[9] # 个人排行模板编号 WORD
# 仙匣秘境榜单模版表
class IPY_ActXianXiaMJBillTemp():
@@ -2014,7 +2085,10 @@
def GetTemplateID(self): return self.attrTuple[0] # 模板编号 DWORD
def GetRank(self): return self.attrTuple[1] # 名次 BYTE
- def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+ def GetAwardItemList(self): return self.attrTuple[2] # 奖励物品列表[[物品ID,个数,是否拍品], ...] list
+ def GetNeedScore(self): return self.attrTuple[3] # 上榜所需积分 DWORD
+ def GetScoreAwardEx(self): return self.attrTuple[4] # 达标积分额外奖励 {积分:[[物品ID,个数,是否拍品], ...], ...} dict
+ def GetXiangongID(self): return self.attrTuple[5] # 晋升仙宫ID WORD
# 天帝礼包活动时间表
class IPY_ActGodGift():
@@ -2355,7 +2429,8 @@
def GetRank(self): return self.attrTuple[0] # 名次 BYTE
def GetRankAwardItemList(self): return self.attrTuple[1] # 名次奖励物品列表 list
- def GetMainOfficialID(self): return self.attrTuple[2] # 主官职ID WORD
+ def GetMainOfficialID(self): return self.attrTuple[2] # 主官职ID WORD
+ def GetXiangongID(self): return self.attrTuple[3] # 晋升仙宫ID WORD
# 跨服排位官职表
class IPY_ChampionshipOfficial():
@@ -2773,6 +2848,21 @@
def GetMoneyType(self): return self.attrTuple[3] # 膜拜货币类型 BYTE
def GetMoneyRange(self): return self.attrTuple[4] # 货币值范围 list
+# 仙宫表
+class IPY_Xiangong():
+
+ def __init__(self):
+ self.attrTuple = None
+ return
+
+ def GetXiangongID(self): return self.attrTuple[0] # 仙宫ID WORD
+ def GetShowDays(self): return self.attrTuple[1] # 展示天数 BYTE
+ def GetMoneyType(self): return self.attrTuple[2] # 点赞货币类型 BYTE
+ def GetMoneyValue(self): return self.attrTuple[3] # 货币值 DWORD
+ def GetTitleID(self): return self.attrTuple[4] # 称号ID DWORD
+ def GetAwardItemList(self): return self.attrTuple[5] # 晋级仙宫奖励物品列表 list
+ def GetMailKey(self): return self.attrTuple[6] # 仙官通知邮件 char
+
# 缥缈仙域表
class IPY_FairyDomain():
@@ -2842,8 +2932,11 @@
self.__LoadFileData("FuncConfig", onlyCheck)
self.__LoadFileData("CreateRole", onlyCheck)
self.__LoadFileData("CreateRoleLimitServer", onlyCheck)
+ self.__LoadFileData("PlayerFace", onlyCheck)
+ self.__LoadFileData("PlayerFacePic", onlyCheck)
self.__LoadFileData("WorldLV", onlyCheck)
self.__LoadFileData("Family", onlyCheck)
+ self.__LoadFileData("FamilyEmblem", onlyCheck)
self.__LoadFileData("FamilyBossHurtAward", onlyCheck)
self.__LoadFileData("FamilyZhenfa", onlyCheck)
self.__LoadFileData("MarketQuery", onlyCheck)
@@ -2943,6 +3036,7 @@
self.__LoadFileData("FamilyWarRankAward", onlyCheck)
self.__LoadFileData("AssistThanksGift", onlyCheck)
self.__LoadFileData("Worship", onlyCheck)
+ self.__LoadFileData("Xiangong", onlyCheck)
self.__LoadFileData("FairyDomain", onlyCheck)
Log("IPY_DataMgr ReloadOK! onlyCheck=%s" % onlyCheck)
return
@@ -3170,6 +3264,20 @@
self.CheckLoadData("CreateRoleLimitServer")
return self.ipyCreateRoleLimitServerCache[index]
+ def GetPlayerFaceCount(self):
+ self.CheckLoadData("PlayerFace")
+ return self.ipyPlayerFaceLen
+ def GetPlayerFaceByIndex(self, index):
+ self.CheckLoadData("PlayerFace")
+ return self.ipyPlayerFaceCache[index]
+
+ def GetPlayerFacePicCount(self):
+ self.CheckLoadData("PlayerFacePic")
+ return self.ipyPlayerFacePicLen
+ def GetPlayerFacePicByIndex(self, index):
+ self.CheckLoadData("PlayerFacePic")
+ return self.ipyPlayerFacePicCache[index]
+
def GetWorldLVCount(self):
self.CheckLoadData("WorldLV")
return self.ipyWorldLVLen
@@ -3183,6 +3291,13 @@
def GetFamilyByIndex(self, index):
self.CheckLoadData("Family")
return self.ipyFamilyCache[index]
+
+ def GetFamilyEmblemCount(self):
+ self.CheckLoadData("FamilyEmblem")
+ return self.ipyFamilyEmblemLen
+ def GetFamilyEmblemByIndex(self, index):
+ self.CheckLoadData("FamilyEmblem")
+ return self.ipyFamilyEmblemCache[index]
def GetFamilyBossHurtAwardCount(self):
self.CheckLoadData("FamilyBossHurtAward")
@@ -3877,6 +3992,13 @@
self.CheckLoadData("Worship")
return self.ipyWorshipCache[index]
+ def GetXiangongCount(self):
+ self.CheckLoadData("Xiangong")
+ return self.ipyXiangongLen
+ def GetXiangongByIndex(self, index):
+ self.CheckLoadData("Xiangong")
+ return self.ipyXiangongCache[index]
+
def GetFairyDomainCount(self):
self.CheckLoadData("FairyDomain")
return self.ipyFairyDomainLen
--
Gitblit v1.8.0