2023-02-08 15:06:43 +00:00
|
|
|
|
using System.Collections.Generic;
|
2023-02-18 20:12:36 +00:00
|
|
|
|
using Pal.Client.Floors;
|
2023-02-08 15:06:43 +00:00
|
|
|
|
|
|
|
|
|
namespace Pal.Client.Rendering
|
|
|
|
|
{
|
2023-02-15 22:17:19 +00:00
|
|
|
|
internal sealed class MarkerConfig
|
2023-02-08 15:06:43 +00:00
|
|
|
|
{
|
2023-02-11 20:10:45 +00:00
|
|
|
|
private static readonly MarkerConfig EmptyConfig = new();
|
2023-02-18 20:12:36 +00:00
|
|
|
|
|
|
|
|
|
private static readonly Dictionary<MemoryLocation.EType, MarkerConfig> MarkerConfigs = new()
|
2023-02-08 15:06:43 +00:00
|
|
|
|
{
|
2023-02-18 20:12:36 +00:00
|
|
|
|
{ MemoryLocation.EType.Trap, new MarkerConfig { Radius = 1.7f } },
|
|
|
|
|
{ MemoryLocation.EType.Hoard, new MarkerConfig { Radius = 1.7f, OffsetY = -0.03f } },
|
|
|
|
|
{ MemoryLocation.EType.SilverCoffer, new MarkerConfig { Radius = 1f } },
|
2023-02-26 16:31:37 +00:00
|
|
|
|
{ MemoryLocation.EType.GoldCoffer, new MarkerConfig { Radius = 1f } },
|
2023-02-08 15:06:43 +00:00
|
|
|
|
};
|
|
|
|
|
|
2023-02-15 22:17:19 +00:00
|
|
|
|
public float OffsetY { get; private init; }
|
|
|
|
|
public float Radius { get; private init; } = 0.25f;
|
2023-02-08 15:06:43 +00:00
|
|
|
|
|
2023-02-18 20:12:36 +00:00
|
|
|
|
public static MarkerConfig ForType(MemoryLocation.EType type) =>
|
|
|
|
|
MarkerConfigs.GetValueOrDefault(type, EmptyConfig);
|
2023-02-08 15:06:43 +00:00
|
|
|
|
}
|
|
|
|
|
}
|