From 8155ce1b16a37578c76b3d520a12f4b5419666a1 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 01 四月 2020 15:53:16 +0800
Subject: [PATCH] 8405 【后端】成就系统开发(成就通行证领奖)
---
/dev/null | 56 --------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 8 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 8 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 3
PySysDB/PySysDBPY.h | 1
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py | 88 +++++++++++++++------
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 8 +
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 8 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 8 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Success.py | 10 +
10 files changed, 103 insertions(+), 95 deletions(-)
diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index c293d33..e615ec8 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -725,6 +725,7 @@
list Condition; //辅助条件
list PreSuccess; //需要达成前置成就
dict AwardItem; //奖励物品列表
+ dict AwardItem2; //通行证奖励物品列表
dict Money; //金钱
DWORD Exp; //经验
dict AwardAttr; //奖励属性
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index cae53eb..7b71519 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -10153,6 +10153,7 @@
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
("SuccID", c_int), #成就ID
+ ("IsPassport", c_ubyte), #是否通行证奖励
]
def __init__(self):
@@ -10170,6 +10171,7 @@
self.Cmd = 0xA5
self.SubCmd = 0x42
self.SuccID = 0
+ self.IsPassport = 0
return
def GetLength(self):
@@ -10182,12 +10184,14 @@
DumpString = '''// A5 42 领取成就奖励 //tagMCGetSuccessAward:
Cmd:%s,
SubCmd:%s,
- SuccID:%d
+ SuccID:%d,
+ IsPassport:%d
'''\
%(
self.Cmd,
self.SubCmd,
- self.SuccID
+ self.SuccID,
+ self.IsPassport
)
return DumpString
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 68862a6..cf09baf 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -18767,6 +18767,7 @@
_fields_ = [
("RecordIndex", c_ushort), #第几个记录值 每个key存31个succid 0-30为0, 31-61为1..
("Record", c_int), #对应是否领取值
+ ("PassportRecord", c_int), #通行证奖励是否领取值
]
def __init__(self):
@@ -18781,6 +18782,7 @@
def Clear(self):
self.RecordIndex = 0
self.Record = 0
+ self.PassportRecord = 0
return
def GetLength(self):
@@ -18792,11 +18794,13 @@
def OutputString(self):
DumpString = '''//A3 42 成就完成领奖记录列表 //tagMCSuccessFinishAwardRecordList:
RecordIndex:%d,
- Record:%d
+ Record:%d,
+ PassportRecord:%d
'''\
%(
self.RecordIndex,
- self.Record
+ self.Record,
+ self.PassportRecord
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 6707c9e..a2c1aca 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -3868,11 +3868,12 @@
Def_PDict_GoldInvest_GotRewardValue = "Invest_GotRewardValue_%s_%s" # 等级回报已领取数值,参数为投资类型 索引
# 成就 Def_PDictType_Success
-Def_PDict_Success_AwardRecord = "Succ_AwardRecord_%s" # 成就领奖记录,参数(成就类型),按索引位存储0-未领,1-已领
+Def_PDict_Success_AwardRecord = "Succ_AwardRecord_%s" # 成就领奖记录,参数(key编号),按索引位存储0-未领,1-已领
Def_PDict_Success_LastDay = "Succ_LastDay_%s" # 连续类型上一次更新进度时的开服天数,参数(成就编号)
Def_PDict_Success_CntValue = "Su_%s_%s" # 当前次数值,参数(成就类型、条件)
Def_PDict_Success_FinishTime = "Succ_FinishTime_%s" # 成就是否已完成,参数(索引)
Def_PDict_Success_CheckVersion = "Succ_CheckVersion" #老玩家某些功能成就检查版本
+Def_PDict_Success_PassportAward = "Succ_PassportAward_%s" #成就通行证领奖状态,参数(key编号),按索引位存储0-未领,1-已领
# 大师 Def_PDictType_GreatMaster
Def_PDict_Master_Exp = "Master_Exp" # 当前大师经验
@@ -5449,4 +5450,7 @@
PowerDownType_ResetPoint:'ResetPoint',
PowerDownType_ResetTalent:'ResetTalent',
PowerDownType_GatherSoul:'GatherSoul',
- }
\ No newline at end of file
+ }
+
+# CTG ID 定义
+Def_CTGID_SuccessPassport = 117 # 成就通行证
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index cae53eb..7b71519 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -10153,6 +10153,7 @@
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
("SuccID", c_int), #成就ID
+ ("IsPassport", c_ubyte), #是否通行证奖励
]
def __init__(self):
@@ -10170,6 +10171,7 @@
self.Cmd = 0xA5
self.SubCmd = 0x42
self.SuccID = 0
+ self.IsPassport = 0
return
def GetLength(self):
@@ -10182,12 +10184,14 @@
DumpString = '''// A5 42 领取成就奖励 //tagMCGetSuccessAward:
Cmd:%s,
SubCmd:%s,
- SuccID:%d
+ SuccID:%d,
+ IsPassport:%d
'''\
%(
self.Cmd,
self.SubCmd,
- self.SuccID
+ self.SuccID,
+ self.IsPassport
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 68862a6..cf09baf 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -18767,6 +18767,7 @@
_fields_ = [
("RecordIndex", c_ushort), #第几个记录值 每个key存31个succid 0-30为0, 31-61为1..
("Record", c_int), #对应是否领取值
+ ("PassportRecord", c_int), #通行证奖励是否领取值
]
def __init__(self):
@@ -18781,6 +18782,7 @@
def Clear(self):
self.RecordIndex = 0
self.Record = 0
+ self.PassportRecord = 0
return
def GetLength(self):
@@ -18792,11 +18794,13 @@
def OutputString(self):
DumpString = '''//A3 42 成就完成领奖记录列表 //tagMCSuccessFinishAwardRecordList:
RecordIndex:%d,
- Record:%d
+ Record:%d,
+ PassportRecord:%d
'''\
%(
self.RecordIndex,
- self.Record
+ self.Record,
+ self.PassportRecord
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearSuccess.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearSuccess.py
deleted file mode 100644
index 22c378b..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ClearSuccess.py
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package GM.Commands.ClearSuccess
-#
-# @todo:重置成就数据
-# @author hxp
-# @date 2014-11-13
-# @version 1.0
-#
-# 详细描述: 重置成就数据
-#
-#---------------------------------------------------------------------
-"""Version = 2014-11-13 20:30"""
-
-import ShareDefine
-import ChConfig
-import PlayerSuccess
-import GameWorld
-
-#逻辑实现
-## GM命令执行入口
-# @param curPlayer 当前玩家
-# @param msgList 参数列表 [npcID]
-# @return None
-# @remarks 函数详细说明.
-def OnExec(curPlayer, msgList):
- for succType in ShareDefine.SuccessTypeList:
- succDataList = PlayerSuccess.GetSuccDataMng().GetSuccDataByType(succType)
- if not succDataList:
- continue
-
- for succDataObj in succDataList:
- succID = succDataObj.succID
- PlayerSuccess.SetSuccHasGot(curPlayer, succID, False)
- # 重置该成就完成时间
- PlayerSuccess.SetSuccFinish(curPlayer, succID, False)
-
- lastDayKey = ChConfig.Def_PDict_Success_LastDay % (succID)
- PlayerSuccess.SetPDictValue(curPlayer, lastDayKey, 0)
-
- PlayerSuccess.SetSuccFinishValue(curPlayer, succType, succDataObj.condition, 0)
-
-
- # 老玩家上线检查情况
- PlayerSuccess.SetPDictValue(curPlayer, ChConfig.Def_PDict_Success_CheckVersion, 0)
- # 同步成就信息
- PlayerSuccess.Sync_SuccessInfo(curPlayer, [], True)
- # 同步成就领奖记录
- PlayerSuccess.Sync_SuccTypeIndexAwardRecord(curPlayer, [], True)
- GameWorld.DebugAnswer(curPlayer, "OK!")
- return
-
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Success.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Success.py
index f187085..d683796 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Success.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Success.py
@@ -72,6 +72,7 @@
if succType not in resetTypeList:
resetTypeList.append(succType)
PlayerSuccess.SetSuccHasGot(curPlayer, succID, False)
+ PlayerSuccess.SetSuccPassportAwardHasGot(curPlayer, succID, False)
PlayerSuccess.SetSuccFinish(curPlayer, succID, False)
PlayerSuccess.SetPDictValue(curPlayer, ChConfig.Def_PDict_Success_LastDay % (succID), 0)
PlayerSuccess.SetSuccFinishValue(curPlayer, succType, succDataObj.condition, 0)
@@ -100,9 +101,11 @@
for succDataObj in succDataList:
succID = succDataObj.succID
- if not PlayerSuccess.GetSuccHasGot(curPlayer, succID):
+ if not PlayerSuccess.GetSuccHasGot(curPlayer, succID) and not PlayerSuccess.GetSuccPassportAwardHasGot(curPlayer, succID):
continue
PlayerSuccess.SetSuccHasGot(curPlayer, succID, False)
+ PlayerSuccess.SetSuccPassportAwardHasGot(curPlayer, succID, False)
+ PlayerSuccess.SetSuccFinish(curPlayer, succID) # 有重置领奖的ID需要重新设置为已完成
resetIDList.append(succID)
# 同步成就领奖记录
@@ -132,8 +135,9 @@
GameWorld.DebugAnswer(curPlayer, "成就类型: %s" % succType)
isFinish = PlayerSuccess.GetSuccIsFinish(curPlayer, succID)
hasGot = PlayerSuccess.GetSuccHasGot(curPlayer, succID)
- GameWorld.DebugAnswer(curPlayer, " id=%s 条件:%s 进度:%s/%s 完成:%s 领奖:%s"
- % (succID, succDataObj.condition, value, succDataObj.needCnt, isFinish, hasGot))
+ passportHasGot = PlayerSuccess.GetSuccPassportAwardHasGot(curPlayer, succID)
+ GameWorld.DebugAnswer(curPlayer, " id=%s 条件:%s 进度:%s/%s 完成:%s 领奖:%s %s"
+ % (succID, succDataObj.condition, value, succDataObj.needCnt, isFinish, hasGot, passportHasGot))
return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 09bfb33..d0774cd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -609,6 +609,7 @@
("list", "Condition", 0),
("list", "PreSuccess", 0),
("dict", "AwardItem", 0),
+ ("dict", "AwardItem2", 0),
("dict", "Money", 0),
("DWORD", "Exp", 0),
("dict", "AwardAttr", 0),
@@ -2799,6 +2800,7 @@
self.Condition = []
self.PreSuccess = []
self.AwardItem = {}
+ self.AwardItem2 = {}
self.Money = {}
self.Exp = 0
self.AwardAttr = {}
@@ -2813,6 +2815,7 @@
def GetCondition(self): return self.Condition # 辅助条件
def GetPreSuccess(self): return self.PreSuccess # 需要达成前置成就
def GetAwardItem(self): return self.AwardItem # 奖励物品列表
+ def GetAwardItem2(self): return self.AwardItem2 # 通行证奖励物品列表
def GetMoney(self): return self.Money # 金钱
def GetExp(self): return self.Exp # 经验
def GetAwardAttr(self): return self.AwardAttr # 奖励属性
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py
index 1d4901f..9382a50 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerSuccess.py
@@ -89,6 +89,14 @@
return
+def GetSuccPassportAwardHasGot(curPlayer, succID):
+ #获取成就通行证奖励是否已领取
+ return GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_PDict_Success_PassportAward, succID)
+def SetSuccPassportAwardHasGot(curPlayer, succID, hasGot=True):
+ #设置成就通行证奖励领取状态
+ GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_PDict_Success_PassportAward, succID, hasGot)
+ return
+
def SetSuccFinishValue(curPlayer, succType, condition, value):
#设置成就完成度
key = ChConfig.Def_PDict_Success_CntValue % (succType, condition)
@@ -112,6 +120,7 @@
self.preSuccIDList = [] # 前置成就ID
self.condition = [] # 辅助条件(根据类型自定义配置)
self.awardItemDict = {} # 完成成就可领取的奖励物品{itemid:itemcnt}
+ self.awardItemDict2 = {} # 完成成就可领取的奖励物品,通行证奖励{itemid:itemcnt}
self.moneyDict = {} # 完成成就获得的金钱 {moneyType:money}
self.exp = 0 # 完成成就获得的经验
self.attrDict = {} # 完成成就获得的属性 {attrid:attrvalue}
@@ -153,6 +162,7 @@
succData.preSuccIDList = list(successIpyData.GetPreSuccess())
succData.condition = list(successIpyData.GetCondition())
succData.awardItemDict = successIpyData.GetAwardItem()
+ succData.awardItemDict2 = successIpyData.GetAwardItem2()
succData.moneyDict = successIpyData.GetMoney()
succData.exp = successIpyData.GetExp()
succData.attrDict = successIpyData.GetAwardAttr()
@@ -161,7 +171,8 @@
magicWeaponExp = successIpyData.GetMagicWeaponExp()
if magicWeaponID and magicWeaponExp:
succData.magicWeaponExp[magicWeaponID] = magicWeaponExp
- succData.hasAward = bool(succData.awardItemDict or succData.moneyDict or succData.exp or succData.attrDict or succData.redPacketID or succData.magicWeaponExp)
+ succData.hasAward = bool(succData.awardItemDict or succData.moneyDict or succData.exp or succData.attrDict or succData.redPacketID or succData.magicWeaponExp \
+ or succData.awardItemDict2)
successDataObjDict[succData.succID]=succData
if tuple(succData.condition) not in conditionDict:
conditionDict[tuple(succData.condition)] = [succData.succID]
@@ -865,47 +876,64 @@
awardDict[itemID] = awardDict.get(itemID, 0)+itemCnt
return awardDict
+def GetSuccessPassportState(curPlayer):
+ ## 成就通行证状态
+ return curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGGoodsBuyCount % ChConfig.Def_CTGID_SuccessPassport) > 0
+
#// A5 42 领取成就奖励 #tagMCGetSuccessAward
#
#struct tagMCGetSuccessAward
#{
# tagHead Head;
# DWORD SuccID; //成就ID
+# BYTE IsPassport; //是否通行证奖励
#};
-## 领取成就奖励
-# @param None
-# @return
def OnGetSuccessAward(index, clientData, tick):
curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
succID = clientData.SuccID
- __DoGetSuccTypeIndexAward(curPlayer, succID)
+ isPassport = clientData.IsPassport
+ __DoGetSuccTypeIndexAward(curPlayer, succID, isPassport=isPassport)
return
## 领取某个成就奖励
# @param None
# @return
-def __DoGetSuccTypeIndexAward(curPlayer, succID, isGiveItem=True):
- GameWorld.DebugLog("领取成就奖励succID=%s" % (succID))
+def __DoGetSuccTypeIndexAward(curPlayer, succID, isGiveItem=True, isPassport=False):
+ GameWorld.DebugLog("领取成就奖励succID=%s,isPassport=%s" % (succID, isPassport))
succData = GetSuccDataMng().GetSuccessData(succID)
if not succData:
GameWorld.DebugLog(" 成就数据不存在!succID=%s" % (succID))
return
-
- finishTime = GetSuccIsFinish(curPlayer, succID)
- if finishTime <= 0:
- GameWorld.DebugLog(" 该成就未完成!")
- return
-
- if GetSuccHasGot(curPlayer, succID):
- GameWorld.DebugLog(" 该成就奖励已经领取过!")
- return
-
+
if not succData.hasAward:
GameWorld.DebugLog(" 该成就没有配置奖励!")
return
- itemDict = succData.awardItemDict
+ finishTime = GetSuccIsFinish(curPlayer, succID)
+ hasGot = GetSuccHasGot(curPlayer, succID) # 因为普通奖励领取后会重置是否已完成,所以如果已经领取普通奖励也代表已完成
+ if finishTime <= 0 and not hasGot:
+ GameWorld.DebugLog(" 该成就未完成!")
+ return
+
+ if isPassport:
+ if GetSuccPassportAwardHasGot(curPlayer, succID):
+ GameWorld.DebugLog(" 该成就通行证奖励已经领取过!")
+ return
+
+ if not GetSuccessPassportState(curPlayer):
+ GameWorld.DebugLog(" 未开通成就通行证,无法领取通行证奖励!")
+ return
+ itemDict = succData.awardItemDict2
+ if not itemDict:
+ GameWorld.DebugLog(" 该成就没用通行证奖励!")
+ return
+ else:
+ if hasGot:
+ GameWorld.DebugLog(" 该成就奖励已经领取过!")
+ return
+ itemDict = succData.awardItemDict
+
# if awardItemDict and '[' in str(awardItemDict):
# #修行成就奖励根据境界等级变
# curRealmLV = curPlayer.GetOfficialRank()
@@ -919,9 +947,6 @@
# else:
# itemDict = awardItemDict
-
-
-
# 检查背包
if isGiveItem:
packSpace = ItemCommon.GetItemPackSpace(curPlayer, IPY_GameWorld.rptItem)
@@ -931,13 +956,20 @@
return
# 更新领奖记录
- SetSuccHasGot(curPlayer, succID)
+ if isPassport:
+ SetSuccPassportAwardHasGot(curPlayer, succID)
+ else:
+ SetSuccHasGot(curPlayer, succID)
# 给物品
if isGiveItem:
for itemID, itemCnt in itemDict.items():
isPutIn = ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, 0, [IPY_GameWorld.rptItem, IPY_GameWorld.rptAnyWhere])
+ if isPassport:
+ # 通行证奖励只给物品
+ return itemDict
+
#给钱
for moneyType, value in succData.moneyDict.items():
PlayerControl.GiveMoney(curPlayer, moneyType, value)
@@ -968,27 +1000,31 @@
if succIDList:
recordIndexList = []
for succID in succIDList:
- recordIndexList.append(succID / 31)
+ recordIndex = succID / 31
+ if recordIndex not in recordIndexList:
+ recordIndexList.append(recordIndex)
else:
ipyDataMgr = IpyGameDataPY.IPY_Data()
succCnt = ipyDataMgr.GetSuccessCount()
if not succCnt:
return
maxSuccid = ipyDataMgr.GetSuccessByIndex(succCnt-1).GetID()
- recordIndexList = range(maxSuccid / 31+1)
+ recordIndexList = xrange(maxSuccid / 31+1)
succFARPack = ChPyNetSendPack.tagMCSuccessFinishAwardRecordList()
succFARPack.Clear()
succFARPack.RecordList = []
for i in recordIndexList:
awardRecord=curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Success_AwardRecord%i)
- if not isSyncZero and not awardRecord:
+ passportAwardRecord=curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Success_PassportAward%i)
+ if not isSyncZero and not awardRecord and not passportAwardRecord:
continue
recordInfo = ChPyNetSendPack.tagMCSuccessFinishAwardRecord()
recordInfo.RecordIndex = i
recordInfo.Record = awardRecord
+ recordInfo.PassportRecord = passportAwardRecord
succFARPack.RecordList.append(recordInfo)
-
+
succFARPack.RecordCnt = len(succFARPack.RecordList)
NetPackCommon.SendFakePack(curPlayer, succFARPack)
return
--
Gitblit v1.8.0