From 875d928db2370eaaa6a43bf01d0761d7939dab5f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 13 十月 2018 17:14:42 +0800
Subject: [PATCH] 4064 【后端】【主干】直接给玩家的货币类物品优化处理; 2094 邮件发放神兽装备,神兽背包空间不足逻辑错误;
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBossReborn.py | 23 +++++++++++++++++------
1 files changed, 17 insertions(+), 6 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBossReborn.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBossReborn.py
index dc7b415..12184dd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBossReborn.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBossReborn.py
@@ -59,6 +59,7 @@
actBossRebornInfo = PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_BossReborn, {})
bossRebornID = actBossRebornInfo.get(ShareDefine.ActKey_ID, 0)
state = actBossRebornInfo.get(ShareDefine.ActKey_State, 0)
+ cfgID = actBossRebornInfo.get(ShareDefine.ActKey_CfgID, 0)
playerBossRebornID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_BossRebornID) # 玩家身上的活动ID
@@ -66,7 +67,11 @@
if bossRebornID == playerBossRebornID:
#GameWorld.DebugLog("BOSS复活活动ID不变,不处理!", curPlayer.GetPlayerID())
return
- templateID = actBossRebornInfo.get(ShareDefine.ActKey_TemplateID, 0)
+
+ templateID = 0
+ if cfgID:
+ actBossIpyData = IpyGameDataPY.GetIpyGameData("ActBossReborn", cfgID)
+ templateID = 0 if not actBossIpyData else actBossIpyData.GetTemplateID()
playerTemplateID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_BossRebornTemplateID)
GameWorld.DebugLog("BOSS复活重置! costRebateID=%s,playerCostRebateID=%s,state=%s,templateID=%s,playerTemplateID=%s"
@@ -207,19 +212,25 @@
def SyncBossRebornInfo(curPlayer):
actBossRebornInfo = PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_BossReborn, {})
state = actBossRebornInfo.get(ShareDefine.ActKey_State, 0)
- if not state:
+ cfgID = actBossRebornInfo.get(ShareDefine.ActKey_CfgID, 0)
+ if not state or not cfgID:
return
- templateID = actBossRebornInfo.get(ShareDefine.ActKey_TemplateID, 0)
+ actBossIpyData = IpyGameDataPY.GetIpyGameData("ActBossReborn", cfgID)
+ if not actBossIpyData:
+ return
+ templateID = actBossIpyData.GetTemplateID()
if not templateID:
return
ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition("BossReborn", {'TemplateID':templateID}, True)
if not ipyDataList:
return
+ openServerDay = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay) + 1
actInfo = ChPyNetSendPack.tagMCBossRebornInfo()
actInfo.Clear()
- actInfo.StartDate = actBossRebornInfo.get(ShareDefine.ActKey_StartDate, "")
- actInfo.EndtDate = actBossRebornInfo.get(ShareDefine.ActKey_EndDate, "")
- actInfo.LimitLV = actBossRebornInfo.get(ShareDefine.ActKey_LVLimit, 0)
+ actInfo.StartDate = GameWorld.GetOperationActionDateStr(actBossIpyData.GetStartDate(), openServerDay)
+ actInfo.EndtDate = GameWorld.GetOperationActionDateStr(actBossIpyData.GetEndDate(), openServerDay)
+ actInfo.ResetType = actBossIpyData.GetResetType()
+ actInfo.LimitLV = actBossIpyData.GetLVLimit()
actInfo.TaskInfo = []
for ipyData in ipyDataList:
taskInfo = ChPyNetSendPack.tagMCBossRebornTaskInfo()
--
Gitblit v1.8.0