From c06ed7a46afd5eff43eb67c8c7477aca55d1b641 Mon Sep 17 00:00:00 2001 From: Chris Date: Fri, 3 Oct 2025 20:59:17 -0400 Subject: [PATCH] fix: rotation on getting hit fixed --- Assets/Scripts/Player/Combat/UnitCombat.cs | 4 ++-- Assets/Scripts/Player/Player.cs | 2 +- Assets/Scripts/Player/UnitMovementHandler.cs | 8 ++++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Assets/Scripts/Player/Combat/UnitCombat.cs b/Assets/Scripts/Player/Combat/UnitCombat.cs index 2ea18b2..a282d98 100644 --- a/Assets/Scripts/Player/Combat/UnitCombat.cs +++ b/Assets/Scripts/Player/Combat/UnitCombat.cs @@ -45,10 +45,10 @@ public class UnitCombat : MonoBehaviour{ Debug.LogError($"No available UnitMovement on {draggedUnit.name}. Aborting drag on this unit."); continue; } - + + draggedUnitMovement.SetNewRotation(-transform.position.DirectionTo(draggedUnit.transform.position), 1f, true); draggedUnitMovement.SetNewDirection((positionDelta).ToVector2(), 1f, true); draggedUnitMovement.SetNewSpeed(speedDelta, 1f, true); - draggedUnitMovement.SetNewRotation(-transform.position.DirectionTo(draggedUnit.transform.position), 1f, true); } } } diff --git a/Assets/Scripts/Player/Player.cs b/Assets/Scripts/Player/Player.cs index 35e940d..3754f02 100644 --- a/Assets/Scripts/Player/Player.cs +++ b/Assets/Scripts/Player/Player.cs @@ -25,7 +25,7 @@ public class Player : NetworkBehaviour, IKillable{ void Start(){ if (((IKillable)this).maxHealth == 0f) { Debug.LogError($"Max health is not set for type of {name}. Setting to 100."); - ((IKillable)this).currentHealth = 100f; + ((IKillable)this).currentHealth = 10000f; } else { ((IKillable)this).currentHealth = ((IKillable)this).maxHealth; } diff --git a/Assets/Scripts/Player/UnitMovementHandler.cs b/Assets/Scripts/Player/UnitMovementHandler.cs index a6f5bfc..246fa0e 100644 --- a/Assets/Scripts/Player/UnitMovementHandler.cs +++ b/Assets/Scripts/Player/UnitMovementHandler.cs @@ -246,14 +246,18 @@ namespace Reset.Units{ } public void SetNewRotation(Vector3 value, float relativity, bool absolute, Vector3 relativeTo = default){ // new - Vector3 relativeValue = Quaternion.LookRotation(relativeTo) * value; - Quaternion valueAsQuaternion = Quaternion.Euler(relativeValue); + Quaternion valueAsQuaternion = Quaternion.LookRotation(value); + + if (relativeTo != default) { + valueAsQuaternion = Quaternion.LookRotation(relativeTo) * valueAsQuaternion; + } if (absolute){ resolvedMovement.rotation = Quaternion.Lerp(resolvedMovement.rotation, valueAsQuaternion, relativity); } else { resolvedMovement.rotation = Quaternion.Lerp(resolvedMovement.rotation, resolvedMovement.rotation * valueAsQuaternion, relativity); } + } public void SetSpecifiedRotation(Vector3 inputRotation){