Giter Club home page Giter Club logo

immersion's People

Contributors

brittyazel avatar ludiusmaximus avatar metthal avatar seblindfors avatar wowarianna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

immersion's Issues

Lua error, Immersion trying to call UseQuestLogSpecialItem() which is protected

Client: Retail 9.0.2
Version: 1.3.4-Retail

Describe the bug
If I am in combat when trying to use a quest item directly from the on-screen quest list (underneath the minimap), I will often times be presented with the bug below. It seems like Immersion has trying to call the protected function UseQuestLogSpecialItem(). I'm unsure why Immersion would be trying to call this function, but (having fixed a lot of these issues in the past) I think it's probably more likely that this bug is due to Immersion taking ownership of a frame that calls this function.

Lua Error
1x [ADDON_ACTION_FORBIDDEN] AddOn 'Immersion' tried to call the protected function 'UseQuestLogSpecialItem()'.
[string "@!BugGrabber\BugGrabber.lua"]:519: in function <!BugGrabber\BugGrabber.lua:519>
[string "=[C]"]: in function `UseQuestLogSpecialItem'
[string "@Blizzard_ObjectiveTracker\Blizzard_ObjectiveTrackerShared.lua"]:95: in function <...ObjectiveTracker\Blizzard_ObjectiveTrackerShared.lua:88>

Lua error when pressing <shift> when mousing over an item to do a comparison

As stated above, this error happens when pressing while mousing over the quest rewards to do an item comparison. This error is probably a hold-out from the Backdrop mixin changes made early in Shadowlands

2x [string "ImmersionGameTooltip3:OnLoad"]:2: attempt to call method 'SetBackdropBorderColor' (a nil value)
[string "*:OnLoad"]:2: in function <[string "*:OnLoad"]:1>
[string "=[C]"]: ?
[string "=[C]"]: in function `CreateFrame'
[string "@Immersion\Utils.lua"]:12: in function `Create'
[string "@Immersion\Logic\Inspector.lua"]:29: in function `creationFunc'
[string "@SharedXML\Pools.lua"]:50: in function `Acquire'
[string "@Immersion\Logic\Logic.lua"]:260: in function `ShowItems'
[string "@Immersion\Logic\Logic.lua"]:469: in function <Immersion\Logic\Logic.lua:460>

Locals:
self = ImmersionGameTooltip3 {
 0 = <userdata>
 layoutType = "TooltipDefaultLayout"
 TextLeft1 = ImmersionGameTooltip3TextLeft1 {
 }
 BottomOverlay = <unnamed> {
 }
 Icon = <unnamed> {
 }
 textRight1Font = "GameTooltipHeaderText"
 NineSlice = <unnamed> {
 }
 TextRight1 = ImmersionGameTooltip3TextRight1 {
 }
 TextRight2 = ImmersionGameTooltip3TextRight2 {
 }
 TextLeft2 = ImmersionGameTooltip3TextLeft2 {
 }
 TopOverlay = <unnamed> {
 }
 shoppingTooltips = <table> {
 }
 Button = <unnamed> {
 }
 textRight2Font = "GameTooltipText"
 Hilite = <unnamed> {
 }
 textLeft2Font = "GameTooltipText"
 textLeft1Font = "GameTooltipHeaderText"
}
(*temporary) = nil
(*temporary) = ImmersionGameTooltip3 {
 0 = <userdata>
 layoutType = "TooltipDefaultLayout"
 TextLeft1 = ImmersionGameTooltip3TextLeft1 {
 }
 BottomOverlay = <unnamed> {
 }
 Icon = <unnamed> {
 }
 textRight1Font = "GameTooltipHeaderText"
 NineSlice = <unnamed> {
 }
 TextRight1 = ImmersionGameTooltip3TextRight1 {
 }
 TextRight2 = ImmersionGameTooltip3TextRight2 {
 }
 TextLeft2 = ImmersionGameTooltip3TextLeft2 {
 }
 TopOverlay = <unnamed> {
 }
 shoppingTooltips = <table> {
 }
 Button = <unnamed> {
 }
 textRight2Font = "GameTooltipText"
 Hilite = <unnamed> {
 }
 textLeft2Font = "GameTooltipText"
 textLeft1Font = "GameTooltipHeaderText"
}
(*temporary) = 1
(*temporary) = 1
(*temporary) = 1
(*temporary) = "attempt to call method 'SetBackdropBorderColor' (a nil value)"

LUA error appearing today in the 10.0 pre-patch

This error appears 100% of the time when interacting with an NPC and clicking the option to continue the conversation text futher.

I.e with Caretaker Kah-Toll at the great vault, it appears when selecting: "How does it know what to award me with?"

1x Interface/AddOns/Immersion/Interface.lua:235: attempt to index field 'type' (a nil value)
[string "@Interface/AddOns/Immersion/Interface.lua"]:235: in function `CanAutoSelectGossip'
[string "@Interface/AddOns/Immersion/Logic/Logic.lua"]:56: in function `IsGossipAvailable'
[string "@Interface/AddOns/Immersion/Logic/Logic.lua"]:142: in function `HandleGossipOpenEvent'
[string "@Interface/AddOns/Immersion/Logic/Events.lua"]:7: in function `?'
[string "@Interface/AddOns/Immersion/Logic/Logic.lua"]:12: in function <Interface/AddOns/Immersion/Logic/Logic.lua:8>

Locals:
self = <table> {
 IsRetail = true
 GetGossipActiveQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:276
 GetNumAvailableQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:303
 GetRewardSkillPoints = <function> defined @Interface/AddOns/Immersion/Interface.lua:163
 GetTitleText = <function> defined @Interface/AddOns/Immersion/Interface.lua:75
 GetNumQuestChoices = <function> defined @Interface/AddOns/Immersion/Interface.lua:151
 GetRewardTitle = <function> defined @Interface/AddOns/Immersion/Interface.lua:179
 IsAzeriteItem = <function> defined @Interface/AddOns/Immersion/Interface.lua:351
 ITERATORS = <table> {
 }
 QuestFlagsPVP = <function> defined @Interface/AddOns/Immersion/Interface.lua:103
 GetQuestText = <function> defined @Interface/AddOns/Immersion/Interface.lua:87
 GetGreetingText = <function> defined @Interface/AddOns/Immersion/Interface.lua:71
 GetNumGossipAvailableQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:248
 GetGossipOptions = <function> defined @Interface/AddOns/Immersion/Interface.lua:287
 IsActiveQuestLegendary = <function> defined @Interface/AddOns/Immersion/Interface.lua:214
 QuestIsFromAreaTrigger = <function> defined @Interface/AddOns/Immersion/Interface.lua:99
 SelectActiveQuest = <function> defined @Interface/AddOns/Immersion/Interface.lua:308
 SelectGossipActiveQuest = <function> defined @Interface/AddOns/Immersion/Interface.lua:324
 GetCreatureID = <function> defined @Interface/AddOns/Immersion/Interface.lua:370
 GetNumGossipActiveQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:253
 GetNumQuestItems = <function> defined @Interface/AddOns/Immersion/Interface.lua:191
 GetAvailableQuestInfo = <function> defined @Interface/AddOns/Immersion/Interface.lua:207
 GetNumRewardSpells = <function> defined @Interface/AddOns/Immersion/Interface.lua:183
 MapGossipOptions = <function> defined @Interface/AddOns/Immersion/Interface.lua:56
 GetGossipOptionIterator = <function> defined @Interface/AddOns/Immersion/Interface.lua:18
 GetRewardText = <function> defined @Interface/AddOns/Immersion/Interface.lua:83
 GetRewardXP = <function> defined @Interface/AddOns/Immersion/Interface.lua:167
 GetActiveQuestIterator = <function> defined @Interface/AddOns/Immersion/Interface.lua:19
 MapGossipAvailableQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:31
 GetProgressText = <function> defined @Interface/AddOns/Immersion/Interface.lua:79
 GetNamePlateForUnit = <function> defined @Interface/AddOns/Immersion/Interface.lua:366
 SelectAvailableQuest = <function> defined @Interface/AddOns/Immersion/Interface.lua:314
 GetAvailableQuestIterator = <function> defined @Interface/AddOns/Immersion/Interface.lua:20
 GetNumActiveQuests = <function> defined @Interface/AddOns/Immersion/Interface.lua:299
 IsCharacterNewlyBoosted = <function> defined @Interface/AddOns/Immersion/Interface.lua:358
 GetQuestItemInfoLootType = <function> defined @Interface/AddOns/Immersion/Interface.lua:385
 GetQuestMoneyToGet = <function> defined @Interface/AddOns/Immersion/Interface.lua:195
 GetSuperTrackedQuestID = <function> defined @Interface/AddOns/Immersion/Interface.lua:203
 GetNumGossipOptions = <function> defined @Interface/AddOns/Immersion/Interface.lua:258
 GetRewardMoney = <function> defined @Interface/AddOns/Immersion/Interface.lua:159
 GetRewardArtifactXP = <function> defined @Interface/AddOns/Immersion/Interface.lua:171
 GetFriendshipReputation = <function> defined @Interface/AddOns/Immersion/Interface.lua:337
 GetRewardHonor = <function> defined @Interface/AddOns/Immersion/Interface.lua:175
 GetQuestIconActive = <function> defined @Interface/AddOns/Immersion/Interface.lua:124
 GetUnitName = <function> defined @Interface/AddOns/Immersion/Interface.lua:333
 GetMaxRewardCurrencies = <function> defined @Interface/AddOns/Immersion/Interface.lua:187
 GetNumQuestCurrencies = <function> defined @Interface/AddOns/Immersion/Interface.lua:199
 QuestIsFromAdventureMap = <function> defined @Interface/AddOns/Immersion/Interface.lua:95
 SetGradient = <fu

flightmap?

Is there a way to integrate the flightmap into the immersion addon? its nice that the gossip is in the addon but when talking to a flight master it feels kinda unimmersed.

Latest update causes Immersion UI to stop working unless I reload UI. This is the error I get.

Message: Interface\AddOns\Immersion\Logic\Logic.lua:522: Action[SetPoint] failed because[SetPoint would result in anchor family connection]: attempted from: :SetPoint.
Time: Mon Sep 26 20:52:25 2022
Count: 1
Stack: Interface\AddOns\Immersion\Logic\Logic.lua:522: Action[SetPoint] failed because[SetPoint would result in anchor family connection]: attempted from: :SetPoint.
[string "=[C]"]: in function SetPoint' [string "@Interface\AddOns\Immersion\Logic\Logic.lua"]:522: in function SetOffset'
[string "@interface\AddOns\Immersion\Logic\Logic.lua"]:546: in function SetExtraOffset' [string "@Interface\AddOns\Immersion\Logic\Logic.lua"]:197: in function UpdateTalkingHead'
[string "@interface\AddOns\Immersion\Logic\Logic.lua"]:141: in function HandleGossipOpenEvent' [string "@Interface\AddOns\Immersion\Logic\Events.lua"]:7: in function ?'
[string "@interface\AddOns\Immersion\Logic\Logic.lua"]:12: in function <Interface\AddOns\Immersion\Logic\Logic.lua:8>

Locals: (*temporary) = {
0 =
OnLeave = defined @interface\AddOns\Immersion\Logic\Logic.lua:587
Elements = {
}
ProgressionBar = {
}
OnLeftClick = defined @interface\AddOns\Immersion\Logic\Logic.lua:625
extraY = 0
BackgroundFrame = {
}
offsetX = 3.199402
lastEvent = "GOSSIP_CLOSED"
OnDragStart = defined @interface\AddOns\Immersion\Logic\Logic.lua:591
OnClick = defined @interface\AddOns\Immersion\Logic\Logic.lua:651
SetOffset = defined @interface\AddOns\Immersion\Logic\Logic.lua:502
ReputationBar = {
}
UpdateNameplateAnchor = defined @interface\AddOns\Immersion\Logic\Logic.lua:549
OnDragStop = defined @interface\AddOns\Immersion\Logic\Logic.lua:596
offsetY = 321.445374
MainFrame = {
}
OnEnter = defined @interface\AddOns\Immersion\Logic\Logic.lua:572
TextFrame = {
}
Undim = defined @interface\AddOns\Immersion\Logic\Logic.lua:679
PortraitFrame = {
}
NameFrame = {
}
Hilite = {
}
Dim = defined @interface\AddOns\Immersion\Logic\Logic.lua:675
SetExtraOffset = defined @interface\AddOns\Immersion\Logic\Logic.lua:541
}
(*temporary) = "Bottom"
(*temporary) = UIParent {
variablesLoaded = true
0 =
firstTimeLoaded = 1
fadeInfo =

{
}
}
(*temporary) = 3.199402
(*temporary) = 321.445374

Support Dragonflight's gamepad keybindings

I was trying to use Immersion with the new default gamepad support for Dragonflight and I could not figure out a way to assign a button to the next / accept keybinding.

I will likely try out ConsolePort once it's available, and I see it seems to have some integration with Immersion as well, but it would be great if Immersion worked standalone.

auto accept next quest

when I turn in a quest I can't read the final text because the next quest is automatically accepted and the text for that quest replaces the old text immediately.

is there a way to avoid this?

thanks for the help! 👍

"Spaced ellipses" are parsed as sentences

While questing today, I noticed that some quest-writers at Blizzard employ ellipses with spaces between the periods. The addon interprets these as individual sentences and they come through as segments to click through in-game. Example quests:

http://www.wowhead.com/quest=26683/look-to-the-stars
http://www.wowhead.com/quest=26684/the-insane-ghoul

I've never worked with Lua scripting or WoW addons before (I'm primarily a Javascript developer), but I absolutely love this addon and so I thought I'd take a crack at it and maybe do something useful. I've submitted a pull request that replaces these "spaced ellipses" with normal ones.

#2

I've tested it on my game client and it seems to work as intended. I'm not sure this is the way you would prefer to go about it, but there it is. Thank you for your work on this Addon! It's wonderful.

Block quest item popup

It would be amazing if we could disable the addon from activating when looting a quest item. Instead allow me to click on the notification in the quest list if I want to obscure my screen with the dialogue.

Error when interacting with nightborn

Working through the Suramar quest lines and when speaking to the nightborn that still have a thirst for ancient mana I get the below error.

Screenshot 2022-10-31 084450

Message: ...terface/AddOns/AddOnSkins/Skins/AddOns/Immersion.lua:37: attempt to call method 'GetFriendshipReputation' (a nil value)
Time: Mon Oct 31 08:50:53 2022
Count: 1
Stack: ...terface/AddOns/AddOnSkins/Skins/AddOns/Immersion.lua:37: attempt to call method 'GetFriendshipReputation' (a nil value)
[string "=[C]"]: in function GetFriendshipReputation' [string "@Interface/AddOns/AddOnSkins/Skins/AddOns/Immersion.lua"]:37: in function <...terface/AddOns/AddOnSkins/Skins/AddOns/Immersion.lua:36> [string "=[C]"]: in function Show'
[string "@Interface/AddOns/Immersion/Logic/Frame.lua"]:359: in function PlayIntro' [string "@Interface/AddOns/Immersion/Logic/Frame.lua"]:142: in function HandleGossipOpenEvent'
[string "@Interface/AddOns/Immersion/Logic/Events.lua"]:7: in function `?'
[string "@Interface/AddOns/Immersion/Logic/Frame.lua"]:11: in function <Interface/AddOns/Immersion/Logic/Frame.lua:7>

Locals:

Feature Request: Optionally equip quest reward

Will you consider adding an option to the quest UI that'll allow you to automatically equip the selected quest reward upon completion? This would be a great quality of life improvement—especially for those of whom play with console controllers.

If you're not sure what I mean, AutoEquipQuestItem is an example of an addon that adds this functionality to Blizzard's quest frame.

[Improvement] Issues with hiding Interface when working with Tailor's Work Table

Morning, Sorry I don't know what the correct format is to use for your reports, but reporting this for my partner. She is using the option in the add-on's options to hide the interface when talking to people/things, generally speaking, it has cut down all the distractions around and lets us focus on the questing stuff.

The problem is when this option is enabled, you aren't able to interact with workbenches like the Tailor's Work Table. When the interface opens up it is hidden and you can't view the profession screen that should have popped up. The workaround is to turn off this setting each time we go in to use the table and reenable the setting afterwards.

Don't really have any screenshots or other technical information to put in here. Otherwise love the addon <3

Feature Request: Hold modifier key to temporarily hide frame

NPCs will often start talking/animating right after a quest is turned in and a new one is started.
Depending on where the Immersion UI is placed, it will obscure the NPCs and their chat bubbles.

It would be nice if holding a configurable modifier key like Alt or Control would temporarily hide the Immersion frame until the key is released.

Feature Request: Add new icon texture to addon listing

In 10.1 they added a new icon texture to show on the addon list page, and to activate it you just have to put a line in the .toc file as such:

## IconTexture: Interface\Icons\<icon>

Without such a line, the addon shows a question mark icon, which is less than ideal. It would be great if the Immersion icon was added to the toc so it could show in game.

Thanks!

Only ignore parent alpha during NPC interaction

At the moment, Immersion sets SetIgnoreParentAlpha(true) to the selected frames (Minimap, MinimapCluster, ObjectiveTrackerFrame) on load. But other addons may want to fade these frames together with ParentUI in other situations than NPC interaction.

So it would be best, if Immersion would only set SetIgnoreParentAlpha(true) during NPC interaction and restore it to the previous state when the NPC interaction is over.

Protected Function Error

1x [ADDON_ACTION_BLOCKED] AddOn 'Immersion' tried to call the protected function 'ImmersionFrame:SetPropagateKeyboardInput()'.
[string "@!BugGrabber/BugGrabber.lua"]:485: in function <!BugGrabber/BugGrabber.lua:485>
[string "=[C]"]: in function `SetPropagateKeyboardInput'
[string "@Immersion/Logic/Frame.lua"]:433: in function <Immersion/Logic/Frame.lua:406>

Locals:
_ = Frame {
 RegisterEvent = <function> defined @!BugGrabber/BugGrabber.lua:491
 0 = <userdata>
 UnregisterEvent = <function> defined @!BugGrabber/BugGrabber.lua:491
 SetScript = <function> defined @!BugGrabber/BugGrabber.lua:491
}
event = "ADDON_ACTION_BLOCKED"
events = <table> {
 ADDON_ACTION_BLOCKED = <function> defined @!BugGrabber/BugGrabber.lua:557
 ADDON_ACTION_FORBIDDEN = <function> defined @!BugGrabber/BugGrabber.lua:557
 PLAYER_LOGIN = <function> defined @!BugGrabber/BugGrabber.lua:551
 LUA_WARNING = <function> defined @!BugGrabber/BugGrabber.lua:566
 ADDON_LOADED = <function> defined @!BugGrabber/BugGrabber.lua:511
}

Is this addon still being maintained?

@seblindfors,

Let me preface this by saying how grateful myself and the rest of the users of this addon are for its development and support over these past many years. With that said, I was hoping to inquire about the future of this project moving forward. Over the past months, development seems to have dwindled to just TOC bumps with each new patch, with there being minor API breakages that have gone unaddressed with 10.1.5 and 10.2.0. Likewise, new issues and PRs have have gone unanswered, in which case I'd appreciate some clarity if there is any intention to review them and/or merge any current or future PRs before I spend any more time working on them.

If you have lost interest or no longer have the time to maintain this project, I totally understand and empathise. And if that is the case, I'd ask if you would consider allowing others, like myself, to assist in the maintainership and longevity of this project. This addon is important to quite a lot of people, and I would hate to see if fall to rot. Likewise, the current license on this project is quite restrictive, meaning no one would be able to fork this project and continue it onwards in your absence or without your express permission.

Nevertheless, Immersion is still in very good shape (aside from the aforementioned minor API breakages), so this is more of a proactive offer than a reactive plea.

Thanks again,

-Britt

[Bug] Can't interact with Nightborne spies in Court of Stars with Immersion enabled.

By Nightborne spies I mean the last section of the dungeon in which you have to reveal a Demon by gathering clues. When talking to individual citizens to reveal them, that's when nothing happens.

Ever since 10.0.7 started, I've been unable to interact with them. The option appears, but when clicking it, nothing happens. Until today I disabled Immersion out of curiosity and I was able to do it.

There's no LUA error thrown or anything, it just won't work, I have no idea why.

Sorry for not providing more specific info.

Vendors not opening with keybinds

Since prepatch unable to use keybinds to open up vendors. Used to be able to click on a vendor and then hit space to open up the vendor tab. now it just simply closes the chat box as if i hit close.

Lua taint error when questing in 10.1.5

1x [ADDON_ACTION_BLOCKED] AddOn 'Immersion' tried to call the protected function 'ImmersionFrame:SetPropagateKeyboardInput()'.
[string "@!BugGrabber/BugGrabber.lua"]:481: in function <!BugGrabber/BugGrabber.lua:481>
[string "=[C]"]: in function `SetPropagateKeyboardInput'
[string "@Immersion/Logic/Frame.lua"]:433: in function <Immersion/Logic/Frame.lua:406>

Locals:
_ = Frame {
 RegisterEvent = <function> defined @!BugGrabber/BugGrabber.lua:487
 0 = <userdata>
 UnregisterEvent = <function> defined @!BugGrabber/BugGrabber.lua:487
 SetScript = <function> defined @!BugGrabber/BugGrabber.lua:487
}
event = "ADDON_ACTION_BLOCKED"
events = <table> {
 ADDON_ACTION_BLOCKED = <function> defined @!BugGrabber/BugGrabber.lua:553
 ADDON_ACTION_FORBIDDEN = <function> defined @!BugGrabber/BugGrabber.lua:553
 PLAYER_LOGIN = <function> defined @!BugGrabber/BugGrabber.lua:547
 LUA_WARNING = <function> defined @!BugGrabber/BugGrabber.lua:562
 ADDON_LOADED = <function> defined @!BugGrabber/BugGrabber.lua:507
}

Request for compatibility with WoWUp

It would be awesome if I could update this addon via WoWUp. There are multiple avenues of approach--

Wago

You could upload this on the addon provider Wago which would provide a revenue stream; see: https://addons.wago.io/

GitHub repo release compatibility

Adding releases to this repository will also make it compatible with WoWUp via the "Install by GitHub url" feature.

An example .zip file structure is available on the information page for WoWUpHub found here: https://wowup.io/guide/wowup/hub

For an example of the assets in a release, see this addon that is compatible with updates from WoWUp: https://github.com/Tercioo/Plater-Nameplates/releases

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.