From 03f617028885a2e8840500bb520f3418d54eb791 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 30 一月 2019 18:09:20 +0800
Subject: [PATCH] 2968 【1.6】本服打boss,中途传送到跨服,未清空本服归属
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py | 45 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 36 insertions(+), 9 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
index 89d8e0a..3c5ea40 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldActionControl.py
@@ -36,7 +36,9 @@
import PlayerXMZZ
import PlayerFamilySWRH
import GameWorldBoss
+import PlayerFamilyRedPacket
import PlayerFairyCeremony
+import PlayerNewFairyCeremony
import GameWorldProcess
import ChPyNetSendPack
import NetPackCommon
@@ -76,12 +78,22 @@
ipyData = operationActionDict[ShareDefine.OperationActionName_FairyCeremony][0]
if ipyData:
PlayerFairyCeremony.Sync_OperationAction_FairyCeremony(ipyData, curPlayer)
-
+ # 新仙界盛典活动进行中
+ if ShareDefine.OperationActionName_NewFairyCeremony in operationActionDict:
+ ipyData = operationActionDict[ShareDefine.OperationActionName_NewFairyCeremony][0]
+ if ipyData:
+ PlayerNewFairyCeremony.Sync_OperationAction_NewFairyCeremony(ipyData, curPlayer)
# 多倍修行点活动进行中
if ShareDefine.OperationActionName_RealmPoint in operationActionDict:
ipyData = operationActionDict[ShareDefine.OperationActionName_RealmPoint][0]
if ipyData:
Sync_OperationAction_RealmPoint(ipyData, curPlayer)
+ # 节日红包活动进行中
+ if ShareDefine.OperationActionName_FeastRedPacket in operationActionDict:
+ ipyData = operationActionDict[ShareDefine.OperationActionName_FeastRedPacket][0]
+ if ipyData:
+ PlayerFamilyRedPacket.Sync_FeastRedPacket(ipyData, curPlayer)
+
return
def SendMapServerOperationActionState():
@@ -441,7 +453,8 @@
dbOperationActIDKey = PlayerDBGSEvent.Def_OperationActID % actName
curActID = sendMapServerMsgDict.get(ShareDefine.ActKey_ID)
- if state >= 1 and curActID and PlayerDBGSEvent.GetDBGSTrig_ByKey(dbOperationActIDKey) != curActID:
+ dayIndex = sendMapServerMsgDict.get(ShareDefine.ActKey_DayIndex, 0)
+ if curActID and PlayerDBGSEvent.GetDBGSTrig_ByKey(dbOperationActIDKey) != curActID:
PlayerDBGSEvent.SetDBGSTrig_ByKey(dbOperationActIDKey, curActID)
if actName in ShareDefine.NeedWorldLVOperationActNameList:
#记录开启时世界等级
@@ -455,10 +468,19 @@
elif actName == ShareDefine.OperationActionName_FairyCeremony:
#重置仙界盛典
PlayerFairyCeremony.ResetFairyCeremony()
-
-
+ elif actName == ShareDefine.OperationActionName_NewFairyCeremony:
+ #重置仙界盛典
+ PlayerNewFairyCeremony.ResetNewFairyCeremony()
+ elif actName == ShareDefine.OperationActionName_FeastRedPacket:
+ #重置节日红包
+ if ipyData:
+ PlayerFamilyRedPacket.OnResetFeastRedPacket(ipyData, dayIndex)
+ elif actName == ShareDefine.OperationActionName_FlashSale:
+ #限时抢购重置购买次数 本次活动每场不能重复
+ #dayIndex = sendMapServerMsgDict.get(ShareDefine.ActKey_DayIndex, 0)
+ PlayerStore.ResetFlashSaleBuyCnt(ipyData)
- if state >= 1 and actName in ShareDefine.NeedWorldLVOperationActNameList:
+ if actName in ShareDefine.NeedWorldLVOperationActNameList:
actWorldLV = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_OActWorldLV % actName)
sendMapServerMsgDict[ShareDefine.ActKey_WorldLV] = actWorldLV
@@ -478,13 +500,18 @@
PlayerFairyCeremony.Sync_OperationAction_FairyCeremony(ipyData)
if preState != state and state == 0:
PlayerFairyCeremony.OnFairyCeremonyEnd()
+ elif actName == ShareDefine.OperationActionName_NewFairyCeremony:
+ if isReload and ipyData:
+ PlayerNewFairyCeremony.Sync_OperationAction_NewFairyCeremony(ipyData)
+ if preState != state and state == 0:
+ PlayerNewFairyCeremony.OnNewFairyCeremonyEnd()
+
elif actName == ShareDefine.OperationActionName_RealmPoint:
if isReload and ipyData:
Sync_OperationAction_RealmPoint(ipyData)
- elif actName == ShareDefine.OperationActionName_FlashSale:
- if ipyData and preState != state:
- dayIndex = sendMapServerMsgDict.get(ShareDefine.ActKey_DayIndex, 0)
- PlayerStore.ResetFlashSaleBuyCnt(ipyData, dayIndex, state)
+ elif actName == ShareDefine.OperationActionName_FeastRedPacket:
+ if isReload and ipyData:
+ PlayerFamilyRedPacket.Sync_FeastRedPacket(ipyData)
#通知Mapserver,设置字典
#GameWorld.SendMapServerMsgEx(dictName, state) # 运营活动不单独通知活动状态,需与活动信息整合后一起通知
--
Gitblit v1.8.0