Better pinpointer accuracy + small cleanup (#12378)

This commit is contained in:
Alex Evgrashin
2022-11-04 05:15:23 +01:00
committed by GitHub
parent 2a2be3d619
commit 2ad9a5dfac
9 changed files with 122 additions and 139 deletions

View File

@@ -24,27 +24,34 @@ namespace Content.Shared.Pinpointer
[DataField("reachedDistance")]
public float ReachedDistance = 1f;
/// <summary>
/// Pinpointer arrow precision in radians.
/// </summary>
[DataField("precision")]
public double Precision = 0.09;
public EntityUid? Target = null;
public bool IsActive = false;
public Direction DirectionToTarget = Direction.Invalid;
public Distance DistanceToTarget = Distance.UNKNOWN;
public Angle ArrowAngle;
public Distance DistanceToTarget = Distance.Unknown;
public bool HasTarget => DistanceToTarget != Distance.Unknown;
}
[Serializable, NetSerializable]
public sealed class PinpointerComponentState : ComponentState
{
public bool IsActive;
public Direction DirectionToTarget;
public Angle ArrowAngle;
public Distance DistanceToTarget;
}
[Serializable, NetSerializable]
public enum Distance : byte
{
UNKNOWN,
REACHED,
CLOSE,
MEDIUM,
FAR
Unknown,
Reached,
Close,
Medium,
Far
}
}