From 11e82d25c1aa5b91706689d0414fdc893ed52627 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期六, 13 四月 2019 11:11:38 +0800 Subject: [PATCH] 6459 【后端】【2.0】缥缈仙域开发单(妖王初版) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFB.py | 62 +++++++++++++++++++++++++++++++ 1 files changed, 62 insertions(+), 0 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFB.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFB.py index acf9183..ef186a9 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFB.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFB.py @@ -38,6 +38,8 @@ import ShareDefine import GameFuncComm import FBHelpBattle +import ItemControler +import PyGameData import time import math @@ -448,4 +450,64 @@ return +#// B1 08 刷新自定义副本奖励 #tagCMRefreshCustomFBPrize +# +#struct tagCMRefreshCustomFBPrize +#{ +# tagHead Head; +# DWORD MapID; +# WORD FuncLineID; +#}; +def OnRefreshCustomFBPrize(playerIndex, clientData, tick): + curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(playerIndex) + playerID = curPlayer.GetPlayerID() + mapID = clientData.MapID + funcLineID = clientData.FuncLineID + prizeItemList = FBLogic.OnRefreshCustomFBPrize(curPlayer, mapID, funcLineID) + if not prizeItemList: + return + PyGameData.g_customFBPrizeInfo[playerID] = [mapID, funcLineID, prizeItemList] + prizePack = ChPyNetSendPack.tagMCCuntomFBPrizeInfo() + prizePack.MapID = mapID + prizePack.FuncLineID = funcLineID + prizePack.PrizeItemList = [] + for prizeItemInfo in prizeItemList: + itemID, itemCount, isAuctionItem, userData = ItemControler.GetItemInfo(prizeItemInfo) + if not itemID: + continue + prizeItem = ChPyNetSendPack.tagMCCuntomFBPrizeItem() + prizeItem.ItemID = itemID + prizeItem.Count = itemCount + prizeItem.IsAuctionItem = isAuctionItem + prizeItem.UserData = userData + prizeItem.UserDataLen = len(prizeItem.UserData) + prizePack.PrizeItemList.append(prizeItem) + prizePack.PrizeItemCount = len(prizePack.PrizeItemList) + NetPackCommon.SendFakePack(curPlayer, prizePack) + return + + +#// B1 09 结算自定义副本奖励 #tagCMGiveCustomFBPrize +# +#struct tagCMGiveCustomFBPrize +#{ +# tagHead Head; +# DWORD MapID; +# WORD FuncLineID; +#}; +def OnGiveCustomFBPrize(playerIndex, clientData, tick): + curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(playerIndex) + playerID = curPlayer.GetPlayerID() + packMapID = clientData.MapID + packFuncLineID = clientData.FuncLineID + prizeInfo = PyGameData.g_customFBPrizeInfo.pop(playerID, None) + if not prizeInfo: + return + mapID, funcLineID, prizeItemList = prizeInfo + if mapID != packMapID or funcLineID != packFuncLineID: + return + FBLogic.OnGiveCustomFBPrizeOK(curPlayer, mapID, funcLineID) + ItemControler.GivePlayerItemOrMail(curPlayer, prizeItemList) + return + -- Gitblit v1.8.0