attickdoor / XIVComboPlugin

Plugin version of the icon replacement features in dalamud
GNU General Public License v3.0
184 stars 287 forks source link

[suggestion] Dawntrail Summoner: Lux Solaris #305

Open SirAshenhart opened 4 months ago

SirAshenhart commented 4 months ago

What is thy suggestion?

Have the Lux Solaris oGCD replace the Summon Solar Bahamut (Demi Summon) GCD until used or for the 30s duration it is available via the Refulgent Lux Buff if not used.

1) Are the abilities in question truly mutually exclusive?

Yes: You are only able to use the Lux Solaris ability within 30s after Summon Solar Bahamut is cast.

2) Does this actually save you button space?

Yes: you save one keybind.

Lux Solaris is only available for 30s and won’t conflict with the next Demi Summon cast.

This change just makes sense!

Tyndareus commented 4 months ago

I can throw this in my current changes, but still need it reviewed to get it anywhere 😢 Still need to get my SMN to 100 to test though, I think it will work but better make sure

Fenyn commented 4 months ago

This issue can be closed now :)

SirVG commented 2 months ago

One additional problem with this. While the function works on Summon Solar Bahamut on hotbars, it's not working on cross hotbars. It isn't replacing that one. Could this be addressed? Thanks.

Skooz commented 2 months ago

One additional problem with this. While the function works on Summon Solar Bahamut on hotbars, it's not working on cross hotbars. It isn't replacing that one. Could this be addressed? Thanks.

Noticed this myself a while back and fixed it on my fork.

The "summon" button has a lot of stuff rolled into it. Aethercharge, Dreadwyrm Trance, Summon Bahamut, Summon Phoenix, Summon Solar Bahamut,

if (actionID == SMN.SummonBahamut) // Culprit
{
    if(SearchBuffArray(SMN.Buffs.RefulgentLux))
        return SMN.LuxSolaris;
    return iconHook.Original(self, actionID);
}

While these all rotate on one button, the base action is still Aethercharge, so...

if (actionID == SMN.Aethercharge) // Fixed
{
    if (SearchBuffArray(SMN.Buffs.RefulgentLux))
        return SMN.LuxSolaris;
    return iconHook.Original(self, actionID);
}

Simple solution. Would have to add Aethercharge ID to SMN.cs (it's 25800)