Exemple #1
0
    /// <summary>
    /// Assignments and code called on start.
    /// </summary>
    public virtual void OnStart()
    {
        stats          = GetComponent <Stats>();
        anim           = GetComponent <Animator>();
        animController = GetComponent <AIAnimationController>();
        audioSource    = GetComponent <AudioSource>();

        state      = CreatureState.Idle;
        allegiance = CreatureAllegiance.Neutral;

        stats.currentMoveSpeed = stats.defaultMoveSpeed;
    }
Exemple #2
0
    // Start is called before the first frame update
    void Start()
    {
        navMesh     = GetComponent <NavMeshAgent>();
        anim        = GetComponent <Animator>();
        rb          = GetComponent <Rigidbody>();
        audioSource = GetComponent <AudioSource>();

        state         = CreatureState.Idle;
        navMesh.speed = speed;
        state         = CreatureState.Idle;
        allegiance    = CreatureAllegiance.Neutral;

        player = FindObjectOfType <PlayerController>();
        winConditionManager = FindObjectOfType <WinConditionManager2>();
    }
Exemple #3
0
 public void Eat(int foodCode)
 {
     if (foodCode == 1) //Normal feed
     {
         audioSource.PlayOneShot(eat);
         winConditionManager.IsFed(true);
         fedCount++;
         Instantiate(Resources.Load("EatParticlesBlue"), transform.position + transform.forward + transform.up, transform.rotation);
         if (fedCount >= requiredFeedCount && allegiance == CreatureAllegiance.Neutral)
         {
             allegiance = CreatureAllegiance.Friendly;
             hasTurned  = true;
         }
     }
     else if (foodCode == 2) //Bad feed
     {
         audioSource.PlayOneShot(eat);
         audioSource.PlayOneShot(attack);
         Instantiate(Resources.Load("EatParticlesRed"), transform.position + transform.forward + transform.up, transform.rotation);
         if (allegiance == CreatureAllegiance.Neutral)
         {
             allegiance = CreatureAllegiance.Hostile;
             hasTurned  = true;
         }
     }
     else if (foodCode == 3) //Cure
     {
         audioSource.PlayOneShot(eat);
         Instantiate(Resources.Load("EatParticlesGreen"), transform.position + transform.forward + transform.up, transform.rotation);
         if (allegiance == CreatureAllegiance.Hostile)
         {
             allegiance = CreatureAllegiance.Neutral;
             state      = CreatureState.Idle;
             hasTurned  = true;
         }
     }
 }