void FireArrow() { if (Mathf.Abs(move.enemy.position.x - transform.position.x) < 10 && Time.time > fireTime) { float random = move.ReturnRandom(); if (random > 98 || chargingArrow) { chargingArrow = true; anim.SetBool("DrawArrow", true); move.firing = true; arrowPower.value++; arrowSpeed = arrowPower.value; powerImage.color = Color.Lerp(Color.yellow, Color.red, arrowPower.value / arrowPower.maxValue); } } if (arrowPower.value == arrowPower.maxValue) { anim.SetTrigger("ReleaseArrow"); anim.SetBool("DrawArrow", false); move.firing = false; fireTime = Time.time + reloadTime; arrowPower.value = arrowPower.minValue; chargingArrow = false; } }
void Block() { if (Input.GetButtonUp("Fire1")) { float random = move.ReturnRandom(); if (random > 66) { StartCoroutine(Wait()); } } if (waitBool) { shield.SetActive(true); move.blocking = true; shieldUp = true; currentShieldHealth -= 2f * Time.deltaTime; anim.SetBool("BlockBool", true); shield.transform.localScale = shieldSize * (currentShieldHealth / maxShieldHealth); } else { RegainShield(); } }