From d7f44d8d871a90c818bdb3ffe9a60af875b7100a Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 30 九月 2025 10:12:23 +0800 Subject: [PATCH] 135 【挑战】战锤秘境-服务端(白骨盈野;副本基础;副本扫荡;广告奖励支持;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Mail.py | 28 ++++++++++++++++++++++------ 1 files changed, 22 insertions(+), 6 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Mail.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Mail.py index 78412de..521242a 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Mail.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/Mail.py @@ -90,8 +90,10 @@ return def __randMailItem(mailItemCnt): - itemIDList = range(3501, 3530 + 1) - moneyIDList = [20, 30] + moneyIDList = [1, 2, 3] + equipIDList = range(100501, 100512) + heroIDList = range(510001, 510016) + itemIDList = [4, 5, 7, 8, 9, 10, 11, 12, 13, 1000, 1001, 1002] #range(3501, 3530 + 1) isBind = 0 itemList = [] @@ -99,6 +101,22 @@ for moneyID in moneyIDList: itemCount = random.choice([100, 1000, 10000, 20000, 50000, 100000, 200000, 300000, 500000]) itemList.append([moneyID, itemCount, isBind]) + if len(itemList) >= mailItemCnt: + break + + random.shuffle(equipIDList) + for i in range(3): + itemID = equipIDList[i%len(equipIDList)] + itemCount = 1 + itemList.append([itemID, itemCount, isBind]) + if len(itemList) >= mailItemCnt: + break + + random.shuffle(heroIDList) + for i in range(3): + itemID = heroIDList[i%len(heroIDList)] + itemCount = 1 + itemList.append([itemID, itemCount, isBind]) if len(itemList) >= mailItemCnt: break @@ -122,15 +140,13 @@ DataRecordPack.DR_MailDel(playerID, guid, "GMDel") notifyGUIDState[guid] = ShareDefine.MailState_Del GameWorld.DebugAnswer(curPlayer, "删除个人邮件:%s" % len(guidList)) + PlayerMail.Sync_PlayerMailState(curPlayer, notifyGUIDState) guidList = mailMgr.GetServerMailGuids() for guid in guidList: - playerStateDict = mailMgr.DelServerMail(guid) - if playerID in playerStateDict and playerStateDict[playerID] < ShareDefine.MailState_Del: - notifyGUIDState[guid] = ShareDefine.MailState_Del + PlayerMail.DelServerMail(guid, "GMDel") if len(guidList): GameWorld.DebugAnswer(curPlayer, "删除全服邮件:%s" % len(guidList)) - PlayerMail.Sync_PlayerMailState(curPlayer, notifyGUIDState) return def PrintPlayerMail(curPlayer): -- Gitblit v1.8.0