From 9f0bb9a7b8a2b1e7aaeaa50df4cebf6bd315fd13 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 17 一月 2019 02:14:42 +0800 Subject: [PATCH] 5722 【后端】【1.5】跨服BOSS开发(进入跨服增加设置不可被攻击) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py | 20 +++++++++++++++++++- 1 files changed, 19 insertions(+), 1 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py index 7a50f53..2c2aee9 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py @@ -134,7 +134,13 @@ callFunc(atkObj, curNPC, skill, tick) PlayerActivity.OnAttackNPCActivity(atkObj, curNPC) - + +def OnCheckCanDie(atkObj, curNPC, skill, tick): + callFunc = GameWorld.GetExecFunc(NPCAI, "AIType_%d.%s"%(curNPC.GetAIType(), "OnCheckCanDie")) + if callFunc == None: + return True + return callFunc(atkObj, curNPC, skill, tick) + #--------------------------------------------------------------------- ## 初始化NPC # @param tick 当前时间 @@ -352,7 +358,19 @@ for curNPC in gameTruck_List: ProcessNPCAI(curNPC, tick) + # 宠物AI + ProcessPetAI(gameWorld, gameNPC, tick) + +# 宠物AI需求减弱特殊处理, 减少性能消耗 +def ProcessPetAI(gameWorld, gameNPC, tick): #---处理宠物的AI--- + #未到刷新间隔 + if tick - gameWorld.GetTickByType(ChConfig.TYPE_Map_Tick_PetAITick) < \ + ChConfig.TYPE_Map_Tick_Time[ChConfig.TYPE_Map_Tick_PetAITick]: + return + + gameWorld.SetTickByType(ChConfig.TYPE_Map_Tick_PetAITick, tick) + gamePet_List = [] for index in range(0, gameNPC.GetPetCount()): -- Gitblit v1.8.0