From c9d85bde9ec46becb60b4434ec74fd7e527b885e Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 15 十一月 2024 17:17:01 +0800
Subject: [PATCH] 10302 【越南】【英语】【砍树】【tqxbqy】【btgotq】仙缘-服务端

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 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 dc9e161..d05de33 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
@@ -194,6 +195,12 @@
             PlayerTask.AddTaskValue(curPlayer, ChConfig.TaskType_MineItemSelf, 1)
         else:
             PlayerTask.AddTaskValue(curPlayer, ChConfig.TaskType_MineItemRob, 1)
+            
+    ## 取消拉取 (包含主动 或 被动驱赶)
+    elif msgType == "MineAreaCancelPull":
+        areaPlayerID, reason =  dataMsg
+        __OnMineAreaPullEnd(curPlayer, areaPlayerID, reason)
+        
     return
 
 def __DoGiveMineAreaAward(curPlayer, awardInfoList):
@@ -215,6 +222,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
@@ -232,6 +240,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