public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if ((PlayerController.PlayerState & PlayerState.Locked) == 0) { return(PlayerStateUpdateResult.Unhandled); } return(PlayerStateUpdateResult.CreateHandled(_animationStateName)); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if ((PlayerController.PlayerState & PlayerState.Sliding) == 0) { return(PlayerStateUpdateResult.Unhandled); } return(PlayerStateUpdateResult.CreateHandled("Slide")); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if (PlayerController.IsGrounded()) { return(PlayerStateUpdateResult.Unhandled); } return(PlayerController.CharacterPhysicsManager.Velocity.y >= 0f ? PlayerStateUpdateResult.CreateHandled("Jump") : PlayerStateUpdateResult.CreateHandled("Fall")); }
public void UpdatePlayerState(XYAxisState axisState) { var playerStateUpdateResult = PlayerStateUpdateResult.Max( UpdatePlayerStateControllers(axisState), UpdateWeaponControllers(axisState)); AdjustSpriteScale(axisState); if (playerStateUpdateResult.AnimationClipInfo != null) { PlayAnimation(playerStateUpdateResult.AnimationClipInfo); } }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if ((PlayerController.PlayerState & PlayerState.Crouching) == 0) { return(PlayerStateUpdateResult.Unhandled); } if (axisState.IsInHorizontalSensitivityDeadZone()) { return(PlayerStateUpdateResult.CreateHandled("PlayerCrouchIdle")); } return(PlayerStateUpdateResult.CreateHandled("PlayerCrouchRun")); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if ( IsSlidingDownWall( () => (PlayerController.CharacterPhysicsManager.LastMoveCalculationResult.CollisionState.CharacterWallState & CharacterWallState.OnRightWall) != 0, () => PlayerController.Sprite.transform.localScale.x < 1f) || IsSlidingDownWall( () => (PlayerController.CharacterPhysicsManager.LastMoveCalculationResult.CollisionState.CharacterWallState & CharacterWallState.OnLeftWall) != 0, () => PlayerController.Sprite.transform.localScale.x > -1f)) { return(PlayerStateUpdateResult.CreateHandled("PlayerWallAttached")); } return(PlayerStateUpdateResult.Unhandled); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if ((PlayerController.PlayerState & PlayerState.ClimbingLadder) == 0 && (PlayerController.PlayerState & PlayerState.ClimbingLadderTop) == 0) { return(PlayerStateUpdateResult.Unhandled); } var animationSpeed = (PlayerController.PlayerState & PlayerState.ClimbingLadderTop) == 0 && axisState.IsInVerticalSensitivityDeadZone() ? 0f : 1f; return((PlayerController.PlayerState & PlayerState.ClimbingLadderTop) != 0 ? PlayerStateUpdateResult.CreateHandled("Climb Laddertop", animationSpeed: animationSpeed) : PlayerStateUpdateResult.CreateHandled("Climb", animationSpeed: animationSpeed)); }
public override PlayerStateUpdateResult Update(XYAxisState axisState) { if (CanFire(axisState)) { var direction = GetDirectionVector(axisState); var spawnLocation = GetSpawnLocation(direction); var projectile = _objectPoolingManager.GetObject( _projectileWeaponSettings.ProjectilePrefab.name, spawnLocation); if (projectile != null) { var projectileBehaviour = projectile.GetComponent <PlayerProjectileBehaviour>(); projectileBehaviour.StartMove( spawnLocation, direction * _projectileWeaponSettings.DistancePerSecond); _lastBulletTime = Time.time; _lastAnimationName = GetAnimationName(axisState); return(PlayerStateUpdateResult.CreateHandled( _lastAnimationName, 1)); } } if ((PlayerController.PlayerState & PlayerState.EnemyContactKnockback) == 0 && IsAttacking()) { return(PlayerStateUpdateResult.CreateHandled(GetAnimationName(axisState), 1)); } return(PlayerStateUpdateResult.Unhandled); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { if (!PlayerController.IsGrounded()) { return(PlayerStateUpdateResult.Unhandled); } if (PlayerController.CrouchSettings.EnableCrouching) { var result = _crouchController.UpdatePlayerState(axisState); if (result.IsHandled) { return(result); } } if (axisState.IsInHorizontalSensitivityDeadZone()) { return(PlayerStateUpdateResult.CreateHandled("Idle")); } return(PlayerStateUpdateResult.CreateHandled("Run Start", linkedAnimationNames: new string[] { "Run" })); }
public override PlayerStateUpdateResult GetPlayerStateUpdateResult(XYAxisState axisState) { return(PlayerStateUpdateResult.CreateHandled("Enemy Contact Knockback")); }