From 0c0e97dde31a0f0bb9cdec313b827a8d967a40b8 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 27 十一月 2024 11:51:55 +0800 Subject: [PATCH] 10318 【英文】【越南】【BT】【砍树】统一增加奖励获得封包(增加每日礼包事件DailyGiftbag;屏蔽多余的CTG事件下发;) --- ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_AddPersonalCompensation.py | 44 +++++++++++++++++++++++++++++++++++++++----- 1 files changed, 39 insertions(+), 5 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_AddPersonalCompensation.py b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_AddPersonalCompensation.py index 156cd8a..ddb4ada 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_AddPersonalCompensation.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_AddPersonalCompensation.py @@ -29,6 +29,7 @@ import GMCommon import uuid import ChConfig +import ShareDefine #--------------------------------------------------------------------- @@ -49,12 +50,40 @@ # @return None # @remarks 函数详细说明. def OnExec(orderId, gmCmdDict): + strMsg = "" gmCmdDict = ClearEmptyFromDict(gmCmdDict) - PlayerIDList = eval(gmCmdDict.get('PlayerIDList', '[]')) + GameWorld.DebugLog("GMT_AddPersonalCompensation gmCmdDict:%s" % gmCmdDict) + queryType = gmCmdDict.get(GMCommon.Def_GMKey_QueryType, '') + if queryType == GMCommon.Def_GMKey_FamilyID: + sendFamilyIDList = [] + PlayerIDList = [] + familyIDList = gmCmdDict.get("playerList", "").split(",") + GameWorld.Log("发送仙盟邮件: familyIDList=%s" % familyIDList) + for familyID in familyIDList: + familyID = GameWorld.ToIntDef(familyID) + familyInfo = {"familyID":familyID} + memberIDList = [] + family = GameWorld.GetFamilyManager().FindFamily(familyID) + if not family: + GameWorld.DebugLog(" not family %s" % familyID) + continue + for index in range(family.GetCount()): + curMember = family.GetAt(index) + curMemberID = curMember.GetPlayerID() + if curMemberID: + memberIDList.append(curMemberID) + PlayerIDList += memberIDList + familyInfo["PlayerIDList"] = memberIDList + sendFamilyIDList.append(familyInfo) + GameWorld.Log(" send FamilyIDList=%s" % sendFamilyIDList) + GameWorld.Log(" send PlayerIDList=%s" % PlayerIDList) + strMsg = str(sendFamilyIDList) + else: + PlayerIDList = eval(gmCmdDict.get('PlayerIDList', '[]')) if PlayerIDList == []: - GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_ParamErr) + GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_ParamErr) return - + LimitTime = gmCmdDict.get('EndTime', '2050-12-13 00:00:00') curServerTime = GameWorld.GetCurrentDataTimeStr() @@ -63,6 +92,7 @@ GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_InvalidTime) return + MailType = int(gmCmdDict.get('MailType', '0')) Title = gmCmdDict.get('Title', '') Text = gmCmdDict.get('Text', '') GUID = str(uuid.uuid1()) @@ -91,11 +121,11 @@ # GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_ParamErr) # return PlayerCompensation.AddPersonalItem(GUID, addItemDictList, PlayerIDList, - LimitTime, "%s<$_$>%s<$_$>%s"%(sender, Title, Text), + LimitTime, PlayerCompensation.GetMailText(Title, Text, MailType, sender), gold, goldPaper, silver, detail=detail) #执行成功 - GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_Success) + GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_Success, strMsg) # 流向 DataRecordPack.DR_ToolGMOperate(0, '', '', 'GMT_AddPersonalCompensation', str(gmCmdDict)) return @@ -110,6 +140,7 @@ if addItemDict['Count'] == 0: return {} addItemDict['IsAuctionItem'] = GameWorld.ToIntDef(gmCmdDict.get('IsBind%s'%itemIndexStr, '0')) + appointID = GameWorld.ToIntDef(gmCmdDict.get('AppointID%s'%itemIndexStr, '0')) #添加UserData信息 addItemDict['UserData'] = '' UserDataDict = {} @@ -140,6 +171,9 @@ continue itemUserData[key] = value + if appointID: + itemUserData[ShareDefine.Def_CItemKey_AppointID] = appointID + if itemUserData: addItemDict['UserData'] = '%s'%itemUserData -- Gitblit v1.8.0