private object IOnNpcTarget(BaseNpc npc, BaseEntity target) { if (Interface.CallHook("OnNpcTarget", npc, target) != null) { npc.SetFact(BaseNpc.Facts.HasEnemy, 0); npc.SetFact(BaseNpc.Facts.EnemyRange, 3); npc.SetFact(BaseNpc.Facts.AfraidRange, 1); return(0f); } return(null); }
private object IOnNpcTarget(BaseNpc npc, BaseEntity target) { var callHook = Interface.Call("OnNpcTarget", npc, target); if (callHook != null) { npc.SetFact(BaseNpc.Facts.HasEnemy, 0); npc.SetFact(BaseNpc.Facts.EnemyRange, 3); npc.SetFact(BaseNpc.Facts.AfraidRange, 1); return(true); } return(null); }
private object IOnNpcTarget(BaseNpc npc, BaseEntity target) { if (Interface.CallHook("OnNpcTarget", npc, target) != null) { npc.SetFact(BaseNpc.Facts.HasEnemy, 0); npc.SetFact(BaseNpc.Facts.EnemyRange, 3); npc.SetFact(BaseNpc.Facts.AfraidRange, 1); npc.AiContext.EnemyPlayer = null; npc.AiContext.LastEnemyPlayerScore = 0f; npc.playerTargetDecisionStartTime = 0f; return(0f); } return(null); }
private void StopMoving() { entity.IsStopped = true; entity.ChaseTransform = null; entity.SetFact(BaseNpc.Facts.PathToTargetStatus, 0, true, true); }