Color DetermineColor() { if (!beats.DamageTime()) { return(baseColor); } return(damageColor); }
Vector3 CameraShake() { if (beats.DamageTime()) { float shakeAmount = 0.15f; Vector3 v = new Vector3((Random.insideUnitSphere * shakeAmount).x, 0.0f, (Random.insideUnitSphere * shakeAmount).z); return(v); } Vector3 zeroVector = new Vector3(0.0f, 0.0f, 0.0f); return(zeroVector); }
// call this to remove stamina, checks will be done for if stamina can be removed or not public void RemoveStamina(float staminaCost) { if (beats.DamageTime()) { staminaCost = 0.0f; } if (EnoughStamina(staminaCost)) { stamina -= staminaCost; if (stamina < 0) { stamina = 0; } timeOfLastAction = Time.time; } lastStaminaCost = staminaCost; }
// Update is called once per frame void FixedUpdate() { if (beats.DamageTime()) { if (jump) { jump = false; colorToUse = Random.Range(0, 6); switch (colorToUse) { case 0: color = Color.red; break; case 1: color = Color.green; break; case 2: color = Color.blue; break; case 3: color = Color.cyan; break; case 4: color = Color.clear; break; case 5: color = Color.grey; break; default: break; } color = color * 0.5f; meshRenderer.material.color = color; xoffset = Random.Range(-5.0f, 5.0f); zoffset = Random.Range(-5.0f, 5.0f); xtorque = Random.Range(-1.0f, 1.0f); ytorque = Random.Range(-1.0f, 1.0f); if (beatOffset) { beatOffset = false; if (transform.rotation.z < 0) { ztorque = 80; } else if (transform.rotation.z > -0) { ztorque = -80; } if (transform.rotation.x < 0) { xtorque = 80; } else if (transform.rotation.x > -0) { xtorque = -80; } rb.AddForce(new Vector3(xoffset, force, zoffset), ForceMode.Impulse); rb.AddTorque(new Vector3(xtorque, ytorque, ztorque), ForceMode.Impulse); } else { beatOffset = true; ztorque = 0; xtorque = 0; rb.AddForce(new Vector3(xoffset, force, zoffset), ForceMode.Impulse); rb.AddRelativeTorque(new Vector3(xtorque, ytorque, ztorque), ForceMode.Impulse); } } } else { jump = true; rb.AddForce(new Vector3(0, -force / 2, 0), ForceMode.Impulse); } }