#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package NPCAI.AIType_55
|
#
|
# @todo:Ëþ·ÀÀàÌØÊâ¹ÖÎïAI
|
# @author hxp
|
# @date 2017-11-29
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: Ëþ·ÀÀàÌØÊâ¹ÖÎïAI, Ö»´òÖ¸¶¨Ä¿±êNPCID
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2017-11-29 18:00"""
|
#-------------------------------------------------------------------------------
|
|
import ChConfig
|
import FBDefenseCommon
|
import IPY_GameWorld
|
import GameWorld
|
#-------------------------------------------------------------------------------
|
|
## ³õʼ»¯
|
# @param curNPC µ±Ç°npc
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def DoInit(curNPC):
|
curNPC.GetNPCAngry().Init(ChConfig.Def_NormalNPCAngryCount)
|
return
|
|
def OnNPCReborn(curNPC):
|
curNPC.SetIsNeedProcess(True)
|
return
|
|
## »ñÈ¡NPCÊÇ·ñÏÞÖÆ¹¥»÷Ä¿±ê£¬AIÌØÊâ¶îÍâÅжÏ
|
def GetNPCAttackTagLimit(curNPC, tagObj):
|
tagNPCIDList = [31704003] # Ö®ºó¿É¸ù¾Ý²»Í¬µÄÐèÇó¿ªÅäÖò»Í¬µÄ¹¥»÷Ä¿±ê£¬Ä¿Ç°Ö»ÓÐÊØÎÀÈ˻ʣ¬ÔÝʱдËÀ
|
tagObjType = tagObj.GetGameObjType()
|
if tagObjType == IPY_GameWorld.gotNPC:
|
if tagObj.GetNPCID() in tagNPCIDList:
|
#GameWorld.DebugLog("Ö»¹¥»÷Ö¸¶¨Ä¿±êNPCID£¬ÆäËûĬÈÏÏÞÖÆ!")
|
return False
|
#GameWorld.DebugLog("¹¥»÷Ä¿±êÊÜÏÞ!tagID=%s" % tagObj.GetID())
|
return True
|
|
## Ö´ÐÐAI
|
# @param curNPC µ±Ç°npc
|
# @param tick µ±Ç°Ê±¼ä
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def ProcessAI(curNPC, tick):
|
|
if not FBDefenseCommon.NormalCheck(curNPC, tick):
|
return
|
|
FBDefenseCommon.NormalFight(curNPC, tick, isUpdAngry=False)
|
return
|
|
|