From e6df0e3b48deb8b7fd723fd56377cf645a84f715 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 14 一月 2019 20:43:50 +0800
Subject: [PATCH] 5722 【后端】【1.5】跨服BOSS开发(修改C1 06 跨服NPC对话 #tagCMCrossNPCTalk)
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py | 4 ++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py | 2 ++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 2 +-
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 6 +++---
PySysDB/PySysDBPY.h | 2 +-
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py | 2 ++
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 2 +-
ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py | 2 ++
8 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index f909e0b..2f8e124 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -997,7 +997,7 @@
DWORD _NPCID; //ID
BYTE PrepareTime; //采集耗时,秒
list LostHPPer; //采集掉血,[每X秒,掉血百分比]
- BYTE CollectCount; //每日可采集次数,0限制
+ BYTE MaxCollectCount; //每日可采集次数,0限制
char CollectCountLimitNotify; //无采集次数采集提示
list CollectAward; //采集奖励物品, [物品ID,个数,是否绑定]
};
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index dd9d7b5..8455bd5 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -15377,7 +15377,7 @@
_fields_ = [
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
- ("ObjID", c_ushort),
+ ("ObjID", c_int),
("NPCID", c_int),
("PosX", c_ushort),
("PosY", c_ushort),
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py
index 145e62b..3e3616b 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py
@@ -79,7 +79,7 @@
MapServer_CrossSetPlayerAttrValue(msgData)
# 需要发送到地图服务器处理的
- elif msgType in [ShareDefine.ClientServerMsg_Reborn]:
+ elif msgType in [ShareDefine.ClientServerMsg_Reborn, ShareDefine.ClientServerMsg_CollectNPC]:
MapServer_CrossServerReceiveMsg(msgType, msgData, serverGroupID)
else:
@@ -208,7 +208,7 @@
PlayerQuery.CrossServerMsg_NPCInfoRet(msgData, tick)
# 需要发送到地图服务器处理的
- elif msgType in [ShareDefine.CrossServerMsg_RebornRet]:
+ elif msgType in [ShareDefine.CrossServerMsg_RebornRet, ShareDefine.CrossServerMsg_CollectNPCOK]:
MapServer_ClientServerReceiveMsg(msgType, msgData)
elif msgType == ShareDefine.CrossServerMsg_CrossServerState:
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 6b9592e..090b5b2 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -1206,6 +1206,7 @@
CrossServerMsg_DropGoodItem = "DropGoodItem" # 掉落好物品
CrossServerMsg_RebornRet = "RebornRet" # 复活结果
CrossServerMsg_NPCInfoRet = "NPCInfoRet" # 跨服地图NPC信息
+CrossServerMsg_CollectNPCOK = "CollectNPCOK" # 采集NPC完成
# 子服发送跨服信息定义
ClientServerMsg_ServerInitOK = "ServerInitOK" # 子服启动成功
@@ -1218,6 +1219,7 @@
ClientServerMsg_Reborn = "Reborn" # 复活
ClientServerMsg_QueryNPCInfo = "QueryNPCInfo" # 查询跨服地图NPC信息
ClientServerMsg_SetPlayerAttrValue = "SetPlayerAttrValue" # 玩家属性数值更新
+ClientServerMsg_CollectNPC = "CollectNPC" # 采集NPC
#角色改名结果
(
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index dd9d7b5..8455bd5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -15377,7 +15377,7 @@
_fields_ = [
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
- ("ObjID", c_ushort),
+ ("ObjID", c_int),
("NPCID", c_int),
("PosX", c_ushort),
("PosY", c_ushort),
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py
index b3b541d..e7edcd4 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py
@@ -1846,12 +1846,14 @@
## 发送信息到跨服服务器
msgList = str([msgType, dataMsg])
GetPlayerManager().GameServer_QueryPlayerResult(srcPlayerID, queryType, queryID, "SendMsgToCrossServer", msgList, len(msgList))
+ DebugLog("发送跨服信息: %s, %s" % (msgType, dataMsg))
return
def SendMsgToClientServer(msgType, dataMsg, serverGroupIDList, srcPlayerID=0, queryType=0, queryID=0):
## 发送信息到子服
msgList = str([msgType, dataMsg, serverGroupIDList])
GetPlayerManager().GameServer_QueryPlayerResult(srcPlayerID, queryType, queryID, "SendMsgToClientServer", msgList, len(msgList))
+ DebugLog("发送子服信息: %s, %s, serverGroupIDList=%s" % (msgType, dataMsg, serverGroupIDList))
return
## 根据排行获取名次对应值
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 75ecfe1..3568d56 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -812,7 +812,7 @@
("DWORD", "NPCID", 1),
("BYTE", "PrepareTime", 0),
("list", "LostHPPer", 0),
- ("BYTE", "CollectCount", 0),
+ ("BYTE", "MaxCollectCount", 0),
("char", "CollectCountLimitNotify", 0),
("list", "CollectAward", 0),
),
@@ -2851,7 +2851,7 @@
self.NPCID = 0
self.PrepareTime = 0
self.LostHPPer = []
- self.CollectCount = 0
+ self.MaxCollectCount = 0
self.CollectCountLimitNotify = ""
self.CollectAward = []
return
@@ -2859,7 +2859,7 @@
def GetNPCID(self): return self.NPCID # ID
def GetPrepareTime(self): return self.PrepareTime # 采集耗时,秒
def GetLostHPPer(self): return self.LostHPPer # 采集掉血,[每X秒,掉血百分比]
- def GetCollectCount(self): return self.CollectCount # 每日可采集次数,0限制
+ def GetMaxCollectCount(self): return self.MaxCollectCount # 每日可采集次数,0限制
def GetCollectCountLimitNotify(self): return self.CollectCountLimitNotify # 无采集次数采集提示
def GetCollectAward(self): return self.CollectAward # 采集奖励物品, [物品ID,个数,是否绑定]
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index 6b9592e..090b5b2 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -1206,6 +1206,7 @@
CrossServerMsg_DropGoodItem = "DropGoodItem" # 掉落好物品
CrossServerMsg_RebornRet = "RebornRet" # 复活结果
CrossServerMsg_NPCInfoRet = "NPCInfoRet" # 跨服地图NPC信息
+CrossServerMsg_CollectNPCOK = "CollectNPCOK" # 采集NPC完成
# 子服发送跨服信息定义
ClientServerMsg_ServerInitOK = "ServerInitOK" # 子服启动成功
@@ -1218,6 +1219,7 @@
ClientServerMsg_Reborn = "Reborn" # 复活
ClientServerMsg_QueryNPCInfo = "QueryNPCInfo" # 查询跨服地图NPC信息
ClientServerMsg_SetPlayerAttrValue = "SetPlayerAttrValue" # 玩家属性数值更新
+ClientServerMsg_CollectNPC = "CollectNPC" # 采集NPC
#角色改名结果
(
--
Gitblit v1.8.0