From 40d1e804f3880ea58fa347118c8a687e652a16d0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 14 十月 2022 19:03:15 +0800
Subject: [PATCH] 9731 【越南】【主干】【BT7】转职业(同步 冲突)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 52 ++++++++++++++++++++++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 13 ++++++
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 52 ++++++++++++++++++++++++++
3 files changed, 117 insertions(+), 0 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index adb01bd..809c331 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -4723,6 +4723,58 @@
#------------------------------------------------------
+# A1 21 转职业 #tagCMChangeJob
+
+class tagCMChangeJob(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("TagJob", c_ubyte),
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA1
+ self.SubCmd = 0x21
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.Cmd = 0xA1
+ self.SubCmd = 0x21
+ self.TagJob = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMChangeJob)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A1 21 转职业 //tagCMChangeJob:
+ Cmd:%s,
+ SubCmd:%s,
+ TagJob:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.TagJob
+ )
+ return DumpString
+
+
+m_NAtagCMChangeJob=tagCMChangeJob()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChangeJob.Cmd,m_NAtagCMChangeJob.SubCmd))] = m_NAtagCMChangeJob
+
+
+#------------------------------------------------------
# A1 01 玩家电脑信息 #tagCMPCInfo
class tagCMPCInfo(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index adb01bd..809c331 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -4723,6 +4723,58 @@
#------------------------------------------------------
+# A1 21 转职业 #tagCMChangeJob
+
+class tagCMChangeJob(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("TagJob", c_ubyte),
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA1
+ self.SubCmd = 0x21
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.Cmd = 0xA1
+ self.SubCmd = 0x21
+ self.TagJob = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMChangeJob)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A1 21 转职业 //tagCMChangeJob:
+ Cmd:%s,
+ SubCmd:%s,
+ TagJob:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.TagJob
+ )
+ return DumpString
+
+
+m_NAtagCMChangeJob=tagCMChangeJob()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChangeJob.Cmd,m_NAtagCMChangeJob.SubCmd))] = m_NAtagCMChangeJob
+
+
+#------------------------------------------------------
# A1 01 玩家电脑信息 #tagCMPCInfo
class tagCMPCInfo(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index 8a3bf9d..5aeb561 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -146,6 +146,7 @@
import PlayerYinji
import PlayerLove
import GameObj
+import PlayerChangeJob
import datetime
import time
@@ -256,6 +257,18 @@
return
+#// A1 21 转职业 #tagCMChangeJob
+#
+#struct tagCMChangeJob
+#{
+# tagHead Head;
+# BYTE TagJob;
+#};
+def OnChangeJob(index, clientData, tick):
+ curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
+ PlayerChangeJob.DoChangeJob(curPlayer, curPlayer.GetJob(), clientData.TagJob)
+ return
+
#// A1 08 刷新主服角色信息 #tagCMRefreshMainServerRole
#
#struct tagCMRefreshMainServerRole
--
Gitblit v1.8.0