Exemplo n.º 1
0
    void CheckAttack(MuscleliniAttacks currentAttack)
    {
        switch (currentAttack)
        {
        case MuscleliniAttacks.PunchAttack:
            if (punching)
            {
                if (!punchingCoroutineRunning)
                {
                    StartCoroutine(Punching());
                }
            }
            else
            {
                anim.SetBool("Run", true);
                GetComponent <PolyNavAgent>().SetDestination(player.transform.position);
            }
            break;

        case MuscleliniAttacks.JumpAttack:
            GetComponent <PolyNavAgent>().Stop();
            if (!jumpingCoroutineRunning)
            {
                StartCoroutine(Jumping());
            }
            break;
        }
    }
Exemplo n.º 2
0
 void Update()
 {
     if (!isDead)
     {
         if (!jumpingCoroutineRunning)
         {
             Flip(player.transform, spRenderer);
         }
         if (!jumpingCoroutineRunning)
         {
             timeToAttack += Time.deltaTime;
         }
         if (timeToAttack >= 10)
         {
             timeToAttack  = 0;
             currentAttack = MuscleliniAttacks.JumpAttack;
         }
         CheckAttack(currentAttack);
         if (health <= 10)
         {
             spRenderer.color = new Color(255f, 0f, 0f);
             GetComponent <PolyNavAgent>().maxSpeed = 20;
         }
     }
 }
Exemplo n.º 3
0
 void Start()
 {
     anim                     = GetComponent <Animator>();
     spRenderer               = GetComponent <SpriteRenderer>();
     player                   = GameObject.FindGameObjectWithTag("Player");
     currentAttack            = MuscleliniAttacks.PunchAttack;
     punching                 = false;
     punchingCoroutineRunning = false;
     jumpingCoroutineRunning  = false;
     isDead                   = false;
 }
Exemplo n.º 4
0
    public IEnumerator Falling(Vector3 positionToFall)
    {
        transform.position = positionToFall;
        yield return(new WaitForSecondsRealtime(1f));

        spRenderer.enabled = true;
        anim.SetBool("Fall", true);
        Destroy(inGameShadow);
        CameraShake(1f, 2f);
        if (playerInsideArea)
        {
            player.GetComponent <PlayerBehaviour>().Damaged(gameObject);
        }
        boxCollider.enabled = true;
        yield return(new WaitForSecondsRealtime(1f));

        anim.SetBool("Fall", false);
        currentAttack           = MuscleliniAttacks.PunchAttack;
        jumpingCoroutineRunning = false;
    }