From 6431718d4fabf83de74f7abe40f671590dbf91c0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 26 十二月 2025 09:08:44 +0800
Subject: [PATCH] 358 【内政】红颜系统-服务端(马车炸弹不出裂纹;马车炸开后通知马车空白;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
index 5c14dcf..df14000 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
@@ -385,6 +385,12 @@
heroID = heroItem.GetItemTypeID()
curAddPer = getHeroCardAddPer(heroItem)
effAddPer, effItemIndex, inMain = olPlayer.GetHeroEffectiveCard(heroID)
+ curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptHero)
+ hisEffItem = curPack.GetAt(effItemIndex) if curPack.GetCount() > effItemIndex else None
+ if not hisEffItem or hisEffItem.IsEmpty():
+ GameWorld.DebugLog("历史生效的物品不在了,强制设置空! effAddPer=%s,effItemIndex=%s,inMain=%s" % (effAddPer, effItemIndex, inMain))
+ effAddPer, effItemIndex, inMain = -1, -1, False
+
if itemIndex == effItemIndex:
if curAddPer == effAddPer:
GameWorld.DebugLog("生效的卡牌不变且加成也不变,不用处理! heroID=%s,itemIndex=%s,inMain=%s,effAddPer=%s,curAddPer=%s" % (heroID, itemIndex, inMain, effAddPer, curAddPer))
@@ -464,8 +470,10 @@
if inMain:
updEffectiveCardDict[heroID] = [cardAddPer, index, inMain]
else:
- addPer = updEffectiveCardDict.get(heroID, [-1, -1, False])[0]
- if cardAddPer > addPer:
+ effInfo = updEffectiveCardDict.get(heroID, [-1, -1, False])
+ if effInfo[2] == True:
+ pass #GameWorld.Log(" 已经有在阵容中的生效卡了: index=%s" % effInfo[1])
+ elif cardAddPer > effInfo[0]:
updEffectiveCardDict[heroID] = [cardAddPer, index, inMain]
# 更新生效变更的卡牌
--
Gitblit v1.8.0