hxp
2024-09-04 12ccd1cd31e7a4f282f0399df97fd8ae1c6cbba3
10241 【越南】【砍树】 古宝养成(增加商店支持;)
5个文件已修改
27 ■■■■■ 已修改文件
PySysDB/PySysDBPY.h 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGubao.py 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PySysDB/PySysDBPY.h
@@ -1994,6 +1994,7 @@
    char        JoinStartTime;    //参与开始时间点
    char        JoinEndTime;    //参与结束时间点
    WORD        LVLimit;    //限制等级
    WORD        ActShopType;    //开放商店类型,为0时不开放
    WORD        PersonalTemplateID;    //个人排行模板编号
    BYTE        IsRelationCrossAct;    //是否关联跨服活动
};
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -36317,6 +36317,7 @@
    JoinStartTime = ""    #(char JoinStartTime[5])// 参与开始时间点 mm:ss
    JoinEndTime = ""    #(char JoinEndTime[5])// 参与结束时间点 mm:ss
    LimitLV = 0    #(WORD LimitLV)// 限制等级
    ShopType = 0    #(WORD ShopType)// 开放商店类型,可能为0不开放
    PersonalBillCount = 0    #(BYTE PersonalBillCount)
    PersonalBillboardInfoList = list()    #(vector<tagMCActGubaoBillard> PersonalBillboardInfoList)// 个人榜单奖励信息列表,如果没有代表本次活动没有该榜奖励
    data = None
@@ -36336,6 +36337,7 @@
        self.JoinStartTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.JoinEndTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.ShopType,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.PersonalBillCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.PersonalBillCount):
            temPersonalBillboardInfoList = tagMCActGubaoBillard()
@@ -36354,6 +36356,7 @@
        self.JoinStartTime = ""
        self.JoinEndTime = ""
        self.LimitLV = 0
        self.ShopType = 0
        self.PersonalBillCount = 0
        self.PersonalBillboardInfoList = list()
        return
@@ -36366,6 +36369,7 @@
        length += 10
        length += 5
        length += 5
        length += 2
        length += 2
        length += 1
        for i in range(self.PersonalBillCount):
@@ -36382,6 +36386,7 @@
        data = CommFunc.WriteString(data, 5, self.JoinStartTime)
        data = CommFunc.WriteString(data, 5, self.JoinEndTime)
        data = CommFunc.WriteWORD(data, self.LimitLV)
        data = CommFunc.WriteWORD(data, self.ShopType)
        data = CommFunc.WriteBYTE(data, self.PersonalBillCount)
        for i in range(self.PersonalBillCount):
            data = CommFunc.WriteString(data, self.PersonalBillboardInfoList[i].GetLength(), self.PersonalBillboardInfoList[i].GetBuffer())
@@ -36396,6 +36401,7 @@
                                JoinStartTime:%s,
                                JoinEndTime:%s,
                                LimitLV:%d,
                                ShopType:%d,
                                PersonalBillCount:%d,
                                PersonalBillboardInfoList:%s
                                '''\
@@ -36407,6 +36413,7 @@
                                self.JoinStartTime,
                                self.JoinEndTime,
                                self.LimitLV,
                                self.ShopType,
                                self.PersonalBillCount,
                                "..."
                                )
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -36317,6 +36317,7 @@
    JoinStartTime = ""    #(char JoinStartTime[5])// 参与开始时间点 mm:ss
    JoinEndTime = ""    #(char JoinEndTime[5])// 参与结束时间点 mm:ss
    LimitLV = 0    #(WORD LimitLV)// 限制等级
    ShopType = 0    #(WORD ShopType)// 开放商店类型,可能为0不开放
    PersonalBillCount = 0    #(BYTE PersonalBillCount)
    PersonalBillboardInfoList = list()    #(vector<tagMCActGubaoBillard> PersonalBillboardInfoList)// 个人榜单奖励信息列表,如果没有代表本次活动没有该榜奖励
    data = None
@@ -36336,6 +36337,7 @@
        self.JoinStartTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.JoinEndTime,_pos = CommFunc.ReadString(_lpData, _pos,5)
        self.LimitLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.ShopType,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.PersonalBillCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.PersonalBillCount):
            temPersonalBillboardInfoList = tagMCActGubaoBillard()
@@ -36354,6 +36356,7 @@
        self.JoinStartTime = ""
        self.JoinEndTime = ""
        self.LimitLV = 0
        self.ShopType = 0
        self.PersonalBillCount = 0
        self.PersonalBillboardInfoList = list()
        return
@@ -36366,6 +36369,7 @@
        length += 10
        length += 5
        length += 5
        length += 2
        length += 2
        length += 1
        for i in range(self.PersonalBillCount):
@@ -36382,6 +36386,7 @@
        data = CommFunc.WriteString(data, 5, self.JoinStartTime)
        data = CommFunc.WriteString(data, 5, self.JoinEndTime)
        data = CommFunc.WriteWORD(data, self.LimitLV)
        data = CommFunc.WriteWORD(data, self.ShopType)
        data = CommFunc.WriteBYTE(data, self.PersonalBillCount)
        for i in range(self.PersonalBillCount):
            data = CommFunc.WriteString(data, self.PersonalBillboardInfoList[i].GetLength(), self.PersonalBillboardInfoList[i].GetBuffer())
@@ -36396,6 +36401,7 @@
                                JoinStartTime:%s,
                                JoinEndTime:%s,
                                LimitLV:%d,
                                ShopType:%d,
                                PersonalBillCount:%d,
                                PersonalBillboardInfoList:%s
                                '''\
@@ -36407,6 +36413,7 @@
                                self.JoinStartTime,
                                self.JoinEndTime,
                                self.LimitLV,
                                self.ShopType,
                                self.PersonalBillCount,
                                "..."
                                )
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1590,6 +1590,7 @@
                        ("char", "JoinStartTime", 0),
                        ("char", "JoinEndTime", 0),
                        ("WORD", "LVLimit", 0),
                        ("WORD", "ActShopType", 0),
                        ("WORD", "PersonalTemplateID", 0),
                        ("BYTE", "IsRelationCrossAct", 0),
                        ),
@@ -4776,8 +4777,9 @@
    def GetJoinStartTime(self): return self.attrTuple[3] # 参与开始时间点 char
    def GetJoinEndTime(self): return self.attrTuple[4] # 参与结束时间点 char
    def GetLVLimit(self): return self.attrTuple[5] # 限制等级 WORD
    def GetPersonalTemplateID(self): return self.attrTuple[6] # 个人排行模板编号 WORD
    def GetIsRelationCrossAct(self): return self.attrTuple[7] # 是否关联跨服活动 BYTE
    def GetActShopType(self): return self.attrTuple[6] # 开放商店类型,为0时不开放 WORD
    def GetPersonalTemplateID(self): return self.attrTuple[7] # 个人排行模板编号 WORD
    def GetIsRelationCrossAct(self): return self.attrTuple[8] # 是否关联跨服活动 BYTE
# 古宝养成榜单模版表
class IPY_ActGubaoBillTemp():
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActGubao.py
@@ -20,6 +20,7 @@
import PlayerControl
import IpyGameDataPY
import CrossRealmPlayer
import FunctionNPCCommon
import PlayerBillboard
import ChPyNetSendPack
import PlayerZhanling
@@ -93,6 +94,10 @@
    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_ActGubaoScore % actNum, 0)
    
    if state:
        cfgID = actInfo.get(ShareDefine.ActKey_CfgID)
        ipyData = IpyGameDataPY.GetIpyGameData("ActGubao", cfgID)
        if ipyData and ipyData.GetActShopType():
            FunctionNPCCommon.ResetShopItemBuyCountByShopType(curPlayer, [ipyData.GetActShopType()])
        Sync_GubaoActionInfo(curPlayer, actNum)
        Sync_GubaoPlayerInfo(curPlayer, actNum)
    return True
@@ -240,6 +245,7 @@
    clientPack.JoinStartTime = ipyData.GetJoinStartTime()
    clientPack.JoinEndTime = ipyData.GetJoinEndTime()
    clientPack.LimitLV = ipyData.GetLVLimit()
    clientPack.ShopType = ipyData.GetActShopType()
    
    clientPack.PersonalBillboardInfoList = __GetTempRankBillPackList(personalTempIpyDataList)
    clientPack.PersonalBillCount = len(clientPack.PersonalBillboardInfoList)