1
0
Fork 0
Questionable/Questionable.Model/Gathering/GatheringLocation.cs

29 lines
787 B
C#

using System;
using System.Numerics;
using System.Text.Json.Serialization;
using Questionable.Model.Common.Converter;
namespace Questionable.Model.Gathering;
public sealed class GatheringLocation
{
[JsonIgnore]
public Guid InternalId { get; } = Guid.NewGuid();
[JsonConverter(typeof(VectorConverter))]
public Vector3 Position { get; set; }
public int? MinimumAngle { get; set; }
public int? MaximumAngle { get; set; }
public float? MinimumDistance { get; set; }
public float? MaximumDistance { get; set; }
public bool IsCone()
{
return MinimumAngle != null && MaximumAngle != null;
}
public float CalculateMinimumDistance() => MinimumDistance ?? 1f;
public float CalculateMaximumDistance() => MaximumDistance ?? 3f;
}