diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 709a7cd..2f93975 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -37,10 +37,14 @@ jobs: RID=$(curl -sf -X POST -H "Authorization: token $GITEA_TOKEN" \ -H "Content-Type: application/json" \ "$API/repos/$REPO/releases" \ - -d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false}')" \ + -d "$(jq -nc --arg t "$TAG" '{tag_name:$t,name:$t,draft:false,prerelease:false,hide_archive_links:true}')" \ | jq -r '.id') fi echo "release id: $RID" + # Gitea honors hide_archive_links only on edit, not create — PATCH it + # so the auto-generated Source Code (zip/tar.gz) links stay hidden. + curl -sf -X PATCH -H "Authorization: token $GITEA_TOKEN" -H "Content-Type: application/json" \ + "$API/repos/$REPO/releases/$RID" -d '{"hide_archive_links":true}' >/dev/null || true # Upload every dist/*.zip. Per-asset failures don't fail the job — # we want partial releases to still publish rather than block the # whole pipeline on one big file. diff --git a/Decursive/DCR_init.lua b/Decursive/DCR_init.lua index 55f72a9..b97c825 100644 --- a/Decursive/DCR_init.lua +++ b/Decursive/DCR_init.lua @@ -124,8 +124,8 @@ DC.AfflictionSound = "Interface\\AddOns\\Decursive\\Sounds\\AfflictionAlert.wav" --DC.AfflictionSound = "Sound\\Doodad\\BellTollTribal.wav" DC.FailedSound = "Interface\\AddOns\\Decursive\\Sounds\\FailedSpell.wav"; -DC.IconON = "Interface\\AddOns\\Decursive\\iconON.tga"; -DC.IconOFF = "Interface\\AddOns\\Decursive\\iconOFF.tga"; +DC.IconON = "Interface\\AddOns\\Decursive\\iconON.blp"; +DC.IconOFF = "Interface\\AddOns\\Decursive\\iconOFF.blp"; for class in pairs(RAID_CLASS_COLORS) do DC["CLASS_"..class] = class @@ -506,7 +506,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_DEVOUR_CURSE"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Cultist DC.SpellsToUse[DS["COA_REBUKE"]] = { Types = {DC.MAGIC, DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Templar DC.SpellsToUse[DS["COA_ANTIVENOM"]] = { Types = {DC.POISON}, IsBest = 0, Pet = false, } -- Venomancer (baseline, poison-only — curse-dispel in DBC doesn't fire server-side) - DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; Venomancer curse-dispel needs the dedicated 524824 spell) + DC.SpellsToUse[DS["COA_BLIGHT_ANTIDOTE"]] = { Types = {DC.POISON}, IsBest = 1, Pet = false, } -- Venomancer (MoA — same Antidote/Antivenom pattern as 800905; the dedicated curse-cure 524824 is deliberately not registered: like Antivenom's DBC curse-dispel it is unverified to fire server-side) DC.SpellsToUse[DS["COA_BURN_IMPURITIES"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Pyromancer DC.SpellsToUse[DS["COA_SURVIVAL_POTION"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Ranger DC.SpellsToUse[DS["COA_HEMAL_EXCISION"]] = { Types = {DC.CURSE}, IsBest = 0, Pet = false, } -- Bloodmage @@ -517,6 +517,7 @@ function D:OnInitialize() -- Called on ADDON_LOADED -- {{{ DC.SpellsToUse[DS["COA_SOOTHING_TOUCH"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist DC.SpellsToUse[DS["COA_SOOTHING_TOUCH_MOA"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Primalist MoA DC.SpellsToUse[DS["COA_CLEANSING_IDOL"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 0, Pet = false, } -- Witch Doctor — Cleansing Idol (AoE, can't direct-target via click) + DC.SpellsToUse[DS["COA_HEXBREAK"]] = { Types = {DC.CURSE}, IsBest = 1, Pet = false, } -- Witch Doctor — Hexbreak (single-target curse removal, 40yd, instant; DBC type reads "Magic" but description+gameplay = Curse, cf. Soothing Touch) DC.SpellsToUse[DS["COA_NANOBOT_CLEANSER"]] = { Types = {DC.DISEASE, DC.POISON}, IsBest = 1, Pet = false, } -- Tinker — Nanobot Cleanser (single-target, direct-castable) DC.SpellsToUse[DS["COA_CAUTERIZE"]] = { Types = {DC.MAGIC, DC.POISON, DC.BLEED}, IsBest = 1, Pet = false, } -- Pyromancer — Cauterize (Magic + Poison via dummy; 1 Bleed via Dispel Mechanic, re-tagged by DC.BleedSpellIDs) end @@ -826,7 +827,7 @@ function D:OnDisable() -- When the addon is disabled by Ace D.Status.Enabled = false; D.DcrFullyInitialized = false; - D:SetIcon("Interface\\AddOns\\Decursive\\iconOFF.tga"); + D:SetIcon("Interface\\AddOns\\Decursive\\iconOFF.blp"); if ( D.profile.ShowDebuffsFrame) then D.MFContainer:Hide(); @@ -986,6 +987,7 @@ function D:Configure() --{{{ CuringSpells[DC.POISON] = false; CuringSpells[DC.DISEASE] = false; CuringSpells[DC.CHARMED] = false; + CuringSpells[DC.BLEED] = false; -- CoA: reset so Cauterize doesn't ghost after respec local Spell, spellName, Type, _; local GetSpellInfo = _G.GetSpellInfo; @@ -1186,12 +1188,13 @@ function D:GetSpellsTranslations(FromDIAG) ["COA_PRAYER_OF_ELUNE"] = { 801987, }, -- Starcaller (Magic) ["COA_WITCHBLOOD_TONIC"] = { 802278, }, -- WitchHunter (Curse) ["COA_SANCTIFY"] = { 524968, }, -- Sun Cleric (Magic, Poison, Disease) - ["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel) + ["COA_MENDING_TOUCH"] = { 524971, }, -- Primalist passive (Soothing Touch +Poison +Disease, Neutralizing Touch self-heal on Magic dispel) — intentionally translation-only, never registered in SpellsToUse (passive, not castable) ["COA_SOOTHING_TOUCH"] = { 801439, }, -- Primalist (Poison, Disease — DBC type "Magic" doesn't fire; trust gameplay) ["COA_SOOTHING_TOUCH_MOA"] = { 520841, }, -- Primalist MoA (Poison, Disease — same Soothing-Touch variant pattern as Venomancer's Antivenom/Blight pair) ["COA_CLEANSING_IDOL"] = { 504840, }, -- Witch Doctor (Disease, Poison — AoE idol, 30yd, ticks every 3s) + ["COA_HEXBREAK"] = { 806240, }, -- Witch Doctor (Curse — single-target, 40yd, instant; DBC type "Magic" doesn't fire, trust description+gameplay) ["COA_NANOBOT_CLEANSER"] = { 502537, }, -- Tinker / Invention (Disease, Poison — single-target, 40yd, ticks every 3s for 15s) - ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; also removes 1 bleed via Dispel Mechanic — bleed not modelled by Decursive) + ["COA_CAUTERIZE"] = { 560749, }, -- Pyromancer (Magic + Poison via dummy script; 1 Bleed via Dispel Mechanic — DC.BLEED, re-tagged by DC.BleedSpellIDs) } for k,v in pairs(customSpells) do Spells[k] = v end end diff --git a/Decursive/Dcr_LiveList.xml b/Decursive/Dcr_LiveList.xml index 982cc0a..cdc890d 100644 --- a/Decursive/Dcr_LiveList.xml +++ b/Decursive/Dcr_LiveList.xml @@ -84,7 +84,7 @@ - + @@ -97,7 +97,7 @@ - + diff --git a/Decursive/Dcr_opt.lua b/Decursive/Dcr_opt.lua index 82b5d24..c8fcfb5 100644 --- a/Decursive/Dcr_opt.lua +++ b/Decursive/Dcr_opt.lua @@ -1877,6 +1877,7 @@ function D:SetCureOrder (ToChange) [DC.POISON] = D.options.args.CureOptions.args.CurePoison, [DC.DISEASE] = D.options.args.CureOptions.args.CureDisease, [DC.CHARMED] = D.options.args.CureOptions.args.CureCharmed, + [DC.BLEED] = D.options.args.CureOptions.args.CureBleed, -- CoA: added with DC.BLEED } end diff --git a/Decursive/Decursive.lua b/Decursive/Decursive.lua index 9e7754d..34de0f6 100644 --- a/Decursive/Decursive.lua +++ b/Decursive/Decursive.lua @@ -397,7 +397,7 @@ do if D.LiveList.TestItemDisplayed and i == 1 and Unit ~= "target" and Unit ~= "mouseover" and UnitExists(Unit) then D:Debug("|cFFFF0000Setting test debuff for %s (debuff %d)|r", Unit, i); - return "Test item", DC.TypeNames[D.Status.ReversedCureOrder[1]], 2, "Interface\\AddOns\\Decursive\\iconON.tga", D.LiveList.TestItemDisplayed + 70; + return "Test item", DC.TypeNames[D.Status.ReversedCureOrder[1]], 2, "Interface\\AddOns\\Decursive\\iconON.blp", D.LiveList.TestItemDisplayed + 70; end --D:Debug("|cFFFF0000Getting debuffs for %s , id = %d|r", Unit, i); diff --git a/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua b/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua index ee5a83b..07c8f76 100644 --- a/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua +++ b/Decursive/Libs/AceGUI-3.0/widgets/AceGUIWidget-Keybinding.lua @@ -199,7 +199,7 @@ local function Constructor() button:SetScript("OnKeyDown", Keybinding_OnKeyDown) button:SetScript("OnMouseDown", Keybinding_OnMouseDown) button:SetScript("OnMouseWheel", Keybinding_OnMouseWheel) - button:SetScript("OnGamePadButtonDown", Keybinding_OnKeyDown) + pcall(button.SetScript, button, "OnGamePadButtonDown", Keybinding_OnKeyDown) button:SetPoint("BOTTOMLEFT") button:SetPoint("BOTTOMRIGHT") button:SetHeight(24) diff --git a/Decursive/Textures/BackDrop.blp b/Decursive/Textures/BackDrop.blp new file mode 100644 index 0000000..aee00f3 Binary files /dev/null and b/Decursive/Textures/BackDrop.blp differ diff --git a/Decursive/Textures/BackDrop.tga b/Decursive/Textures/BackDrop.tga deleted file mode 100644 index c532d41..0000000 Binary files a/Decursive/Textures/BackDrop.tga and /dev/null differ diff --git a/Decursive/Textures/GoldBorder.blp b/Decursive/Textures/GoldBorder.blp new file mode 100644 index 0000000..4c0f30f Binary files /dev/null and b/Decursive/Textures/GoldBorder.blp differ diff --git a/Decursive/Textures/GoldBorder.tga b/Decursive/Textures/GoldBorder.tga deleted file mode 100644 index 159a06e..0000000 Binary files a/Decursive/Textures/GoldBorder.tga and /dev/null differ diff --git a/Decursive/iconOFF.blp b/Decursive/iconOFF.blp new file mode 100644 index 0000000..8c37e65 Binary files /dev/null and b/Decursive/iconOFF.blp differ diff --git a/Decursive/iconOFF.tga b/Decursive/iconOFF.tga deleted file mode 100644 index 6207de6..0000000 Binary files a/Decursive/iconOFF.tga and /dev/null differ diff --git a/Decursive/iconON.blp b/Decursive/iconON.blp new file mode 100644 index 0000000..5c88fc0 Binary files /dev/null and b/Decursive/iconON.blp differ diff --git a/Decursive/iconON.tga b/Decursive/iconON.tga deleted file mode 100644 index dfe7563..0000000 Binary files a/Decursive/iconON.tga and /dev/null differ