From 27dcefa84d62c0a491d159439df9b3d05f7b5c70 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 25 十二月 2018 10:55:00 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/SnxxServerCode
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py | 21 ++++++++++++++++++++-
1 files changed, 20 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 0d8cff6..2c2aee9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/ChNPC.py
@@ -94,6 +94,7 @@
# 召唤NPC死亡触发被动技能
owner = NPCCommon.GetSummonNPCOwner(IPY_GameWorld.gotPlayer, curNPC)
if owner:
+ owner.SetDict("summondie", curNPC.GetNPCID())
PassiveBuffEffMng.OnPassiveSkillTrigger(owner, None, None, ChConfig.TriggerType_SummonDie,
GameWorld.GetGameWorld().GetTick())
@@ -133,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 当前时间
@@ -351,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