small anim fixes

This commit is contained in:
2023-02-28 07:28:57 +02:00
parent c7d6dc5772
commit 81b266c288
4 changed files with 1209 additions and 45 deletions
@@ -95,9 +95,9 @@ AnimatorStateTransition:
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 0.88805974
m_ExitTime: 0.000000001239959
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
@@ -168,31 +168,31 @@ AnimatorController:
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
- m_Name: Fall
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
- m_Name: velX
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
- m_Name: WalkVelocity
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
- m_Name: SitDown
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
@@ -393,7 +393,10 @@ AnimatorStateTransition:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: Walk
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -5486930935274134635}
m_Solo: 0
@@ -403,7 +406,7 @@ AnimatorStateTransition:
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96153843
m_HasExitTime: 1
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
File diff suppressed because it is too large Load Diff
@@ -34261,7 +34261,7 @@ AnimationClip:
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_LoopBlendPositionXZ: 1
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 0
m_KeepOriginalPositionXZ: 0
+20 -29
View File
@@ -83,51 +83,40 @@ public class Player : MonoBehaviour
}
}
private TaskStatus MoveToPoint()
{
SetPlayerState(ActionStates.Walking);
var worldDeltaPosition = _navAgent.nextPosition - transform.position;
_groundDeltaPosition.x = Vector3.Dot(transform.right, worldDeltaPosition);
_groundDeltaPosition.y = Vector3.Dot(transform.forward, worldDeltaPosition);
Vector2 velocity = (Time.deltaTime > 1e-5f) ? _groundDeltaPosition / Time.deltaTime : Vector2.zero;
var shouldMove = velocity.magnitude > 0.025f && _navAgent.remainingDistance > _navAgent.radius;
if (_currentState == ActionStates.Sitting)
{
SetPlayerState(ActionStates.Standing);
}
_currentState = shouldMove ? ActionStates.Walking : ActionStates.Idle;
SetPlayerState(ActionStates.Walking);
_animator.SetFloat(WALK_VELOCITY, velocity.y);
return pathComplete(_navAgent.destination) ? TaskStatus.Complete : TaskStatus.InProgress;
}
private bool pathComplete(Vector3 destination)
{
if (Vector3.Distance(destination, _navAgent.transform.position) <= _navAgent.radius)
{
if (!_navAgent.hasPath || _navAgent.velocity.sqrMagnitude == 0f)
{
SetPlayerState(ActionStates.Idle);
return true;
}
}
return false;
}
public void Rotate(Vector3 target)
{
Quaternion rotation = Quaternion.LookRotation(target);
transform.rotation = rotation;
}
private bool pathComplete(Vector3 destination)
{
if (Vector3.Distance(destination, _navAgent.transform.position) <= _navAgent.radius)
{
if (!_navAgent.hasPath || _navAgent.velocity.sqrMagnitude == 0f)
{
SetPlayerState(ActionStates.Idle);
return true;
}
}
return false;
}
private TaskStatus InteractWithObject(BaseInteractableObject interactableObject)
{
@@ -137,6 +126,8 @@ public class Player : MonoBehaviour
public void SetPlayerState(ActionStates newState)
{
if(newState== _currentState)
{ return; }
switch (newState)
{
case ActionStates.Idle: