Exemplo n.º 1
0
    void Attack2()
    {
        GameObject   go           = GameObject.FindGameObjectWithTag("Player");
        JotaroHealth jotaro       = go.GetComponent <JotaroHealth>();
        JotaroCombat jotaroCombat = go.GetComponent <JotaroCombat>();

        if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
        {
            jotaroCombat.Block();
        }
        else
        {
            jotaro.TakeDamage(2);
        }
    }
Exemplo n.º 2
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        JotaroHealth jotaro       = hitInfo.GetComponent <JotaroHealth>();
        JotaroCombat jotaroCombat = hitInfo.GetComponent <JotaroCombat>();

        if (jotaro != null)
        {
            if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
            {
                jotaroCombat.Block();
            }
            else
            {
                jotaro.TakeDamage(damage);
            }
        }
        Destroy(gameObject);
    }
Exemplo n.º 3
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        JotaroHealth jotaroHealth = hitInfo.GetComponent <JotaroHealth>();
        JotaroCombat jotaroCombat = hitInfo.GetComponent <JotaroCombat>();

        if (jotaroHealth != null)
        {
            if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
            {
                jotaroCombat.Block();
            }
            else
            {
                jotaroHealth.TakeDamage(damage);
            }
        }

        Instantiate(impactEffect, transform.position, transform.rotation);
        Destroy(gameObject);
    }
Exemplo n.º 4
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        JotaroHealth jotaro       = hitInfo.GetComponent <JotaroHealth>();
        JotaroCombat jotaroCombat = hitInfo.GetComponent <JotaroCombat>();

        if (jotaro != null)
        {
            if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
            {
                jotaroCombat.Block();
            }
            else
            {
                tenAnim.SetTrigger("Attack");
                jotaro.TakeDamage(damage);
                GameObject     j          = GameObject.FindGameObjectWithTag("Player");
                JotaroMovement moveScript = j.GetComponent <JotaroMovement>();
                moveScript.enabled     = false;
                moveScript.rb.velocity = transform.right * 0;
                rb.velocity            = transform.right * 0;
                Invoke("ResumeMovement", 1);
            }
        }
    }
Exemplo n.º 5
0
 // Update is called once per frame
 void Update()
 {
     if (start)
     {
         Vector2 target = new Vector2(startPos.position.x, rb.position.y);
         Vector2 newPos = Vector2.MoveTowards(rb.position, target, speed * Time.fixedDeltaTime);
         rb.MovePosition(newPos);
         if (Vector2.Distance(startPos.position, rb.position) <= 0.1)
         {
             transform.Rotate(0f, 180f, 0f);
             start = false;
         }
     }
     if (move)
     {
         Vector2 target = new Vector2(player.position.x, rb.position.y);
         Vector2 newPos = Vector2.MoveTowards(rb.position, target, speed * Time.fixedDeltaTime);
         rb.MovePosition(newPos);
         if (Vector2.Distance(player.position, rb.position) <= attackRange)
         {
             if (attack)
             {
                 dioAnim.SetTrigger("Attack");
                 attack = false;
                 GameObject   go           = GameObject.FindGameObjectWithTag("Player");
                 JotaroCombat jotaroCombat = go.GetComponent <JotaroCombat>();
                 if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
                 {
                     jotaroCombat.Block();
                 }
                 else
                 {
                     jotaro.TakeDamage(2);
                 }
                 attack = false;
             }
             move = false;
         }
     }
     if (up)
     {
         Vector2 target = new Vector2(rb.position.x, upPos.position.y);
         Vector2 newPos = Vector2.MoveTowards(rb.position, target, speed * Time.fixedDeltaTime);
         rb.MovePosition(newPos);
         if (Vector2.Distance(upPos.position, rb.position) <= 0.1)
         {
             up   = false;
             move = true;
             dioAnim.SetTrigger("isFalling");
             FindObjectOfType <AudioManager>().Play("RoadRoller");
         }
     }
     if (down)
     {
         Vector2 target = new Vector2(rb.position.x, player.position.y);
         Vector2 newPos = Vector2.MoveTowards(rb.position, target, speed * Time.fixedDeltaTime);
         rb.MovePosition(newPos);
         if (Vector2.Distance(player.position, rb.position) <= 0.5)
         {
             dioAnim.SetTrigger("RR");
             FindObjectOfType <AudioManager>().Play("FastMuda");
             GameObject   go           = GameObject.FindGameObjectWithTag("Player");
             JotaroCombat jotaroCombat = go.GetComponent <JotaroCombat>();
             if (Input.GetKey(KeyCode.P) && Time.time >= jotaroCombat.nextBlockTime)
             {
                 jotaroCombat.Block();
             }
             else
             {
                 jotaro.TakeDamage(10);
             }
             down = false;
         }
     }
 }