Initial HSMappy release (fork of Mappy)

Made-with: Cursor
This commit is contained in:
2026-02-26 03:54:51 -05:00
commit 9659f7a7d1
72 changed files with 6625 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
using System;
using FFXIVClientStructs.FFXIV.Client.Game.Fate;
using Lumina.Extensions;
using Mappy.Classes;
using Mappy.Extensions;
namespace Mappy.Modules;
public class FateModule : ModuleBase
{
public override unsafe bool ProcessMarker(MarkerInfo markerInfo)
{
if (markerInfo.MarkerType is not MarkerType.Fate) return false;
var fateData = FateManager.Instance()->Fates.FirstOrNull(fate => fate.Value->FateId == markerInfo.DataId);
if (fateData is null) return false;
var fate = fateData.Value;
var timeRemaining = fate.GetTimeRemaining();
markerInfo.PrimaryText = () => $"Lv. {fate.Value->Level} {fate.Value->Name}";
// Don't show additional information for any fate that is preparing
if (fate.Value->State is FateState.Preparing) return true;
if (timeRemaining >= TimeSpan.Zero) {
markerInfo.SecondaryText = () => $"Time Remaining {timeRemaining:mm\\:ss}\nProgress {fate.Value->Progress}%";
if (timeRemaining.TotalSeconds <= 300) {
markerInfo.RadiusColor = fate.GetColor();
markerInfo.RadiusOutlineColor = fate.GetColor();
}
}
else {
markerInfo.SecondaryText = () => $"Progress {fate.Value->Progress}%";
}
return true;
}
}