PvP hotbar fix: load saved PvE on zone leave then use live bars; Show Action ID in tooltips
- On leaving PvP, LoadSavedHotbar for all 10 bars (via TryRestorePvEHotbarsAfterLeavePvP in Framework update) and re-apply for ~2s so live Hotbars show PvE - GetSlotData always reads from live StandardHotbars so combo updates (e.g. Pictomancer) and icons work normally - Misc: Show Action ID option in Misc -> Tooltips; hotbar/party cooldown tooltips pass TooltipIdKind for Action vs Status IDs Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+24
-25
@@ -43,35 +43,34 @@ namespace HSUI.Helpers
|
||||
|
||||
private void FrameworkOnOnUpdateEvent(IFramework framework)
|
||||
{
|
||||
var player = Plugin.ObjectTable.LocalPlayer;
|
||||
if (player is null)
|
||||
try
|
||||
{
|
||||
return;
|
||||
}
|
||||
var player = Plugin.ObjectTable.LocalPlayer;
|
||||
if (player is null)
|
||||
return;
|
||||
|
||||
var now = ImGui.GetTime();
|
||||
if (now - LastUpdate < PollingRate)
|
||||
var now = ImGui.GetTime();
|
||||
if (now - LastUpdate < PollingRate)
|
||||
return;
|
||||
|
||||
LastUpdate = now;
|
||||
|
||||
var mp = player.CurrentMp;
|
||||
|
||||
// account for lucid dreaming screwing up mp calculations
|
||||
var lucidDreamingActive = Utils.StatusListForBattleChara(player).Any(e => e.StatusId == 1204);
|
||||
|
||||
if (!lucidDreamingActive && _lastMpValue < mp)
|
||||
LastTickTime = now;
|
||||
else if (LastTickTime + ServerTickRate <= now)
|
||||
LastTickTime += ServerTickRate;
|
||||
|
||||
_lastMpValue = (int)mp;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return;
|
||||
Plugin.Logger.Verbose($"[HSUI MpTickHelper] FrameworkOnOnUpdateEvent: {ex.Message}");
|
||||
}
|
||||
|
||||
LastUpdate = now;
|
||||
|
||||
var mp = player.CurrentMp;
|
||||
|
||||
// account for lucid dreaming screwing up mp calculations
|
||||
var lucidDreamingActive = Utils.StatusListForBattleChara(player).Any(e => e.StatusId == 1204);
|
||||
|
||||
if (!lucidDreamingActive && _lastMpValue < mp)
|
||||
{
|
||||
LastTickTime = now;
|
||||
}
|
||||
else if (LastTickTime + ServerTickRate <= now)
|
||||
{
|
||||
LastTickTime += ServerTickRate;
|
||||
}
|
||||
|
||||
_lastMpValue = (int)mp;
|
||||
}
|
||||
|
||||
protected virtual void Dispose(bool disposing)
|
||||
|
||||
Reference in New Issue
Block a user