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

Added auto loading of profiles and key layouts for all 4 specializations. ...

Added auto loading of profiles and key layouts for all 4 specializations.  Added Demon Hunters to the demo groups for testing panels.
parent 87b4edea
......@@ -478,20 +478,7 @@ function VUHDO_hotBouquetCallback(aUnit, anIsActive, anIcon, aTimer, aCounter, a
VUHDO_updateHotIcons(aUnit, "BOUQUET_" .. (aBouquetName or ""), aTimer, aCounter, anIcon, aDuration, 0, aColor, aBuffName, aClipL, aClipR, aClipT, aClipB);
end
--
local tTalentRampantGrowthSpellId;
local tIsTalentSelected;
function VUHDO_hasTalentRampantGrowth()
if "DRUID" ~= VUHDO_PLAYER_CLASS then
return false;
end
tTalentRampantGrowthSpellId = 21655;
_, _, _, tIsTalentSelected, _ = GetTalentInfoByID(tTalentRampantGrowthSpellId, GetActiveSpecGroup());
return tIsTalentSelected;
end
--
local tOtherHotCnt;
......@@ -563,14 +550,7 @@ local function VUHDO_updateHots(aUnit, anInfo)
if VUHDO_SPELL_ID.REGROWTH == tBuffName or VUHDO_SPELL_ID.REJUVENATION == tBuffName or VUHDO_SPELL_ID.GERMINATION == tBuffName then
tStart, tSmDuration, tEnabled = GetSpellCooldown(VUHDO_SPELL_ID.SWIFTMEND);
if tEnabled ~= 0 and (tStart == nil or tSmDuration == nil or tStart <= 0 or tSmDuration <= 1.6) then
-- Level 100 talent makes a unit swiftmendable only with OWN hots
if VUHDO_hasTalentRampantGrowth() then
if tIsCastByPlayer then
sIsSwiftmend = true;
end
else
sIsSwiftmend = true;
end
sIsSwiftmend = true;
end
end
end
......
......@@ -12,8 +12,7 @@ end
-- Spells by SpellId
--------------------
VUHDO_SPELL_ID = { };
VUHDO_SPELL_ID.ACTIVATE_FIRST_TALENT = VUHDO_getSpellInfo(63645);
VUHDO_SPELL_ID.ACTIVATE_SECOND_TALENT = VUHDO_getSpellInfo(63644);
VUHDO_SPELL_ID.ACTIVATING_SPECIALIZATION = VUHDO_getSpellInfo(200749);
VUHDO_SPELL_ID.ANCESTRAL_FORTITUDE = VUHDO_getSpellInfo(85838);
VUHDO_SPELL_ID.ANCESTRAL_SPIRIT = VUHDO_getSpellInfo(2008);
VUHDO_SPELL_ID.BINDING_HEAL = VUHDO_getSpellInfo(32546);
......
......@@ -84,7 +84,7 @@ VUHDO_INIT_IGNORE_DEBUFFS_BY_CLASS = {
[VUHDO_SPELL_ID.DEBUFF_DECAYED_STR] = true,
[VUHDO_SPELL_ID.DEBUFF_CRIPPLE] = true,
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
[(GetSpellInfo(87923))] = true, -- MOP okay Windschlag
[(GetSpellInfo(87923))] = true, -- MOP okay Wind Blast
},
["DRUID"] = {
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
......@@ -96,7 +96,7 @@ VUHDO_INIT_IGNORE_DEBUFFS_BY_CLASS = {
[VUHDO_SPELL_ID.DEBUFF_DECAYED_STR] = true,
[VUHDO_SPELL_ID.DEBUFF_CRIPPLE] = true,
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
[(GetSpellInfo(87923))] = true, -- MOP okay Windschlag
[(GetSpellInfo(87923))] = true, -- MOP okay Wind Blast
},
["SHAMAN"] = {
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
......@@ -105,7 +105,7 @@ VUHDO_INIT_IGNORE_DEBUFFS_BY_CLASS = {
[VUHDO_SPELL_ID.DEBUFF_DECAYED_STR] = true,
[VUHDO_SPELL_ID.DEBUFF_CRIPPLE] = true,
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
[(GetSpellInfo(87923))] = true, -- MOP okay Windschlag
[(GetSpellInfo(87923))] = true, -- MOP okay Wind Blast
},
["DEATHKNIGHT"] = {
[VUHDO_SPELL_ID.DEBUFF_UNSTABLE_AFFL] = true,
......@@ -132,25 +132,25 @@ VUHDO_INIT_IGNORE_DEBUFFS_MOVEMENT = {
[VUHDO_SPELL_ID.DEBUFF_DAZED] = true,
[VUHDO_SPELL_ID.DEBUFF_FROST_SHOCK] = true,
[VUHDO_SPELL_ID.FROSTBOLT_VOLLEY] = true,
[(GetSpellInfo(88184))] = true, -- MOP okay Lethargisches Gift
[(GetSpellInfo(87759))] = true, -- MOP okay Schockwelle
[(GetSpellInfo(88075))] = true, -- MOP okay Taifun
[(GetSpellInfo(90938))] = true, -- MOP okay Blutgeschoss
[(GetSpellInfo(88184))] = true, -- MOP okay Lethargic Poison
[(GetSpellInfo(87759))] = true, -- MOP okay Shockwave
[(GetSpellInfo(88075))] = true, -- MOP okay Typhoon
[(GetSpellInfo(90938))] = true, -- MOP okay Bloodbolt
[(GetSpellInfo(92007))] = true, -- MOP okay Swirling Vapor
[(GetSpellInfo(88169))] = true, -- MOP okay Frostblte
[(GetSpellInfo(87861))] = true, -- MOP okay Frostfuste
[(GetSpellInfo(83776))] = true, -- MOP okay Drachenodem
[(GetSpellInfo(7964))] = true, -- MOP okay Rauchbombe
[(GetSpellInfo(83785))] = true, -- MOP okay Schockwelle
[(GetSpellInfo(81630))] = true, -- MOP okay Zhflssiges Gift
[(GetSpellInfo(82764))] = true, -- MOP okay Zurechtstutzen
[(GetSpellInfo(76825))] = true, -- MOP okay Eisschlag
[(GetSpellInfo(73963))] = true, -- MOP okay Blendendes Gift
[(GetSpellInfo(76508))] = true, -- MOP okay Frostblitz
[(GetSpellInfo(76682))] = true, -- MOP okay Frostbombe
[(GetSpellInfo(12611))] = true, -- MOP okay Kltekegel
[(GetSpellInfo(76094))] = true, -- MOP okay Fluch der Ermdung
[(GetSpellInfo(76604))] = true, -- MOP okay Leerenreien
[(GetSpellInfo(88169))] = true, -- MOP okay Frost Blossom
[(GetSpellInfo(87861))] = true, -- MOP okay Fists of Frost
[(GetSpellInfo(83776))] = true, -- MOP okay Dragon's Breath
[(GetSpellInfo(7964))] = true, -- MOP okay Smoke Bomb
[(GetSpellInfo(83785))] = true, -- MOP okay Shockwave
[(GetSpellInfo(81630))] = true, -- MOP okay Viscous Poison
[(GetSpellInfo(82764))] = true, -- MOP okay Wing Clip
[(GetSpellInfo(76825))] = true, -- MOP okay Ice Blast
[(GetSpellInfo(73963))] = true, -- MOP okay Blinding Toxin
[(GetSpellInfo(76508))] = true, -- MOP okay Frostbolt
[(GetSpellInfo(76682))] = true, -- MOP okay Frostbomb
[(GetSpellInfo(12611))] = true, -- MOP okay Cone of Cold
[(GetSpellInfo(76094))] = true, -- MOP okay Curse of Fatigue
[(GetSpellInfo(76604))] = true, -- MOP okay Void Rip
};
......@@ -162,17 +162,17 @@ VUHDO_INIT_IGNORE_DEBUFFS_DURATION = {
[VUHDO_SPELL_ID.DEBUFF_CONEOFCOLD] = true,
[VUHDO_SPELL_ID.DEBUFF_CONCUSSIVESHOT] = true,
[VUHDO_SPELL_ID.DEBUFF_FALTER] = true,
[(GetSpellInfo(87759))] = true, -- MOP okay Schockwelle
[(GetSpellInfo(90938))] = true, -- MOP okay Blutgeschoss
[(GetSpellInfo(92007))] = true, -- MOP pkay Dampf
[(GetSpellInfo(83776))] = true, -- MOP okay Drachenodem
[(GetSpellInfo(7964))] = true, -- MOP okay Rauchbombe
[(GetSpellInfo(83785))] = true, -- MOP okay Schockwelle
[(GetSpellInfo(81630))] = true, -- MOP okay Zhflssiges Gift
[(GetSpellInfo(82670))] = true, -- MOP okay Schdelkracher
[(GetSpellInfo(73963))] = true, -- MOP okay Blendendes Gift
[(GetSpellInfo(76508))] = true, -- MOP okay Frostblitz
[(GetSpellInfo(76185))] = true, -- MOP okay Steinschlag
[(GetSpellInfo(87759))] = true, -- MOP okay Shockwave
[(GetSpellInfo(90938))] = true, -- MOP okay Bloodbolt
[(GetSpellInfo(92007))] = true, -- MOP pkay Swirling Vapor
[(GetSpellInfo(83776))] = true, -- MOP okay Dragon's Breath
[(GetSpellInfo(7964))] = true, -- MOP okay Smoke Bomb
[(GetSpellInfo(83785))] = true, -- MOP okay Shockwave
[(GetSpellInfo(81630))] = true, -- MOP okay Viscous Poison
[(GetSpellInfo(82670))] = true, -- MOP okay Skull Crack
[(GetSpellInfo(73963))] = true, -- MOP okay Blinding Toxin
[(GetSpellInfo(76508))] = true, -- MOP okay Frostbolt
[(GetSpellInfo(76185))] = true, -- MOP okay Stone Blow
};
......
......@@ -645,6 +645,12 @@ function VUHDO_OnEvent(_, anEvent, anArg1, anArg2, anArg3, anArg4, anArg5, anArg
elseif "PET_BATTLE_CLOSE" == anEvent then
VUHDO_setPetBattle(false);
elseif "ACTIVE_TALENT_GROUP_CHANGED" == anEvent then
if VUHDO_VARIABLES_LOADED then
VUHDO_activateSpecc(tostring(GetSpecialization()) or "1");
end
else
VUHDO_Msg("Error: Unexpected event: " .. anEvent);
end
......@@ -1425,7 +1431,8 @@ local VUHDO_ALL_EVENTS = {
"INCOMING_RESURRECT_CHANGED",
"PET_BATTLE_CLOSE", "PET_BATTLE_OPENING_START",
"PLAYER_REGEN_ENABLED", "PLAYER_REGEN_DISABLED",
"UNIT_ABSORB_AMOUNT_CHANGED"
"UNIT_ABSORB_AMOUNT_CHANGED",
"ACTIVE_TALENT_GROUP_CHANGED"
};
......
......@@ -1983,7 +1983,7 @@ end
--
local tSpec;
function VUHDO_getBestProfileAfterSpecChange()
tSpec = GetActiveSpecGroup(false);
tSpec = GetSpecialization();
return VUHDO_getBestProfileForSpecAndSize(tSpec, VUHDO_GROUP_SIZE)
or VUHDO_getBestProfileForSpec(tSpec)
or VUHDO_getBestProfileForSize(VUHDO_GROUP_SIZE);
......@@ -1993,7 +1993,7 @@ end
--
function VUHDO_getBestProfileAfterSizeChange()
tSpec = GetActiveSpecGroup(false);
tSpec = GetSpecialization();
return VUHDO_getBestProfileForSpecAndSize(tSpec, VUHDO_GROUP_SIZE)
or VUHDO_getBestProfileForSize(VUHDO_GROUP_SIZE)
or VUHDO_getBestProfileForSpec(tSpec);
......
......@@ -395,7 +395,7 @@ local function VUHDO_createTestUser()
tPetDemoIdx = tPetDemoIdx + 1;
else
tUnit = "raid" .. tRaidDemoIdx;
tClassId = VUHDO_getNextFreeModelInRange(VUHDO_ID_WARRIORS, VUHDO_ID_MONKS);
tClassId = VUHDO_getNextFreeModelInRange(VUHDO_ID_WARRIORS, VUHDO_ID_DEMON_HUNTERS);
tGroup = VUHDO_getNextFreeModelInRange(VUHDO_ID_GROUP_1, VUHDO_ID_GROUP_8);
tNumber = tRaidDemoIdx;
tRaidDemoIdx = tRaidDemoIdx + 1;
......
......@@ -1106,4 +1106,6 @@ VUHDO_I18N_LUNAR_POWER = "Astral Power";
VUHDO_I18N_MAELSTROM = "Maelstrom";
VUHDO_I18N_INSANITY = "Insanity";
VUHDO_I18N_FURY = "Fury";
VUHDO_I18N_SPEC_3 = "Spec 3";
VUHDO_I18N_SPEC_4 = "Spec 4";
......@@ -39,6 +39,14 @@ function VUHDO_keyLayoutComboChanged(aComboBox, aValue)
tSpec2CheckButton:SetChecked(aValue == VUHDO_SPEC_LAYOUTS["2"]);
VUHDO_lnfCheckButtonClicked(tSpec2CheckButton);
local tSpec2CheckButton = _G[tParentName .. "Spec3CheckButton"];
tSpec2CheckButton:SetChecked(aValue == VUHDO_SPEC_LAYOUTS["3"]);
VUHDO_lnfCheckButtonClicked(tSpec2CheckButton);
local tSpec2CheckButton = _G[tParentName .. "Spec4CheckButton"];
tSpec2CheckButton:SetChecked(aValue == VUHDO_SPEC_LAYOUTS["4"]);
VUHDO_lnfCheckButtonClicked(tSpec2CheckButton);
VUHDO_updateDefaultLayoutCheckButton(aComboBox:GetParent():GetParent());
end
......
......@@ -77,7 +77,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="17" y="-137" />
<AbsDimension x="17" y="-177" />
</Offset>
</Anchor>
</Anchors>
......@@ -159,6 +159,54 @@
</Scripts>
</CheckButton>
<CheckButton name="$parentSpec3CheckButton" text="VUHDO_I18N_SPEC_3" inherits="VuhDoCheckButtonTemplate">
<Size>
<AbsDimension x="80" y="32" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-107" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnClick>
VUHDO_keyLayoutSpecOnClick(self, "3");
VUHDO_lnfCheckButtonClicked(self);
</OnClick>
<OnShow>
VUHDO_lnfPatchFont(self, "Label");
self:SetChecked(VUHDO_CURR_LAYOUT == VUHDO_SPEC_LAYOUTS["3"]);
VUHDO_lnfCheckButtonClicked(self);
</OnShow>
</Scripts>
</CheckButton>
<CheckButton name="$parentSpec4CheckButton" text="VUHDO_I18N_SPEC_4" inherits="VuhDoCheckButtonTemplate">
<Size>
<AbsDimension x="80" y="32" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="105" y="-107" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnClick>
VUHDO_keyLayoutSpecOnClick(self, "4");
VUHDO_lnfCheckButtonClicked(self);
</OnClick>
<OnShow>
VUHDO_lnfPatchFont(self, "Label");
self:SetChecked(VUHDO_CURR_LAYOUT == VUHDO_SPEC_LAYOUTS["4"]);
VUHDO_lnfCheckButtonClicked(self);
</OnShow>
</Scripts>
</CheckButton>
<CheckButton name="$parentDefaultLayoutCheckButton" text="VUHDO_I18N_DEFAULT_LAYOUT" inherits="VuhDoCheckButtonTemplate">
<Size>
<AbsDimension x="125" y="32" />
......@@ -166,7 +214,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="13" y="-107" />
<AbsDimension x="13" y="-145" />
</Offset>
</Anchor>
</Anchors>
......
......@@ -66,10 +66,14 @@ local function VUHDO_deleteAutoProfile(aName)
VUHDO_clearProfileIfInSlot(aName, "" .. tCnt);
VUHDO_clearProfileIfInSlot(aName, "SPEC_1_" .. tCnt);
VUHDO_clearProfileIfInSlot(aName, "SPEC_2_" .. tCnt);
VUHDO_clearProfileIfInSlot(aName, "SPEC_3_" .. tCnt);
VUHDO_clearProfileIfInSlot(aName, "SPEC_4_" .. tCnt);
end
VUHDO_clearProfileIfInSlot(aName, "SPEC_1");
VUHDO_clearProfileIfInSlot(aName, "SPEC_2");
VUHDO_clearProfileIfInSlot(aName, "SPEC_3");
VUHDO_clearProfileIfInSlot(aName, "SPEC_4");
end
......@@ -87,7 +91,9 @@ local function VUHDO_isAutoProfileButtonEnabled(aButtonIndex)
return false;
else -- Gruppenbutton
return VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_1_" .. aButtonIndex] == VUHDO_CURRENT_PROFILE
or VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_2_" .. aButtonIndex] == VUHDO_CURRENT_PROFILE;
or VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_2_" .. aButtonIndex] == VUHDO_CURRENT_PROFILE
or VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_3_" .. aButtonIndex] == VUHDO_CURRENT_PROFILE
or VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_4_" .. aButtonIndex] == VUHDO_CURRENT_PROFILE;
end
end
......@@ -171,6 +177,8 @@ local function VUHDO_updateAllAutoProfiles(aPanel)
VUHDO_skinsInitAutoCheckButton(_G[aPanel:GetName() .. "AutoEnablePanelSpec1CheckButton"], "SPEC_1");
VUHDO_skinsInitAutoCheckButton(_G[aPanel:GetName() .. "AutoEnablePanelSpec2CheckButton"], "SPEC_2");
VUHDO_skinsInitAutoCheckButton(_G[aPanel:GetName() .. "AutoEnablePanelSpec3CheckButton"], "SPEC_3");
VUHDO_skinsInitAutoCheckButton(_G[aPanel:GetName() .. "AutoEnablePanelSpec4CheckButton"], "SPEC_4");
VUHDO_skinsInitLockCheckButton(_G[aPanel:GetName() .. "SettingsPanelLockCheckButton"]);
end
......@@ -205,16 +213,24 @@ function VUHDO_skinsSaveAutoProfileButtonEnablement(aPanel, aProfileName)
tIsSpec1 = _G[aPanel:GetName() .. "AutoEnablePanelSpec1CheckButton"]:GetChecked();
tIsSpec2 = _G[aPanel:GetName() .. "AutoEnablePanelSpec2CheckButton"]:GetChecked();
tIsSpec3 = _G[aPanel:GetName() .. "AutoEnablePanelSpec3CheckButton"]:GetChecked();
tIsSpec4 = _G[aPanel:GetName() .. "AutoEnablePanelSpec4CheckButton"]:GetChecked();
if (tIsSpec1 and not tIsSpec2) then
if (tIsSpec1 and not tIsSpec2 and not tIsSpec3 and not tIsSpec4) then
tPrefix = "SPEC_1_";
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_2_");
elseif(tIsSpec2 and not tIsSpec1) then
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_2_", "SPEC_3_", "SPEC_4_");
elseif (tIsSpec2 and not tIsSpec1 and not tIsSpec3 and not tIsSpec4) then
tPrefix = "SPEC_2_";
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_1_");
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_1_", "SPEC_3_", "SPEC_4_");
elseif (tIsSpec3 and not tIsSpec1 and not tIsSpec2 and not tIsSpec4) then
tPrefix = "SPEC_3_";
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_1_", "SPEC_2_", "SPEC_4_");
elseif (tIsSpec4 and not tIsSpec1 and not tIsSpec2 and not tIsSpec3) then
tPrefix = "SPEC_4_";
VUHDO_clearProfileFromPrefix(aProfileName, "", "SPEC_1_", "SPEC_2_", "SPEC_3_");
else
tPrefix = "";
VUHDO_clearProfileFromPrefix(aProfileName, "SPEC_1_", "SPEC_2_");
VUHDO_clearProfileFromPrefix(aProfileName, "SPEC_1_", "SPEC_2_", "SPEC_3_", "SPEC_4_");
end
tIsGroupFound = false;
......@@ -231,19 +247,29 @@ function VUHDO_skinsSaveAutoProfileButtonEnablement(aPanel, aProfileName)
end
if (tIsGroupFound) then
if (tIsSpec1 and not tIsSpec2) then
if (tIsSpec1 and not tIsSpec2 and not tIsSpec3 and not tIsSpec4) then
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_1");
elseif(tIsSpec2 and not tIsSpec1) then
elseif (tIsSpec2 and not tIsSpec1 and not tIsSpec3 and not tIsSpec4) then
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_2");
elseif (tIsSpec3 and not tIsSpec1 and not tIsSpec2 and not tIsSpec4) then
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_3");
elseif (tIsSpec4 and not tIsSpec1 and not tIsSpec2 and not tIsSpec3) then
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_4");
end
else
if (tIsSpec1 and not tIsSpec2) then
if (tIsSpec1 and not tIsSpec2 and not tIsSpec3 and not tIsSpec4) then
VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_1"] = aProfileName;
elseif(tIsSpec2 and not tIsSpec1) then
elseif (tIsSpec2 and not tIsSpec1 and not tIsSpec3 and not tIsSpec4) then
VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_2"] = aProfileName;
elseif (tIsSpec3 and not tIsSpec1 and not tIsSpec2 and not tIsSpec4) then
VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_3"] = aProfileName;
elseif (tIsSpec4 and not tIsSpec1 and not tIsSpec2 and not tIsSpec3) then
VUHDO_CONFIG["AUTO_PROFILES"]["SPEC_4"] = aProfileName;
else
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_1");
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_2");
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_3");
VUHDO_clearProfileIfInSlot(aProfileName, "SPEC_4");
end
end
......
......@@ -12,7 +12,7 @@
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="270" y="-210" />
<AbsDimension x="20" y="-310" />
</Offset>
</Anchor>
</Anchors>
......@@ -245,7 +245,7 @@
<Frame name="$parentAutoEnablePanel" inherits="VuhDoPanelTemplate">
<Size>
<AbsDimension x="230" y="190" />
<AbsDimension x="230" y="230" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
......@@ -536,6 +536,54 @@
</Scripts>
</CheckButton>
<CheckButton name="$parentSpec3CheckButton" text="VUHDO_I18N_SPEC_3" inherits="VuhDoCheckButtonTemplate">
<Size>
<AbsDimension x="85" y="32" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="25" y="-183" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnShow>
VUHDO_lnfPatchFont(self, "Label"); VUHDO_lnfRadioButtonOnShow(self);
VUHDO_lnfCheckButtonInitFromModel(self);
VUHDO_skinsInitAutoCheckButton(self, "SPEC_3");
</OnShow>
<OnClick>
VUHDO_lnfCheckButtonClicked(self);
VUHDO_skinsAutoCheckButtonClicked(self, "SPEC_3");
</OnClick>
</Scripts>
</CheckButton>
<CheckButton name="$parentSpec4CheckButton" text="VUHDO_I18N_SPEC_4" inherits="VuhDoCheckButtonTemplate">
<Size>
<AbsDimension x="85" y="32" />
</Size>
<Anchors>
<Anchor point="TOPLEFT">
<Offset>
<AbsDimension x="115" y="-183" />
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnShow>
VUHDO_lnfPatchFont(self, "Label"); VUHDO_lnfRadioButtonOnShow(self);
VUHDO_lnfCheckButtonInitFromModel(self);
VUHDO_skinsInitAutoCheckButton(self, "SPEC_4");
</OnShow>
<OnClick>
VUHDO_lnfCheckButtonClicked(self);
VUHDO_skinsAutoCheckButtonClicked(self, "SPEC_4");
</OnClick>
</Scripts>
</CheckButton>
</Frames>
</Frame>
......
......@@ -14,7 +14,6 @@ local twipe = table.wipe;
local CheckInteractDistance = CheckInteractDistance;
local UnitIsUnit = UnitIsUnit;
local NotifyInspect = NotifyInspect;
local GetActiveSpecGroup = GetActiveSpecGroup;
local GetSpecializationInfo = GetSpecializationInfo;
local ClearInspectPlayer = ClearInspectPlayer;
local UnitBuff = UnitBuff;
......
......@@ -52,7 +52,7 @@ end
--
local function VUHDO_activateSpecc(aSpecNum)
function VUHDO_activateSpecc(aSpecNum)
local tProfile = VUHDO_getBestProfileAfterSpecChange();
if tProfile then VUHDO_loadProfile(tProfile); end
VUHDO_activateSpellForSpec(aSpecNum);
......@@ -63,8 +63,7 @@ end
--
local VUHDO_TALENT_CHANGE_SPELLS = {
[VUHDO_SPELL_ID.ACTIVATE_FIRST_TALENT] = true,
[VUHDO_SPELL_ID.ACTIVATE_SECOND_TALENT] = true,
[VUHDO_SPELL_ID.ACTIVATING_SPECIALIZATION] = true,
[VUHDO_SPELL_ID.BUFF_FROST_PRESENCE] = true,
[VUHDO_SPELL_ID.BUFF_BLOOD_PRESENCE] = true,
[VUHDO_SPELL_ID.BUFF_UNHOLY_PRESENCE] = true,
......@@ -87,9 +86,6 @@ function VUHDO_spellcastSucceeded(aUnit, aSpellName)
VUHDO_updateAllCyclicBouquets(true);
end
if VUHDO_SPELL_ID.ACTIVATE_FIRST_TALENT == aSpellName then VUHDO_activateSpecc("1");
elseif (VUHDO_SPELL_ID.ACTIVATE_SECOND_TALENT == aSpellName) then VUHDO_activateSpecc("2"); end
VUHDO_aoeUpdateAll();
end
......
......@@ -466,26 +466,13 @@ end
--
function VUHDO_getTalentSpellId(aTalentName, onlyActiveSpec)
if onlyActiveSpec then
for tier=1,7 do
for column=1,3 do
local id, name, _, selected, _ = GetTalentInfo(tier, column, GetActiveSpecGroup());
if name == aTalentName and selected then
return id;
end
end
end
else
for group=1,2 do
for tier=1,7 do
for column=1,3 do
local id, name, _, selected, _ = GetTalentInfo(tier, column, group);
if name == aTalentName and selected then
return id;
end
end
function VUHDO_getTalentSpellId(aTalentName)
for tier=1,7 do
for column=1,3 do
local id, name, _, selected, _ = GetTalentInfo(tier, column, GetActiveSpecGroup());
if name == aTalentName and selected then
return id;
end
end
end
......@@ -495,8 +482,8 @@ end
--
function VUHDO_isTalentKnown(aTalentName, onlyActiveSpec)
return VUHDO_getTalentSpellId(aTalentName, onlyActiveSpec) and true or false;
function VUHDO_isTalentKnown(aTalentName)
return VUHDO_getTalentSpellId(aTalentName) and true or false;
end
......@@ -690,7 +677,7 @@ function VUHDO_isActionValid(anActionName, anIsCustom)
tIsMacroKnown = GetMacroIndexByName(anActionName) ~= 0;
tIsSpellKnown = VUHDO_isSpellKnown(anActionName);
tIsTalentKnown = VUHDO_isTalentKnown(anActionName, true);
tIsTalentKnown = VUHDO_isTalentKnown(anActionName);
if (tIsSpellKnown or tIsTalentKnown) and tIsMacroKnown then
VUHDO_Msg(format(VUHDO_I18N_AMBIGUOUS_MACRO, anActionName), 1, 0.3, 0.3);
......
......@@ -21,6 +21,7 @@ Bugfixes:
-- Priest 'Spirit Shell' has been removed from the game
-- Druid 'Wild Growth' now hits up to 6 targets normally and 8 with 'Incarnation'
-- Druid 'Tranquility' now hits up to all 40 targets in a raid
-- Druid 'Rampant Growth' has been removed from the game
-- Paladin 'Light of Dawn' now hits up to 5 targets in a frontal 180 degree cone
-- Paladin 'Holy Radiance' has been removed from the game
-- Paladin 'Illuminated Healing' has been removed from the game
......@@ -31,7 +32,9 @@ Bugfixes:
Improvements:
-- Added new power types and power colors (Astral Power, Maelstrom, Insanity)
-- Added new power types and power colors (Maelstrom, Insanity, etc.)
-- Added auto loading of profiles and key layouts for all 4 specializations
-- Added Demon Hunters to the demo groups for testing panels
--------------------------------------------------------------
......
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