Flag tracker: the Mossy Tracker window as a markup panel
The owner calls the flag tracker important, so the original's pages come across with their tables unchanged: augmentations and luminance auras from the player's own int properties (the object table carries them), recalls from the spellbook with composited spell icons, cantrips matched from the active enchantments to trained skills, attributes and wards, the tracked weapons the original kept data for but never showed, and the quest timers. Read on the tick thread at login and on each page's Refresh; the quest page redraws every five seconds instead of from a thread-pool timer. The root panel's visibility is the settable IsVisible so the main window can open it; the three sections the original left as stubs stay out, and a headless host registers nothing. The fake spell catalog learns IsKnown. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
0b5da797e0
commit
714fbfa2e8
8 changed files with 1735 additions and 0 deletions
|
|
@ -446,6 +446,11 @@ public sealed class FakeSpellCatalog : ISpellCatalog
|
|||
/// <summary>The full spell table, independent of what the character knows.</summary>
|
||||
public IReadOnlyList<PluginSpellInfo> All { get; set; } = [];
|
||||
|
||||
/// <summary>The spells the character knows, for <see cref="IsKnown"/>.</summary>
|
||||
public HashSet<uint> KnownSpellIds { get; } = [];
|
||||
|
||||
public bool IsKnown(uint spellId) => KnownSpellIds.Contains(spellId);
|
||||
|
||||
public bool TryGet(uint spellId, out PluginSpellInfo info)
|
||||
{
|
||||
foreach (PluginSpellInfo spell in KnownSelfBuffs
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue