From 54b3ca452de08e8cf5723a0715cc0c3853c2df3a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 01 十二月 2018 16:35:48 +0800
Subject: [PATCH] 2549 【BUG】【1.3】玩家登录时过天处理离线期间所获得的助战仙缘币异常
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py | 30 +++++++++++++++++++++++++-----
1 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
index d38537a..0edc709 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCommon.py
@@ -1986,9 +1986,8 @@
# 设置npc死亡及自身处理
SetDeadEx(summonNPC)
- if curNPC.GetGameObjType() == IPY_GameWorld.gotNPC and \
- curNPC.GetGameNPCObjType() == IPY_GameWorld.gnotSummon:
- FBLogic.DoFB_SummonNPCDead(curNPC)
+ if curNPC.GetGameObjType() == IPY_GameWorld.gotNPC:
+ FBLogic.DoFB_NPCDead(curNPC)
summonPlayerID = curNPC.GetDictByKey(ChConfig.Def_NPC_Dict_SummonMapNPCPlayerID)
if summonPlayerID > 0:
@@ -3654,7 +3653,7 @@
# @remarks 刷新NPC属性
def RefreshNPCAttrState(self, canSyncClient=True, isReborn=False):
curNPC = self.__Instance
- curNPCMaxHP_Before = GameObj.GetMaxHP(curNPC)
+ #curNPCMaxHP_Before = GameObj.GetMaxHP(curNPC)
#清空NPC战斗属性
curNPC.ClearBattleEffect()
#--------------------------------------------
@@ -3691,6 +3690,28 @@
return
+ def SetHelpBattleRobotRebornAttr(self, fightPower):
+ '''助战机器人只设置血量属性
+ 血量算法,(助战玩家=助战机器人):每个副本配置伤害*(助战玩家战力/副本规定战力)*系数值 系数值暂定为50
+ '''
+ curNPC = self.__Instance
+ mapID = FBCommon.GetRecordMapID(GameWorld.GetMap().GetMapID())
+ funcLineID = FBCommon.GetFBPropertyMark()
+ ipyData = IpyGameDataPY.GetIpyGameData("FBHelpBattle", mapID, funcLineID)
+ if not ipyData:
+ return
+
+ SetSuppressFightPower(curNPC, fightPower)
+ fbFightPower = ipyData.GetFightPowerMin()
+ baseHurt = ipyData.GetRobotBaseHurt()
+ hpCoefficient = ipyData.GetRobotHPCoefficient()
+ maxHP = int(eval(IpyGameDataPY.GetFuncCompileCfg("HelpBattleRobot", 2)))
+ GameWorld.DebugLog("设置助战机器人属性: objID=%s,fightPower=%s,maxHP=%s" % (curNPC.GetID(), fightPower, maxHP))
+ GameObj.SetMaxHP(curNPC, maxHP)
+ GameObj.SetHP(curNPC, maxHP)
+ curNPC.Notify_HPEx()
+ curNPC.Notify_MaxHPEx()
+ return
# NPC移动速度特殊处理,只处理百分比不能处理固定值
# 因为 ChConfig.TYPE_Calc_AttrSpeed 非服务端移动速度,偷懒处理法
@@ -3715,7 +3736,6 @@
# @remarks 刷新NPC行为属性
def RefreshNPCActionState(self):
curNPC = self.__Instance
-
OperControlManager.ClearObjActionState(curNPC)
#根据BUFF 加上状态
--
Gitblit v1.8.0