seblindfors / Immersion

Immersive questing addon for World of Warcraft
Artistic License 2.0
26 stars 15 forks source link

Some fixes for dragonflight expension #18

Closed nulian closed 1 year ago

nulian commented 2 years ago

Hey had to make some changes to make it work in dragonflight. Not done any wow lua stuff yet before so it's a bit messy.

Thought maybe you can use some of the changes to make the addon fully compatible in the future.

Issues found on beta

seblindfors commented 1 year ago

Here's how SetLight works now:

local lightValues = {
   omnidirectional = false,
   point = CreateVector3D(0, 0, 0),
   ambientIntensity = .7,
   ambientColor = CreateColor(1, 1, 1),
   diffuseIntensity = 0,
   diffuseColor = CreateColor(1, 1, 1)
};
local enabled = true;
self:SetLight(enabled, lightValues);

As for SetGradientAlpha, it's now SetGradient, with this signature:

-- old 
local orientation, minR, minG, minB, minA, maxR, maxG, maxB, maxA = ... -- old
texture:SetGradientAlpha(orientation, minR, minG, minB, minA, maxR, maxG, maxB, maxA)
-- new
local minColor = CreateColor(...)
local maxColor = CreateColor(select(5, ...))
texture:SetGradient(orientation, minColor, maxColor)
nulian commented 1 year ago

Ah found where the LightValues originated from used your settings as new values for it.

nulian commented 1 year ago

I did fix all the grandient alpha's.

It seems blizzard also broke the fallback for SelectGossipOption so I had to disable that line. The function seems to be found now but does nothing. --if SelectGossipOption then return SelectGossipOption(...) end

nulian commented 1 year ago

Tried to fix auto closing on things like flight master and the auto select of gossip skipping too much.

There is a new event for when player interaction windows closed which I hooked up to the event handler.