From 12be80ecd33e26a29c0f7186bd1f200550eea15f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 21 八月 2024 18:59:56 +0800
Subject: [PATCH] 10223 10238 10241 【越南】【砍树】【主干】【港台】仙匣秘境、骑宠养成、古宝养成,修复本服活动同时开多个时活动榜单可能被重置的bug;
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py | 6 +++---
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActXianXiaMJ.py | 12 +++++++++++-
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActHorsePetTrain.py | 12 +++++++++++-
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActGubao.py | 12 +++++++++++-
4 files changed, 36 insertions(+), 6 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
index 6ffbdec..2f97f1f 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
@@ -860,11 +860,11 @@
elif actName == ShareDefine.OperationActionName_BossTrial:
PlayerActBossTrial.OnActStart(actNum)
elif actName == ShareDefine.OperationActionName_XianXiaMJ:
- PlayerActXianXiaMJ.OnActStart(actNum)
+ PlayerActXianXiaMJ.OnActStart(actNum, ipyData)
elif actName == ShareDefine.OperationActionName_Gubao:
- PlayerActGubao.OnActStart(actNum)
+ PlayerActGubao.OnActStart(actNum, ipyData)
elif actName == ShareDefine.OperationActionName_HorsePetTrain:
- PlayerActHorsePetTrain.OnActStart(actNum)
+ PlayerActHorsePetTrain.OnActStart(actNum, ipyData)
elif actName == ShareDefine.OperationActionName_FamilyCTGAssist:
PlayerActFamilyCTGAssist.OnActStart(actNum)
else:
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActGubao.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActGubao.py
index 1e8006c..d0845a5 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActGubao.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActGubao.py
@@ -28,8 +28,14 @@
import CrossRealmMsg
import GameWorld
-def OnActStart(actNum):
+def OnActStart(actNum, ipyData):
## 活动开启
+ if not ipyData:
+ return
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("古宝养成活动没有榜单奖励,不处理OnActStart! actNum=%s" % (actNum))
+ return
PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActGubaoAward % actNum, 0)
PlayerBillboard.ClearBillboardByIndex(ShareDefine.Def_BT_GubaoScore)
return
@@ -54,6 +60,10 @@
if not ipyData:
return
cfgID = ipyData.GetCfgID()
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("古宝养成活动没有榜单奖励,不结算榜单奖励! actNum=%s" % (actNum))
+ return
awardState = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActGubaoAward % actNum)
if awardState:
#已经结算过该活动
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActHorsePetTrain.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActHorsePetTrain.py
index c05f09a..b1116b7 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActHorsePetTrain.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActHorsePetTrain.py
@@ -27,8 +27,14 @@
import CrossRealmMsg
import GameWorld
-def OnActStart(actNum):
+def OnActStart(actNum, ipyData):
## 活动开启
+ if not ipyData:
+ return
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("骑宠养成活动没有榜单奖励,不处理OnActStart! actNum=%s" % (actNum))
+ return
PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActHorsePetTrainAward % actNum, 0)
PlayerBillboard.ClearBillboardByIndex(ShareDefine.Def_BT_HorsePetTrainScore)
return
@@ -53,6 +59,10 @@
if not ipyData:
return
cfgID = ipyData.GetCfgID()
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("骑宠养成活动没有榜单奖励,不结算榜单奖励! actNum=%s" % (actNum))
+ return
awardState = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActHorsePetTrainAward % actNum)
if awardState:
#已经结算过该活动
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActXianXiaMJ.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActXianXiaMJ.py
index 5667123..c7cb01d 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActXianXiaMJ.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerActXianXiaMJ.py
@@ -27,8 +27,14 @@
import CrossRealmMsg
import GameWorld
-def OnActStart(actNum):
+def OnActStart(actNum, ipyData):
## 活动开启
+ if not ipyData:
+ return
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("仙匣秘境活动没有榜单奖励,不处理OnActStart! actNum=%s" % (actNum))
+ return
PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActXianXiaMJAward % actNum, 0)
PlayerBillboard.ClearBillboardByIndex(ShareDefine.Def_BT_XianXiaMJScore)
return
@@ -53,6 +59,10 @@
if not ipyData:
return
cfgID = ipyData.GetCfgID()
+ personalTemplateID = ipyData.GetPersonalTemplateID()
+ if not personalTemplateID:
+ GameWorld.DebugLog("仙匣秘境活动没有榜单奖励,不结算榜单奖励! actNum=%s" % (actNum))
+ return
awardState = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ActXianXiaMJAward % actNum)
if awardState:
#已经结算过该活动
--
Gitblit v1.8.0