add method for applying prio status icon to nameplate element

This commit is contained in:
2022-11-04 18:36:00 +01:00
parent 85139e4c57
commit a50fa41a13
2 changed files with 23 additions and 5 deletions

View File

@@ -1,4 +1,8 @@
using Dalamud.Game.Text.SeStringHandling;
using Dalamud.Game.Text.SeStringHandling.Payloads;
using Pilz.Dalamud.ActivityContexts;
using Pilz.Dalamud.Nameplates.Model;
using Pilz.Dalamud.Tools;
using Pilz.Dalamud.Tools.Strings;
using System;
using System.Collections.Generic;
@@ -18,5 +22,23 @@ namespace Pilz.Dalamud.Nameplates.Tools
StringUpdateFactory.ApplyStringChanges(change);
}
}
public static bool ApplyStatusIconWithPrio(ref int statusIcon, int newStatusIcon, StringChange stringChange, ActivityContext activityContext, StatusIconPriorizer priorizer)
{
var isPrio = priorizer.IsPriorityIcon(statusIcon, activityContext);
if (!isPrio)
{
var fontIcon = StatusIconFontConverter.GetBitmapFontIconFromStatusIcon((StatusIcons)statusIcon);
if (fontIcon != null)
{
var iconPayload = new IconPayload(fontIcon.Value);
stringChange.Payloads.Insert(0, iconPayload);
}
}
return isPrio;
}
}
}