public PlayerSpawner( PlayerModel playerModel, PlayerPhysics playerPhysics, PlayerAnimationStates playerAnimationStates) { _playerModel = playerModel; _playerPhysics = playerPhysics; _playerAnimationStates = playerAnimationStates; }
void SetState(PlayerAnimationStates State) { switch (State) { case PlayerAnimationStates.idle: state = 0; break; case PlayerAnimationStates.run: state = 1; break; case PlayerAnimationStates.dash: state = 2; break; case PlayerAnimationStates.jump: state = 3; break; case PlayerAnimationStates.attack1: state = 4; break; case PlayerAnimationStates.attack2: state = 5; break; case PlayerAnimationStates.attack3: state = 6; break; case PlayerAnimationStates.hit: state = 8; break; case PlayerAnimationStates.die: state = 9; break; default: state = 0; break; } }
private void MovePrecise() { stateVariables.velBody.velocity = moveDirection * stateVariables.statsManager.GetStat(CharacterStatType.MoveSpeed); if (moveDirection.magnitude > stateVariables.axisThreshold) { PlayerAnimationStates movementAnimState = PlayerAnimationStates.RunningForward; float moveLookDot = Vector3.Dot(moveDirection, stateVariables.velBody.GetForward()); if (moveLookDot > 0.5f) { movementAnimState = PlayerAnimationStates.RunningForward; } else if (moveLookDot > -0.5f) { if (Vector3.Cross(moveDirection, stateVariables.velBody.GetForward()).y > 0f) { movementAnimState = PlayerAnimationStates.SideStrafeRight; } else { movementAnimState = PlayerAnimationStates.SideStrafeLeft; } } else { movementAnimState = PlayerAnimationStates.RunningBackward; } if (stateVariables.animator.GetInteger(Strings.ANIMATIONSTATE) != (int)movementAnimState) { stateVariables.animator.SetInteger(Strings.ANIMATIONSTATE, (int)movementAnimState); } } else { if (stateVariables.animator.GetInteger(Strings.ANIMATIONSTATE) != (int)PlayerAnimationStates.Idle) { stateVariables.animator.SetInteger(Strings.ANIMATIONSTATE, (int)PlayerAnimationStates.Idle); stateVariables.animator.speed = 1.0f; } } }
// Use this for initialization void Start() { currentMod = null; currentAnimationState = PlayerAnimationStates.Idle; }