Пример #1
0
    public void Awake()
    {
        myMob = GetComponent <Mob>();
        var defaultPersona = new AIPersona();
        var personas       = new[] {
            defaultPersona,
            defaultPersona,
            new AIAttackerPersona(),
            new AICapturerPersona(),
            new AIFollowerPersona()
        };

        persona         = personas[Random.Range(0, personas.Length)];
        activeBehaviour = new AIThink(this, myMob);
        activeBehaviour.Start();
    }
Пример #2
0
 public float GoalPlayerProximityMultiplier(float goalPlayerDistance, AIPersona forPersona)
 {
     return(Mathf.Lerp(1f, Mathf.Clamp(goalPlayerDistance, 3f, 20f) / 6f, forPersona.PlayerProximityImportance()));
 }
Пример #3
0
 public float EnemyPlayerProximityMultiplier(float enemyPlayerDistance, AIPersona forPersona)
 {
     return(Mathf.Lerp(1f, Mathf.Clamp(enemyPlayerDistance, 1f, 10f) / 4f, forPersona.PlayerProximityImportance()));
 }