//called from girl controller Update() while this ability is active public override void ActiveUpdate() { if (!gc.IsAirborne) { ExitAction(); return; } if (state == AirAttackState.AirAttackMain) { if (Time.time > nextStateTime) { nextStateTime = Time.time + cooldownDuration; state = AirAttackState.AirAttackEnd; animator.speed = 1f; gc.controller.maxGravSpeed = 12f; animator.CrossFade(HashLookup.loopJumpHash, 0.1f); } } else if (state == AirAttackState.AirAttackEnd) { if (Time.time > nextStateTime) { ExitAction(); } } }
private void OnDisable() { IdleState.Dispose(); MoveState.Dispose(); JumpState.Dispose(); InAirState.Dispose(); LandState.Dispose(); WallSlideState.Dispose(); LedgeClimbState.Dispose(); CrouchIdleState.Dispose(); CrouchMoveState.Dispose(); SwordAttackState.Dispose(); HandAttackState.Dispose(); AirAttackState.Dispose(); SlideState.Dispose(); }
public override void Execute() { base.Execute(); isActive = true; nextStateTime = Time.time + attackDuration; state = AirAttackState.AirAttackMain; StartCoroutine(BeginTurnWindow(0.05f)); if (gc.controller.CurExternalVeloY < 2f) { gc.controller.CurExternalVeloY = 2f; } animator.speed = 2.5f; animator.CrossFade(HashLookup.airSpecialHash, 0.1f, 0, 0); }