38 lines
968 B
C#
38 lines
968 B
C#
using ECommons.SplatoonAPI;
|
|
using Palace;
|
|
using System;
|
|
using System.Numerics;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace Pal.Client
|
|
{
|
|
internal class Marker
|
|
{
|
|
public ObjectType Type { get; set; } = ObjectType.Unknown;
|
|
public Vector3 Position { get; set; }
|
|
public bool Seen { get; set; } = false;
|
|
|
|
[JsonIgnore]
|
|
public bool RemoteSeen { get; set; } = false;
|
|
|
|
[JsonIgnore]
|
|
public Element SplatoonElement { get; set; }
|
|
|
|
public Marker(ObjectType type, Vector3 position)
|
|
{
|
|
Type = type;
|
|
Position = position;
|
|
}
|
|
|
|
public override int GetHashCode()
|
|
{
|
|
return HashCode.Combine(Type, (int)Position.X, (int)Position.Y, (int)Position.Z);
|
|
}
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
return obj is Marker otherMarker && Type == otherMarker.Type && Position == otherMarker.Position;
|
|
}
|
|
}
|
|
}
|