public void EvalJumpData(JumpResults results) { foreach (var c in results.CollidedWith) { if (c.gameObject.layer == LayerMask.NameToLayer("Scenario")) { movementState.ChangeState(Grounded); actionState.ChangeState(Idle); } //else if collided with wall or object, figure out what to do. } }
public void AirbornCallback(JumpResults results) { foreach (var grenadeTouched in results.CollidedWith) { if (grenadeTouched.gameObject.layer == LayerMask.NameToLayer("Scenario")) { var rigidbody = this.gameObject.GetComponent <Rigidbody>(); rigidbody.constraints = RigidbodyConstraints.FreezeRotation | RigidbodyConstraints.FreezePosition; _actionState.ChangeState(_death); _movementState.ChangeState(_grounded); } } }