Commit 6d1698c5 authored by Ivaria's avatar Ivaria
Browse files

Added spell caster source options to custom debuffs

parent 559ffd41
......@@ -54,7 +54,9 @@ function VUHDO_customDebuffIconsInitLocalOverrides()
["timer"] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["timer"],
["isStacks"] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["isStacks"],
["isAliveTime"] = false,
["isFullDuration"] = false
["isFullDuration"] = false,
["isMine"] = true,
["isOthers"] = true
};
end
......
......@@ -278,7 +278,7 @@ local tSound;
local tRemaining;
local tAbility;
local tSchool;
local tName, tIcon, tStacks, tTypeString, tDuration, tExpiry, tSpellId, tIsBossDebuff;
local tName, tIcon, tStacks, tTypeString, tDuration, tExpiry, tUnitCaster, tSpellId, tIsBossDebuff;
local tDebuffConfig;
local tIsRelevant;
local tNow;
......@@ -298,21 +298,24 @@ function VUHDO_determineDebuff(aUnit)
tNow = GetTime();
for tCnt = 1, huge do
tName, tIcon, tStacks, tTypeString, tDuration, tExpiry, _, _, _, tSpellId, _, tIsBossDebuff = UnitDebuff(aUnit, tCnt, false);
if not tIcon then break; end
tName, tIcon, tStacks, tTypeString, tDuration, tExpiry, tUnitCaster, _, _, tSpellId, _, tIsBossDebuff = UnitDebuff(aUnit, tCnt, false);
if not tIcon then
break;
end
tStacks = tStacks or 0;
if (tExpiry or 0) == 0 then tExpiry = (sCurIcons[tName] or sEmpty)[2] or tNow; end
-- Custom Debuff?
tDebuffConfig = VUHDO_CUSTOM_DEBUFF_CONFIG[tName] or VUHDO_CUSTOM_DEBUFF_CONFIG[tostring(tSpellId)] or sEmpty;
if tDebuffConfig[1] then -- Color?
if tDebuffConfig[1] and ((tDebuffConfig[3] and tUnitCaster == "player") or (tDebuffConfig[4] and tUnitCaster ~= "player")) then -- Color?
sCurChosenType, sCurChosenName, sCurChosenSpellId = 6, tName, tSpellId; -- VUHDO_DEBUFF_TYPE_CUSTOM
end
if sCurIcons[tName] then tStacks = tStacks + sCurIcons[tName][3]; end
if tDebuffConfig[2] then -- Icon?
if tDebuffConfig[2] and ((tDebuffConfig[3] and tUnitCaster == "player") or (tDebuffConfig[4] and tUnitCaster ~= "player")) then -- Icon?
sCurIcons[tName] = VUHDO_getOrCreateIconArray(tIcon, tExpiry, tStacks, tDuration, false, tSpellId, tCnt);
end
......@@ -486,6 +489,18 @@ function VUHDO_initDebuffs()
VUHDO_CUSTOM_DEBUFF_CONFIG[tDebuffName][1] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isColor"];
VUHDO_CUSTOM_DEBUFF_CONFIG[tDebuffName][2] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isIcon"];
if VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isMine"] == nil then
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isMine"] = true;
end
VUHDO_CUSTOM_DEBUFF_CONFIG[tDebuffName][3] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isMine"];
if VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isOthers"] == nil then
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isOthers"] = true;
end
VUHDO_CUSTOM_DEBUFF_CONFIG[tDebuffName][4] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tDebuffName]["isOthers"];
end
for tDebuffName, _ in pairs(VUHDO_CUSTOM_DEBUFF_CONFIG) do
......
......@@ -421,6 +421,8 @@ local function VUHDO_customDebuffsAddDefaultSettings(aBuffName)
["animate"] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["animate"],
["timer"] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["timer"],
["isStacks"] = VUHDO_CONFIG["CUSTOM_DEBUFF"]["isStacks"],
["isMine"] = true,
["isOthers"] = true,
}
end
......@@ -740,6 +742,8 @@ local VUHDO_DEFAULT_CU_DE_STORED_SETTINGS = {
["isStacks"] = true,
["isAliveTime"] = false,
["isFullDuration"] = false,
["isMine"] = true,
["isOthers"] = true,
-- ["color"] = {
-- ["R"] = 0.6,
......
......@@ -60,6 +60,8 @@ VUHDO_TIMER_MODEL = nil;
VUHDO_STACKS_MODEL = nil;
VUHDO_ALIVE_TIME_MODEL = nil;
VUHDO_FULL_DURATION_MODEL = nil;
VUHDO_MINE_MODEL = nil;
VUHDO_OTHERS_MODEL = nil;
VUHDO_COLOR_SWATCH_MODEL = nil;
VUHDO_SOUND_MODEL = nil;
......@@ -127,6 +129,22 @@ function VUHDO_customDebuffUpdateEditBox(anEditBox)
tCheckButton = _G[tPanelName .. "FullDurationCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_CONFIG.CUSTOM_DEBUFF.STORED_SETTINGS." .. tValue .. ".isFullDuration");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
if VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue]["isMine"] == nil then
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue]["isMine"] = true;
end
tCheckButton = _G[tPanelName .. "MineCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_CONFIG.CUSTOM_DEBUFF.STORED_SETTINGS." .. tValue .. ".isMine");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
if VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue]["isOthers"] == nil then
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue]["isOthers"] = true;
end
tCheckButton = _G[tPanelName .. "OthersCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_CONFIG.CUSTOM_DEBUFF.STORED_SETTINGS." .. tValue .. ".isOthers");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
else
anEditBox:SetTextColor(0.8, 0.8, 1, 1);
......@@ -139,6 +157,8 @@ function VUHDO_customDebuffUpdateEditBox(anEditBox)
VUHDO_STACKS_MODEL = VUHDO_CONFIG.CUSTOM_DEBUFF.isStacks;
VUHDO_ALIVE_TIME_MODEL = false;
VUHDO_FULL_DURATION_MODEL = false;
VUHDO_MINE_MODEL = true;
VUHDO_OTHERS_MODEL = true;
VUHDO_COLOR_SWATCH_MODEL = VUHDO_deepCopyTable(VUHDO_PANEL_SETUP.BAR_COLORS["DEBUFF" .. VUHDO_DEBUFF_TYPE_CUSTOM]);
VUHDO_SOUND_MODEL = VUHDO_CONFIG.CUSTOM_DEBUFF.SOUND;
......@@ -178,6 +198,14 @@ function VUHDO_customDebuffUpdateEditBox(anEditBox)
tCheckButton = _G[tPanelName .. "FullDurationCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_FULL_DURATION_MODEL");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
tCheckButton = _G[tPanelName .. "MineCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_MINE_MODEL");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
tCheckButton = _G[tPanelName .. "OthersCheckButton"];
VUHDO_lnfSetModel(tCheckButton, "VUHDO_OTHERS_MODEL");
VUHDO_lnfCheckButtonInitFromModel(tCheckButton);
end
end
......@@ -241,6 +269,12 @@ function VUHDO_saveCustomDebuffOnClick(aButton)
tCheckButton = _G[tPanelName .. "FullDurationCheckButton"];
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue].isFullDuration = VUHDO_forceBooleanValue(tCheckButton:GetChecked());
tCheckButton = _G[tPanelName .. "MineCheckButton"];
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue].isMine = VUHDO_forceBooleanValue(tCheckButton:GetChecked());
tCheckButton = _G[tPanelName .. "OthersCheckButton"];
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue].isOthers = VUHDO_forceBooleanValue(tCheckButton:GetChecked());
tComboBox = _G[tPanelName .. "SoundCombo"];
tSoundName = _G[tComboBox:GetName() .. "Text"]:GetText();
VUHDO_CONFIG["CUSTOM_DEBUFF"]["STORED_SETTINGS"][tValue].SOUND = VUHDO_LibSharedMedia:Fetch("sound", tSoundName);
......
......@@ -181,7 +181,7 @@
<Frame name="$parentStorePanel" inherits="VuhDoPanelTemplate">
<Size>
<AbsDimension x="235" y="358" />
<AbsDimension x="235" y="410" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
......@@ -211,7 +211,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-180" />
<AbsDimension x="13" y="-214" />
</Offset>
</Anchor>
</Anchors>
......@@ -226,7 +226,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="125" y="-180" />
<AbsDimension x="125" y="-214" />
</Offset>
</Anchor>
</Anchors>
......@@ -282,59 +282,6 @@
</Scripts>
</CheckButton>
<Frame name="$parentSoundLabel" inherits="VuhDoLabelFrameTemplate">
<Size>
<AbsDimension x="120" y="18" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-220" />
</Offset>
</Anchor>
</Anchors>
<Layers>
<Layer>
<FontString name="$parentLabel" text="VUHDO_I18N_SOUND" justifyH="LEFT" inherits="VuDoDefaultFontTemplate">
</FontString>
</Layer>
</Layers>
</Frame>
<Button name="$parentSoundCombo" inherits="VuhDoComboBoxTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-233" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
self:SetAttribute("custom_function", VUHDO_notifySoundSelect);
</OnLoad>
</Scripts>
</Button>
<Frame name="$parentListLabel" inherits="VuhDoLabelFrameTemplate">
<Size>
<AbsDimension x="120" y="18" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-65" />
</Offset>
</Anchor>
</Anchors>
<Layers>
<Layer>
<FontString name="$parentLabel" text="VUHDO_I18N_DEBUFF_LIST" justifyH="LEFT" inherits="VuDoDefaultFontTemplate">
</FontString>
</Layer>
</Layers>
</Frame>
<Button name="$parentSelectComboBox" inherits="VuhDoScrollComboBoxTemplate">
<Size>
<AbsDimension x="180" y="1" />
......@@ -411,11 +358,30 @@
</Scripts>
</EditBox>
<Frame name="$parentListLabel" inherits="VuhDoLabelFrameTemplate">
<Size>
<AbsDimension x="120" y="18" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-65" />
</Offset>
</Anchor>
</Anchors>
<Layers>
<Layer>
<FontString name="$parentLabel" text="VUHDO_I18N_DEBUFF_LIST" justifyH="LEFT" inherits="VuDoDefaultFontTemplate">
</FontString>
</Layer>
</Layers>
</Frame>
<CheckButton name="$parentAliveTimeCheckButton" text="VUHDO_I18N_ALIVE_TIME" inherits="VuhDoCheckButtonTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-275" />
<AbsDimension x="13" y="-180" />
</Offset>
</Anchor>
</Anchors>
......@@ -430,7 +396,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="125" y="-275" />
<AbsDimension x="125" y="-180" />
</Offset>
</Anchor>
</Anchors>
......@@ -441,6 +407,76 @@
</Scripts>
</CheckButton>
<Frame name="$parentSelectLabel" inherits="VuhDoLabelFrameTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-248" />
</Offset>
</Anchor>
</Anchors>
<Layers>
<Layer>
<FontString name="$parentLabel" text="VUHDO_I18N_SOURCE_SPELL" justifyH="LEFT" inherits="VuDoDefaultFontTemplate">
</FontString>
</Layer>
</Layers>
</Frame>
<CheckButton name="$parentMineCheckButton" text="VUHDO_I18N_MINE" inherits="VuhDoCheckButtonTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-268" />
</Offset>
</Anchor>
</Anchors>
</CheckButton>
<CheckButton name="$parentOthersCheckButton" text="VUHDO_I18N_OTHERS" inherits="VuhDoCheckButtonTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="125" y="-268" />
</Offset>
</Anchor>
</Anchors>
</CheckButton>
<Frame name="$parentSoundLabel" inherits="VuhDoLabelFrameTemplate">
<Size>
<AbsDimension x="120" y="18" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-323" />
</Offset>
</Anchor>
</Anchors>
<Layers>
<Layer>
<FontString name="$parentLabel" text="VUHDO_I18N_SOUND" justifyH="LEFT" inherits="VuDoDefaultFontTemplate">
</FontString>
</Layer>
</Layers>
</Frame>
<Button name="$parentSoundCombo" inherits="VuhDoComboBoxTemplate">
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="43" y="-338" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
self:SetAttribute("custom_function", VUHDO_notifySoundSelect);
</OnLoad>
</Scripts>
</Button>
<Button name="$parentSaveButton" text="VUHDO_I18N_SAVE" inherits="VuhDoButtonTemplate">
<Size>
<AbsDimension x="100" y="32" />
......@@ -448,7 +484,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-313" />
<AbsDimension x="13" y="-368" />
</Offset>
</Anchor>
</Anchors>
......@@ -466,7 +502,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="125" y="-313" />
<AbsDimension x="125" y="-368" />
</Offset>
</Anchor>
</Anchors>
......
......@@ -16,6 +16,11 @@ Improvements:
-- Added new bouquet validator 'Icon: Is Phased'
-- Added new bouquet validator 'Icon: Is War Mode Phased'
-- Added new default bouquet 'Is Phased Icon'
-- Added spell caster source options to custom debuffs
-- See 'VuhDo Options > Debuffs > Custom > Store / Delete > Mine'
-- See 'VuhDo Options > Debuffs > Custom > Store / Delete > Others'
-- Both checkboxes are selected by default
-- These defaults are inherited by existing custom debuffs
--------------------------------------------------------------
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment