public void rushAttack() { //initiate the rush attack defyinggravity = true; Rushing = true; RushingTime = Time.time; MyAnimator.SetBool("Rushing", true); RushParticles.Play(true); MyRigidbody.velocity = new Vector2(); AccelerationValue = 0f; if (Astronaut.AggressionLevel >= 1) { //Free Directions Astronaut plr = Astronaut.TheAstronaut; Vector3 dif = (plr.transform.position - this.transform.position); RushDirection = dif.normalized;//new Vector3(ForwardFacing, 0f, 0f).normalized; } else { //Only laterally RushDirection = new Vector3(ForwardFacing, 0f, 0f).normalized; } if (Astronaut.AggressionLevel >= 2) { MyVoidField.Activate(); } }
public void onImpact() { if (Astronaut.AggressionLevel > 1) { //Create a Void Field VoidField vf = GameObject.Instantiate <VoidField>(MyVoidField, null); vf.Activate(); vf.StartTime = Time.time; vf.Duration = 4f; } if (Astronaut.AggressionLevel >= 3) { //Seismic Pull Astronaut plr = Astronaut.TheAstronaut; Vector3 dif = (plr.transform.position - this.transform.position); Astronaut.TheAstronaut.MyRigidbody.velocity = (-dif * 1f); SeismicQuakeParticles.Play(); } Astronaut.TheAstronaut.addCamShake(2f * Astronaut.AggressionLevelF, 1f, 1f, .5f, 1f); }