Re-Fixing TRP NPC/DM Tags#18
Open
Tildemancer wants to merge 15 commits into
Open
Conversation
The addon needs to know whether it can currently access the parameters it needs to process a message. This is sometimes restricted by the WoW client (e.g. in boss encounters), and this revision adds checks for that. The output window (main/snooper) won't update during those times.
…dling Added secret checks to prevent client from throwing Lua errors
Step-by-step howto for end-user use until the addon author pushes this fix (or something like it) in the official releases.
Updated the instructions for downloading listener.lua.
Updated the readme to clarify the purpose of the addon and its functionality.
Integrating raptormama's fixes
src/listener.lua Added TRP3 NPC message detection and parsing. Added recovery of NPC speaker names from TRP3 APIs. Added support for storing NPC display metadata (name, short name, icon, color). Added handling for anonymous (| ) emotes. Added helper functions for NPC name/icon formatting. Improved compatibility with TRP3 companion profiles. src/snoop2.lua Apply NPC speaker support to Snoop windows. Apply anonymous-emote handling to Snoop windows. Prevent NPC names from becoming clickable player links. Support custom NPC colors in Snoop displays. Keep Snoop presentation consistent with the main Listener window.
dmtags.lua line 120 called UnitName(unit) before unit was assigned
moved the check after "local unit = frame:GetAttribute("unit")" and guarded it as "if unit and canaccessvalue(UnitName(unit)) then"
Trying to wrap so it stops tainting things
trying to guard from a taint i got in delves it scans every frame, now it shouldn't
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Downstream of raptormama's commit, necessarily, since it hasn't been merged yet and I ain't rewriting all that
Did a cursory inspection and it didn't look suspicious, so that's my base now
This is incredibly hacky garbage code that almost certainly can be improved but it works on my machine, and it'll have to do until we get an official update. May I cordially invite you to show me up in every way
Anyway;
providence note for https://github.com/raptormama/listener and their 12.0.5 sanitation efforts
src/listener.lua
Added TRP3 NPC message detection and parsing.
Added recovery of NPC speaker names from TRP3 APIs.
Added support for storing NPC display metadata (name, short name, icon, color).
Added handling for anonymous (| ) emotes. (also nuked old formatting)
Added helper functions for NPC name/icon formatting.
Improved compatibility with TRP3 companion profiles.
ui/ListenerFrame.lua
Display NPC speakers using their NPC names instead of player names.
Show custom NPC icons and colors.
Prevent NPC names from being rendered as clickable player links.
Improve display of anonymous emotes.
Use stored NPC metadata when rendering chat history.
src/snoop2.lua
Apply NPC speaker support to Snooper windows.
Apply anonymous-emote handling to Snooper windows.
Prevent NPC names from becoming clickable player links.
Support custom NPC colors in Snooper displays.
Keep Snooper presentation consistent with the main Listener window.