// 区域中的怪物被攻击事件回调aa protected void NotifyMonsterHurt(sdActorInterface kActor, sdActorInterface kAttacker, int iHurt) { foreach (GameObject kChild in mMonsterList) { sdGameMonster kMonster = kChild.GetComponent <sdGameMonster>(); if (kMonster != null && kMonster != kActor) { kMonster.OnAreaGroupAlert(kAttacker); } } }
protected bool mMonsterFindFirstTarget = false; //< 防止函数被嵌套调用aa protected void NotifyMonsterFindFirstTarget(sdActorInterface kActor, sdActorInterface kPreviousTarget, sdActorInterface kTarget) { if (mMonsterFindFirstTarget) { return; } mMonsterFindFirstTarget = true; if (kPreviousTarget == null && kTarget != null) { foreach (GameObject kChild in mMonsterList) { sdGameMonster kMonster = kChild.GetComponent <sdGameMonster>(); if (kMonster != null && kMonster != kActor) { kMonster.OnAreaGroupAlert(kTarget); } } } mMonsterFindFirstTarget = false; }