diff --git a/BeStride_Vanilla.toc b/BeStride_Vanilla.toc
index be2d6b6..a330cee 100644
--- a/BeStride_Vanilla.toc
+++ b/BeStride_Vanilla.toc
@@ -25,4 +25,4 @@ Versions\Common\BeStride_Debug.lua
libs\embeds.xml
-Versions\BeStride_Wrath.xml
\ No newline at end of file
+Versions\BeStride_Classic.xml
\ No newline at end of file
diff --git a/Versions/BeStride_Clasic.xml b/Versions/BeStride_Classic.xml
similarity index 97%
rename from Versions/BeStride_Clasic.xml
rename to Versions/BeStride_Classic.xml
index f4f2ed1..3c27f49 100644
--- a/Versions/BeStride_Clasic.xml
+++ b/Versions/BeStride_Classic.xml
@@ -33,4 +33,5 @@
+
diff --git a/Versions/BeStride_Mainline.xml b/Versions/BeStride_Mainline.xml
index 1770c76..ffbab72 100644
--- a/Versions/BeStride_Mainline.xml
+++ b/Versions/BeStride_Mainline.xml
@@ -3,7 +3,8 @@
-
+
+
diff --git a/Versions/Classic/bestride.lua b/Versions/Classic/bestride.lua
index a258f51..854212f 100644
--- a/Versions/Classic/bestride.lua
+++ b/Versions/Classic/bestride.lua
@@ -10,8 +10,7 @@ function BeStride:Version_OnEnable()
BeStride_Constants.spells.druid.aquaticform = 1066
end
-function BeSTride:IsClassicEra()
- print("Classic Era")
+function BeStride:IsClassicEra()
return true
end
diff --git a/Versions/Common/BeStride_Variables.lua b/Versions/Common/BeStride_Variables.lua
index 3c0aaa9..b794deb 100644
--- a/Versions/Common/BeStride_Variables.lua
+++ b/Versions/Common/BeStride_Variables.lua
@@ -1,72 +1,72 @@
BeStride_Variables = {
Settings = {
Mount = {
- {name="mount.enablenew",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.EnableNew"]},
- {name="mount.remount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.RemountAfterDismount"]},
- {name="mount.emptyrandom",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.EmptyRandom"]},
- {name="mount.nodismountwhileflying",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.NoDismountWhileFlying"]},
- {name="mount.useflyingmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.UseFlyingMount"], dependants = {"mount.forceflyingmount"}},
- {name="mount.forceflyingmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.ForceFlyingMount"], depends = {"mount.useflyingmount"}},
- {name="mount.copytargetmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.CopyTargetMount"]},
- {name="mount.prioritizepassenger",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.PrioritizePassenger"]},
- {name="mount.noswimming",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.NoSwimming"]},
- {name="mount.flyingbroom",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.FlyingBroom"]},
- {name="mount.telaari",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Telaari"]},
- {name="mount.forcerobot",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.ForceRobot"]},
+ ["mount.enablenew"]={name="mount.enablenew",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.EnableNew"]},
+ ["mount.remount"]={name="mount.remount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.RemountAfterDismount"]},
+ ["mount.emptyrandom"]={name="mount.emptyrandom",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.EmptyRandom"]},
+ ["mount.nodismountwhileflying"]={name="mount.nodismountwhileflying",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.NoDismountWhileFlying"]},
+ ["mount.useflyingmount"]={name="mount.useflyingmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.UseFlyingMount"], dependants = {"mount.forceflyingmount"}},
+ ["mount.forceflyingmount"]={name="mount.forceflyingmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.ForceFlyingMount"], depends = {"mount.useflyingmount"}},
+ ["mount.copytargetmount"]={name="mount.copytargetmount",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.CopyTargetMount"], era={classic=false,wrath=false}},
+ ["mount.prioritizepassenger"]={name="mount.prioritizepassenger",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.PrioritizePassenger"]},
+ ["mount.noswimming"]={name="mount.noswimming",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.NoSwimming"]},
+ ["mount.flyingbroom"]={name="mount.flyingbroom",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.FlyingBroom"]},
+ ["mount.telaari"]={name="mount.telaari",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Telaari"]},
+ ["mount.forcerobot"]={name="mount.forcerobot",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.ForceRobot"]},
{
element="Group",
children={
- {name="mount.repair.use",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Use"], dependants = {"mount.repair.force","mount.repair.durability","mount.repair.globaldurability","mount.repair.inventorydurability"} },
- {name="mount.repair.force",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Force"], depends = {"mount.repair.use"}},
- {name="mount.repair.durability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Durability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
- {name="mount.repair.globaldurability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.GlobalDurability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
- {name="mount.repair.inventorydurability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.InventoryDurability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
+ ["mount.repair.use"]={name="mount.repair.use",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Use"], dependants = {"mount.repair.force","mount.repair.durability","mount.repair.globaldurability","mount.repair.inventorydurability"} },
+ ["mount.repair.force"]={name="mount.repair.force",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Force"], depends = {"mount.repair.use"}},
+ ["mount.repair.durability"]={name="mount.repair.durability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.Durability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
+ ["mount.repair.globaldurability"]={name="mount.repair.globaldurability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.GlobalDurability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
+ ["mount.repair.inventorydurability"]={name="mount.repair.inventorydurability",element="Slider",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Repair.InventoryDurability"],minDurability=0,maxDurability=100, increment=5, depends = {"mount.repair.use"}},
}
}
},
Classes = {
{
- {name="classes.deathknight.wraithwalk",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DeathKnight.WraithWalk"],class="deathknight"},
+ ["classes.deathknight.wraithwalk"]={name="classes.deathknight.wraithwalk",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DeathKnight.WraithWalk"],class="deathknight"},
},
{
- {name="classes.demonhunter.felrush",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DemonHunter.FelRush"],class="demonhunter"},
- {name="classes.demonhunter.glide",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DemonHunter.Glide"],class="demonhunter"},
+ ["classes.demonhunter.felrush"]={name="classes.demonhunter.felrush",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DemonHunter.FelRush"],class="demonhunter"},
+ ["classes.demonhunter.glide"]={name="classes.demonhunter.glide",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.DemonHunter.Glide"],class="demonhunter"},
},
{
- {name="classes.druid.flightform",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.FlightForm"],class="druid", dependants = {"classes.druid.traveltotravel","classes.druid.flightformpriority","classes.druid.mountedtoflightform"}},
- {name="classes.druid.traveltotravel",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.TravelToTravel"],class="druid", depends = {"classes.druid.flightform"}},
- {name="classes.druid.flightformpriority",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.FlightFormPriority"],class="druid", depends = {"classes.druid.flightform"}},
- {name="classes.druid.mountedtoflightform",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.MountedToFlightForm"],class="druid", depends = {"classes.druid.flightform"}},
+ ["classes.druid.flightform"]={name="classes.druid.flightform",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.FlightForm"],class="druid", dependants = {"classes.druid.traveltotravel","classes.druid.flightformpriority","classes.druid.mountedtoflightform"}},
+ ["classes.druid.traveltotravel"]={name="classes.druid.traveltotravel",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.TravelToTravel"],class="druid", depends = {"classes.druid.flightform"}},
+ ["classes.druid.flightformpriority"]={name="classes.druid.flightformpriority",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.FlightFormPriority"],class="druid", depends = {"classes.druid.flightform"}},
+ ["classes.druid.mountedtoflightform"]={name="classes.druid.mountedtoflightform",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Druid.MountedToFlightForm"],class="druid", depends = {"classes.druid.flightform"}},
},
{
- {name="classes.hunter.aspectofthecheetah",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Hunter.AspectOfTheCheetah"],class="hunter"},
+ ["classes.hunter.aspectofthecheetah"]={name="classes.hunter.aspectofthecheetah",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Hunter.AspectOfTheCheetah"],class="hunter"},
},
{
- {name="classes.mage.slowfall",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.SlowFall"],class="mage"},
- {name="classes.mage.blink",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.Blink"],class="mage"},
- {name="classes.mage.blinkpriority",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.BlinkPriority"],class="mage"},
+ ["classes.mage.slowfall"]={name="classes.mage.slowfall",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.SlowFall"],class="mage"},
+ ["classes.mage.blink"]={name="classes.mage.blink",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.Blink"],class="mage"},
+ ["classes.mage.blinkpriority"]={name="classes.mage.blinkpriority",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Mage.BlinkPriority"],class="mage"},
},
{
- {name="classes.monk.roll",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Monk.Roll"],class="monk"},
- {name="classes.monk.zenflight",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Monk.ZenFlight"],class="monk"},
+ ["classes.monk.roll"]={name="classes.monk.roll",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Monk.Roll"],class="monk"},
+ ["classes.monk.zenflight"]={name="classes.monk.zenflight",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Monk.ZenFlight"],class="monk"},
},
{
- {name="classes.paladin.steed",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Paladin.DivineSteed"],class="paladin"},
+ ["classes.paladin.steed"]={name="classes.paladin.steed",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Paladin.DivineSteed"],class="paladin"},
},
{
- {name="classes.priest.levitate",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Priest.Levitate"],class="priest"},
+ ["classes.priest.levitate"]={name="classes.priest.levitate",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Priest.Levitate"],class="priest"},
},
{
- {name="classes.rogue.sprint",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Rogue.Sprint"],class="rogue"},
+ ["classes.rogue.sprint"]={name="classes.rogue.sprint",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Rogue.Sprint"],class="rogue"},
},
{
- {name="classes.shaman.ghostwolf",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Shaman.GhostWolf"],class="shaman"},
+ ["classes.shaman.ghostwolf"]={name="classes.shaman.ghostwolf",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Shaman.GhostWolf"],class="shaman"},
},
{
- {name="classes.evoker.hover",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Evoker.Hover"],class="evoker"},
+ ["classes.evoker.hover"]={name="classes.evoker.hover",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Evoker.Hover"],class="evoker"},
},
{
- {name="classes.warlock.rush",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Warlock.BurningRush"],class="warlock"},
+ ["classes.warlock.rush"]={name="classes.warlock.rush",element="CheckBox",label=LibStub("AceLocale-3.0"):GetLocale("BeStride")["Settings.Classes.Warlock.BurningRush"],class="warlock"},
},
}
},
diff --git a/Versions/Common/logic.mounts.lua b/Versions/Common/logic.mounts.lua
index 9769bfd..3d3ef8b 100644
--- a/Versions/Common/logic.mounts.lua
+++ b/Versions/Common/logic.mounts.lua
@@ -55,6 +55,7 @@ function BeStride:CheckLoanedMount()
end
function BeStride:CanUseTargetsMount()
+ if self:IsClassicEra() then return false end
if (not self:DBGet("settings.mount.copytargetmount")) then return false end
if (self:MovementCheck() or not UnitExists("target")) then return false end
diff --git a/Versions/Common/options.lua b/Versions/Common/options.lua
index b8cc16f..2baff1d 100644
--- a/Versions/Common/options.lua
+++ b/Versions/Common/options.lua
@@ -82,6 +82,7 @@ local optionsTable_Options = {
width="full",
get=function (info) return BeStride:DBGetSetting(info[#info]) end,
set=function (info,val) BeStride:DBSetSetting(info[#info],val) end,
+ disabled=function (info) return not BeStride:DBCanSetSetting("Mount" ,info[#info]) end,
},
special_mounts = {
type="group",
diff --git a/Versions/Common/settings.lua b/Versions/Common/settings.lua
index 253f6a4..8deb676 100644
--- a/Versions/Common/settings.lua
+++ b/Versions/Common/settings.lua
@@ -78,4 +78,21 @@ function BeStride:DBSetClassSetting(parent,setting, value)
if parent and self.db.profile.settings.classes[parent] ~= nil then
self.db.profile.settings.classes[parent][setting] = value
end
-end
\ No newline at end of file
+end
+
+function BeStride:DBCanSetSetting(parent, setting)
+ if BeStride_Variables.Settings[parent] ~= nil and BeStride_Variables.Settings[parent][setting] ~= nil then
+ local variable = BeStride_Variables.Settings[parent][setting]
+ if variable["era"] ~= nil and variable["era"]["classic"] ~= nil and variable["era"]["classic"] == false and self:IsClassicEra() then
+ return false
+ elseif variable["era"] ~= nil and variable["era"]["wrath"] ~= nil and variable["era"]["wrath"] == false and self:IsWrath() then
+ return false
+ elseif variable["era"] ~= nil and variable["era"]["mainline"] ~= nil and variable["era"]["mainline"] == false and self:IsMainline() then
+ return false
+ else
+ return true
+ end
+ else
+ return nil
+ end
+end
diff --git a/Versions/Mainline/bestride.lua b/Versions/Mainline/bestride.lua
index f021dfa..87cc8e0 100644
--- a/Versions/Mainline/bestride.lua
+++ b/Versions/Mainline/bestride.lua
@@ -2,6 +2,10 @@
function BeStride:Version_OnEnable()
end
+function BeStride:IsClassicEra()
+ return false
+end
+
function BeStride:IsWrath()
return false
end
diff --git a/Versions/Wrath/bestride.lua b/Versions/Wrath/bestride.lua
index 4e2ea67..0dced3b 100644
--- a/Versions/Wrath/bestride.lua
+++ b/Versions/Wrath/bestride.lua
@@ -7,6 +7,10 @@ function BeStride:Version_OnEnable()
BeStride_Constants.spells.druid.aquaticform = 1066
end
+function BeStride:IsClassicEra()
+ return false
+end
+
function BeStride:IsWrath()
return true
end