public void OnCollisionEnter(Collision collision) { if (collision.gameObject.tag == Constants.TAG_POKEBALL) { if (state == State.Chasing) { BallController.instance.rigidBody.AddRelativeForce(new Vector3(Random.Range(-150f, 150f), 150f, Random.Range(-150f, 150f))); } else if (BallController.instance.IsIdle() && !ballGrabbed) { animator.OnJumpGrab(); BallController.instance.OnIntercepted(); ballOffset = new Vector3(Mathf.Sign(xVelocity) * 4f, 0f, 0f); ballGrabbed = true; } } else if (collision.gameObject.tag == "Ground" && state == State.Falling) { state = State.Landed; animator.OnJumpEnded(); animator.State = AnturaAnimationStates.walking; } }
public void OnCollisionEnter(Collision collision) { if (collision.gameObject.tag == Constants.TAG_POKEBALL) { if (BallController.instance.IsIdle() && !ballGrabbed) { animator.OnJumpGrab(); BallController.instance.OnIntercepted(); ballOffset = new Vector3(Mathf.Sign(velocity.x) * 4f, 0f, 0f); ballGrabbed = true; Catapult.instance.DisableCollider(); BallController.instance.transform.DOPunchScale(-Vector3.one * 0.5f, 0.75f, 10, 0.1f); } } else if (collision.gameObject.tag == "Ground" && state == State.Falling) { state = State.Running; animator.OnJumpEnded(); animator.State = AnturaAnimationStates.walking; velocity.y = 0f; } }
public IEnumerator bark(float delay = 0) { antura.IsExcited = true; yield return(new WaitForSeconds(0.75f)); antura.IsExcited = false; anturaAnimator.SetTrigger("doShout"); AudioManager.I.PlaySfx(Sfx.DogBarking); yield return(new WaitForSeconds(2f)); antura.OnJumpStart(); yield return(new WaitForSeconds(0.5f)); antura.OnJumpEnded(); yield return(new WaitForSeconds(1.5f)); if (SCARED_COUNTER > 2) { SCARED_COUNTER = 0; StartCoroutine(leaveScene()); } else { yield return(new WaitForSeconds(1.5f)); anturaAnimator.SetTrigger("doShout"); AudioManager.I.PlaySfx(Sfx.DogBarking); yield return(new WaitForSeconds(2f)); antura.DoBurp(); AudioManager.I.PlaySfx(Sfx.DogBarking); yield return(new WaitForSeconds(0.5f)); antura.IsAngry = true; yield return(new WaitForSeconds(2f)); if (SCARED_COUNTER > 2) { SCARED_COUNTER = 0; StartCoroutine(leaveScene(true)); } else { charge(); } } yield return(null); }
void Update() { antura.IsAngry = angry; antura.SetWalkingSpeed(walkSpeed); if (doTransition) { doTransition = false; antura.State = targetState; } if (doBurp) { doBurp = false; antura.DoBurp(); } if (doBite) { doBite = false; antura.DoBite(); } if (doShout) { doShout = false; antura.DoShout(); } if (doSniff) { doSniff = false; antura.DoSniff(); } if (onJumpStart) { onJumpStart = false; antura.OnJumpStart(); } if (onJumpMiddle) { onJumpMiddle = false; antura.OnJumpMaximumHeightReached(); } if (onJumpGrab) { onJumpGrab = false; antura.OnJumpGrab(); } if (onJumpEnd) { onJumpEnd = false; antura.OnJumpEnded(); } if (doCharge) { doCharge = false; antura.DoCharge(null); } if (doSpitOpen) { doSpitOpen = false; antura.DoSpit(true); } if (doSpitClosed) { doSpitClosed = false; antura.DoSpit(false); } if (onSlipStart) { onSlipStart = false; antura.OnSlipStarted(); } if (onSlipEnd) { onSlipEnd = false; antura.OnSlipEnded(); } }