From 789490b7d362160f7fca4580df6176498e1eb271 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 15 十一月 2024 15:19:13 +0800 Subject: [PATCH] 10302 【越南】【英语】【砍树】【tqxbqy】【btgotq】仙缘-服务端 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py index 2f4013a..6722046 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py @@ -20,6 +20,7 @@ import IpyGameDataPY import IPY_GameWorld import ChPyNetSendPack +import PlayerActTask import NetPackCommon import ItemControler import ItemCommon @@ -184,7 +185,12 @@ if msgType == "MineAreaAwardGet": awardInfoList = dataMsg[0] __DoGiveMineAreaAward(curPlayer, awardInfoList) - + + ## 取消拉取 (包含主动 或 被动驱赶) + elif msgType == "MineAreaCancelPull": + areaPlayerID, reason = dataMsg + __OnMineAreaPullEnd(curPlayer, areaPlayerID, reason) + return def __DoGiveMineAreaAward(curPlayer, awardInfoList): @@ -206,6 +212,7 @@ GUIDList.append(GUID) GameWorld.DebugLog("结算福地奖励! areaPlayerID=%s,mineID=%s,itemLV=%s,itemID=%s,itemCount=%s,awardTime=%s,isToday=%s,workerCount=%s %s" % (areaPlayerID, mineID, itemLV, itemID, itemCount, GameWorld.ChangeTimeNumToStr(awardTime), isToday, workerCount, GUID), playerID) + __OnMineAreaPullEnd(curPlayer, areaPlayerID, "OK") if addEnergyUsed: energyUsed += addEnergyUsed @@ -223,6 +230,15 @@ SendToGameServer_MineArea(curPlayer, "MineAreaAwardGetOK", [GUIDList, awardItemList]) return +def __OnMineAreaPullEnd(curPlayer, areaPlayerID, reason): + ## 拉取结束额外处理, 包含拉完、取消、被驱赶等 + GameWorld.DebugLog("__OnMineAreaPullEnd: areaPlayerID=%s, reason=%s" % (areaPlayerID, reason)) + if curPlayer.GetPlayerID() == areaPlayerID: + PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_MineAreaEndSelf) + else: + PlayerActTask.AddActTaskValue(curPlayer, ChConfig.ActTaskType_MineAreaEndOther) + return + def OnMineTreasureByCTGID(curPlayer, ctgID): ## 充值激活聚宝盆 treasureCTGIDList = IpyGameDataPY.GetFuncEvalCfg("MineAreaTreasure", 1) -- Gitblit v1.8.0