Update
This commit is contained in:
@@ -1,239 +1,239 @@
|
||||
--UPDATE_BIND_TABLE UPDATE_BINDS UPDATE_BAR_TABLE UPDATE_BARS DELETE_SET LIST_SETS
|
||||
--[[
|
||||
UPDATE_BIND_TABLE saves current binds
|
||||
UPDATE_BINDS restores saved binds
|
||||
UPDATE_BAR_TABLE saves current bar layout also supports sets
|
||||
UPDATE_BARS restores bar layout; defaults to the "default" set
|
||||
DELETE_SET deletes a specified set
|
||||
LIST_SETS lists all sets
|
||||
DELETE and LIST only work for bar layouts
|
||||
|
||||
|
||||
|
||||
/run WeakAuras.ScanEvents("UPDATE_BINDS")
|
||||
/run WeakAuras.ScanEvents("UPDATE_BIND_TABLE")
|
||||
|
||||
]]
|
||||
function(e, ...)
|
||||
if InCombatLockdown() ~= 1 then
|
||||
if e == "UPDATE_BIND_TABLE" then
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BindTableTwo then WeakAurasSaved.CustomTrash.BindTableTwo = {} end
|
||||
for i = 1, GetNumBindings() do
|
||||
local comm, bind, bind2 = GetBinding(i)
|
||||
if comm and bind2 and not WeakAurasSaved.CustomTrash.BindTableTwo[comm] then
|
||||
print("Adding", comm, "with bind", bind2, "to bind table")
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm] = {}
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm].bind = bind2
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm].index = i
|
||||
end
|
||||
if comm and not bind2 and WeakAurasSaved.CustomTrash.BindTableTwo[comm] then
|
||||
print("Removing", comm, "with no bind from the bind table")
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm] = nil
|
||||
end
|
||||
end
|
||||
elseif e == "UPDATE_BINDS" then
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BindTableTwo) do
|
||||
local command, bind, bind2 = GetBinding(v.index)
|
||||
if bind2 ~= v.bind then
|
||||
--The key should be aura_env.keyBinds[command] but the key is bind2
|
||||
print("Key", command, "has bind", bind2, "but should have", v.bind)
|
||||
if bind2 then SetBinding(bind2) end
|
||||
if v.bind then SetBinding(v.bind, command) end
|
||||
end
|
||||
end
|
||||
SaveBindings(1)
|
||||
elseif e == "UPDATE_BAR_TABLE" then
|
||||
local arg2 = "default"
|
||||
if ... then arg2 = ... end
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable then WeakAurasSaved.CustomTrash.BarTable = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable[arg2] then WeakAurasSaved.CustomTrash.BarTable[arg2] = {} end
|
||||
for i = 1, 72 do
|
||||
PickupAction(i)
|
||||
if GetCursorInfo() then
|
||||
local type = GetCursorInfo()
|
||||
local id, name = nil, nil
|
||||
if not type then WeakAurasSaved.CustomTrash.BarTable[arg2][i] = nil end
|
||||
if type == "spell" then
|
||||
id = select(4, GetCursorInfo())
|
||||
elseif type == "mount" then
|
||||
id = select(2, GetCursorInfo())
|
||||
elseif type == "macro" then
|
||||
id = select(2, GetCursorInfo())
|
||||
name = select(1, GetMacroInfo(id))
|
||||
elseif type == "item" then
|
||||
id = select(2, GetCursorInfo())
|
||||
elseif type == "equipmentset" then
|
||||
name = select(2, GetCursorInfo())
|
||||
end --elseif end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable[arg2][i] then WeakAurasSaved.CustomTrash.BarTable[arg2][i] = {} end
|
||||
if id ~= WeakAurasSaved.CustomTrash.BarTable[arg2][i].id or type ~= WeakAurasSaved.CustomTrash.BarTable[arg2][i].type then
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].type = type
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].id = id
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].name = name
|
||||
if not name then
|
||||
print("Adding", type, "by id", id, "on slot", i, "to the table")
|
||||
elseif name then
|
||||
print("Adding", type, "by id", id, "and name", name, "on slot", i, "to the table")
|
||||
end
|
||||
end
|
||||
end
|
||||
PickupAction(i)
|
||||
end
|
||||
elseif e == "UPDATE_BARS" then
|
||||
local arg2 = "default"
|
||||
if ... then arg2 = ... end
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BarTable[arg2]) do
|
||||
if v.type == "spell" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(4, GetCursorInfo())
|
||||
if id ~= v.id then
|
||||
ClearCursor()
|
||||
PickupSpell(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupSpell(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
elseif v.type == "mount" then
|
||||
local mid, mindex
|
||||
--Looking for mount in mount journal
|
||||
for i = 1, C_MountJournal.GetNumMounts() do
|
||||
mid = select(12, C_MountJournal.GetDisplayedMountInfo(i))
|
||||
local ishave = select(11, C_MountJournal.GetDisplayedMountInfo(i))
|
||||
if mid == v.id then
|
||||
mindex = i
|
||||
break
|
||||
end
|
||||
if ishave == false then
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
--Checking what's on the bar
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
if id ~= v.id and mindex then
|
||||
ClearCursor()
|
||||
C_MountJournal.Pickup(mindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
elseif not GetCursorInfo() and mindex then
|
||||
ClearCursor()
|
||||
C_MountJournal.Pickup(mindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
elseif v.type == "macro" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
local name = select(1, GetMacroInfo(id))
|
||||
if id ~= v.id or name ~= v.name then
|
||||
ClearCursor()
|
||||
PickupMacro(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
local name = GetMacroInfo(v.id)
|
||||
if name == v.name then
|
||||
PickupMacro(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
elseif v.type == "equipmentset" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
local eqindex
|
||||
for i = 1, GetNumEquipmentSets() do
|
||||
local nam = GetEquipmentSetInfo(i)
|
||||
if nam == v.name then
|
||||
eqindex = i
|
||||
break
|
||||
end
|
||||
end
|
||||
if eqindex then
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local name = select(2, GetCursorInfo())
|
||||
if name ~= v.name then
|
||||
ClearCursor()
|
||||
PickupEquipmentSet(eqindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupEquipmentSet(eqindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
elseif v.type == "item" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
local ios, jos
|
||||
for i = 0, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local link = select(7, GetContainerItemInfo(i, j))
|
||||
if link then
|
||||
local id = link:match("item:(%d+):")
|
||||
if id then
|
||||
id = tonumber(id)
|
||||
if id == v.id then
|
||||
ios = i
|
||||
jos = j
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if ios and jos then
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
if id ~= v.id then
|
||||
ClearCursor()
|
||||
PickupContainerItem(ios, jos)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupContainerItem(ios, jos)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
end --elseif end
|
||||
end
|
||||
elseif e == "DELETE_SET" then
|
||||
local arg2 = ...
|
||||
if arg2 and WeakAurasSaved.CustomTrash.BarTable[arg2] then
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2] = nil
|
||||
end
|
||||
elseif e == "LIST_SETS" then
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BarTable) do
|
||||
print(k)
|
||||
end
|
||||
end --elseif end
|
||||
end
|
||||
end
|
||||
--UPDATE_BIND_TABLE UPDATE_BINDS UPDATE_BAR_TABLE UPDATE_BARS DELETE_SET LIST_SETS
|
||||
--[[
|
||||
UPDATE_BIND_TABLE saves current binds
|
||||
UPDATE_BINDS restores saved binds
|
||||
UPDATE_BAR_TABLE saves current bar layout also supports sets
|
||||
UPDATE_BARS restores bar layout; defaults to the "default" set
|
||||
DELETE_SET deletes a specified set
|
||||
LIST_SETS lists all sets
|
||||
DELETE and LIST only work for bar layouts
|
||||
|
||||
|
||||
|
||||
/run WeakAuras.ScanEvents("UPDATE_BINDS")
|
||||
/run WeakAuras.ScanEvents("UPDATE_BIND_TABLE")
|
||||
|
||||
]]
|
||||
function(e, ...)
|
||||
if InCombatLockdown() ~= 1 then
|
||||
if e == "UPDATE_BIND_TABLE" then
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BindTableTwo then WeakAurasSaved.CustomTrash.BindTableTwo = {} end
|
||||
for i = 1, GetNumBindings() do
|
||||
local comm, bind, bind2 = GetBinding(i)
|
||||
if comm and bind2 and not WeakAurasSaved.CustomTrash.BindTableTwo[comm] then
|
||||
print("Adding", comm, "with bind", bind2, "to bind table")
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm] = {}
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm].bind = bind2
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm].index = i
|
||||
end
|
||||
if comm and not bind2 and WeakAurasSaved.CustomTrash.BindTableTwo[comm] then
|
||||
print("Removing", comm, "with no bind from the bind table")
|
||||
WeakAurasSaved.CustomTrash.BindTableTwo[comm] = nil
|
||||
end
|
||||
end
|
||||
elseif e == "UPDATE_BINDS" then
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BindTableTwo) do
|
||||
local command, bind, bind2 = GetBinding(v.index)
|
||||
if bind2 ~= v.bind then
|
||||
--The key should be aura_env.keyBinds[command] but the key is bind2
|
||||
print("Key", command, "has bind", bind2, "but should have", v.bind)
|
||||
if bind2 then SetBinding(bind2) end
|
||||
if v.bind then SetBinding(v.bind, command) end
|
||||
end
|
||||
end
|
||||
SaveBindings(1)
|
||||
elseif e == "UPDATE_BAR_TABLE" then
|
||||
local arg2 = "default"
|
||||
if ... then arg2 = ... end
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable then WeakAurasSaved.CustomTrash.BarTable = {} end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable[arg2] then WeakAurasSaved.CustomTrash.BarTable[arg2] = {} end
|
||||
for i = 1, 72 do
|
||||
PickupAction(i)
|
||||
if GetCursorInfo() then
|
||||
local type = GetCursorInfo()
|
||||
local id, name = nil, nil
|
||||
if not type then WeakAurasSaved.CustomTrash.BarTable[arg2][i] = nil end
|
||||
if type == "spell" then
|
||||
id = select(4, GetCursorInfo())
|
||||
elseif type == "mount" then
|
||||
id = select(2, GetCursorInfo())
|
||||
elseif type == "macro" then
|
||||
id = select(2, GetCursorInfo())
|
||||
name = select(1, GetMacroInfo(id))
|
||||
elseif type == "item" then
|
||||
id = select(2, GetCursorInfo())
|
||||
elseif type == "equipmentset" then
|
||||
name = select(2, GetCursorInfo())
|
||||
end --elseif end
|
||||
if not WeakAurasSaved.CustomTrash.BarTable[arg2][i] then WeakAurasSaved.CustomTrash.BarTable[arg2][i] = {} end
|
||||
if id ~= WeakAurasSaved.CustomTrash.BarTable[arg2][i].id or type ~= WeakAurasSaved.CustomTrash.BarTable[arg2][i].type then
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].type = type
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].id = id
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2][i].name = name
|
||||
if not name then
|
||||
print("Adding", type, "by id", id, "on slot", i, "to the table")
|
||||
elseif name then
|
||||
print("Adding", type, "by id", id, "and name", name, "on slot", i, "to the table")
|
||||
end
|
||||
end
|
||||
end
|
||||
PickupAction(i)
|
||||
end
|
||||
elseif e == "UPDATE_BARS" then
|
||||
local arg2 = "default"
|
||||
if ... then arg2 = ... end
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BarTable[arg2]) do
|
||||
if v.type == "spell" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(4, GetCursorInfo())
|
||||
if id ~= v.id then
|
||||
ClearCursor()
|
||||
PickupSpell(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupSpell(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
elseif v.type == "mount" then
|
||||
local mid, mindex
|
||||
--Looking for mount in mount journal
|
||||
for i = 1, C_MountJournal.GetNumMounts() do
|
||||
mid = select(12, C_MountJournal.GetDisplayedMountInfo(i))
|
||||
local ishave = select(11, C_MountJournal.GetDisplayedMountInfo(i))
|
||||
if mid == v.id then
|
||||
mindex = i
|
||||
break
|
||||
end
|
||||
if ishave == false then
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
--Checking what's on the bar
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
if id ~= v.id and mindex then
|
||||
ClearCursor()
|
||||
C_MountJournal.Pickup(mindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
elseif not GetCursorInfo() and mindex then
|
||||
ClearCursor()
|
||||
C_MountJournal.Pickup(mindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
elseif v.type == "macro" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
local name = select(1, GetMacroInfo(id))
|
||||
if id ~= v.id or name ~= v.name then
|
||||
ClearCursor()
|
||||
PickupMacro(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
local name = GetMacroInfo(v.id)
|
||||
if name == v.name then
|
||||
PickupMacro(v.id)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
elseif v.type == "equipmentset" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
local eqindex
|
||||
for i = 1, GetNumEquipmentSets() do
|
||||
local nam = GetEquipmentSetInfo(i)
|
||||
if nam == v.name then
|
||||
eqindex = i
|
||||
break
|
||||
end
|
||||
end
|
||||
if eqindex then
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local name = select(2, GetCursorInfo())
|
||||
if name ~= v.name then
|
||||
ClearCursor()
|
||||
PickupEquipmentSet(eqindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupEquipmentSet(eqindex)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
elseif v.type == "item" then
|
||||
if GetCursorInfo() then ClearCursor() end
|
||||
local ios, jos
|
||||
for i = 0, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local link = select(7, GetContainerItemInfo(i, j))
|
||||
if link then
|
||||
local id = link:match("item:(%d+):")
|
||||
if id then
|
||||
id = tonumber(id)
|
||||
if id == v.id then
|
||||
ios = i
|
||||
jos = j
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if ios and jos then
|
||||
PickupAction(k)
|
||||
if GetCursorInfo() then
|
||||
local id = select(2, GetCursorInfo())
|
||||
if id ~= v.id then
|
||||
ClearCursor()
|
||||
PickupContainerItem(ios, jos)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
PickupAction(k)
|
||||
else
|
||||
ClearCursor()
|
||||
PickupContainerItem(ios, jos)
|
||||
PickupAction(k)
|
||||
ClearCursor()
|
||||
end
|
||||
end
|
||||
end --elseif end
|
||||
end
|
||||
elseif e == "DELETE_SET" then
|
||||
local arg2 = ...
|
||||
if arg2 and WeakAurasSaved.CustomTrash.BarTable[arg2] then
|
||||
WeakAurasSaved.CustomTrash.BarTable[arg2] = nil
|
||||
end
|
||||
elseif e == "LIST_SETS" then
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.BarTable) do
|
||||
print(k)
|
||||
end
|
||||
end --elseif end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,318 +1,318 @@
|
||||
--UPDATE_MOUSEOVER_UNIT PLAYER_TARGET_CHANGED
|
||||
function()
|
||||
if not UnitExists("target") and UnitExists("mouseover") and UnitIsPlayer("mouseover") then
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
bossKills =
|
||||
{
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
}
|
||||
SetAchievementComparisonUnit("mouseover")
|
||||
end
|
||||
if not UnitExists("mouseover") and UnitExists("target") and UnitIsPlayer("target") then
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
bossKills =
|
||||
{
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
}
|
||||
SetAchievementComparisonUnit("target")
|
||||
end
|
||||
end
|
||||
|
||||
--INSPECT_ACHIEVEMENT_READY
|
||||
function()
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
for k,v in ipairs(aura_env.TOS) do
|
||||
if GetComparisonStatistic(aura_env.TOS[k][1]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][2]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][3]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][4]) ~= "--" then
|
||||
local bossname = select(2, GetAchievementInfo(aura_env.TOS[k][1]))
|
||||
bossname = bossname:match("[a-zA-Z' ]*kills")
|
||||
bossname = bossname:gsub(" kills", "")
|
||||
aura_env.output = aura_env.output .. bossname .. "\n"
|
||||
if GetComparisonStatistic(aura_env.TOS[k][1]) ~= "--" then
|
||||
bossKills[k][1] = GetComparisonStatistic(aura_env.TOS[k][1])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][2]) ~= "--" then
|
||||
bossKills[k][2] = GetComparisonStatistic(aura_env.TOS[k][2])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][3]) ~= "--" then
|
||||
bossKills[k][3] = GetComparisonStatistic(aura_env.TOS[k][3])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][4]) ~= "--" then
|
||||
bossKills[k][4] = GetComparisonStatistic(aura_env.TOS[k][4])
|
||||
end
|
||||
end
|
||||
end
|
||||
ClearAchievementComparisonUnit()
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- RF BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][1]) > 0 then
|
||||
output = output .. bossKills[k][1] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- NM BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][2]) > 0 then
|
||||
output = output .. bossKills[k][2] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- HC BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][3]) > 0 then
|
||||
output = output .. bossKills[k][3] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- Myth BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][4]) > 0 then
|
||||
output = output .. bossKills[k][4] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.TOS =
|
||||
{
|
||||
{ --Goroth
|
||||
11877, -- [1]
|
||||
11878, -- [2]
|
||||
11879, -- [3]
|
||||
11880, -- [4]
|
||||
}, -- [1]
|
||||
{ --Inquisition
|
||||
11881, -- [1]
|
||||
11882, -- [2]
|
||||
11883, -- [3]
|
||||
11884, -- [4]
|
||||
}, -- [2]
|
||||
{ --Harjatan
|
||||
11885, -- [1]
|
||||
11886, -- [2]
|
||||
11887, -- [3]
|
||||
11888, -- [4]
|
||||
}, -- [3]
|
||||
{ --Sisters
|
||||
11889, -- [1]
|
||||
11890, -- [2]
|
||||
11891, -- [3]
|
||||
11892, -- [4]
|
||||
}, -- [4]
|
||||
{ --Mistress
|
||||
11893, -- [1]
|
||||
11894, -- [2]
|
||||
11895, -- [3]
|
||||
11896, -- [4]
|
||||
}, -- [5]
|
||||
{ --Host
|
||||
11897, -- [1]
|
||||
11898, -- [2]
|
||||
11899, -- [3]
|
||||
11900, -- [4]
|
||||
}, -- [6]
|
||||
{ --Maiden
|
||||
11901, -- [1]
|
||||
11902, -- [2]
|
||||
11903, -- [3]
|
||||
11904, -- [4]
|
||||
}, -- [7]
|
||||
{ --Avatar
|
||||
11905, -- [1]
|
||||
11906, -- [2]
|
||||
11907, -- [3]
|
||||
11908, -- [4]
|
||||
}, -- [8]
|
||||
{ --Kil'jaeden
|
||||
11909, -- [1]
|
||||
11910, -- [2]
|
||||
11911, -- [3]
|
||||
11912, -- [4]
|
||||
}, -- [9]
|
||||
}
|
||||
aura_env.NH =
|
||||
{
|
||||
{ --Skorp
|
||||
10940, -- [1]
|
||||
10941, -- [2]
|
||||
10942, -- [3]
|
||||
10943, -- [4]
|
||||
}, -- [1]
|
||||
{ --Anomaly
|
||||
10944, -- [1]
|
||||
10945, -- [2]
|
||||
10946, -- [3]
|
||||
10947, -- [4]
|
||||
}, -- [2]
|
||||
{ --Trilliax
|
||||
10948, -- [1]
|
||||
10949, -- [2]
|
||||
10950, -- [3]
|
||||
10951, -- [4]
|
||||
}, -- [3]
|
||||
{ --Aluriel
|
||||
10952, -- [1]
|
||||
10953, -- [2]
|
||||
10954, -- [3]
|
||||
10955, -- [4]
|
||||
}, -- [4]
|
||||
{ --Augur
|
||||
10956, -- [1]
|
||||
10957, -- [2]
|
||||
10959, -- [3]
|
||||
10960, -- [4]
|
||||
}, -- [5]
|
||||
{ --Botanist
|
||||
10961, -- [1]
|
||||
10962, -- [2]
|
||||
10963, -- [3]
|
||||
10964, -- [4]
|
||||
}, -- [6]
|
||||
{ --Tich
|
||||
10965, -- [1]
|
||||
10966, -- [2]
|
||||
10967, -- [3]
|
||||
10968, -- [4]
|
||||
}, -- [7]
|
||||
{ --Krosus
|
||||
10969, -- [1]
|
||||
10970, -- [2]
|
||||
10971, -- [3]
|
||||
10972, -- [4]
|
||||
}, -- [8]
|
||||
{ --Elisande
|
||||
10973, -- [1]
|
||||
10974, -- [2]
|
||||
10975, -- [3]
|
||||
10976, -- [4]
|
||||
}, -- [9]
|
||||
{ --Gul'dan
|
||||
10977, -- [1]
|
||||
10978, -- [2]
|
||||
10979, -- [3]
|
||||
10980, -- [4]
|
||||
}, -- [10]
|
||||
}
|
||||
--UPDATE_MOUSEOVER_UNIT PLAYER_TARGET_CHANGED
|
||||
function()
|
||||
if not UnitExists("target") and UnitExists("mouseover") and UnitIsPlayer("mouseover") then
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
bossKills =
|
||||
{
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
}
|
||||
SetAchievementComparisonUnit("mouseover")
|
||||
end
|
||||
if not UnitExists("mouseover") and UnitExists("target") and UnitIsPlayer("target") then
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
bossKills =
|
||||
{
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
{
|
||||
[1] = 0,
|
||||
[2] = 0,
|
||||
[3] = 0,
|
||||
[4] = 0
|
||||
},
|
||||
}
|
||||
SetAchievementComparisonUnit("target")
|
||||
end
|
||||
end
|
||||
|
||||
--INSPECT_ACHIEVEMENT_READY
|
||||
function()
|
||||
aura_env.output = "Boss RF NM HC Myth" .. "\n"
|
||||
for k,v in ipairs(aura_env.TOS) do
|
||||
if GetComparisonStatistic(aura_env.TOS[k][1]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][2]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][3]) ~= "--" or GetComparisonStatistic(aura_env.TOS[k][4]) ~= "--" then
|
||||
local bossname = select(2, GetAchievementInfo(aura_env.TOS[k][1]))
|
||||
bossname = bossname:match("[a-zA-Z' ]*kills")
|
||||
bossname = bossname:gsub(" kills", "")
|
||||
aura_env.output = aura_env.output .. bossname .. "\n"
|
||||
if GetComparisonStatistic(aura_env.TOS[k][1]) ~= "--" then
|
||||
bossKills[k][1] = GetComparisonStatistic(aura_env.TOS[k][1])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][2]) ~= "--" then
|
||||
bossKills[k][2] = GetComparisonStatistic(aura_env.TOS[k][2])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][3]) ~= "--" then
|
||||
bossKills[k][3] = GetComparisonStatistic(aura_env.TOS[k][3])
|
||||
end
|
||||
if GetComparisonStatistic(aura_env.TOS[k][4]) ~= "--" then
|
||||
bossKills[k][4] = GetComparisonStatistic(aura_env.TOS[k][4])
|
||||
end
|
||||
end
|
||||
end
|
||||
ClearAchievementComparisonUnit()
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- RF BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][1]) > 0 then
|
||||
output = output .. bossKills[k][1] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- NM BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][2]) > 0 then
|
||||
output = output .. bossKills[k][2] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- HC BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][3]) > 0 then
|
||||
output = output .. bossKills[k][3] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--WEAKAURA 2 DISPLAY -- Myth BOSSES
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(bossKills) do
|
||||
if tonumber(bossKills[k][4]) > 0 then
|
||||
output = output .. bossKills[k][4] .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.TOS =
|
||||
{
|
||||
{ --Goroth
|
||||
11877, -- [1]
|
||||
11878, -- [2]
|
||||
11879, -- [3]
|
||||
11880, -- [4]
|
||||
}, -- [1]
|
||||
{ --Inquisition
|
||||
11881, -- [1]
|
||||
11882, -- [2]
|
||||
11883, -- [3]
|
||||
11884, -- [4]
|
||||
}, -- [2]
|
||||
{ --Harjatan
|
||||
11885, -- [1]
|
||||
11886, -- [2]
|
||||
11887, -- [3]
|
||||
11888, -- [4]
|
||||
}, -- [3]
|
||||
{ --Sisters
|
||||
11889, -- [1]
|
||||
11890, -- [2]
|
||||
11891, -- [3]
|
||||
11892, -- [4]
|
||||
}, -- [4]
|
||||
{ --Mistress
|
||||
11893, -- [1]
|
||||
11894, -- [2]
|
||||
11895, -- [3]
|
||||
11896, -- [4]
|
||||
}, -- [5]
|
||||
{ --Host
|
||||
11897, -- [1]
|
||||
11898, -- [2]
|
||||
11899, -- [3]
|
||||
11900, -- [4]
|
||||
}, -- [6]
|
||||
{ --Maiden
|
||||
11901, -- [1]
|
||||
11902, -- [2]
|
||||
11903, -- [3]
|
||||
11904, -- [4]
|
||||
}, -- [7]
|
||||
{ --Avatar
|
||||
11905, -- [1]
|
||||
11906, -- [2]
|
||||
11907, -- [3]
|
||||
11908, -- [4]
|
||||
}, -- [8]
|
||||
{ --Kil'jaeden
|
||||
11909, -- [1]
|
||||
11910, -- [2]
|
||||
11911, -- [3]
|
||||
11912, -- [4]
|
||||
}, -- [9]
|
||||
}
|
||||
aura_env.NH =
|
||||
{
|
||||
{ --Skorp
|
||||
10940, -- [1]
|
||||
10941, -- [2]
|
||||
10942, -- [3]
|
||||
10943, -- [4]
|
||||
}, -- [1]
|
||||
{ --Anomaly
|
||||
10944, -- [1]
|
||||
10945, -- [2]
|
||||
10946, -- [3]
|
||||
10947, -- [4]
|
||||
}, -- [2]
|
||||
{ --Trilliax
|
||||
10948, -- [1]
|
||||
10949, -- [2]
|
||||
10950, -- [3]
|
||||
10951, -- [4]
|
||||
}, -- [3]
|
||||
{ --Aluriel
|
||||
10952, -- [1]
|
||||
10953, -- [2]
|
||||
10954, -- [3]
|
||||
10955, -- [4]
|
||||
}, -- [4]
|
||||
{ --Augur
|
||||
10956, -- [1]
|
||||
10957, -- [2]
|
||||
10959, -- [3]
|
||||
10960, -- [4]
|
||||
}, -- [5]
|
||||
{ --Botanist
|
||||
10961, -- [1]
|
||||
10962, -- [2]
|
||||
10963, -- [3]
|
||||
10964, -- [4]
|
||||
}, -- [6]
|
||||
{ --Tich
|
||||
10965, -- [1]
|
||||
10966, -- [2]
|
||||
10967, -- [3]
|
||||
10968, -- [4]
|
||||
}, -- [7]
|
||||
{ --Krosus
|
||||
10969, -- [1]
|
||||
10970, -- [2]
|
||||
10971, -- [3]
|
||||
10972, -- [4]
|
||||
}, -- [8]
|
||||
{ --Elisande
|
||||
10973, -- [1]
|
||||
10974, -- [2]
|
||||
10975, -- [3]
|
||||
10976, -- [4]
|
||||
}, -- [9]
|
||||
{ --Gul'dan
|
||||
10977, -- [1]
|
||||
10978, -- [2]
|
||||
10979, -- [3]
|
||||
10980, -- [4]
|
||||
}, -- [10]
|
||||
}
|
||||
aura_env.output = ""
|
||||
@@ -1,9 +1,9 @@
|
||||
function()
|
||||
local seeds = 0
|
||||
for i = 1, 100 do
|
||||
if UnitDebuff("nameplate" .. i, "Seed of Corruption") then
|
||||
seeds = seeds + 1
|
||||
end
|
||||
end
|
||||
return seeds
|
||||
function()
|
||||
local seeds = 0
|
||||
for i = 1, 100 do
|
||||
if UnitDebuff("nameplate" .. i, "Seed of Corruption") then
|
||||
seeds = seeds + 1
|
||||
end
|
||||
end
|
||||
return seeds
|
||||
end
|
||||
@@ -1,305 +1,305 @@
|
||||
--QUEST_ACCEPTED QUEST_TURNED_IN
|
||||
function(e)
|
||||
for k, v in ipairs(aura_env.questDatabase) do
|
||||
if IsQuestFlaggedCompleted(v) == false then
|
||||
--print(aura_env.TESTCOMPLETION[k])
|
||||
--if aura_env.TESTCOMPLETION[k] == false then
|
||||
--print(k, IsQuestFlaggedCompleted(v))
|
||||
if k < 36 or k > 37 then
|
||||
aura_env.currentQuest = k
|
||||
break
|
||||
elseif (k == 36 and IsQuestFlaggedCompleted(aura_env.questDatabase[37]) == true) or (k == 37 and IsQuestFlaggedCompleted(aura_env.questDatabase[36]) == true) then
|
||||
--elseif (k == 36 and aura_env.TESTCOMPLETION[37] == true) or (k == 37 and aura_env.TESTCOMPLETION[36] == true) then
|
||||
k = 38
|
||||
end
|
||||
end
|
||||
end
|
||||
--print(aura_env.currentQuest)
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.currentQuest < 89 then
|
||||
return "Progress: " .. aura_env.currentQuest .. "/" .. #aura_env.questDatabase .. "\nCurrent quest: " .. aura_env.questNames[aura_env.currentQuest] .. "\nNext Quest: " .. aura_env.questNames[aura_env.currentQuest + 1]
|
||||
else
|
||||
return "Progress: " .. aura_env.currentQuest .. "/" .. #aura_env.questDatabase .. "\nCurrent quest: " .. aura_env.questNames[aura_env.currentQuest]
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.currentQuest = 1
|
||||
aura_env.questDatabase = {
|
||||
[1] = 47835,
|
||||
[2] = 47867,
|
||||
[3] = 47223,
|
||||
[4] = 47224,
|
||||
[5] = 48440,
|
||||
[6] = 46938,
|
||||
[7] = 47589,
|
||||
[8] = 46297,
|
||||
[9] = 48483,
|
||||
[10] = 47627,
|
||||
[11] = 47641,
|
||||
[12] = 46732,
|
||||
[13] = 46816,
|
||||
[14] = 46839,
|
||||
[15] = 46840,
|
||||
[16] = 46841,
|
||||
[17] = 46842,
|
||||
[18] = 46843,
|
||||
[19] = 48500,
|
||||
[20] = 47431,
|
||||
[21] = 46213,
|
||||
[22] = 40238,
|
||||
[23] = 47541,
|
||||
[24] = 47508,
|
||||
[25] = 47771,
|
||||
[26] = 47526,
|
||||
[27] = 47754,
|
||||
[28] = 47652,
|
||||
[29] = 47653,
|
||||
[30] = 47743,
|
||||
[31] = 49143,
|
||||
[32] = 47287,
|
||||
[33] = 48559,
|
||||
[34] = 48199,
|
||||
[35] = 48200,
|
||||
[36] = 48201,
|
||||
[37] = 48202,
|
||||
[38] = 47473,
|
||||
[39] = 47889,
|
||||
[40] = 47890,
|
||||
[41] = 47891,
|
||||
[42] = 47892,
|
||||
[43] = 47986,
|
||||
[44] = 47987,
|
||||
[45] = 47988,
|
||||
[46] = 47991,
|
||||
[47] = 47990,
|
||||
[48] = 47989,
|
||||
[49] = 47992,
|
||||
[50] = 47993,
|
||||
[51] = 47994,
|
||||
[52] = 48081,
|
||||
[53] = 46815,
|
||||
[54] = 46818,
|
||||
[55] = 46834,
|
||||
[56] = 47066,
|
||||
[57] = 46941,
|
||||
[58] = 47686,
|
||||
[59] = 47882,
|
||||
[60] = 47688,
|
||||
[61] = 47883,
|
||||
[62] = 47689,
|
||||
[63] = 47685,
|
||||
[64] = 47687,
|
||||
[65] = 47690,
|
||||
[66] = 48107,
|
||||
[67] = 48461,
|
||||
[68] = 48344,
|
||||
[69] = 47691,
|
||||
[70] = 47854,
|
||||
[71] = 47995,
|
||||
[72] = 47853,
|
||||
[73] = 48345,
|
||||
[74] = 47855,
|
||||
[75] = 47856,
|
||||
[76] = 47416,
|
||||
[77] = 47238,
|
||||
[78] = 40761,
|
||||
[79] = 47101,
|
||||
[80] = 47180,
|
||||
[81] = 47100,
|
||||
[82] = 47183,
|
||||
[83] = 47184,
|
||||
[84] = 47203,
|
||||
[85] = 47217,
|
||||
[86] = 47218,
|
||||
[87] = 47219,
|
||||
[88] = 47220,
|
||||
[89] = 48560,
|
||||
}
|
||||
aura_env.questNames = {
|
||||
[1] = "The Hand of Fate",
|
||||
[2] = "Two If By Sea",
|
||||
[3] = "Light's Exodus",
|
||||
[4] = "The Vindicaar",
|
||||
[5] = "Into the Night",
|
||||
[6] = "Alone in the Abyss",
|
||||
[7] = "Righteous Fury",
|
||||
[8] = "Overwhelming Power",
|
||||
[9] = "A Stranger's Plea",
|
||||
[10] = "Vengeance",
|
||||
[11] = "Sign of Resistance",
|
||||
[12] = "The Prophet's Gambit",
|
||||
[13] = "Rendezvous",
|
||||
[14] = "From Darkness",
|
||||
[15] = "Prisoners No More",
|
||||
[16] = "Threat Reduction",
|
||||
[17] = "A Strike at the Heart",
|
||||
[18] = "Return to the Vindicaar",
|
||||
[19] = "A Moment of Respite",
|
||||
[20] = "Gathering Light",
|
||||
[21] = "Crystals Not Included",
|
||||
[22] = "A Grim Equation",
|
||||
[23] = "The Best Prevention",
|
||||
[24] = "Fire at Will",
|
||||
[25] = "Locating the Longshot",
|
||||
[26] = "Bringing the Big Guns",
|
||||
[27] = "Lightly Roasted",
|
||||
[28] = "The Light Mother",
|
||||
[29] = "Light's Return",
|
||||
[30] = "The Child of Light and Shadow",
|
||||
[31] = "Essence of the Light Mother",
|
||||
[32] = "The Vindicaar Matrix Core",
|
||||
[33] = "An Offering of Light",
|
||||
[34] = "The Burning Heart",
|
||||
[35] = "Securing a Foothold",
|
||||
[36] = "Reinforce Light's Purchase",
|
||||
[37] = "Reinforce the Veiled Den",
|
||||
[38] = "Sizing Up The Opposition",
|
||||
[39] = "The Speaker Calls",
|
||||
[40] = "Visions of Torment",
|
||||
[41] = "Dire News",
|
||||
[42] = "Storming the Citadel",
|
||||
[43] = "Scars of the Past",
|
||||
[44] = "Preventive Measures",
|
||||
[45] = "Chaos Theory",
|
||||
[46] = "Dark Machinations",
|
||||
[47] = "A Touch of Fel",
|
||||
[48] = "Heralds of Apocalypse",
|
||||
[49] = "Dawn of Justice",
|
||||
[50] = "Lord of the Spire",
|
||||
[51] = "Forming a Bond",
|
||||
[52] = "A Floating Ruin",
|
||||
[53] = "Mac'Aree, Jewel of Argus",
|
||||
[54] = "Defenseless and Afraid",
|
||||
[55] = "Khazaduum, First of His Name",
|
||||
[56] = "Consecrating Ground",
|
||||
[57] = "The Path Forward",
|
||||
[58] = "Not-So-Humble Beginnings",
|
||||
[59] = "Conservation of Magic",
|
||||
[60] = "Invasive Species",
|
||||
[61] = "The Longest Vigil",
|
||||
[62] = "Gatekeeper's Challenge: Tenacity",
|
||||
[63] = "Gatekeeper's Challenge: Cunning",
|
||||
[64] = "Gatekeeper's Challenge: Mastery",
|
||||
[65] = "The Defiler's Legacy",
|
||||
[66] = "The Sigil of Awakening",
|
||||
[67] = "Where They Least Expect It",
|
||||
[68] = "We Have a Problem",
|
||||
[69] = "A Non-Prophet Organization",
|
||||
[70] = "Wrath of the Hight Exarch",
|
||||
[71] = "Overt Ops",
|
||||
[72] = "Flanking Maneuvers",
|
||||
[73] = "Talgath's Forces",
|
||||
[74] = "What Might Have Been",
|
||||
[75] = "Across the Universe",
|
||||
[76] = "Shadow of the Triumvirate",
|
||||
[77] = "The Seat of the Triumvirate",
|
||||
[78] = "Whispers from Oronaar",
|
||||
[79] = "Arkhaan's Prayers",
|
||||
[80] = "The Pulsing Madness",
|
||||
[81] = "Arkhaan's Pain",
|
||||
[82] = "Arkhaan's Plan",
|
||||
[83] = "Arkhaan's Peril",
|
||||
[84] = "Throwing Shade",
|
||||
[85] = "Sources of Darkness",
|
||||
[86] = "The Shadowguard Incursion",
|
||||
[87] = "A Vessel Made Ready",
|
||||
[88] = "A Beacon in the Dark",
|
||||
[89] = "An Offering of Shadow",
|
||||
}
|
||||
aura_env.TESTCOMPLETION = {
|
||||
[1] = true,
|
||||
[2] = true,
|
||||
[3] = true,
|
||||
[4] = true,
|
||||
[5] = true,
|
||||
[6] = true,
|
||||
[7] = true,
|
||||
[8] = true,
|
||||
[9] = true,
|
||||
[10] = true,
|
||||
[11] = true,
|
||||
[12] = true,
|
||||
[13] = true,
|
||||
[14] = true,
|
||||
[15] = true,
|
||||
[16] = true,
|
||||
[17] = true,
|
||||
[18] = true,
|
||||
[19] = true,
|
||||
[20] = true,
|
||||
[21] = true,
|
||||
[22] = true,
|
||||
[23] = true,
|
||||
[24] = true,
|
||||
[25] = true,
|
||||
[26] = true,
|
||||
[27] = true,
|
||||
[28] = true,
|
||||
[29] = true,
|
||||
[30] = true,
|
||||
[31] = true,
|
||||
[32] = true,
|
||||
[33] = true,
|
||||
[34] = true,
|
||||
[35] = true,
|
||||
[36] = false,
|
||||
[37] = true,
|
||||
[38] = true,
|
||||
[39] = true,
|
||||
[40] = true,
|
||||
[41] = true,
|
||||
[42] = true,
|
||||
[43] = true,
|
||||
[44] = true,
|
||||
[45] = true,
|
||||
[46] = true,
|
||||
[47] = true,
|
||||
[48] = true,
|
||||
[49] = false,
|
||||
[50] = false,
|
||||
[51] = false,
|
||||
[52] = false,
|
||||
[53] = false,
|
||||
[54] = false,
|
||||
[55] = false,
|
||||
[56] = false,
|
||||
[57] = false,
|
||||
[58] = false,
|
||||
[59] = false,
|
||||
[60] = false,
|
||||
[61] = false,
|
||||
[62] = false,
|
||||
[63] = false,
|
||||
[64] = false,
|
||||
[65] = false,
|
||||
[66] = false,
|
||||
[67] = false,
|
||||
[68] = false,
|
||||
[69] = false,
|
||||
[70] = false,
|
||||
[71] = false,
|
||||
[72] = false,
|
||||
[73] = false,
|
||||
[74] = false,
|
||||
[75] = false,
|
||||
[76] = false,
|
||||
[77] = false,
|
||||
[78] = false,
|
||||
[79] = false,
|
||||
[80] = false,
|
||||
[81] = false,
|
||||
[82] = false,
|
||||
[83] = false,
|
||||
[84] = false,
|
||||
[85] = false,
|
||||
[86] = false,
|
||||
[87] = false,
|
||||
[88] = false,
|
||||
[89] = false,
|
||||
}
|
||||
WeakAuras.ScanEvents("QUEST_TURNED_IN")
|
||||
--QUEST_ACCEPTED QUEST_TURNED_IN
|
||||
function(e)
|
||||
for k, v in ipairs(aura_env.questDatabase) do
|
||||
if IsQuestFlaggedCompleted(v) == false then
|
||||
--print(aura_env.TESTCOMPLETION[k])
|
||||
--if aura_env.TESTCOMPLETION[k] == false then
|
||||
--print(k, IsQuestFlaggedCompleted(v))
|
||||
if k < 36 or k > 37 then
|
||||
aura_env.currentQuest = k
|
||||
break
|
||||
elseif (k == 36 and IsQuestFlaggedCompleted(aura_env.questDatabase[37]) == true) or (k == 37 and IsQuestFlaggedCompleted(aura_env.questDatabase[36]) == true) then
|
||||
--elseif (k == 36 and aura_env.TESTCOMPLETION[37] == true) or (k == 37 and aura_env.TESTCOMPLETION[36] == true) then
|
||||
k = 38
|
||||
end
|
||||
end
|
||||
end
|
||||
--print(aura_env.currentQuest)
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.currentQuest < 89 then
|
||||
return "Progress: " .. aura_env.currentQuest .. "/" .. #aura_env.questDatabase .. "\nCurrent quest: " .. aura_env.questNames[aura_env.currentQuest] .. "\nNext Quest: " .. aura_env.questNames[aura_env.currentQuest + 1]
|
||||
else
|
||||
return "Progress: " .. aura_env.currentQuest .. "/" .. #aura_env.questDatabase .. "\nCurrent quest: " .. aura_env.questNames[aura_env.currentQuest]
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.currentQuest = 1
|
||||
aura_env.questDatabase = {
|
||||
[1] = 47835,
|
||||
[2] = 47867,
|
||||
[3] = 47223,
|
||||
[4] = 47224,
|
||||
[5] = 48440,
|
||||
[6] = 46938,
|
||||
[7] = 47589,
|
||||
[8] = 46297,
|
||||
[9] = 48483,
|
||||
[10] = 47627,
|
||||
[11] = 47641,
|
||||
[12] = 46732,
|
||||
[13] = 46816,
|
||||
[14] = 46839,
|
||||
[15] = 46840,
|
||||
[16] = 46841,
|
||||
[17] = 46842,
|
||||
[18] = 46843,
|
||||
[19] = 48500,
|
||||
[20] = 47431,
|
||||
[21] = 46213,
|
||||
[22] = 40238,
|
||||
[23] = 47541,
|
||||
[24] = 47508,
|
||||
[25] = 47771,
|
||||
[26] = 47526,
|
||||
[27] = 47754,
|
||||
[28] = 47652,
|
||||
[29] = 47653,
|
||||
[30] = 47743,
|
||||
[31] = 49143,
|
||||
[32] = 47287,
|
||||
[33] = 48559,
|
||||
[34] = 48199,
|
||||
[35] = 48200,
|
||||
[36] = 48201,
|
||||
[37] = 48202,
|
||||
[38] = 47473,
|
||||
[39] = 47889,
|
||||
[40] = 47890,
|
||||
[41] = 47891,
|
||||
[42] = 47892,
|
||||
[43] = 47986,
|
||||
[44] = 47987,
|
||||
[45] = 47988,
|
||||
[46] = 47991,
|
||||
[47] = 47990,
|
||||
[48] = 47989,
|
||||
[49] = 47992,
|
||||
[50] = 47993,
|
||||
[51] = 47994,
|
||||
[52] = 48081,
|
||||
[53] = 46815,
|
||||
[54] = 46818,
|
||||
[55] = 46834,
|
||||
[56] = 47066,
|
||||
[57] = 46941,
|
||||
[58] = 47686,
|
||||
[59] = 47882,
|
||||
[60] = 47688,
|
||||
[61] = 47883,
|
||||
[62] = 47689,
|
||||
[63] = 47685,
|
||||
[64] = 47687,
|
||||
[65] = 47690,
|
||||
[66] = 48107,
|
||||
[67] = 48461,
|
||||
[68] = 48344,
|
||||
[69] = 47691,
|
||||
[70] = 47854,
|
||||
[71] = 47995,
|
||||
[72] = 47853,
|
||||
[73] = 48345,
|
||||
[74] = 47855,
|
||||
[75] = 47856,
|
||||
[76] = 47416,
|
||||
[77] = 47238,
|
||||
[78] = 40761,
|
||||
[79] = 47101,
|
||||
[80] = 47180,
|
||||
[81] = 47100,
|
||||
[82] = 47183,
|
||||
[83] = 47184,
|
||||
[84] = 47203,
|
||||
[85] = 47217,
|
||||
[86] = 47218,
|
||||
[87] = 47219,
|
||||
[88] = 47220,
|
||||
[89] = 48560,
|
||||
}
|
||||
aura_env.questNames = {
|
||||
[1] = "The Hand of Fate",
|
||||
[2] = "Two If By Sea",
|
||||
[3] = "Light's Exodus",
|
||||
[4] = "The Vindicaar",
|
||||
[5] = "Into the Night",
|
||||
[6] = "Alone in the Abyss",
|
||||
[7] = "Righteous Fury",
|
||||
[8] = "Overwhelming Power",
|
||||
[9] = "A Stranger's Plea",
|
||||
[10] = "Vengeance",
|
||||
[11] = "Sign of Resistance",
|
||||
[12] = "The Prophet's Gambit",
|
||||
[13] = "Rendezvous",
|
||||
[14] = "From Darkness",
|
||||
[15] = "Prisoners No More",
|
||||
[16] = "Threat Reduction",
|
||||
[17] = "A Strike at the Heart",
|
||||
[18] = "Return to the Vindicaar",
|
||||
[19] = "A Moment of Respite",
|
||||
[20] = "Gathering Light",
|
||||
[21] = "Crystals Not Included",
|
||||
[22] = "A Grim Equation",
|
||||
[23] = "The Best Prevention",
|
||||
[24] = "Fire at Will",
|
||||
[25] = "Locating the Longshot",
|
||||
[26] = "Bringing the Big Guns",
|
||||
[27] = "Lightly Roasted",
|
||||
[28] = "The Light Mother",
|
||||
[29] = "Light's Return",
|
||||
[30] = "The Child of Light and Shadow",
|
||||
[31] = "Essence of the Light Mother",
|
||||
[32] = "The Vindicaar Matrix Core",
|
||||
[33] = "An Offering of Light",
|
||||
[34] = "The Burning Heart",
|
||||
[35] = "Securing a Foothold",
|
||||
[36] = "Reinforce Light's Purchase",
|
||||
[37] = "Reinforce the Veiled Den",
|
||||
[38] = "Sizing Up The Opposition",
|
||||
[39] = "The Speaker Calls",
|
||||
[40] = "Visions of Torment",
|
||||
[41] = "Dire News",
|
||||
[42] = "Storming the Citadel",
|
||||
[43] = "Scars of the Past",
|
||||
[44] = "Preventive Measures",
|
||||
[45] = "Chaos Theory",
|
||||
[46] = "Dark Machinations",
|
||||
[47] = "A Touch of Fel",
|
||||
[48] = "Heralds of Apocalypse",
|
||||
[49] = "Dawn of Justice",
|
||||
[50] = "Lord of the Spire",
|
||||
[51] = "Forming a Bond",
|
||||
[52] = "A Floating Ruin",
|
||||
[53] = "Mac'Aree, Jewel of Argus",
|
||||
[54] = "Defenseless and Afraid",
|
||||
[55] = "Khazaduum, First of His Name",
|
||||
[56] = "Consecrating Ground",
|
||||
[57] = "The Path Forward",
|
||||
[58] = "Not-So-Humble Beginnings",
|
||||
[59] = "Conservation of Magic",
|
||||
[60] = "Invasive Species",
|
||||
[61] = "The Longest Vigil",
|
||||
[62] = "Gatekeeper's Challenge: Tenacity",
|
||||
[63] = "Gatekeeper's Challenge: Cunning",
|
||||
[64] = "Gatekeeper's Challenge: Mastery",
|
||||
[65] = "The Defiler's Legacy",
|
||||
[66] = "The Sigil of Awakening",
|
||||
[67] = "Where They Least Expect It",
|
||||
[68] = "We Have a Problem",
|
||||
[69] = "A Non-Prophet Organization",
|
||||
[70] = "Wrath of the Hight Exarch",
|
||||
[71] = "Overt Ops",
|
||||
[72] = "Flanking Maneuvers",
|
||||
[73] = "Talgath's Forces",
|
||||
[74] = "What Might Have Been",
|
||||
[75] = "Across the Universe",
|
||||
[76] = "Shadow of the Triumvirate",
|
||||
[77] = "The Seat of the Triumvirate",
|
||||
[78] = "Whispers from Oronaar",
|
||||
[79] = "Arkhaan's Prayers",
|
||||
[80] = "The Pulsing Madness",
|
||||
[81] = "Arkhaan's Pain",
|
||||
[82] = "Arkhaan's Plan",
|
||||
[83] = "Arkhaan's Peril",
|
||||
[84] = "Throwing Shade",
|
||||
[85] = "Sources of Darkness",
|
||||
[86] = "The Shadowguard Incursion",
|
||||
[87] = "A Vessel Made Ready",
|
||||
[88] = "A Beacon in the Dark",
|
||||
[89] = "An Offering of Shadow",
|
||||
}
|
||||
aura_env.TESTCOMPLETION = {
|
||||
[1] = true,
|
||||
[2] = true,
|
||||
[3] = true,
|
||||
[4] = true,
|
||||
[5] = true,
|
||||
[6] = true,
|
||||
[7] = true,
|
||||
[8] = true,
|
||||
[9] = true,
|
||||
[10] = true,
|
||||
[11] = true,
|
||||
[12] = true,
|
||||
[13] = true,
|
||||
[14] = true,
|
||||
[15] = true,
|
||||
[16] = true,
|
||||
[17] = true,
|
||||
[18] = true,
|
||||
[19] = true,
|
||||
[20] = true,
|
||||
[21] = true,
|
||||
[22] = true,
|
||||
[23] = true,
|
||||
[24] = true,
|
||||
[25] = true,
|
||||
[26] = true,
|
||||
[27] = true,
|
||||
[28] = true,
|
||||
[29] = true,
|
||||
[30] = true,
|
||||
[31] = true,
|
||||
[32] = true,
|
||||
[33] = true,
|
||||
[34] = true,
|
||||
[35] = true,
|
||||
[36] = false,
|
||||
[37] = true,
|
||||
[38] = true,
|
||||
[39] = true,
|
||||
[40] = true,
|
||||
[41] = true,
|
||||
[42] = true,
|
||||
[43] = true,
|
||||
[44] = true,
|
||||
[45] = true,
|
||||
[46] = true,
|
||||
[47] = true,
|
||||
[48] = true,
|
||||
[49] = false,
|
||||
[50] = false,
|
||||
[51] = false,
|
||||
[52] = false,
|
||||
[53] = false,
|
||||
[54] = false,
|
||||
[55] = false,
|
||||
[56] = false,
|
||||
[57] = false,
|
||||
[58] = false,
|
||||
[59] = false,
|
||||
[60] = false,
|
||||
[61] = false,
|
||||
[62] = false,
|
||||
[63] = false,
|
||||
[64] = false,
|
||||
[65] = false,
|
||||
[66] = false,
|
||||
[67] = false,
|
||||
[68] = false,
|
||||
[69] = false,
|
||||
[70] = false,
|
||||
[71] = false,
|
||||
[72] = false,
|
||||
[73] = false,
|
||||
[74] = false,
|
||||
[75] = false,
|
||||
[76] = false,
|
||||
[77] = false,
|
||||
[78] = false,
|
||||
[79] = false,
|
||||
[80] = false,
|
||||
[81] = false,
|
||||
[82] = false,
|
||||
[83] = false,
|
||||
[84] = false,
|
||||
[85] = false,
|
||||
[86] = false,
|
||||
[87] = false,
|
||||
[88] = false,
|
||||
[89] = false,
|
||||
}
|
||||
WeakAuras.ScanEvents("QUEST_TURNED_IN")
|
||||
|
||||
@@ -1,56 +1,56 @@
|
||||
--make auto attack speed predictor thing please
|
||||
--COMBAT_LOG_EVENT_UNFILTERED PLAYER_REGEN_DISABLED PLAYER_REGEN_ENABLED
|
||||
function(allstates, e, ...)
|
||||
if e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local time = debugprofilestop()
|
||||
local subevent = select(2, ...)
|
||||
if subevent == "SWING_DAMAGE" or subevent == "SWING_MISSED" then
|
||||
local source = select(4, ...)
|
||||
local destination = select(9, ...)
|
||||
if source == UnitGUID("target") and destination == UnitName("player") then
|
||||
if #aura_env.swings == aura_env.lines * 2 then
|
||||
for k,v in ipairs(aura_env.swings) do
|
||||
if k > 1 then
|
||||
aura_env.swings[k - 1] = v
|
||||
end
|
||||
end
|
||||
table.remove(aura_env.swings, (aura_env.lines * 2))
|
||||
table.insert(aura_env.swings, time)
|
||||
else
|
||||
table.insert(aura_env.swings, time)
|
||||
end
|
||||
local avgTime = 0
|
||||
for k,v in ipairs(aura_env.swings) do
|
||||
if k > 1 then
|
||||
if avgTime == 0 then
|
||||
avgTime = aura_env.swings[k] - aura_env.swings[k - 1]
|
||||
else
|
||||
avgTime = (avgTime + (aura_env.swings[k] - aura_env.swings[k - 1])) / 2
|
||||
end
|
||||
end
|
||||
end
|
||||
allstates[1] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "timed",
|
||||
avgTime = string.format("%.2f", avgTime / 1000),
|
||||
expirationTime = GetTime() + (avgTime / 1000),
|
||||
duration = avgTime / 1000,
|
||||
}
|
||||
print("return true", allstates[1].expirationTime, allstates[1].duration)
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "PLAYER_REGEN_DISABLED" or e == "PLAYER_REGEN_ENABLED" then
|
||||
aura_env.swings = {}
|
||||
if allstates[1] then
|
||||
allstates[1].show = false
|
||||
allstates[1].changed = true
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.swings = {}
|
||||
--make auto attack speed predictor thing please
|
||||
--COMBAT_LOG_EVENT_UNFILTERED PLAYER_REGEN_DISABLED PLAYER_REGEN_ENABLED
|
||||
function(allstates, e, ...)
|
||||
if e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local time = debugprofilestop()
|
||||
local subevent = select(2, ...)
|
||||
if subevent == "SWING_DAMAGE" or subevent == "SWING_MISSED" then
|
||||
local source = select(4, ...)
|
||||
local destination = select(9, ...)
|
||||
if source == UnitGUID("target") and destination == UnitName("player") then
|
||||
if #aura_env.swings == aura_env.lines * 2 then
|
||||
for k,v in ipairs(aura_env.swings) do
|
||||
if k > 1 then
|
||||
aura_env.swings[k - 1] = v
|
||||
end
|
||||
end
|
||||
table.remove(aura_env.swings, (aura_env.lines * 2))
|
||||
table.insert(aura_env.swings, time)
|
||||
else
|
||||
table.insert(aura_env.swings, time)
|
||||
end
|
||||
local avgTime = 0
|
||||
for k,v in ipairs(aura_env.swings) do
|
||||
if k > 1 then
|
||||
if avgTime == 0 then
|
||||
avgTime = aura_env.swings[k] - aura_env.swings[k - 1]
|
||||
else
|
||||
avgTime = (avgTime + (aura_env.swings[k] - aura_env.swings[k - 1])) / 2
|
||||
end
|
||||
end
|
||||
end
|
||||
allstates[1] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "timed",
|
||||
avgTime = string.format("%.2f", avgTime / 1000),
|
||||
expirationTime = GetTime() + (avgTime / 1000),
|
||||
duration = avgTime / 1000,
|
||||
}
|
||||
print("return true", allstates[1].expirationTime, allstates[1].duration)
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "PLAYER_REGEN_DISABLED" or e == "PLAYER_REGEN_ENABLED" then
|
||||
aura_env.swings = {}
|
||||
if allstates[1] then
|
||||
allstates[1].show = false
|
||||
allstates[1].changed = true
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.swings = {}
|
||||
aura_env.lines = 2
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,40 +1,40 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.output
|
||||
end
|
||||
|
||||
--Try SPELL_RESSURECT -- RESSURECT event??
|
||||
--UNIT_HEALTH
|
||||
function()
|
||||
local healthP = 0
|
||||
local aliveMembers = GetNumGroupMembers()
|
||||
if IsInRaid("player") == true then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitIsDeadOrGhost("raid" .. i) == false and UnitIsConnected("raid" .. i) == true then
|
||||
healthP = healthP + math.floor(UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("raid" .. i) == true or UnitIsConnected("raid" .. i) == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
else
|
||||
for i = 1, GetNumGroupMembers() - 1 do
|
||||
if UnitIsDeadOrGhost("party" .. i) == false and UnitIsConnected("party" .. i) == true then
|
||||
healthP = healthP + math.floor(UnitHealth("party" .. i) / UnitHealthMax("party" .. i) * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("party" .. i) == true or UnitIsConnected("party" .. i) == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") == false and UnitIsConnected("player") == true then
|
||||
healthP = healthP + math.floor(UnitHealth("player") / UnitHealthMax("player") * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") == true or UnitIsConnected("player") == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
aura_env.output = math.floor(healthP / aliveMembers * 100) / 100 .. "%%"
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = 0
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.output
|
||||
end
|
||||
|
||||
--Try SPELL_RESSURECT -- RESSURECT event??
|
||||
--UNIT_HEALTH
|
||||
function()
|
||||
local healthP = 0
|
||||
local aliveMembers = GetNumGroupMembers()
|
||||
if IsInRaid("player") == true then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitIsDeadOrGhost("raid" .. i) == false and UnitIsConnected("raid" .. i) == true then
|
||||
healthP = healthP + math.floor(UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("raid" .. i) == true or UnitIsConnected("raid" .. i) == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
else
|
||||
for i = 1, GetNumGroupMembers() - 1 do
|
||||
if UnitIsDeadOrGhost("party" .. i) == false and UnitIsConnected("party" .. i) == true then
|
||||
healthP = healthP + math.floor(UnitHealth("party" .. i) / UnitHealthMax("party" .. i) * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("party" .. i) == true or UnitIsConnected("party" .. i) == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") == false and UnitIsConnected("player") == true then
|
||||
healthP = healthP + math.floor(UnitHealth("player") / UnitHealthMax("player") * 10000) / 100
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") == true or UnitIsConnected("player") == false then
|
||||
aliveMembers = aliveMembers - 1
|
||||
end
|
||||
end
|
||||
aura_env.output = math.floor(healthP / aliveMembers * 100) / 100 .. "%%"
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = 0
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
-- DISPLAY
|
||||
function aa()
|
||||
if UnitDebuff("focus", "Paralytic Poison") then -- application for stun
|
||||
local stacks = select(4, UnitDebuff("focus", "Paralytic Poison"))
|
||||
return stacks
|
||||
end
|
||||
if UnitDebuff("focus", "Partial Paralysis") then return "ROOT'D" end
|
||||
if UnitDebuff("focus", "Paralysis") then return "PLS HELP" end
|
||||
end
|
||||
-- TRIGGER
|
||||
function bb()
|
||||
if UnitDebuff("focus", "Paralytic Poison") or
|
||||
UnitDebuff("focus", "Partial Paralysis") or
|
||||
UnitDebuff("focus", "Paralysis") then -- application for stun
|
||||
return true
|
||||
end
|
||||
end
|
||||
-- UNTRIGGER
|
||||
function cc()
|
||||
if UnitDebuff("focus", "Paralytic Poison") == nil and
|
||||
UnitDebuff("focus", "Partial Paralysis") == nil and
|
||||
UnitDebuff("focus", "Paralysis") == nil then -- application for stun
|
||||
return true
|
||||
end
|
||||
end
|
||||
-- DISPLAY
|
||||
function aa()
|
||||
if UnitDebuff("focus", "Paralytic Poison") then -- application for stun
|
||||
local stacks = select(4, UnitDebuff("focus", "Paralytic Poison"))
|
||||
return stacks
|
||||
end
|
||||
if UnitDebuff("focus", "Partial Paralysis") then return "ROOT'D" end
|
||||
if UnitDebuff("focus", "Paralysis") then return "PLS HELP" end
|
||||
end
|
||||
-- TRIGGER
|
||||
function bb()
|
||||
if UnitDebuff("focus", "Paralytic Poison") or
|
||||
UnitDebuff("focus", "Partial Paralysis") or
|
||||
UnitDebuff("focus", "Paralysis") then -- application for stun
|
||||
return true
|
||||
end
|
||||
end
|
||||
-- UNTRIGGER
|
||||
function cc()
|
||||
if UnitDebuff("focus", "Paralytic Poison") == nil and
|
||||
UnitDebuff("focus", "Partial Paralysis") == nil and
|
||||
UnitDebuff("focus", "Paralysis") == nil then -- application for stun
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
LOOT_OPENED
|
||||
function()
|
||||
aura_env.lootTime = math.floor(GetTime()) + 300
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local currentTime = math.floor(GetTime())
|
||||
if currentTime > aura_env.lootTime and aura_env.lootTime > 0 then
|
||||
return "FISHING BOAT MOTHERFUCKERS"
|
||||
else
|
||||
return aura_env.lootTime - currentTime
|
||||
end
|
||||
end
|
||||
|
||||
INTI
|
||||
aura_env.lootTime = 0
|
||||
LOOT_OPENED
|
||||
function()
|
||||
aura_env.lootTime = math.floor(GetTime()) + 300
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local currentTime = math.floor(GetTime())
|
||||
if currentTime > aura_env.lootTime and aura_env.lootTime > 0 then
|
||||
return "FISHING BOAT MOTHERFUCKERS"
|
||||
else
|
||||
return aura_env.lootTime - currentTime
|
||||
end
|
||||
end
|
||||
|
||||
INTI
|
||||
aura_env.lootTime = 0
|
||||
|
||||
@@ -1,275 +1,275 @@
|
||||
--TODO: FIX THE FUCKING THING
|
||||
--I had no idea what I was doing lol
|
||||
|
||||
TRIGGER FOR HP
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
TRIGGER FOR POWER
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitPower("nameplate" .. i) > 0 then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
TRIGGER FOR CASTBAR
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitCastingInfo("nameplate" .. i) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY FOR HP
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
aura_env.bossHp = UnitHealth("nameplate" .. i)
|
||||
aura_env.bossMaxHp = UnitHealthMax("nameplate" .. i)
|
||||
aura_env.bossPer = math.floor((aura_env.bossHp / aura_env.bossMaxHp) * 100)
|
||||
output = math.floor(aura_env.bossHp / 1e6) .. "M%/" .. math.floor(aura_env.bossMaxHp / 1e6) .. "M - " .. aura_env.bossPer .. "%%"
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DISPLAY FOR POWER
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitPower("nameplate" .. i) > 0 then
|
||||
aura_env.bossPower = UnitPower("nameplate" .. i)
|
||||
aura_env.bossPowerMax = UnitPowerMax("nameplate" .. i)
|
||||
aura_env.bossPer = math.floor((aura_env.bossPower / aura_env.bossPowerMax) * 100)
|
||||
output = aura_env.bossPower .. "%/" .. aura_env.bossPowerMax .. " " .. aura_env.bossPer .. "%%"
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DISPLAY FOR CASTBAR
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitCastingInfo("nameplate" .. i) then
|
||||
aura_env.bossCast = UnitCastingInfo("nameplate" .. i)
|
||||
aura_env.castEnd = select(6, UnitCastingInfo("nameplate" .. i))
|
||||
aura_env.castStart = select(5, UnitCastingInfo("nameplate" .. i))
|
||||
output = aura_env.bossCast .. " - " .. math.floor(((aura_env.castEnd - GetTime() * 1000) / 1000) * 100) / 100
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DURATION FOR HP
|
||||
function()
|
||||
return aura_env.bossHp, aura_env.bossMaxHp, 1
|
||||
end
|
||||
|
||||
DURATION FOR POWER
|
||||
function()
|
||||
return aura_env.bossPower, aura_env.bossPowerMax, 1
|
||||
end
|
||||
|
||||
DURATION FOR CASTBAR
|
||||
function()
|
||||
return aura_env.castEnd - GetTime() * 1000, aura_env.castEnd - aura_env.castStart, 1
|
||||
end
|
||||
|
||||
DISPLAY FOR NAME
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
output = UnitName("nameplate" .. i)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
ANIMATION FOR HP
|
||||
function()
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local c = aura_env.bossHp / aura_env.bossMaxHp
|
||||
c = 1 - c
|
||||
--c expected as [0, 1]
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
|
||||
INIT FOR HP
|
||||
aura_env.bossHp = 1
|
||||
aura_env.bossMaxHp = 1
|
||||
aura_env.bossPer = 1
|
||||
|
||||
INIT FOR POWER
|
||||
aura_env.bossPower = 1
|
||||
aura_env.bossPowerMax = 1
|
||||
aura_env.bossPer = 1
|
||||
|
||||
INIT FOR CASTBAR
|
||||
aura_env.castEnd = 0
|
||||
aura_env.castStart = 0
|
||||
aura_env.bossCast = ""
|
||||
--TODO: FIX THE FUCKING THING
|
||||
--I had no idea what I was doing lol
|
||||
|
||||
TRIGGER FOR HP
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
TRIGGER FOR POWER
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitPower("nameplate" .. i) > 0 then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
TRIGGER FOR CASTBAR
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitCastingInfo("nameplate" .. i) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY FOR HP
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
aura_env.bossHp = UnitHealth("nameplate" .. i)
|
||||
aura_env.bossMaxHp = UnitHealthMax("nameplate" .. i)
|
||||
aura_env.bossPer = math.floor((aura_env.bossHp / aura_env.bossMaxHp) * 100)
|
||||
output = math.floor(aura_env.bossHp / 1e6) .. "M%/" .. math.floor(aura_env.bossMaxHp / 1e6) .. "M - " .. aura_env.bossPer .. "%%"
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DISPLAY FOR POWER
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitPower("nameplate" .. i) > 0 then
|
||||
aura_env.bossPower = UnitPower("nameplate" .. i)
|
||||
aura_env.bossPowerMax = UnitPowerMax("nameplate" .. i)
|
||||
aura_env.bossPer = math.floor((aura_env.bossPower / aura_env.bossPowerMax) * 100)
|
||||
output = aura_env.bossPower .. "%/" .. aura_env.bossPowerMax .. " " .. aura_env.bossPer .. "%%"
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DISPLAY FOR CASTBAR
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
if UnitCastingInfo("nameplate" .. i) then
|
||||
aura_env.bossCast = UnitCastingInfo("nameplate" .. i)
|
||||
aura_env.castEnd = select(6, UnitCastingInfo("nameplate" .. i))
|
||||
aura_env.castStart = select(5, UnitCastingInfo("nameplate" .. i))
|
||||
output = aura_env.bossCast .. " - " .. math.floor(((aura_env.castEnd - GetTime() * 1000) / 1000) * 100) / 100
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
DURATION FOR HP
|
||||
function()
|
||||
return aura_env.bossHp, aura_env.bossMaxHp, 1
|
||||
end
|
||||
|
||||
DURATION FOR POWER
|
||||
function()
|
||||
return aura_env.bossPower, aura_env.bossPowerMax, 1
|
||||
end
|
||||
|
||||
DURATION FOR CASTBAR
|
||||
function()
|
||||
return aura_env.castEnd - GetTime() * 1000, aura_env.castEnd - aura_env.castStart, 1
|
||||
end
|
||||
|
||||
DISPLAY FOR NAME
|
||||
function()
|
||||
local bossList =
|
||||
{
|
||||
"Skorpyron", "Anomaly", "Trilliax", "Tichon", "Krosus", "Aluriel", "Botanist", "Augur", "Elisande", "Gul'dan", --Nighthold
|
||||
"Amalgam of souls", "Illysanna", "Smashspite", "Kur'talos", --BRH
|
||||
"Gerdo", "Flamewreath", "Advisor Melandrus", --CoS
|
||||
"Glaidalis", "Oakheart", "Dresaron", "of Xavius", --DHT
|
||||
"Parjesh", "Lady Hatecoil", "Deepbeard", "Serpentrix", "Wrath of Azshara", --EoA
|
||||
"Hymdall", "Hyrja", "Fenryr", "Skovald", "Odyn", --HoV
|
||||
"Ymiron", "Harbaron", "Helya", --MoS
|
||||
"Rokmora", "Ularogg", "Naraxas", "Dargrul", --NL
|
||||
"Ivanyr", "Corstilax", "Xakal", "Nal'tira", "Vandros", --Arcway
|
||||
"Saltheril", "Inquisitor Tormen", "Ash'golm", "Glazer", "Cordana Fel" --VoTW
|
||||
}
|
||||
local output = ""
|
||||
|
||||
for i = 1, 40 do
|
||||
for j = 1, table.getn(bossList) do
|
||||
--if UnitName("nameplate" .. i) == bossList[j] then
|
||||
if UnitExists("nameplate" .. i) then
|
||||
if string.match(string.lower(UnitName("nameplate" .. i)), string.lower(bossList[j])) then
|
||||
output = UnitName("nameplate" .. i)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
ANIMATION FOR HP
|
||||
function()
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local c = aura_env.bossHp / aura_env.bossMaxHp
|
||||
c = 1 - c
|
||||
--c expected as [0, 1]
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
|
||||
INIT FOR HP
|
||||
aura_env.bossHp = 1
|
||||
aura_env.bossMaxHp = 1
|
||||
aura_env.bossPer = 1
|
||||
|
||||
INIT FOR POWER
|
||||
aura_env.bossPower = 1
|
||||
aura_env.bossPowerMax = 1
|
||||
aura_env.bossPer = 1
|
||||
|
||||
INIT FOR CASTBAR
|
||||
aura_env.castEnd = 0
|
||||
aura_env.castStart = 0
|
||||
aura_env.bossCast = ""
|
||||
|
||||
@@ -1,67 +1,67 @@
|
||||
--GET MAX SHIELD ABSORB AND BAR FOR ABSORB
|
||||
TRIGGER
|
||||
function()
|
||||
local buff = UnitBuff("player", "Bulwark of Order") or ""
|
||||
if buff ~= "" then return true else return false end
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local shieldAmount = select(17, UnitBuff("player", "Bulwark of Order"))
|
||||
if shieldAmount > aura_env.maxShield then
|
||||
aura_env.maxShield = shieldAmount
|
||||
end
|
||||
return shieldAmount, aura_env.maxShield, 1
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local shield = select(17, UnitBuff("player", "Bulwark of Order")) or 0
|
||||
return math.floor(shield / 1000) .. "k"
|
||||
end
|
||||
|
||||
ANIMATION
|
||||
function()
|
||||
local function range(val, min, max, max2)
|
||||
local val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
|
||||
local endTime = select(7, UnitBuff("player", "Bulwark of Order")) * 1000
|
||||
local time = GetTime() * 1000
|
||||
local maxDur = select(6, UnitBuff("player", "Bulwark of Order")) * 1000
|
||||
local duration = endTime - time
|
||||
local c = range(duration, 0, maxDur, 1)
|
||||
--c expected as [0, 1]
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
|
||||
ON SHOW
|
||||
aura_env.maxShield = 0
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
local buff = UnitBuff("player", "Bulwark of Order") or ""
|
||||
if buff ~= "" then return true else return false end
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local shieldAmount = select(17, UnitBuff("player", "Bulwark of Order"))
|
||||
local maxShield = UnitHealth("player") / 5
|
||||
return shieldAmount, maxShield, 1
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local shield = select(17, UnitBuff("player", "Bulwark of Order")) or 0
|
||||
local maxShield = UnitHealth("player") / 5
|
||||
local pp = (shield / maxShield) * 20
|
||||
return string.format("%2.1f", pp)
|
||||
end
|
||||
--GET MAX SHIELD ABSORB AND BAR FOR ABSORB
|
||||
TRIGGER
|
||||
function()
|
||||
local buff = UnitBuff("player", "Bulwark of Order") or ""
|
||||
if buff ~= "" then return true else return false end
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local shieldAmount = select(17, UnitBuff("player", "Bulwark of Order"))
|
||||
if shieldAmount > aura_env.maxShield then
|
||||
aura_env.maxShield = shieldAmount
|
||||
end
|
||||
return shieldAmount, aura_env.maxShield, 1
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local shield = select(17, UnitBuff("player", "Bulwark of Order")) or 0
|
||||
return math.floor(shield / 1000) .. "k"
|
||||
end
|
||||
|
||||
ANIMATION
|
||||
function()
|
||||
local function range(val, min, max, max2)
|
||||
local val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
|
||||
local endTime = select(7, UnitBuff("player", "Bulwark of Order")) * 1000
|
||||
local time = GetTime() * 1000
|
||||
local maxDur = select(6, UnitBuff("player", "Bulwark of Order")) * 1000
|
||||
local duration = endTime - time
|
||||
local c = range(duration, 0, maxDur, 1)
|
||||
--c expected as [0, 1]
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
|
||||
ON SHOW
|
||||
aura_env.maxShield = 0
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
local buff = UnitBuff("player", "Bulwark of Order") or ""
|
||||
if buff ~= "" then return true else return false end
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local shieldAmount = select(17, UnitBuff("player", "Bulwark of Order"))
|
||||
local maxShield = UnitHealth("player") / 5
|
||||
return shieldAmount, maxShield, 1
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local shield = select(17, UnitBuff("player", "Bulwark of Order")) or 0
|
||||
local maxShield = UnitHealth("player") / 5
|
||||
local pp = (shield / maxShield) * 20
|
||||
return string.format("%2.1f", pp)
|
||||
end
|
||||
|
||||
@@ -1,40 +1,40 @@
|
||||
PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
if aura_env.enabled == 1 then
|
||||
local r = WeakAuras.regions['julijabutton0'].region
|
||||
local b = CreateFrame("Button", "JulijaButton", r, "SecureActionButtonTemplate")
|
||||
if aura_env.type:match("spell") then
|
||||
b:SetAllPoints()
|
||||
b:SetAttribute("unit", aura_env.target)
|
||||
b:SetAttribute("spell", aura_env.name)
|
||||
b:SetAttribute("type", "spell")
|
||||
end
|
||||
if aura_env.type:match("macro") then
|
||||
b:SetAllPoints()
|
||||
b:SetAttribute("macro", aura_env.name)
|
||||
b:SetAttribute("type", "macro")
|
||||
end
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.enabled = 0
|
||||
aura_env.target = "player" --UnitID; player, focus, target, partyn (where n is the number in order of the party member), raidn (For more elaborate UnitIDs look up UnitID API Wiki thing; NO DYNAMIC INFO); I don't think it works for macros though.... So I've disabled it for macros
|
||||
aura_env.type = "spell" --"spell" or "macro" CASE SENSITIVE
|
||||
aura_env.name = "Hand of the Protector" --Spell or Macro name CASE SENSITIVE
|
||||
|
||||
if aura_env.enabled == 1 then
|
||||
if not aura_env.type:match("spell") and not aura_env.type:match("macro") then
|
||||
print("|cFFFF0000Error 'type' on julijabutton0")
|
||||
aura_env.enabled = 0
|
||||
end
|
||||
if aura_env.name == "" then
|
||||
print("|cFFFF0000Error 'name' on julijabutton0")
|
||||
end
|
||||
if aura_env.target == "" and not aura_env.type:match("macro") then
|
||||
print("|cFFFF0000Error 'target' on julijabutton0")
|
||||
end
|
||||
end
|
||||
PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
if aura_env.enabled == 1 then
|
||||
local r = WeakAuras.regions['julijabutton0'].region
|
||||
local b = CreateFrame("Button", "JulijaButton", r, "SecureActionButtonTemplate")
|
||||
if aura_env.type:match("spell") then
|
||||
b:SetAllPoints()
|
||||
b:SetAttribute("unit", aura_env.target)
|
||||
b:SetAttribute("spell", aura_env.name)
|
||||
b:SetAttribute("type", "spell")
|
||||
end
|
||||
if aura_env.type:match("macro") then
|
||||
b:SetAllPoints()
|
||||
b:SetAttribute("macro", aura_env.name)
|
||||
b:SetAttribute("type", "macro")
|
||||
end
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.enabled = 0
|
||||
aura_env.target = "player" --UnitID; player, focus, target, partyn (where n is the number in order of the party member), raidn (For more elaborate UnitIDs look up UnitID API Wiki thing; NO DYNAMIC INFO); I don't think it works for macros though.... So I've disabled it for macros
|
||||
aura_env.type = "spell" --"spell" or "macro" CASE SENSITIVE
|
||||
aura_env.name = "Hand of the Protector" --Spell or Macro name CASE SENSITIVE
|
||||
|
||||
if aura_env.enabled == 1 then
|
||||
if not aura_env.type:match("spell") and not aura_env.type:match("macro") then
|
||||
print("|cFFFF0000Error 'type' on julijabutton0")
|
||||
aura_env.enabled = 0
|
||||
end
|
||||
if aura_env.name == "" then
|
||||
print("|cFFFF0000Error 'name' on julijabutton0")
|
||||
end
|
||||
if aura_env.target == "" and not aura_env.type:match("macro") then
|
||||
print("|cFFFF0000Error 'target' on julijabutton0")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
time = GetTime() - starttime
|
||||
local mastery_ppm = celestial_map_mastery / (time / 60)
|
||||
local haste_ppm = celestial_map_haste / (time / 60)
|
||||
local crit_ppm = celestial_map_crit / (time / 60)
|
||||
local map_ppm = celestial_map_procs / (time / 60)
|
||||
|
||||
local mastery_ppm = math.floor(mastery_ppm * 100) / 100
|
||||
local haste_ppm = math.floor(haste_ppm * 100) / 100
|
||||
local crit_ppm = math.floor(crit_ppm * 100) / 100
|
||||
local map_ppm = math.floor(map_ppm * 100) / 100
|
||||
return celestial_map_mastery .. " " .. mastery_ppm .. " mastery" .. "\n" .. celestial_map_haste .. " " .. haste_ppm .. " haste" .. "\n" .. celestial_map_crit .. " " .. crit_ppm .. " crit" .. "\n" .. celestial_map_procs .. " " .. map_ppm .. " total"
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(_, _, subEvent, _, _, sourceName, _, _, _, _, _, _, ...)
|
||||
if subEvent == "SPELL_AURA_APPLIED" and sourceName == UnitName("player") then
|
||||
local spellId = select(1, ...)
|
||||
if spellId == 225752 then
|
||||
celestial_map_mastery = celestial_map_mastery + 1
|
||||
end
|
||||
if spellId == 225753 then
|
||||
celestial_map_haste = celestial_map_haste + 1
|
||||
end
|
||||
if spellId == 225749 then
|
||||
celestial_map_crit = celestial_map_crit + 1
|
||||
end
|
||||
if spellId == 225752 or spellId == 225753 or spellId == 225749 then
|
||||
celestial_map_procs = celestial_map_procs + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
--DISPLAY
|
||||
function()
|
||||
time = GetTime() - starttime
|
||||
local mastery_ppm = celestial_map_mastery / (time / 60)
|
||||
local haste_ppm = celestial_map_haste / (time / 60)
|
||||
local crit_ppm = celestial_map_crit / (time / 60)
|
||||
local map_ppm = celestial_map_procs / (time / 60)
|
||||
|
||||
local mastery_ppm = math.floor(mastery_ppm * 100) / 100
|
||||
local haste_ppm = math.floor(haste_ppm * 100) / 100
|
||||
local crit_ppm = math.floor(crit_ppm * 100) / 100
|
||||
local map_ppm = math.floor(map_ppm * 100) / 100
|
||||
return celestial_map_mastery .. " " .. mastery_ppm .. " mastery" .. "\n" .. celestial_map_haste .. " " .. haste_ppm .. " haste" .. "\n" .. celestial_map_crit .. " " .. crit_ppm .. " crit" .. "\n" .. celestial_map_procs .. " " .. map_ppm .. " total"
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(_, _, subEvent, _, _, sourceName, _, _, _, _, _, _, ...)
|
||||
if subEvent == "SPELL_AURA_APPLIED" and sourceName == UnitName("player") then
|
||||
local spellId = select(1, ...)
|
||||
if spellId == 225752 then
|
||||
celestial_map_mastery = celestial_map_mastery + 1
|
||||
end
|
||||
if spellId == 225753 then
|
||||
celestial_map_haste = celestial_map_haste + 1
|
||||
end
|
||||
if spellId == 225749 then
|
||||
celestial_map_crit = celestial_map_crit + 1
|
||||
end
|
||||
if spellId == 225752 or spellId == 225753 or spellId == 225749 then
|
||||
celestial_map_procs = celestial_map_procs + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,44 +1,44 @@
|
||||
--CHAT_MSG_SAY CHAT_MSG_PARTY CHAT_MSG_RAID CHAT_MSG_PARTY_LEADER CHAT_MSG_RAID_LEADER CHAT_MSG_RAID_WARNING
|
||||
function(...)
|
||||
aura_env.msgCount = aura_env.msgCount + 1
|
||||
n = select(7, GetChatWindowInfo(3))
|
||||
if n == true then
|
||||
aura_env.msgCount = 0
|
||||
aura_env.region:Hide()
|
||||
end
|
||||
if aura_env.msgCount > 0 and aura_env.msgCount < 10 then
|
||||
aura_env.text:SetText("\124cffffffff" .. aura_env.msgCount)
|
||||
if aura_env.region:IsShown() == false then
|
||||
aura_env.region:Show()
|
||||
end
|
||||
PlaySoundFile("Interface\\AddOns\\WeakAuras\\PowerAurasMedia\\Sounds\\huh_1.ogg", "Master")
|
||||
return "\124cFFFFFFFF" .. aura_env.msgCount
|
||||
elseif aura_env.msgCount >= 10 then
|
||||
aura_env.text:SetText("\124cffff8100" .. aura_env.msgCount)
|
||||
if aura_env.region:IsShown() == false then
|
||||
aura_env.region:Show()
|
||||
end
|
||||
PlaySoundFile("Interface\\AddOns\\WeakAuras\\PowerAurasMedia\\Sounds\\huh_1.ogg", "Master")
|
||||
return "\124cFFFF0000" .. aura_env.msgCount
|
||||
end
|
||||
end
|
||||
|
||||
--GLOBAL_TICKER
|
||||
function()
|
||||
n = select(7, GetChatWindowInfo(3))
|
||||
if n == true then
|
||||
if aura_env.region:IsShown() == true then
|
||||
aura_env.region:Hide()
|
||||
end
|
||||
aura_env.msgCount = 0
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.msgCount = 0
|
||||
aura_env.text = aura_env.region:CreateFontString(nil, "ARTWORK")
|
||||
aura_env.text:SetPoint("CENTER", aura_env.region, "CENTER")
|
||||
aura_env.text:SetFont("Interface\\AddOns\\WeakAuras\\Media\\Fonts\\FiraMono-Medium.ttf", 16, "OUTLINE")
|
||||
aura_env.text:SetText(aura_env.msgCount)
|
||||
aura_env.text:Show()
|
||||
aura_env.region:Hide()
|
||||
--CHAT_MSG_SAY CHAT_MSG_PARTY CHAT_MSG_RAID CHAT_MSG_PARTY_LEADER CHAT_MSG_RAID_LEADER CHAT_MSG_RAID_WARNING
|
||||
function(...)
|
||||
aura_env.msgCount = aura_env.msgCount + 1
|
||||
n = select(7, GetChatWindowInfo(3))
|
||||
if n == true then
|
||||
aura_env.msgCount = 0
|
||||
aura_env.region:Hide()
|
||||
end
|
||||
if aura_env.msgCount > 0 and aura_env.msgCount < 10 then
|
||||
aura_env.text:SetText("\124cffffffff" .. aura_env.msgCount)
|
||||
if aura_env.region:IsShown() == false then
|
||||
aura_env.region:Show()
|
||||
end
|
||||
PlaySoundFile("Interface\\AddOns\\WeakAuras\\PowerAurasMedia\\Sounds\\huh_1.ogg", "Master")
|
||||
return "\124cFFFFFFFF" .. aura_env.msgCount
|
||||
elseif aura_env.msgCount >= 10 then
|
||||
aura_env.text:SetText("\124cffff8100" .. aura_env.msgCount)
|
||||
if aura_env.region:IsShown() == false then
|
||||
aura_env.region:Show()
|
||||
end
|
||||
PlaySoundFile("Interface\\AddOns\\WeakAuras\\PowerAurasMedia\\Sounds\\huh_1.ogg", "Master")
|
||||
return "\124cFFFF0000" .. aura_env.msgCount
|
||||
end
|
||||
end
|
||||
|
||||
--GLOBAL_TICKER
|
||||
function()
|
||||
n = select(7, GetChatWindowInfo(3))
|
||||
if n == true then
|
||||
if aura_env.region:IsShown() == true then
|
||||
aura_env.region:Hide()
|
||||
end
|
||||
aura_env.msgCount = 0
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.msgCount = 0
|
||||
aura_env.text = aura_env.region:CreateFontString(nil, "ARTWORK")
|
||||
aura_env.text:SetPoint("CENTER", aura_env.region, "CENTER")
|
||||
aura_env.text:SetFont("Interface\\AddOns\\WeakAuras\\Media\\Fonts\\FiraMono-Medium.ttf", 16, "OUTLINE")
|
||||
aura_env.text:SetText(aura_env.msgCount)
|
||||
aura_env.text:Show()
|
||||
aura_env.region:Hide()
|
||||
|
||||
@@ -1,48 +1,48 @@
|
||||
--CHAT_MSG_SAY, CHAT_MSG_PARTY, CHAT_MSG_PARTY_LEADER, CHAT_MSG_RAID, CHAT_MSG_RAID_LEADER, CHAT_MSG_WHISPER, CHAT_MSG_WHISPER_INFORM
|
||||
function(event,msg,sender)
|
||||
local isAnna = 0
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local sender = sender:match("%a+")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
|
||||
if IsInGroup() and GetNumGroupMembers() == 2 and (UnitName("party1") == "Alurielle" or UnitName("party1") == "Eilishie") and event ~= "CHAT_MSG_WHISPER" and event ~= "CHAT_MSG_WHISPER_INFORM" then --If in group/raid with Anna
|
||||
isAnna = 1
|
||||
else
|
||||
for i = 1, 40 do
|
||||
if UnitExists("nameplate" .. i) and (UnitName("nameplate" .. i) == "Alurielle" or UnitName("nameplate" .. i) == "Eilishie") then --If not in group but near Anna --TODO: only save playername and Alurielle /s
|
||||
if sender == "Alurielle" or sender == "Eilishie" or sender == UnitName("player") then
|
||||
isAnna = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if event == "CHAT_MSG_WHISPER" then --If whisper from Anna
|
||||
if sender == "Alurielle" or sender == "Eilishie" then
|
||||
isAnna = 1
|
||||
end
|
||||
end
|
||||
|
||||
if event == "CHAT_MSG_WHISPER_INFORM" then --If whispering Anna
|
||||
if sender == "Alurielle" or sender == "Eilishie" then --Actually whisper target
|
||||
local output = "[" .. localdate .. "][" .. localtime .. "]" .. "[" .. UnitName("player") .. "]: " .. msg
|
||||
AnnaBoo[#AnnaBoo + 1] = output
|
||||
end
|
||||
end
|
||||
|
||||
if isAnna == 1 then
|
||||
local output = "[" .. localdate .. "][" .. localtime .. "]" .. "[" .. sender .. "]: " .. msg
|
||||
AnnaBoo[#AnnaBoo + 1] = output
|
||||
end
|
||||
--CHAT_MSG_SAY, CHAT_MSG_PARTY, CHAT_MSG_PARTY_LEADER, CHAT_MSG_RAID, CHAT_MSG_RAID_LEADER, CHAT_MSG_WHISPER, CHAT_MSG_WHISPER_INFORM
|
||||
function(event,msg,sender)
|
||||
local isAnna = 0
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local sender = sender:match("%a+")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
|
||||
if IsInGroup() and GetNumGroupMembers() == 2 and (UnitName("party1") == "Alurielle" or UnitName("party1") == "Eilishie") and event ~= "CHAT_MSG_WHISPER" and event ~= "CHAT_MSG_WHISPER_INFORM" then --If in group/raid with Anna
|
||||
isAnna = 1
|
||||
else
|
||||
for i = 1, 40 do
|
||||
if UnitExists("nameplate" .. i) and (UnitName("nameplate" .. i) == "Alurielle" or UnitName("nameplate" .. i) == "Eilishie") then --If not in group but near Anna --TODO: only save playername and Alurielle /s
|
||||
if sender == "Alurielle" or sender == "Eilishie" or sender == UnitName("player") then
|
||||
isAnna = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if event == "CHAT_MSG_WHISPER" then --If whisper from Anna
|
||||
if sender == "Alurielle" or sender == "Eilishie" then
|
||||
isAnna = 1
|
||||
end
|
||||
end
|
||||
|
||||
if event == "CHAT_MSG_WHISPER_INFORM" then --If whispering Anna
|
||||
if sender == "Alurielle" or sender == "Eilishie" then --Actually whisper target
|
||||
local output = "[" .. localdate .. "][" .. localtime .. "]" .. "[" .. UnitName("player") .. "]: " .. msg
|
||||
AnnaBoo[#AnnaBoo + 1] = output
|
||||
end
|
||||
end
|
||||
|
||||
if isAnna == 1 then
|
||||
local output = "[" .. localdate .. "][" .. localtime .. "]" .. "[" .. sender .. "]: " .. msg
|
||||
AnnaBoo[#AnnaBoo + 1] = output
|
||||
end
|
||||
end
|
||||
@@ -1,135 +1,135 @@
|
||||
--[[
|
||||
UI ChatFrame:AddChannel(chatFrame, "channelName") - Activate channel in chatFrame.
|
||||
UI ChatFrame:AddMessageEventFilter("event", filterFunc) - Add a chat message filtering function (added 2.4)
|
||||
UI ChatFrame:GetMessageEventFilters("event") - Retreive the list of chat message filtering functions. (added 2.4)
|
||||
UI ChatFrame:OnHyperlinkShow(reference, link, button) - called when the user clicks on a chatlink.
|
||||
UI ChatFrame:RemoveMessageEventFilter("event", filterFunc) - Unregister a chat message filtering function (added 2.4)
|
||||
]]
|
||||
|
||||
--[[
|
||||
/run ChatFilter.Words[#ChatFilter.Words + 1] = "roar"
|
||||
/dump ChatFilter.Words
|
||||
/dump ChatFilter.RemovedLines
|
||||
|
||||
/fr
|
||||
/fa
|
||||
/fu
|
||||
--]]
|
||||
|
||||
print("POGGIES")
|
||||
|
||||
SLASH_FADD1 = "/fadd"
|
||||
SLASH_FADD2 = "/fa"
|
||||
SlashCmdList["FADD"] = add
|
||||
|
||||
SLASH_FREMOVE1 = "/fremove"
|
||||
SLASH_FREMOVE2 = "/fr"
|
||||
SlashCmdList["FREMOVE"] = cleanse
|
||||
|
||||
SLASH_FUPDATE1 = "/fupdate"
|
||||
SLASH_FUPDATE2 = "/fu"
|
||||
SlashCmdList["FUPDATE"] = function(msg)
|
||||
cleanse()
|
||||
add()
|
||||
end
|
||||
|
||||
local chatEvents = {
|
||||
"CHAT_MSG_SAY",
|
||||
"CHAT_MSG_RAID",
|
||||
"CHAT_MSG_YELL",
|
||||
"CHAT_MSG_PARTY",
|
||||
"CHAT_MSG_GUILD",
|
||||
"CHAT_MSG_WHISPER",
|
||||
"CHAT_MSG_CHANNEL",
|
||||
}
|
||||
|
||||
if not ChatFilter then ChatFilter = {} end
|
||||
if not ChatFilter.People then ChatFilter.People = {} end
|
||||
if not ChatFilter.Words then ChatFilter.Words = {} end
|
||||
if not ChatFilter.RemovedLines then ChatFilter.RemovedLines = {} end
|
||||
if not ChatFilter.RemovedCommon then ChatFilter.RemovedCommon = {} end
|
||||
|
||||
--Own filter
|
||||
local function myChatFilter(self, e, msg, author, lang)
|
||||
print(msg, author, lang)
|
||||
|
||||
local function getDate()
|
||||
local date = date()
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
return localdate
|
||||
end
|
||||
|
||||
local function getTime()
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
return localtime
|
||||
end
|
||||
|
||||
author = author:match("(.+)-")
|
||||
|
||||
--Remove Alliance
|
||||
if lang == "Common" then
|
||||
-- print("Caught one!")
|
||||
ChatFilter.RemovedCommon[#ChatFilter.RemovedCommon + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
return true
|
||||
end
|
||||
|
||||
--Remove People
|
||||
for k, v in pairs(ChatFilter.People) do
|
||||
if author == v then
|
||||
if e == "CHAT_MSG_WHISPER" and author ~= UnitName("player") then
|
||||
SendChatMessage(format("Your message \"%s\" has been filtered out because I hate fun", msg), "WHISPER", nil, author)
|
||||
end
|
||||
ChatFilter.RemovedLines[#ChatFilter.RemovedLines + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
-- print("Caught one!")
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--Remove Words
|
||||
for k, v in pairs(ChatFilter.Words) do
|
||||
if msg:match(v) then
|
||||
if e == "CHAT_MSG_WHISPER" and author ~= UnitName("player") then
|
||||
SendChatMessage(format("Your message \"%s\" has been filtered out because I hate fun", msg), "WHISPER", nil, author)
|
||||
end
|
||||
ChatFilter.RemovedLines[#ChatFilter.RemovedLines + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
-- print("Caught one!")
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--Remove all filters
|
||||
local function cleanse()
|
||||
for k, v in pairs(chatEvents) do
|
||||
if ChatFrame_GetMessageEventFilters(v) then
|
||||
print(v, unpack(ChatFrame_GetMessageEventFilters(v)))
|
||||
for k2, v2 in pairs(ChatFrame_GetMessageEventFilters(v)) do
|
||||
ChatFrame_RemoveMessageEventFilter(v, v2)
|
||||
end
|
||||
end
|
||||
print("Done?")
|
||||
if ChatFrame_GetMessageEventFilters(v) then
|
||||
print(unpack(ChatFrame_GetMessageEventFilters(v)))
|
||||
end
|
||||
print("Got it.")
|
||||
end
|
||||
end
|
||||
|
||||
--Add filter
|
||||
local function add()
|
||||
for k, v in pairs(chatEvents) do
|
||||
print("Adding filter to", v)
|
||||
ChatFrame_AddMessageEventFilter(v, myChatFilter)
|
||||
end
|
||||
end
|
||||
--[[
|
||||
UI ChatFrame:AddChannel(chatFrame, "channelName") - Activate channel in chatFrame.
|
||||
UI ChatFrame:AddMessageEventFilter("event", filterFunc) - Add a chat message filtering function (added 2.4)
|
||||
UI ChatFrame:GetMessageEventFilters("event") - Retreive the list of chat message filtering functions. (added 2.4)
|
||||
UI ChatFrame:OnHyperlinkShow(reference, link, button) - called when the user clicks on a chatlink.
|
||||
UI ChatFrame:RemoveMessageEventFilter("event", filterFunc) - Unregister a chat message filtering function (added 2.4)
|
||||
]]
|
||||
|
||||
--[[
|
||||
/run ChatFilter.Words[#ChatFilter.Words + 1] = "roar"
|
||||
/dump ChatFilter.Words
|
||||
/dump ChatFilter.RemovedLines
|
||||
|
||||
/fr
|
||||
/fa
|
||||
/fu
|
||||
--]]
|
||||
|
||||
print("POGGIES")
|
||||
|
||||
SLASH_FADD1 = "/fadd"
|
||||
SLASH_FADD2 = "/fa"
|
||||
SlashCmdList["FADD"] = add
|
||||
|
||||
SLASH_FREMOVE1 = "/fremove"
|
||||
SLASH_FREMOVE2 = "/fr"
|
||||
SlashCmdList["FREMOVE"] = cleanse
|
||||
|
||||
SLASH_FUPDATE1 = "/fupdate"
|
||||
SLASH_FUPDATE2 = "/fu"
|
||||
SlashCmdList["FUPDATE"] = function(msg)
|
||||
cleanse()
|
||||
add()
|
||||
end
|
||||
|
||||
local chatEvents = {
|
||||
"CHAT_MSG_SAY",
|
||||
"CHAT_MSG_RAID",
|
||||
"CHAT_MSG_YELL",
|
||||
"CHAT_MSG_PARTY",
|
||||
"CHAT_MSG_GUILD",
|
||||
"CHAT_MSG_WHISPER",
|
||||
"CHAT_MSG_CHANNEL",
|
||||
}
|
||||
|
||||
if not ChatFilter then ChatFilter = {} end
|
||||
if not ChatFilter.People then ChatFilter.People = {} end
|
||||
if not ChatFilter.Words then ChatFilter.Words = {} end
|
||||
if not ChatFilter.RemovedLines then ChatFilter.RemovedLines = {} end
|
||||
if not ChatFilter.RemovedCommon then ChatFilter.RemovedCommon = {} end
|
||||
|
||||
--Own filter
|
||||
local function myChatFilter(self, e, msg, author, lang)
|
||||
print(msg, author, lang)
|
||||
|
||||
local function getDate()
|
||||
local date = date()
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
return localdate
|
||||
end
|
||||
|
||||
local function getTime()
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
return localtime
|
||||
end
|
||||
|
||||
author = author:match("(.+)-")
|
||||
|
||||
--Remove Alliance
|
||||
if lang == "Common" then
|
||||
-- print("Caught one!")
|
||||
ChatFilter.RemovedCommon[#ChatFilter.RemovedCommon + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
return true
|
||||
end
|
||||
|
||||
--Remove People
|
||||
for k, v in pairs(ChatFilter.People) do
|
||||
if author == v then
|
||||
if e == "CHAT_MSG_WHISPER" and author ~= UnitName("player") then
|
||||
SendChatMessage(format("Your message \"%s\" has been filtered out because I hate fun", msg), "WHISPER", nil, author)
|
||||
end
|
||||
ChatFilter.RemovedLines[#ChatFilter.RemovedLines + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
-- print("Caught one!")
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--Remove Words
|
||||
for k, v in pairs(ChatFilter.Words) do
|
||||
if msg:match(v) then
|
||||
if e == "CHAT_MSG_WHISPER" and author ~= UnitName("player") then
|
||||
SendChatMessage(format("Your message \"%s\" has been filtered out because I hate fun", msg), "WHISPER", nil, author)
|
||||
end
|
||||
ChatFilter.RemovedLines[#ChatFilter.RemovedLines + 1] = format("\[%s\]\[%s\]%s: %s", getDate(), getTime(), author, msg)
|
||||
-- print("Caught one!")
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--Remove all filters
|
||||
local function cleanse()
|
||||
for k, v in pairs(chatEvents) do
|
||||
if ChatFrame_GetMessageEventFilters(v) then
|
||||
print(v, unpack(ChatFrame_GetMessageEventFilters(v)))
|
||||
for k2, v2 in pairs(ChatFrame_GetMessageEventFilters(v)) do
|
||||
ChatFrame_RemoveMessageEventFilter(v, v2)
|
||||
end
|
||||
end
|
||||
print("Done?")
|
||||
if ChatFrame_GetMessageEventFilters(v) then
|
||||
print(unpack(ChatFrame_GetMessageEventFilters(v)))
|
||||
end
|
||||
print("Got it.")
|
||||
end
|
||||
end
|
||||
|
||||
--Add filter
|
||||
local function add()
|
||||
for k, v in pairs(chatEvents) do
|
||||
print("Adding filter to", v)
|
||||
ChatFrame_AddMessageEventFilter(v, myChatFilter)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,95 +1,95 @@
|
||||
--Add level brackets
|
||||
--Add classification brackets
|
||||
--[[
|
||||
/dump WeakAurasSaved.CustomTrash.MeleeMiss
|
||||
/dump WeakAurasSaved.CustomTrash.CachedLevels
|
||||
]]
|
||||
--COMBAT_LOG_EVENT_UNFILTERED PLAYER_FOUND
|
||||
function(e, ...)
|
||||
if e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" or se == "SWING_DAMAGE" or se == "SWING_MISSED" then
|
||||
local guid = select(4, ...)
|
||||
local caster = select(5, ...)
|
||||
local targetGUID = select(8, ...)
|
||||
local targetName = select(9, ...)
|
||||
if guid:match("Player") and targetGUID:match("Creature") then
|
||||
if not WeakAurasSaved.CustomTrash.CachedLevels[targetName] then
|
||||
WeakAuras.ScanEvents("GET_LEVEL", targetName)
|
||||
return
|
||||
else
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss[guid] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid] = {}
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].guid = guid
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].name = caster
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] then WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] = {} end
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits = 0
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss = 0
|
||||
WeakAuras.ScanEvents("ADD_PLAYER", guid)
|
||||
end
|
||||
end
|
||||
if WeakAurasSaved.CustomTrash.CachedLevels[targetName] and WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] then
|
||||
if se == "SWING_DAMAGE" then
|
||||
--Massive clusterfuck; table > playerGUID > guid, name, level bracket > hits, misses
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits = WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits + 1
|
||||
elseif se == "SWING_MISSED" then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss = WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss + 1
|
||||
end
|
||||
else
|
||||
if WeakAurasSaved.CustomTrash.CachedLevels[targetName] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] = {["hits"] = 0, ["miss"] = 0}
|
||||
else
|
||||
WeakAuras.ScanEvents("GET_LEVEL", targetName)
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "PLAYER_FOUND" then
|
||||
local guid, class, spec = ...
|
||||
if WeakAurasSaved.CustomTrash.MeleeMiss[guid] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].class = class
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].spec = spec
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss then WeakAurasSaved.CustomTrash.MeleeMiss = {} end
|
||||
aura_env.classColor = function(class)
|
||||
if class == 6 then return "\124cFFC41F3B" elseif
|
||||
class == 12 then return "\124cFFA330C9" elseif
|
||||
class == 11 then return "\124cFFFF7D0A" elseif
|
||||
class == 3 then return "\124cFFABD473" elseif
|
||||
class == 8 then return "\124cFF40C7EB" elseif
|
||||
class == 10 then return "\124cFF00FF96" elseif
|
||||
class == 2 then return "\124cFFF58CBA" elseif
|
||||
class == 5 then return "\124cFFFFFFFF" elseif
|
||||
class == 4 then return "\124cFFFFF569" elseif
|
||||
class == 7 then return "\124cFF0070DE" elseif
|
||||
class == 9 then return "\124cFF8787ED" elseif
|
||||
class == 1 then return "\124cFFC79C6E" else
|
||||
return "\124cFF000000" end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.MeleeMiss) do
|
||||
if v.class then
|
||||
output = output .. format("%s%s (%s) ", aura_env.classColor(v.class), v.name, v.spec)
|
||||
for i = 110, 115 do
|
||||
if v[i] and v[i].hits > 0 then
|
||||
v[i].ratio = v[i].miss / v[i].hits
|
||||
output = output .. format("[%d] %d / %d (%4.2f%%)", i, v[i].miss, v[i].hits, v[i].ratio * 100) .. "\n"
|
||||
end
|
||||
end
|
||||
if v[-1] and v[-1].hits > 0 then
|
||||
v[-1].ratio = v[-1].miss / v[-1].hits
|
||||
output = output .. format("[%d] %d / %d (%4.2f%%)", i, v[-1].miss, v[-1].hits, v[-1].ratio * 100) .. "\n"
|
||||
end
|
||||
output = output .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
--Add level brackets
|
||||
--Add classification brackets
|
||||
--[[
|
||||
/dump WeakAurasSaved.CustomTrash.MeleeMiss
|
||||
/dump WeakAurasSaved.CustomTrash.CachedLevels
|
||||
]]
|
||||
--COMBAT_LOG_EVENT_UNFILTERED PLAYER_FOUND
|
||||
function(e, ...)
|
||||
if e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" or se == "SWING_DAMAGE" or se == "SWING_MISSED" then
|
||||
local guid = select(4, ...)
|
||||
local caster = select(5, ...)
|
||||
local targetGUID = select(8, ...)
|
||||
local targetName = select(9, ...)
|
||||
if guid:match("Player") and targetGUID:match("Creature") then
|
||||
if not WeakAurasSaved.CustomTrash.CachedLevels[targetName] then
|
||||
WeakAuras.ScanEvents("GET_LEVEL", targetName)
|
||||
return
|
||||
else
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss[guid] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid] = {}
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].guid = guid
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].name = caster
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] then WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] = {} end
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits = 0
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss = 0
|
||||
WeakAuras.ScanEvents("ADD_PLAYER", guid)
|
||||
end
|
||||
end
|
||||
if WeakAurasSaved.CustomTrash.CachedLevels[targetName] and WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] then
|
||||
if se == "SWING_DAMAGE" then
|
||||
--Massive clusterfuck; table > playerGUID > guid, name, level bracket > hits, misses
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits = WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].hits + 1
|
||||
elseif se == "SWING_MISSED" then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss = WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]].miss + 1
|
||||
end
|
||||
else
|
||||
if WeakAurasSaved.CustomTrash.CachedLevels[targetName] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid][WeakAurasSaved.CustomTrash.CachedLevels[targetName]] = {["hits"] = 0, ["miss"] = 0}
|
||||
else
|
||||
WeakAuras.ScanEvents("GET_LEVEL", targetName)
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "PLAYER_FOUND" then
|
||||
local guid, class, spec = ...
|
||||
if WeakAurasSaved.CustomTrash.MeleeMiss[guid] then
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].class = class
|
||||
WeakAurasSaved.CustomTrash.MeleeMiss[guid].spec = spec
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not WeakAurasSaved.CustomTrash.MeleeMiss then WeakAurasSaved.CustomTrash.MeleeMiss = {} end
|
||||
aura_env.classColor = function(class)
|
||||
if class == 6 then return "\124cFFC41F3B" elseif
|
||||
class == 12 then return "\124cFFA330C9" elseif
|
||||
class == 11 then return "\124cFFFF7D0A" elseif
|
||||
class == 3 then return "\124cFFABD473" elseif
|
||||
class == 8 then return "\124cFF40C7EB" elseif
|
||||
class == 10 then return "\124cFF00FF96" elseif
|
||||
class == 2 then return "\124cFFF58CBA" elseif
|
||||
class == 5 then return "\124cFFFFFFFF" elseif
|
||||
class == 4 then return "\124cFFFFF569" elseif
|
||||
class == 7 then return "\124cFF0070DE" elseif
|
||||
class == 9 then return "\124cFF8787ED" elseif
|
||||
class == 1 then return "\124cFFC79C6E" else
|
||||
return "\124cFF000000" end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.MeleeMiss) do
|
||||
if v.class then
|
||||
output = output .. format("%s%s (%s) ", aura_env.classColor(v.class), v.name, v.spec)
|
||||
for i = 110, 115 do
|
||||
if v[i] and v[i].hits > 0 then
|
||||
v[i].ratio = v[i].miss / v[i].hits
|
||||
output = output .. format("[%d] %d / %d (%4.2f%%)", i, v[i].miss, v[i].hits, v[i].ratio * 100) .. "\n"
|
||||
end
|
||||
end
|
||||
if v[-1] and v[-1].hits > 0 then
|
||||
v[-1].ratio = v[-1].miss / v[-1].hits
|
||||
output = output .. format("[%d] %d / %d (%4.2f%%)", i, v[-1].miss, v[-1].hits, v[-1].ratio * 100) .. "\n"
|
||||
end
|
||||
output = output .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
@@ -1,105 +1,105 @@
|
||||
--[[
|
||||
Maybe improve later
|
||||
Can use names from
|
||||
https://wow.gamepedia.com/Specialization > spec
|
||||
Can find link from scanning spellbook
|
||||
Can find ID from link >> |Hspell:186265:0[Aspect of the Turtle]
|
||||
Store ID and spec to table
|
||||
|
||||
/run WeakAuras.ScanEvents("ADD_PLAYER", UnitGUID("target"))
|
||||
WeakAuras.ScanEvents("PLAYER_FOUND", caster, aura_env.trackList[caster].class, aura_env.trackList[caster].spec)
|
||||
]]
|
||||
--ADD_PLAYER COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
if e == "ADD_PLAYER" then
|
||||
local guid = ...
|
||||
if not aura_env.trackList[guid] then
|
||||
aura_env.trackList[guid] = true
|
||||
end
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
local guid = select(4, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local sid = select(12, ...)
|
||||
if aura_env.abilities[sid] and aura_env.trackList[guid] == true then
|
||||
aura_env.trackList[guid] = {
|
||||
["class"] = aura_env.classes[aura_env.abilities[sid]],
|
||||
["spec"] = aura_env.abilities[sid],
|
||||
}
|
||||
WeakAuras.ScanEvents("PLAYER_FOUND", guid, aura_env.trackList[guid].class, aura_env.trackList[guid].spec)
|
||||
aura_env.trackList[guid] = nil
|
||||
--DevTools_Dump(aura_env.trackList)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
--Works OK
|
||||
--INIT
|
||||
aura_env.trackList = {}
|
||||
aura_env.abilities = {
|
||||
--Warrior
|
||||
[12294] = "Arms", --Mortal Strike
|
||||
[209577] = "Arms", --Warbreaker A
|
||||
[85288] = "Fury", --Raging Blow
|
||||
[205545] = "Fury", --Odyn's Fury A
|
||||
|
||||
--Paladin
|
||||
[35395] = "Retribution", --Crusader Strike
|
||||
[217020] = "Retribution", --Zeal
|
||||
[205273] = "Retribution", --Wake of Ashes A
|
||||
|
||||
--Rogue
|
||||
[192759] = "Assasination", --Kingsbane A
|
||||
[703] = "Assasination", --Garrote
|
||||
[1329] = "Assasination", --Mutilate
|
||||
[1943] = "Assasination", --Rupture
|
||||
[32645] = "Assasination", --Envenom
|
||||
[202665] = "Outlaw", --Curse of the Dreadblades A
|
||||
[193315] = "Outlaw", --Saber Slash
|
||||
[185763] = "Outlaw", --Pistol Shot
|
||||
[2098] = "Outlaw", --Run Through
|
||||
[199804] = "Outlaw", --Between the Eyes
|
||||
[209782] = "Subelty", --Goremaws Bite A
|
||||
[185313] = "Subelty", --Shadow Dance
|
||||
[19452] = "Subelty", --Nightblade
|
||||
[185438] = "Subelty", --Shadowstrike
|
||||
[53] = "Subelty", --Backstab
|
||||
|
||||
--Death Knight
|
||||
[85948] = "Unholy", --Festering Strike
|
||||
[47541] = "Unholy", --Death Coil
|
||||
[220143] = "Unholy", --Apocalypse A
|
||||
[49143] = "Frost", --Frost Strike
|
||||
[49148] = "Frost", --Howling Blast
|
||||
[49020] = "Frost", --Obliterate
|
||||
|
||||
--Shaman
|
||||
[193796] = "Enhancement", --Flametongue
|
||||
[17364] = "Enhancement", --Stormstrike
|
||||
[204945] = "Enhancement", --Doom Winds A
|
||||
|
||||
--Monk
|
||||
[113656] = "Windwalker", --Fists of Fury
|
||||
[205320] = "Windwalker", --Strike of the Windlord A
|
||||
|
||||
--Demon Hunter
|
||||
}
|
||||
aura_env.classes = {
|
||||
["Fury"] = 1,
|
||||
["Arms"] = 1,
|
||||
|
||||
["Retribution"] = 2,
|
||||
|
||||
["Assasination"] = 4,
|
||||
["Subelty"] = 4,
|
||||
["Outlaw"] = 4,
|
||||
|
||||
["Frost"] = 6,
|
||||
["Unholy"] = 6,
|
||||
|
||||
["Enhancement"] = 7,
|
||||
|
||||
["Windwalker"] = 10,
|
||||
|
||||
["Havoc"] = 12,
|
||||
}
|
||||
--[[
|
||||
Maybe improve later
|
||||
Can use names from
|
||||
https://wow.gamepedia.com/Specialization > spec
|
||||
Can find link from scanning spellbook
|
||||
Can find ID from link >> |Hspell:186265:0[Aspect of the Turtle]
|
||||
Store ID and spec to table
|
||||
|
||||
/run WeakAuras.ScanEvents("ADD_PLAYER", UnitGUID("target"))
|
||||
WeakAuras.ScanEvents("PLAYER_FOUND", caster, aura_env.trackList[caster].class, aura_env.trackList[caster].spec)
|
||||
]]
|
||||
--ADD_PLAYER COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
if e == "ADD_PLAYER" then
|
||||
local guid = ...
|
||||
if not aura_env.trackList[guid] then
|
||||
aura_env.trackList[guid] = true
|
||||
end
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
local guid = select(4, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local sid = select(12, ...)
|
||||
if aura_env.abilities[sid] and aura_env.trackList[guid] == true then
|
||||
aura_env.trackList[guid] = {
|
||||
["class"] = aura_env.classes[aura_env.abilities[sid]],
|
||||
["spec"] = aura_env.abilities[sid],
|
||||
}
|
||||
WeakAuras.ScanEvents("PLAYER_FOUND", guid, aura_env.trackList[guid].class, aura_env.trackList[guid].spec)
|
||||
aura_env.trackList[guid] = nil
|
||||
--DevTools_Dump(aura_env.trackList)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
--Works OK
|
||||
--INIT
|
||||
aura_env.trackList = {}
|
||||
aura_env.abilities = {
|
||||
--Warrior
|
||||
[12294] = "Arms", --Mortal Strike
|
||||
[209577] = "Arms", --Warbreaker A
|
||||
[85288] = "Fury", --Raging Blow
|
||||
[205545] = "Fury", --Odyn's Fury A
|
||||
|
||||
--Paladin
|
||||
[35395] = "Retribution", --Crusader Strike
|
||||
[217020] = "Retribution", --Zeal
|
||||
[205273] = "Retribution", --Wake of Ashes A
|
||||
|
||||
--Rogue
|
||||
[192759] = "Assasination", --Kingsbane A
|
||||
[703] = "Assasination", --Garrote
|
||||
[1329] = "Assasination", --Mutilate
|
||||
[1943] = "Assasination", --Rupture
|
||||
[32645] = "Assasination", --Envenom
|
||||
[202665] = "Outlaw", --Curse of the Dreadblades A
|
||||
[193315] = "Outlaw", --Saber Slash
|
||||
[185763] = "Outlaw", --Pistol Shot
|
||||
[2098] = "Outlaw", --Run Through
|
||||
[199804] = "Outlaw", --Between the Eyes
|
||||
[209782] = "Subelty", --Goremaws Bite A
|
||||
[185313] = "Subelty", --Shadow Dance
|
||||
[19452] = "Subelty", --Nightblade
|
||||
[185438] = "Subelty", --Shadowstrike
|
||||
[53] = "Subelty", --Backstab
|
||||
|
||||
--Death Knight
|
||||
[85948] = "Unholy", --Festering Strike
|
||||
[47541] = "Unholy", --Death Coil
|
||||
[220143] = "Unholy", --Apocalypse A
|
||||
[49143] = "Frost", --Frost Strike
|
||||
[49148] = "Frost", --Howling Blast
|
||||
[49020] = "Frost", --Obliterate
|
||||
|
||||
--Shaman
|
||||
[193796] = "Enhancement", --Flametongue
|
||||
[17364] = "Enhancement", --Stormstrike
|
||||
[204945] = "Enhancement", --Doom Winds A
|
||||
|
||||
--Monk
|
||||
[113656] = "Windwalker", --Fists of Fury
|
||||
[205320] = "Windwalker", --Strike of the Windlord A
|
||||
|
||||
--Demon Hunter
|
||||
}
|
||||
aura_env.classes = {
|
||||
["Fury"] = 1,
|
||||
["Arms"] = 1,
|
||||
|
||||
["Retribution"] = 2,
|
||||
|
||||
["Assasination"] = 4,
|
||||
["Subelty"] = 4,
|
||||
["Outlaw"] = 4,
|
||||
|
||||
["Frost"] = 6,
|
||||
["Unholy"] = 6,
|
||||
|
||||
["Enhancement"] = 7,
|
||||
|
||||
["Windwalker"] = 10,
|
||||
|
||||
["Havoc"] = 12,
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
function()
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local rawversa = GetCombatRating(29)
|
||||
local concversa = select(17, UnitBuff("player", "Concordance of the Legionfall")) or 0
|
||||
local oldversa = rawversa - concversa
|
||||
local versapp = versa / rawversa
|
||||
local pergranted = concversa * versapp
|
||||
return string.format("+%.2f", pergranted)
|
||||
end
|
||||
function()
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local rawversa = GetCombatRating(29)
|
||||
local concversa = select(17, UnitBuff("player", "Concordance of the Legionfall")) or 0
|
||||
local oldversa = rawversa - concversa
|
||||
local versapp = versa / rawversa
|
||||
local pergranted = concversa * versapp
|
||||
return string.format("+%.2f", pergranted)
|
||||
end
|
||||
|
||||
@@ -1,116 +1,116 @@
|
||||
--TSU
|
||||
--COMBAT_LOG_EVENT_UNFILTERED GROUP_ROSTER_UPDATE COOLDOWN_TICKER
|
||||
function(allstates, e, ...)
|
||||
if not aura_env.ticker then
|
||||
aura_env.ticker = C_Timer.NewTicker(0.05, function() WeakAuras.ScanEvents("COOLDOWN_TICKER") end)
|
||||
end
|
||||
if e == "COOLDOWN_TICKER" then
|
||||
if allstates[1] then
|
||||
if allstates[1].time + 2 < GetTime() then
|
||||
allstates[1].show = false
|
||||
allstates[1].changed = true
|
||||
table.remove(allstates, 1)
|
||||
WeakAuras.ScanEvents("COOLDOWN_TICKER")
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(5, ...) or 0
|
||||
if aura_env.raid[caster] then
|
||||
local spell = select(13, ...)
|
||||
if aura_env.spells[spell] then
|
||||
allstates[#allstates + 1] = {
|
||||
caster = caster,
|
||||
spell = spell,
|
||||
string = caster .. " - " .. spell,
|
||||
class = aura_env.raid[caster],
|
||||
time = GetTime(),
|
||||
show = true,
|
||||
changed = true,
|
||||
}
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
elseif e == "GROUP_ROSTER_UPDATE" then
|
||||
local prefix = "party"
|
||||
if IsInRaid() == true then
|
||||
prefix = "raid"
|
||||
end
|
||||
aura_env.raid = {}
|
||||
aura_env.raid[UnitName("player")] = select(3, UnitClass("player"))
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitName(prefix .. i) and not aura_env.raid[UnitName(prefix .. i)] then
|
||||
aura_env.raid[UnitName(prefix .. i)] = select(3, UnitClass(prefix .. i))
|
||||
print("YEET", UnitName(prefix .. i), select(3, UnitClass(prefix .. i)))
|
||||
end
|
||||
end
|
||||
end
|
||||
--DevTools_Dump(aura_env.raid)
|
||||
return true
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.raid = {}
|
||||
aura_env.spells = {
|
||||
["Divine Shield"] = true,
|
||||
["Blessing of Spellwarding"] = true,
|
||||
["Blessing of Protection"] = true,
|
||||
["Blessing of Sacrifice"] = true,
|
||||
["Avenging Wrath"] = true,
|
||||
["Aura Mastery"] = true,
|
||||
["Guardian Spirit"] = true,
|
||||
["Divine Hymn"] = true,
|
||||
["Raise Ally"] = true,
|
||||
["Tranquility"] = true,
|
||||
["Stampeding Roar"] = true,
|
||||
["Rebirth"] = true,
|
||||
["Ice Block"] = true,
|
||||
["Deterrence"] = true,
|
||||
["Survival Instincts"] = true,
|
||||
["Anti-Magic Shell"] = true,
|
||||
["Vampiric Blood"] = true,
|
||||
["Revival"] = true,
|
||||
["Life Cocoon"] = true,
|
||||
["Diffuse Magic"] = true,
|
||||
["Lay on Hands"] = true,
|
||||
["Dispersion"] = true,
|
||||
["Evasion"] = true,
|
||||
["Cloak of Shadows"] = true,
|
||||
["Bloodlust"] = true,
|
||||
["Healing Tide Totem"] = true,
|
||||
["Soulstone"] = true,
|
||||
["Rallying Cry"] = true,
|
||||
["Power Word: Barrier"] = true,
|
||||
["Spirit Link Totem"] = true,
|
||||
["Wind Rush Totem"] = true,
|
||||
["Ancestral Guidance"] = true,
|
||||
--["Hand of the Protector"] = true,
|
||||
--["Healing Rain"] = true,
|
||||
--["Shimmer"] = true,
|
||||
--["Death and Decay"] = true,
|
||||
}
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
if aura_env.state then
|
||||
local classColor = function(class)
|
||||
if class == 1 then return 0.78, 0.61, 0.43, 1 elseif
|
||||
class == 2 then return 0.96, 0.55, 0.73, 1 elseif
|
||||
class == 3 then return 0.67, 0.83, 0.45, 1 elseif
|
||||
class == 4 then return 1, 0.96, 0.41, 1 elseif
|
||||
class == 5 then return 1, 1, 1, 1 elseif
|
||||
class == 6 then return 0.77, 0.12, 0.23, 1 elseif
|
||||
class == 7 then return 0, 0.44, 0.87, 1 elseif
|
||||
class == 8 then return 0.25, 0.78, 0.92, 1 elseif
|
||||
class == 9 then return 0.53, 0.53, 0.93, 1 elseif
|
||||
class == 10 then return 0, 1, 0.59, 1 elseif
|
||||
class == 11 then return 1, 0.49, 0.04, 1 elseif
|
||||
class == 12 then return 0.64, 0.19, 0.79, 1 else
|
||||
return 1, 1, 1, 1 end
|
||||
end
|
||||
return classColor(aura_env.state.class)
|
||||
end
|
||||
end
|
||||
--TSU
|
||||
--COMBAT_LOG_EVENT_UNFILTERED GROUP_ROSTER_UPDATE COOLDOWN_TICKER
|
||||
function(allstates, e, ...)
|
||||
if not aura_env.ticker then
|
||||
aura_env.ticker = C_Timer.NewTicker(0.05, function() WeakAuras.ScanEvents("COOLDOWN_TICKER") end)
|
||||
end
|
||||
if e == "COOLDOWN_TICKER" then
|
||||
if allstates[1] then
|
||||
if allstates[1].time + 2 < GetTime() then
|
||||
allstates[1].show = false
|
||||
allstates[1].changed = true
|
||||
table.remove(allstates, 1)
|
||||
WeakAuras.ScanEvents("COOLDOWN_TICKER")
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(5, ...) or 0
|
||||
if aura_env.raid[caster] then
|
||||
local spell = select(13, ...)
|
||||
if aura_env.spells[spell] then
|
||||
allstates[#allstates + 1] = {
|
||||
caster = caster,
|
||||
spell = spell,
|
||||
string = caster .. " - " .. spell,
|
||||
class = aura_env.raid[caster],
|
||||
time = GetTime(),
|
||||
show = true,
|
||||
changed = true,
|
||||
}
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
elseif e == "GROUP_ROSTER_UPDATE" then
|
||||
local prefix = "party"
|
||||
if IsInRaid() == true then
|
||||
prefix = "raid"
|
||||
end
|
||||
aura_env.raid = {}
|
||||
aura_env.raid[UnitName("player")] = select(3, UnitClass("player"))
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitName(prefix .. i) and not aura_env.raid[UnitName(prefix .. i)] then
|
||||
aura_env.raid[UnitName(prefix .. i)] = select(3, UnitClass(prefix .. i))
|
||||
print("YEET", UnitName(prefix .. i), select(3, UnitClass(prefix .. i)))
|
||||
end
|
||||
end
|
||||
end
|
||||
--DevTools_Dump(aura_env.raid)
|
||||
return true
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.raid = {}
|
||||
aura_env.spells = {
|
||||
["Divine Shield"] = true,
|
||||
["Blessing of Spellwarding"] = true,
|
||||
["Blessing of Protection"] = true,
|
||||
["Blessing of Sacrifice"] = true,
|
||||
["Avenging Wrath"] = true,
|
||||
["Aura Mastery"] = true,
|
||||
["Guardian Spirit"] = true,
|
||||
["Divine Hymn"] = true,
|
||||
["Raise Ally"] = true,
|
||||
["Tranquility"] = true,
|
||||
["Stampeding Roar"] = true,
|
||||
["Rebirth"] = true,
|
||||
["Ice Block"] = true,
|
||||
["Deterrence"] = true,
|
||||
["Survival Instincts"] = true,
|
||||
["Anti-Magic Shell"] = true,
|
||||
["Vampiric Blood"] = true,
|
||||
["Revival"] = true,
|
||||
["Life Cocoon"] = true,
|
||||
["Diffuse Magic"] = true,
|
||||
["Lay on Hands"] = true,
|
||||
["Dispersion"] = true,
|
||||
["Evasion"] = true,
|
||||
["Cloak of Shadows"] = true,
|
||||
["Bloodlust"] = true,
|
||||
["Healing Tide Totem"] = true,
|
||||
["Soulstone"] = true,
|
||||
["Rallying Cry"] = true,
|
||||
["Power Word: Barrier"] = true,
|
||||
["Spirit Link Totem"] = true,
|
||||
["Wind Rush Totem"] = true,
|
||||
["Ancestral Guidance"] = true,
|
||||
--["Hand of the Protector"] = true,
|
||||
--["Healing Rain"] = true,
|
||||
--["Shimmer"] = true,
|
||||
--["Death and Decay"] = true,
|
||||
}
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
if aura_env.statee then
|
||||
local classColor = function(class)
|
||||
if class == 1 then return 0.78, 0.61, 0.43, 1 elseif
|
||||
class == 2 then return 0.96, 0.55, 0.73, 1 elseif
|
||||
class == 3 then return 0.67, 0.83, 0.45, 1 elseif
|
||||
class == 4 then return 1, 0.96, 0.41, 1 elseif
|
||||
class == 5 then return 1, 1, 1, 1 elseif
|
||||
class == 6 then return 0.77, 0.12, 0.23, 1 elseif
|
||||
class == 7 then return 0, 0.44, 0.87, 1 elseif
|
||||
class == 8 then return 0.25, 0.78, 0.92, 1 elseif
|
||||
class == 9 then return 0.53, 0.53, 0.93, 1 elseif
|
||||
class == 10 then return 0, 1, 0.59, 1 elseif
|
||||
class == 11 then return 1, 0.49, 0.04, 1 elseif
|
||||
class == 12 then return 0.64, 0.19, 0.79, 1 else
|
||||
return 1, 1, 1, 1 end
|
||||
end
|
||||
return classColor(aura_env.statee.class)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,66 +1,66 @@
|
||||
--PLAYER_ENTERING_WORLD BAG_UPDATE
|
||||
function()
|
||||
if UnitName("player") == "Pinkiepiie" then
|
||||
CustomTrash.herbs = {}
|
||||
local herbs = {"Starlight Rose", "Fjarnskaggl", "Foxflower", "Dreamleaf", "Aethril"}
|
||||
for k,v in ipairs(herbs) do
|
||||
CustomTrash.herbs[v] = GetItemCount(v, 1) --k berb v am
|
||||
end
|
||||
end
|
||||
if UnitName("player") == "Kenono" then
|
||||
aura_env.output = ""
|
||||
local twok = 0
|
||||
local currentherbs = {}
|
||||
for k,v in pairs(CustomTrash.herbs) do
|
||||
currentherbs[k] = v
|
||||
end
|
||||
for k,v in pairs(CustomTrash.herbs) do
|
||||
currentherbs[k] = v + GetItemCount(k, 1)
|
||||
if v >= 2400 then twok = twok + 1 end
|
||||
end
|
||||
local function hexgrad(val, min, max)
|
||||
if val >= 2400 then return "|cff0000ff" end
|
||||
local function tohex(input)
|
||||
local output = string.format("%x", input * 255)
|
||||
return output
|
||||
end
|
||||
local function grad(c, min, max)
|
||||
c = 1 - (((max - c) / (max - min)) * 1)
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
local color1, color2, color3, color4 = 0, 0, 0, 0
|
||||
color1, color2, color3, color4 = grad(val, min, max)
|
||||
color1, color2, color3, color4 = tohex(color1), tohex(color2), tohex(color3), tohex(color4)
|
||||
color1, color2, color3, color4 = tostring(color1), tostring(color2), tostring(color3), tostring(color4)
|
||||
if string.len(color1) == 1 then color1 = "0" .. color1 end
|
||||
if string.len(color2) == 1 then color2 = "0" .. color2 end
|
||||
if string.len(color3) == 1 then color3 = "0" .. color3 end
|
||||
if string.len(color4) == 1 then color4 = "0" .. color4 end
|
||||
local color = "|c" .. color4 .. color1 .. color2 .. color3
|
||||
return color
|
||||
end
|
||||
for k,v in pairs(currentherbs) do
|
||||
if twok < 5 then
|
||||
aura_env.output = aura_env.output .. hexgrad(v, 0, 2400) .. k .. " " .. v .. " / 2400" .. "|r" .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if UnitName("player") == "Kenono" then
|
||||
return aura_env.output
|
||||
else
|
||||
return ""
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
--PLAYER_ENTERING_WORLD BAG_UPDATE
|
||||
function()
|
||||
if UnitName("player") == "Pinkiepiie" then
|
||||
CustomTrash.herbs = {}
|
||||
local herbs = {"Starlight Rose", "Fjarnskaggl", "Foxflower", "Dreamleaf", "Aethril"}
|
||||
for k,v in ipairs(herbs) do
|
||||
CustomTrash.herbs[v] = GetItemCount(v, 1) --k berb v am
|
||||
end
|
||||
end
|
||||
if UnitName("player") == "Kenono" then
|
||||
aura_env.output = ""
|
||||
local twok = 0
|
||||
local currentherbs = {}
|
||||
for k,v in pairs(CustomTrash.herbs) do
|
||||
currentherbs[k] = v
|
||||
end
|
||||
for k,v in pairs(CustomTrash.herbs) do
|
||||
currentherbs[k] = v + GetItemCount(k, 1)
|
||||
if v >= 2400 then twok = twok + 1 end
|
||||
end
|
||||
local function hexgrad(val, min, max)
|
||||
if val >= 2400 then return "|cff0000ff" end
|
||||
local function tohex(input)
|
||||
local output = string.format("%x", input * 255)
|
||||
return output
|
||||
end
|
||||
local function grad(c, min, max)
|
||||
c = 1 - (((max - c) / (max - min)) * 1)
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
local color1, color2, color3, color4 = 0, 0, 0, 0
|
||||
color1, color2, color3, color4 = grad(val, min, max)
|
||||
color1, color2, color3, color4 = tohex(color1), tohex(color2), tohex(color3), tohex(color4)
|
||||
color1, color2, color3, color4 = tostring(color1), tostring(color2), tostring(color3), tostring(color4)
|
||||
if string.len(color1) == 1 then color1 = "0" .. color1 end
|
||||
if string.len(color2) == 1 then color2 = "0" .. color2 end
|
||||
if string.len(color3) == 1 then color3 = "0" .. color3 end
|
||||
if string.len(color4) == 1 then color4 = "0" .. color4 end
|
||||
local color = "|c" .. color4 .. color1 .. color2 .. color3
|
||||
return color
|
||||
end
|
||||
for k,v in pairs(currentherbs) do
|
||||
if twok < 5 then
|
||||
aura_env.output = aura_env.output .. hexgrad(v, 0, 2400) .. k .. " " .. v .. " / 2400" .. "|r" .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if UnitName("player") == "Kenono" then
|
||||
return aura_env.output
|
||||
else
|
||||
return ""
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = ""
|
||||
@@ -1,44 +1,44 @@
|
||||
--PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
aura_env.output = ""
|
||||
local key =
|
||||
{
|
||||
["Name"] = "",
|
||||
["Level"] = 0,
|
||||
}
|
||||
for i = 1, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local name = GetContainerItemLink(i, j) or ""
|
||||
if name:match("key") then
|
||||
local parts = {strsplit(':', name)}
|
||||
local level = tonumber(parts[3]);
|
||||
local name = parts[7]:gsub("%]", "")
|
||||
name = name:gsub("|h|r", "")
|
||||
name = name:sub(2)
|
||||
key.Name = name
|
||||
key.Level = level
|
||||
end
|
||||
end
|
||||
end
|
||||
aura_env.output = key.Name .. " " .. key.Level
|
||||
end
|
||||
|
||||
--CHAT_MSG_WHISPER
|
||||
function(e, msg, sender)
|
||||
local sender = sender:match("%a+")
|
||||
msg = msg:lower()
|
||||
if msg == "pls dai key" then
|
||||
SendChatMessage(aura_env.output, "WHISPER", "Common", sender)
|
||||
end
|
||||
end
|
||||
|
||||
--CHAT_MSG_PARTY CHAT_MSG_PARTY_LEADER
|
||||
function(e, msg)
|
||||
msg = msg:lower()
|
||||
if msg == "pls dai key" then
|
||||
SendChatMessage(aura_env.output, "PARTY")
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = ""
|
||||
--PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
aura_env.output = ""
|
||||
local key =
|
||||
{
|
||||
["Name"] = "",
|
||||
["Level"] = 0,
|
||||
}
|
||||
for i = 1, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local name = GetContainerItemLink(i, j) or ""
|
||||
if name:match("key") then
|
||||
local parts = {strsplit(':', name)}
|
||||
local level = tonumber(parts[3]);
|
||||
local name = parts[7]:gsub("%]", "")
|
||||
name = name:gsub("|h|r", "")
|
||||
name = name:sub(2)
|
||||
key.Name = name
|
||||
key.Level = level
|
||||
end
|
||||
end
|
||||
end
|
||||
aura_env.output = key.Name .. " " .. key.Level
|
||||
end
|
||||
|
||||
--CHAT_MSG_WHISPER
|
||||
function(e, msg, sender)
|
||||
local sender = sender:match("%a+")
|
||||
msg = msg:lower()
|
||||
if msg == "pls dai key" then
|
||||
SendChatMessage(aura_env.output, "WHISPER", "Common", sender)
|
||||
end
|
||||
end
|
||||
|
||||
--CHAT_MSG_PARTY CHAT_MSG_PARTY_LEADER
|
||||
function(e, msg)
|
||||
msg = msg:lower()
|
||||
if msg == "pls dai key" then
|
||||
SendChatMessage(aura_env.output, "PARTY")
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = ""
|
||||
|
||||
@@ -1,79 +1,79 @@
|
||||
--PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
local date = date()
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local class = UnitClass("player")
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")] =
|
||||
{
|
||||
["Key"] = "",
|
||||
["Level"] = 0,
|
||||
["Date"] = localdate,
|
||||
["Class"] = class,
|
||||
}
|
||||
for i = 1, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local name = GetContainerItemLink(i, j) or ""
|
||||
if name:match("key") then
|
||||
local parts = {strsplit(':', name)}
|
||||
local level = tonumber(parts[3]);
|
||||
local name = parts[7]:gsub("%]", "")
|
||||
name = name:sub(2)
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")].Key = name
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")].Level = level
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--CHAT_MSG_WHISPER
|
||||
function(e, msg, sender)
|
||||
local sender = sender:match("%a+")
|
||||
msg = msg:lower()
|
||||
if msg == "dai key" and sender == UnitName("player") then
|
||||
local output = ""
|
||||
for k, v in pairs(WeakAurasSaved.globalCharacterRegistry) do
|
||||
local name = k
|
||||
output = output .. aura_env.classColor(v.Class) .. name .. "|r " .. v.Key .. " " .. v.Level .. " - " .. v.Date .. "\n"
|
||||
end
|
||||
aura_env.f1.text:SetText(output)
|
||||
aura_env.f1:Show()
|
||||
end
|
||||
if msg == "ok" and sender == UnitName("player") then
|
||||
aura_env.f1:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.classColor = function(class)
|
||||
if class == "Death Knight" then return "|cFFC41F3B" elseif
|
||||
class == "Demon Hunter" then return "|cFFA330C9" elseif
|
||||
class == "Druid" then return "|cFFFF7D0A" elseif
|
||||
class == "Hunter" then return "|cFFABD473" elseif
|
||||
class == "Mage" then return "|cFF40C7EB" elseif
|
||||
class == "Monk" then return "|cFF00FF96" elseif
|
||||
class == "Paladin" then return "|cFFF58CBA" elseif
|
||||
class == "Priest" then return "|cFFFFFFFF" elseif
|
||||
class == "Rogue" then return "|cFFFFF569" elseif
|
||||
class == "Shaman" then return "|cFF0070DE" elseif
|
||||
class == "Warlock" then return "|cFF8787ED" elseif
|
||||
class == "Warrior" then return "|cFFC79C6E" else
|
||||
return "|cFF000000" end
|
||||
end
|
||||
aura_env.f1 = CreateFrame("Frame", nil, UIParent)
|
||||
aura_env.f1:SetWidth(100)
|
||||
aura_env.f1:SetHeight(100)
|
||||
aura_env.f1:SetPoint("CENTER", 0, 100)
|
||||
aura_env.f1.text = aura_env.f1:CreateFontString(nil, "ARTWORK")
|
||||
aura_env.f1.text:SetFont("Fonts\\ARIALN.ttf", 26, "OUTLINE")
|
||||
aura_env.f1.text:SetPoint("CENTER", 0, 0)
|
||||
aura_env.f1:Hide()
|
||||
if not WeakAurasSaved.globalCharacterRegistry then WeakAurasSaved.globalCharacterRegistry = {} end
|
||||
--PLAYER_ENTERING_WORLD
|
||||
function()
|
||||
local date = date()
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local class = UnitClass("player")
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")] =
|
||||
{
|
||||
["Key"] = "",
|
||||
["Level"] = 0,
|
||||
["Date"] = localdate,
|
||||
["Class"] = class,
|
||||
}
|
||||
for i = 1, 4 do
|
||||
for j = 1, GetContainerNumSlots(i) do
|
||||
local name = GetContainerItemLink(i, j) or ""
|
||||
if name:match("key") then
|
||||
local parts = {strsplit(':', name)}
|
||||
local level = tonumber(parts[3]);
|
||||
local name = parts[7]:gsub("%]", "")
|
||||
name = name:sub(2)
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")].Key = name
|
||||
WeakAurasSaved.globalCharacterRegistry[UnitName("player")].Level = level
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--CHAT_MSG_WHISPER
|
||||
function(e, msg, sender)
|
||||
local sender = sender:match("%a+")
|
||||
msg = msg:lower()
|
||||
if msg == "dai key" and sender == UnitName("player") then
|
||||
local output = ""
|
||||
for k, v in pairs(WeakAurasSaved.globalCharacterRegistry) do
|
||||
local name = k
|
||||
output = output .. aura_env.classColor(v.Class) .. name .. "|r " .. v.Key .. " " .. v.Level .. " - " .. v.Date .. "\n"
|
||||
end
|
||||
aura_env.f1.text:SetText(output)
|
||||
aura_env.f1:Show()
|
||||
end
|
||||
if msg == "ok" and sender == UnitName("player") then
|
||||
aura_env.f1:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.classColor = function(class)
|
||||
if class == "Death Knight" then return "|cFFC41F3B" elseif
|
||||
class == "Demon Hunter" then return "|cFFA330C9" elseif
|
||||
class == "Druid" then return "|cFFFF7D0A" elseif
|
||||
class == "Hunter" then return "|cFFABD473" elseif
|
||||
class == "Mage" then return "|cFF40C7EB" elseif
|
||||
class == "Monk" then return "|cFF00FF96" elseif
|
||||
class == "Paladin" then return "|cFFF58CBA" elseif
|
||||
class == "Priest" then return "|cFFFFFFFF" elseif
|
||||
class == "Rogue" then return "|cFFFFF569" elseif
|
||||
class == "Shaman" then return "|cFF0070DE" elseif
|
||||
class == "Warlock" then return "|cFF8787ED" elseif
|
||||
class == "Warrior" then return "|cFFC79C6E" else
|
||||
return "|cFF000000" end
|
||||
end
|
||||
aura_env.f1 = CreateFrame("Frame", nil, UIParent)
|
||||
aura_env.f1:SetWidth(100)
|
||||
aura_env.f1:SetHeight(100)
|
||||
aura_env.f1:SetPoint("CENTER", 0, 100)
|
||||
aura_env.f1.text = aura_env.f1:CreateFontString(nil, "ARTWORK")
|
||||
aura_env.f1.text:SetFont("Fonts\\ARIALN.ttf", 26, "OUTLINE")
|
||||
aura_env.f1.text:SetPoint("CENTER", 0, 0)
|
||||
aura_env.f1:Hide()
|
||||
if not WeakAurasSaved.globalCharacterRegistry then WeakAurasSaved.globalCharacterRegistry = {} end
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_AURA_APPLIED" or se == "SPELL_AURA_REFRESH" or se == "SPELL_AURA_APPLIED_DOSE" or se == "SPELL_AURA_REMOVED" or se == "SPELL_AURA_REMOVED_DOSE" then
|
||||
local name = select(13, ...)
|
||||
local caster = select(5, ...)
|
||||
if caster == UnitName("player") and name == "Bone Shield" then
|
||||
aura_env.stacks = 0
|
||||
for i = 1, 40 do
|
||||
local spellID = select(11, UnitBuff("player", i))
|
||||
if spellID == 195181 then
|
||||
aura_env.stacks = select(4, UnitBuff("player", i))
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--Duration
|
||||
function()
|
||||
return aura_env.stacks, 10, 1
|
||||
end
|
||||
|
||||
--INIT
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_AURA_APPLIED" or se == "SPELL_AURA_REFRESH" or se == "SPELL_AURA_APPLIED_DOSE" or se == "SPELL_AURA_REMOVED" or se == "SPELL_AURA_REMOVED_DOSE" then
|
||||
local name = select(13, ...)
|
||||
local caster = select(5, ...)
|
||||
if caster == UnitName("player") and name == "Bone Shield" then
|
||||
aura_env.stacks = 0
|
||||
for i = 1, 40 do
|
||||
local spellID = select(11, UnitBuff("player", i))
|
||||
if spellID == 195181 then
|
||||
aura_env.stacks = select(4, UnitBuff("player", i))
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--Duration
|
||||
function()
|
||||
return aura_env.stacks, 10, 1
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.stacks = 0
|
||||
@@ -1,51 +1,51 @@
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...) or ""
|
||||
local caster = select(6, ...) or ""
|
||||
local amount = select(16, ...) or 0
|
||||
local spellName = select(14, ...) or ""
|
||||
if subEvent == "SWING_DAMAGE" then
|
||||
amount = select(13, ...) or 0
|
||||
end
|
||||
if subEvent == "SPELL_HEAL" or subEvent == "SPELL_PERIODIC_HEAL" then
|
||||
overheal = select(17, ...) or 0
|
||||
amount = amount - overheal
|
||||
end
|
||||
if caster == UnitName("player") and amount ~= nil and (subEvent == "SPELL_HEAL" or subEvent == "SPELL_PERIODIC_HEAL") then
|
||||
aura_env.healtotal = aura_env.healtotal + amount
|
||||
end
|
||||
if caster == UnitName("player") and amount ~= nil and (subEvent == "SPELL_DAMAGE" or subEvent == "SPELL_PERIODIC_DAMAGE" or subEvent == "SWING_DAMAGE") then
|
||||
aura_env.dmgtotal = aura_env.dmgtotal + amount
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
local elapsed_time = GetTime() - aura_env.starttime
|
||||
aura_env.dps = math.floor(aura_env.dmgtotal / elapsed_time)
|
||||
aura_env.hps = math.floor(aura_env.healtotal / elapsed_time)
|
||||
if aura_env.dps > 1e3 then
|
||||
output = output .. "DPS: " .. math.floor(aura_env.dps / 1e3) .. "k "
|
||||
elseif
|
||||
aura_env.dps > 1e6 then
|
||||
output = output .. "DPS: " .. (math.floor((aura_env.dps / 1e6) / 100) * 100) .. "M "
|
||||
end
|
||||
if aura_env.hps > 1e3 then
|
||||
output = output .. "HPS: " .. math.floor(aura_env.hps / 1e3) .. "k "
|
||||
elseif
|
||||
aura_env.hps > 1e6 then
|
||||
output = output .. "HPS: " .. (math.floor((aura_env.hps / 1e6) / 100) * 100) .. "M "
|
||||
end
|
||||
if WeakAuras.IsOptionsOpen() then
|
||||
return "DPS: 985k HPS: 312k"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.starttime = GetTime()
|
||||
aura_env.dps = 0
|
||||
aura_env.hps = 0
|
||||
aura_env.dmgtotal = 0
|
||||
aura_env.healtotal = 0
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...) or ""
|
||||
local caster = select(6, ...) or ""
|
||||
local amount = select(16, ...) or 0
|
||||
local spellName = select(14, ...) or ""
|
||||
if subEvent == "SWING_DAMAGE" then
|
||||
amount = select(13, ...) or 0
|
||||
end
|
||||
if subEvent == "SPELL_HEAL" or subEvent == "SPELL_PERIODIC_HEAL" then
|
||||
overheal = select(17, ...) or 0
|
||||
amount = amount - overheal
|
||||
end
|
||||
if caster == UnitName("player") and amount ~= nil and (subEvent == "SPELL_HEAL" or subEvent == "SPELL_PERIODIC_HEAL") then
|
||||
aura_env.healtotal = aura_env.healtotal + amount
|
||||
end
|
||||
if caster == UnitName("player") and amount ~= nil and (subEvent == "SPELL_DAMAGE" or subEvent == "SPELL_PERIODIC_DAMAGE" or subEvent == "SWING_DAMAGE") then
|
||||
aura_env.dmgtotal = aura_env.dmgtotal + amount
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
local elapsed_time = GetTime() - aura_env.starttime
|
||||
aura_env.dps = math.floor(aura_env.dmgtotal / elapsed_time)
|
||||
aura_env.hps = math.floor(aura_env.healtotal / elapsed_time)
|
||||
if aura_env.dps > 1e3 then
|
||||
output = output .. "DPS: " .. math.floor(aura_env.dps / 1e3) .. "k "
|
||||
elseif
|
||||
aura_env.dps > 1e6 then
|
||||
output = output .. "DPS: " .. (math.floor((aura_env.dps / 1e6) / 100) * 100) .. "M "
|
||||
end
|
||||
if aura_env.hps > 1e3 then
|
||||
output = output .. "HPS: " .. math.floor(aura_env.hps / 1e3) .. "k "
|
||||
elseif
|
||||
aura_env.hps > 1e6 then
|
||||
output = output .. "HPS: " .. (math.floor((aura_env.hps / 1e6) / 100) * 100) .. "M "
|
||||
end
|
||||
if WeakAuras.IsOptionsOpen() then
|
||||
return "DPS: 985k HPS: 312k"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.starttime = GetTime()
|
||||
aura_env.dps = 0
|
||||
aura_env.hps = 0
|
||||
aura_env.dmgtotal = 0
|
||||
aura_env.healtotal = 0
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
function()
|
||||
local spells = {"Deceptive Strike", "Very Sinister Strike", "Raven Strike", "Coup de Grace", "Lantern of Darkness", "Power Attack", "Holy Radiance", "Thunderous Bolt"}
|
||||
local output = ""
|
||||
for i = 1, 40 do
|
||||
local name = UnitCastingInfo("nameplate" .. i)
|
||||
if name ~= nil then
|
||||
for j = 1, table.getn(spells) do
|
||||
if name == spells[j] then
|
||||
local _, _, _, _, starTime, endTime = UnitCastingInfo("nameplate" .. i)
|
||||
local castRemaining = endTime / 1000 - GetTime()
|
||||
castRemaining = math.floor(castRemaining * 100) / 100
|
||||
output = output .. name .. " " .. castRemaining .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
function()
|
||||
local spells = {"Deceptive Strike", "Very Sinister Strike", "Raven Strike", "Coup de Grace", "Lantern of Darkness", "Power Attack", "Holy Radiance", "Thunderous Bolt"}
|
||||
local output = ""
|
||||
for i = 1, 40 do
|
||||
local name = UnitCastingInfo("nameplate" .. i)
|
||||
if name ~= nil then
|
||||
for j = 1, table.getn(spells) do
|
||||
if name == spells[j] then
|
||||
local _, _, _, _, starTime, endTime = UnitCastingInfo("nameplate" .. i)
|
||||
local castRemaining = endTime / 1000 - GetTime()
|
||||
castRemaining = math.floor(castRemaining * 100) / 100
|
||||
output = output .. name .. " " .. castRemaining .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
@@ -1,76 +1,76 @@
|
||||
--[[
|
||||
[10:59 PM] Dump: value=C_Scenario.GetCriteriaInfo(4)
|
||||
[10:59 PM] [1]="Enemy Forces",
|
||||
[10:59 PM] [2]=0,
|
||||
[10:59 PM] [3]=false,
|
||||
[10:59 PM] [4]=0,
|
||||
[10:59 PM] [5]=150,
|
||||
[10:59 PM] [6]=0,
|
||||
[10:59 PM] [7]=0,
|
||||
[10:59 PM] [8]="0%",
|
||||
[10:59 PM] [9]=0,
|
||||
[10:59 PM] [10]=0,
|
||||
[10:59 PM] [11]=0,
|
||||
[10:59 PM] [12]=false,
|
||||
[10:59 PM] [13]=true
|
||||
/dump UnitAffectingCombat("target")
|
||||
[11:05 PM] [1]="Creature-0-5-1492-0-97043-0000007794"
|
||||
|
||||
local criteriaString, _, _, quantity, totalQuantity, _, _, quantityString, _, _, _, _, isWeightedProgress = C_Scenario.GetCriteriaInfo(criteriaIndex)
|
||||
|
||||
Idea is to find % for pulled mob(s) and add to current % display both
|
||||
]]
|
||||
|
||||
--ON SOME EVENTS
|
||||
function()
|
||||
--Very inefficient maybe fix later who cares
|
||||
local scenarioType = select(10, C_Scenario.GetInfo())
|
||||
if scenarioType == 1 then
|
||||
local numCriteria = select(3, C_Scenario.GetStepInfo())
|
||||
for i = 1, numCriteria do
|
||||
local name = C_Scenario.GetCriteriaInfo(i)
|
||||
if name == "Enemy Forces" then
|
||||
aura_env.davystone.totalProgress = select(5, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = aura_env.davystone.currentProgress:gsub("%%", "")
|
||||
aura_env.davystone.currentProgress = tonumber(aura_env.davystone.currentProgress)
|
||||
aura_env.davystone.newProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress:gsub("%%", "")
|
||||
aura_env.davystone.newProgress = tonumber(aura_env.davystone.newProgress)
|
||||
end
|
||||
end
|
||||
for i = 1, 40 do
|
||||
local unit = "nameplate" .. i
|
||||
if UnitAffectingCombat(unit) then
|
||||
local GUID = UnitGUID(unit)
|
||||
local ID = GUID:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
ID = tonumber(ID)
|
||||
if aura_env.IDthing[ID] then
|
||||
local progress = aura_env.IDthing[ID]
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress + progress
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.davystone.currentProgress and aura_env.davystone.totalProgress and aura_env.davystone.newProgress then
|
||||
return aura_env.round((aura_env.davystone.currentProgress / aura_env.davystone.totalProgress) * 100, 2) .. " " .. aura_env.round((aura_env.davystone.newProgress / aura_env.davystone.totalProgress) * 100, 2)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.davystone = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4, [102253] = 4, [98954] = 4, [97185] = 10, [113537] = 10, [101839] = 4, [104246] = 4, [104278] = 10, [97170] = 4, [113506] = 4, [105617] = 4, [105633] = 4, [102095] = 4, [105952] = 6, [97043] = 4, [102430] = 1, [98366] = 4, [95832] = 2, [91784] = 1, [104295] = 1, [102781] = 4, [102287] = 10, [98733] = 4, [102351] = 1, [96247] = 1, [111563] = 4, [95769] = 4, [113699] = 8, [91785] = 2, [100216] = 4, [97172] = 1, [100248] = 4, [114289] = 4, [105651] = 4, [105699] = 3, [105715] = 4, [98368] = 4, [95834] = 2, [99675] = 4, [91786] = 4, [98177] = 12, [97173] = 4, [100249] = 1, [105636] = 4, [95771] = 4, [96584] = 4, [97365] = 4, [91006] = 4, [91787] = 2, [109908] = 10, [96664] = 2, [105876] = 1, [95947] = 4, [99804] = 2, [95772] = 4, [99358] = 4, [101414] = 2, [106785] = 1, [104251] = 4, [100713] = 4, [105845] = 1, [98243] = 4, [98275] = 4, [96028] = 4, [99359] = 3, [105766] = 1, [91008] = 4, [91789] = 4, [98435] = 7, [98706] = 6, [100539] = 4, [98770] = 4, [105703] = 1, [102404] = 4, [99360] = 9, [97097] = 4, [91790] = 4, [98691] = 4, [102277] = 4, [98293] = 1, [98813] = 4, [105720] = 4, [91001] = 4, [101074] = 1, [100532] = 1, [99678] = 4, [104270] = 8, [101991] = 4, [98732] = 1, [98963] = 1, [91792] = 10, [100526] = 4, [98246] = 4, [106546] = 4, [98533] = 10, [105705] = 4, [96015] = 4, [104300] = 4, [113536] = 10, [92610] = 4, [99649] = 12, [98900] = 4, [98406] = 4, [98677] = 1, [91808] = 1, [92350] = 4, [102295] = 10, [102566] = 12, [113998] = 4, [97163] = 3, [102104] = 4, [102375] = 3, [105706] = 8, [95861] = 4, [97068] = 5, [96574] = 5, [97171] = 10, [102094] = 4, [102232] = 4, [99188] = 4, [99307] = 12, [105682] = 8, [92538] = 1, [100527] = 3, [102583] = 4, [96587] = 4, [98280] = 4, [98370] = 4, [98538] = 10, [106786] = 1, [113111] = 1, [91783] = 4, [99956] = 4, [114712] = 3, [91332] = 4, [91794] = 1, [96657] = 12, [98426] = 4, [97197] = 2, [91796] = 10, [98759] = 4, [105915] = 4, [98919] = 4, [99908] = 1, [98362] = 10, [95779] = 10, [99365] = 4, [99891] = 5, [101437] = 1, [90998] = 4, [106059] = 4, [98425] = 4, [96640] = 2, [97182] = 6, [98728] = 7, [95939] = 10, [100529] = 1, [98776] = 4, [105422] = 1, [98792] = 4, [90997] = 4, [105629] = 1, [99366] = 4, [97087] = 2, [101438] = 4, [97119] = 1, [96608] = 2, [98681] = 6, [97677] = 1, [96480] = 1, [102584] = 4, [95842] = 2, [100364] = 4, [101072] = 1, [94968] = 5, [98973] = 1, [102788] = 4, [96934] = 2, [98756] = 4, [107288] = 1, [91793] = 1, [91000] = 8, [91781] = 4, [91782] = 10, [97678] = 8, [98926] = 4, [97200] = 4, [100531] = 8, [92387] = 4, [99033] = 4, [95920] = 2, [98810] = 6, [95766] = 4, [105921] = 4, [96677] = 2, [101679] = 4, [114288] = 4, [96611] = 2, [106787] = 1
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
--[[
|
||||
[10:59 PM] Dump: value=C_Scenario.GetCriteriaInfo(4)
|
||||
[10:59 PM] [1]="Enemy Forces",
|
||||
[10:59 PM] [2]=0,
|
||||
[10:59 PM] [3]=false,
|
||||
[10:59 PM] [4]=0,
|
||||
[10:59 PM] [5]=150,
|
||||
[10:59 PM] [6]=0,
|
||||
[10:59 PM] [7]=0,
|
||||
[10:59 PM] [8]="0%",
|
||||
[10:59 PM] [9]=0,
|
||||
[10:59 PM] [10]=0,
|
||||
[10:59 PM] [11]=0,
|
||||
[10:59 PM] [12]=false,
|
||||
[10:59 PM] [13]=true
|
||||
/dump UnitAffectingCombat("target")
|
||||
[11:05 PM] [1]="Creature-0-5-1492-0-97043-0000007794"
|
||||
|
||||
local criteriaString, _, _, quantity, totalQuantity, _, _, quantityString, _, _, _, _, isWeightedProgress = C_Scenario.GetCriteriaInfo(criteriaIndex)
|
||||
|
||||
Idea is to find % for pulled mob(s) and add to current % display both
|
||||
]]
|
||||
|
||||
--ON SOME EVENTS
|
||||
function()
|
||||
--Very inefficient maybe fix later who cares
|
||||
local scenarioType = select(10, C_Scenario.GetInfo())
|
||||
if scenarioType == 1 then
|
||||
local numCriteria = select(3, C_Scenario.GetStepInfo())
|
||||
for i = 1, numCriteria do
|
||||
local name = C_Scenario.GetCriteriaInfo(i)
|
||||
if name == "Enemy Forces" then
|
||||
aura_env.davystone.totalProgress = select(5, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = aura_env.davystone.currentProgress:gsub("%%", "")
|
||||
aura_env.davystone.currentProgress = tonumber(aura_env.davystone.currentProgress)
|
||||
aura_env.davystone.newProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress:gsub("%%", "")
|
||||
aura_env.davystone.newProgress = tonumber(aura_env.davystone.newProgress)
|
||||
end
|
||||
end
|
||||
for i = 1, 40 do
|
||||
local unit = "nameplate" .. i
|
||||
if UnitAffectingCombat(unit) then
|
||||
local GUID = UnitGUID(unit)
|
||||
local ID = GUID:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
ID = tonumber(ID)
|
||||
if aura_env.IDthing[ID] then
|
||||
local progress = aura_env.IDthing[ID]
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress + progress
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.davystone.currentProgress and aura_env.davystone.totalProgress and aura_env.davystone.newProgress then
|
||||
return aura_env.round((aura_env.davystone.currentProgress / aura_env.davystone.totalProgress) * 100, 2) .. " " .. aura_env.round((aura_env.davystone.newProgress / aura_env.davystone.totalProgress) * 100, 2)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.davystone = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4, [102253] = 4, [98954] = 4, [97185] = 10, [113537] = 10, [101839] = 4, [104246] = 4, [104278] = 10, [97170] = 4, [113506] = 4, [105617] = 4, [105633] = 4, [102095] = 4, [105952] = 6, [97043] = 4, [102430] = 1, [98366] = 4, [95832] = 2, [91784] = 1, [104295] = 1, [102781] = 4, [102287] = 10, [98733] = 4, [102351] = 1, [96247] = 1, [111563] = 4, [95769] = 4, [113699] = 8, [91785] = 2, [100216] = 4, [97172] = 1, [100248] = 4, [114289] = 4, [105651] = 4, [105699] = 3, [105715] = 4, [98368] = 4, [95834] = 2, [99675] = 4, [91786] = 4, [98177] = 12, [97173] = 4, [100249] = 1, [105636] = 4, [95771] = 4, [96584] = 4, [97365] = 4, [91006] = 4, [91787] = 2, [109908] = 10, [96664] = 2, [105876] = 1, [95947] = 4, [99804] = 2, [95772] = 4, [99358] = 4, [101414] = 2, [106785] = 1, [104251] = 4, [100713] = 4, [105845] = 1, [98243] = 4, [98275] = 4, [96028] = 4, [99359] = 3, [105766] = 1, [91008] = 4, [91789] = 4, [98435] = 7, [98706] = 6, [100539] = 4, [98770] = 4, [105703] = 1, [102404] = 4, [99360] = 9, [97097] = 4, [91790] = 4, [98691] = 4, [102277] = 4, [98293] = 1, [98813] = 4, [105720] = 4, [91001] = 4, [101074] = 1, [100532] = 1, [99678] = 4, [104270] = 8, [101991] = 4, [98732] = 1, [98963] = 1, [91792] = 10, [100526] = 4, [98246] = 4, [106546] = 4, [98533] = 10, [105705] = 4, [96015] = 4, [104300] = 4, [113536] = 10, [92610] = 4, [99649] = 12, [98900] = 4, [98406] = 4, [98677] = 1, [91808] = 1, [92350] = 4, [102295] = 10, [102566] = 12, [113998] = 4, [97163] = 3, [102104] = 4, [102375] = 3, [105706] = 8, [95861] = 4, [97068] = 5, [96574] = 5, [97171] = 10, [102094] = 4, [102232] = 4, [99188] = 4, [99307] = 12, [105682] = 8, [92538] = 1, [100527] = 3, [102583] = 4, [96587] = 4, [98280] = 4, [98370] = 4, [98538] = 10, [106786] = 1, [113111] = 1, [91783] = 4, [99956] = 4, [114712] = 3, [91332] = 4, [91794] = 1, [96657] = 12, [98426] = 4, [97197] = 2, [91796] = 10, [98759] = 4, [105915] = 4, [98919] = 4, [99908] = 1, [98362] = 10, [95779] = 10, [99365] = 4, [99891] = 5, [101437] = 1, [90998] = 4, [106059] = 4, [98425] = 4, [96640] = 2, [97182] = 6, [98728] = 7, [95939] = 10, [100529] = 1, [98776] = 4, [105422] = 1, [98792] = 4, [90997] = 4, [105629] = 1, [99366] = 4, [97087] = 2, [101438] = 4, [97119] = 1, [96608] = 2, [98681] = 6, [97677] = 1, [96480] = 1, [102584] = 4, [95842] = 2, [100364] = 4, [101072] = 1, [94968] = 5, [98973] = 1, [102788] = 4, [96934] = 2, [98756] = 4, [107288] = 1, [91793] = 1, [91000] = 8, [91781] = 4, [91782] = 10, [97678] = 8, [98926] = 4, [97200] = 4, [100531] = 8, [92387] = 4, [99033] = 4, [95920] = 2, [98810] = 6, [95766] = 4, [105921] = 4, [96677] = 2, [101679] = 4, [114288] = 4, [96611] = 2, [106787] = 1
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
|
||||
@@ -1,411 +1,411 @@
|
||||
--ON SOME EVENTS
|
||||
--Maybe make trigger on ~~party kill?~~ threat update? ++ namepalteadd/remove
|
||||
|
||||
--[[
|
||||
1) On threat update calculate new %
|
||||
2) On namepalte added look for threat and calculate new %
|
||||
3) Organize into table with GUIDs
|
||||
4) On nameplate remove remove from table // PARTY_KILL
|
||||
5) Make more table for current pull, projected pull and projected total
|
||||
6) Organize mobs into groups before bosses or before other groups big ???
|
||||
]]
|
||||
|
||||
--[[
|
||||
1) UNIT_THREAT_LIST_UPDATE (e, u)
|
||||
Get GUID
|
||||
Put into table
|
||||
ggez
|
||||
|
||||
2) NAME_PLATE_UNIT_ADDED NAME_PLATE_UNIT_REMOVED (e, u)
|
||||
UnitDetailedThreatSituation("player", "target") empty result for no threat
|
||||
|
||||
[02:49 PM] Dump: value=UnitDetailedThreatSituation("player", "target")
|
||||
[02:49 PM] [1]=true, --Boolean - returns true if the unit is primary threat target of the mob (is tanking), or false otherwise
|
||||
[02:49 PM] [2]=3, --Integer - returns the threat status for the unit on the mob, or nil if unit is not on mob's threat table. (3 = securely tanking, 2 = insecurely tanking, 1 = not tanking but higher threat than tank, 0 = not tanking and lower threat than tank)
|
||||
[02:49 PM] [3]=100, --Number - returns the unit's threat on the mob as a percentage of the amount required to pull aggro, scaled according to the unit's range from the mob. At 100 the unit will pull aggro. Returns 100 if the unit is tanking and nil if the unit is not on the mob's threat list.
|
||||
[02:49 PM] [4]=255, --Number - returns the unit's threat as a percentage of the tank's current threat. Returns nil if the unit is not on the mob's threat list.
|
||||
[02:49 PM] [5]=0 --Number - returns the unit's total threat on the mob
|
||||
for threat
|
||||
|
||||
3) can say table 1: GUID in current pull - use 1) and 2)
|
||||
table 2: GUID to be pull on mouseover - use previous work
|
||||
table 3: global GUID to be pull - reset with GUID of boss or pre boss maybe?
|
||||
look for PARTY_KILL se in CLEU maybe? (for progress table ?)
|
||||
]]
|
||||
|
||||
--[[
|
||||
Random garbage info
|
||||
|
||||
[10:59 AM] Dump: value=C_Scenario.GetInfo()
|
||||
[10:59 AM] [1]="Black Rook Hold",
|
||||
[10:59 AM] [2]=1,
|
||||
[10:59 AM] [3]=1,
|
||||
[10:59 AM] [4]=3,
|
||||
[10:59 AM] [5]=false,
|
||||
[10:59 AM] [6]=false,
|
||||
[10:59 AM] [7]=false,
|
||||
[10:59 AM] [8]=0,
|
||||
[10:59 AM] [9]=0,
|
||||
[10:59 AM] [10]=1,
|
||||
[10:59 AM] [11]="UNKNOWN"
|
||||
|
||||
[11:01 AM] Dump: value=C_Scenario.GetStepInfo()
|
||||
[11:01 AM] [1]="Black Rook Hold",
|
||||
[11:01 AM] [2]="Deal with the restless spirits of Black Rook Hold.",
|
||||
[11:01 AM] [3]=5, --Num criteria
|
||||
[11:01 AM] [4]=false,
|
||||
[11:01 AM] [5]=false,
|
||||
[11:01 AM] [6]=false,
|
||||
[11:01 AM] [7]=0,
|
||||
[11:01 AM] [8]={
|
||||
[11:01 AM] },
|
||||
[11:01 AM] [10]=0
|
||||
|
||||
/run local numCriteria = select(3, C_Scenario.GetStepInfo()); for i = 1, numCriteria do print(C_Scenario.GetCriteriaInfo(i)) end
|
||||
[11:02 AM] Amalgam of Souls 165 false 0 1 0 1832 0 29464 0 0 false false
|
||||
[11:02 AM] Illysanna Ravencrest 165 false 0 1 0 1833 0 29465 0 0 false false
|
||||
[11:02 AM] Smashspite the Hateful 165 false 0 1 0 1834 0 29466 0 0 false false
|
||||
[11:02 AM] Lord Kurtalos Ravencrest 165 false 0 1 0 1835 0 29467 0 0 false false
|
||||
[11:02 AM] Enemy Forces 0 false 0 360 0 0 0% 0 0 0 false true
|
||||
|
||||
[11:06 AM] Dump: value=C_Scenario.GetCriteriaInfo(5)
|
||||
[11:06 AM] [1]="Enemy Forces",
|
||||
[11:06 AM] [2]=0,
|
||||
[11:06 AM] [3]=false,
|
||||
[11:06 AM] [4]=0,
|
||||
[11:06 AM] [5]=360,
|
||||
[11:06 AM] [6]=0,
|
||||
[11:06 AM] [7]=0,
|
||||
[11:06 AM] [8]="0%",
|
||||
[11:06 AM] [9]=0,
|
||||
[11:06 AM] [10]=0,
|
||||
[11:06 AM] [11]=0,
|
||||
[11:06 AM] [12]=false,
|
||||
[11:06 AM] [13]=true --Weighted progress?
|
||||
]]
|
||||
|
||||
--[[
|
||||
So far got the mouseover counting working
|
||||
Get total mob # from C_Scenario.GetCriteriaInfo(5
|
||||
Add mouseover to #
|
||||
Add pulls & nameplate fuckery from above into same #
|
||||
Maybe use global table for all
|
||||
Should be easy
|
||||
Maybe add textures and attach to namepaltes of planned units??? Pog POG
|
||||
]]
|
||||
function()
|
||||
--Very inefficient maybe fix later who cares
|
||||
local scenarioType = select(10, C_Scenario.GetInfo())
|
||||
if scenarioType == 1 then
|
||||
local numCriteria = select(3, C_Scenario.GetStepInfo())
|
||||
for i = 1, numCriteria do
|
||||
local name = C_Scenario.GetCriteriaInfo(i)
|
||||
if name == "Enemy Forces" then
|
||||
aura_env.davystone.totalProgress = select(5, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = aura_env.davystone.currentProgress:gsub("%%", "")
|
||||
aura_env.davystone.currentProgress = tonumber(aura_env.davystone.currentProgress)
|
||||
aura_env.davystone.newProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress:gsub("%%", "")
|
||||
aura_env.davystone.newProgress = tonumber(aura_env.davystone.newProgress)
|
||||
end
|
||||
end
|
||||
for i = 1, 40 do
|
||||
local unit = "nameplate" .. i
|
||||
if UnitAffectingCombat(unit) then
|
||||
local GUID = UnitGUID(unit)
|
||||
local ID = GUID:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
ID = tonumber(ID)
|
||||
if aura_env.IDthing[ID] then
|
||||
local progress = aura_env.IDthing[ID]
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress + progress
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.davystone.currentProgress and aura_env.davystone.totalProgress and aura_env.davystone.newProgress then
|
||||
return aura_env.round((aura_env.davystone.currentProgress / aura_env.davystone.totalProgress) * 100, 2) .. " " .. aura_env.round((aura_env.davystone.newProgress / aura_env.davystone.totalProgress) * 100, 2)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
local OnTooltipSetUnit = function()
|
||||
print("yeet")
|
||||
local name, unit = tooltip:GetUnit()
|
||||
local guid = unit and UnitGUID(unit)
|
||||
if guid then
|
||||
local type, zero, server_id, instance_id, zone_uid, npc_id, spawn_uid = strsplit("-", guid)
|
||||
npc_id = tonumber(npc_id)
|
||||
print(npcID)
|
||||
end
|
||||
end
|
||||
GameTooltip:HookScript("OnTooltipSetUnit", OnTooltipSetUnit)
|
||||
aura_env.davystone = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4, [102253] = 4, [98954] = 4, [97185] = 10, [113537] = 10, [101839] = 4, [104246] = 4, [104278] = 10, [97170] = 4, [113506] = 4, [105617] = 4, [105633] = 4, [102095] = 4, [105952] = 6, [97043] = 4, [102430] = 1, [98366] = 4, [95832] = 2, [91784] = 1, [104295] = 1, [102781] = 4, [102287] = 10, [98733] = 4, [102351] = 1, [96247] = 1, [111563] = 4, [95769] = 4, [113699] = 8, [91785] = 2, [100216] = 4, [97172] = 1, [100248] = 4, [114289] = 4, [105651] = 4, [105699] = 3, [105715] = 4, [98368] = 4, [95834] = 2, [99675] = 4, [91786] = 4, [98177] = 12, [97173] = 4, [100249] = 1, [105636] = 4, [95771] = 4, [96584] = 4, [97365] = 4, [91006] = 4, [91787] = 2, [109908] = 10, [96664] = 2, [105876] = 1, [95947] = 4, [99804] = 2, [95772] = 4, [99358] = 4, [101414] = 2, [106785] = 1, [104251] = 4, [100713] = 4, [105845] = 1, [98243] = 4, [98275] = 4, [96028] = 4, [99359] = 3, [105766] = 1, [91008] = 4, [91789] = 4, [98435] = 7, [98706] = 6, [100539] = 4, [98770] = 4, [105703] = 1, [102404] = 4, [99360] = 9, [97097] = 4, [91790] = 4, [98691] = 4, [102277] = 4, [98293] = 1, [98813] = 4, [105720] = 4, [91001] = 4, [101074] = 1, [100532] = 1, [99678] = 4, [104270] = 8, [101991] = 4, [98732] = 1, [98963] = 1, [91792] = 10, [100526] = 4, [98246] = 4, [106546] = 4, [98533] = 10, [105705] = 4, [96015] = 4, [104300] = 4, [113536] = 10, [92610] = 4, [99649] = 12, [98900] = 4, [98406] = 4, [98677] = 1, [91808] = 1, [92350] = 4, [102295] = 10, [102566] = 12, [113998] = 4, [97163] = 3, [102104] = 4, [102375] = 3, [105706] = 8, [95861] = 4, [97068] = 5, [96574] = 5, [97171] = 10, [102094] = 4, [102232] = 4, [99188] = 4, [99307] = 12, [105682] = 8, [92538] = 1, [100527] = 3, [102583] = 4, [96587] = 4, [98280] = 4, [98370] = 4, [98538] = 10, [106786] = 1, [113111] = 1, [91783] = 4, [99956] = 4, [114712] = 3, [91332] = 4, [91794] = 1, [96657] = 12, [98426] = 4, [97197] = 2, [91796] = 10, [98759] = 4, [105915] = 4, [98919] = 4, [99908] = 1, [98362] = 10, [95779] = 10, [99365] = 4, [99891] = 5, [101437] = 1, [90998] = 4, [106059] = 4, [98425] = 4, [96640] = 2, [97182] = 6, [98728] = 7, [95939] = 10, [100529] = 1, [98776] = 4, [105422] = 1, [98792] = 4, [90997] = 4, [105629] = 1, [99366] = 4, [97087] = 2, [101438] = 4, [97119] = 1, [96608] = 2, [98681] = 6, [97677] = 1, [96480] = 1, [102584] = 4, [95842] = 2, [100364] = 4, [101072] = 1, [94968] = 5, [98973] = 1, [102788] = 4, [96934] = 2, [98756] = 4, [107288] = 1, [91793] = 1, [91000] = 8, [91781] = 4, [91782] = 10, [97678] = 8, [98926] = 4, [97200] = 4, [100531] = 8, [92387] = 4, [99033] = 4, [95920] = 2, [98810] = 6, [95766] = 4, [105921] = 4, [96677] = 2, [101679] = 4, [114288] = 4, [96611] = 2, [106787] = 1
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
|
||||
--PART OF DIFFERENT AURA
|
||||
--UPDATE_MOUSEOVER_UNIT
|
||||
function(e)
|
||||
if not aura_env.time then
|
||||
aura_env.time = debugprofilestop()
|
||||
end
|
||||
if not aura_env.mobs then
|
||||
aura_env.mobs = {}
|
||||
end
|
||||
if not aura_env.mobC then
|
||||
aura_env.mobC = 0
|
||||
end
|
||||
local u = "mouseover"
|
||||
local guid = UnitGUID(u)
|
||||
local npc_id = guid:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
npc_id = tonumber(npc_id)
|
||||
aura_env.time = debugprofilestop()
|
||||
--print("aura", guid, aura_env.mobs[guid])
|
||||
if npc_id and aura_env.IDthing[npc_id] then
|
||||
if guid and not aura_env.mouseoverPull[guid] then
|
||||
aura_env.mouseoverPull[guid] = aura_env.IDthing[npc_id]
|
||||
aura_env.mobC = aura_env.mobC + 1
|
||||
end
|
||||
end
|
||||
--This works for now
|
||||
end
|
||||
|
||||
--EVERY FRAME
|
||||
function()
|
||||
if aura_env.time and aura_env.time > 0 then
|
||||
--print(aura_env.mobC)
|
||||
--DevTools_Dump(aura_env.mobs)
|
||||
local totalMouseoverPull = 0
|
||||
for k, v in pairs(aura_env.mouseoverPull) do
|
||||
totalMouseoverPull = totalMouseoverPull + v
|
||||
print(totalMouseoverPull)
|
||||
end
|
||||
if debugprofilestop() - aura_env.time > 1500 then
|
||||
aura_env.time = 0
|
||||
aura_env.mouseoverPull = {}
|
||||
aura_env.mobC = 0
|
||||
print("RESET", aura_env.mobC)
|
||||
DevTools_Dump(aura_env.mobs)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.davystone = {}
|
||||
aura_env.currentPull = {}
|
||||
aura_env.mouseoverPull = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4,
|
||||
[102253] = 4,
|
||||
[98954] = 4,
|
||||
[97185] = 10,
|
||||
[113537] = 10,
|
||||
[101839] = 4,
|
||||
[104246] = 4,
|
||||
[104278] = 10,
|
||||
[97170] = 4,
|
||||
[113506] = 4,
|
||||
[105617] = 4,
|
||||
[105633] = 4,
|
||||
[102095] = 4,
|
||||
[105952] = 6,
|
||||
[97043] = 4,
|
||||
[102430] = 1,
|
||||
[98366] = 4,
|
||||
[95832] = 2,
|
||||
[91784] = 1,
|
||||
[104295] = 1,
|
||||
[102781] = 4,
|
||||
[102287] = 10,
|
||||
[98733] = 4,
|
||||
[102351] = 1,
|
||||
[96247] = 1,
|
||||
[111563] = 4,
|
||||
[95769] = 4,
|
||||
[113699] = 8,
|
||||
[91785] = 2,
|
||||
[100216] = 4,
|
||||
[97172] = 1,
|
||||
[100248] = 4,
|
||||
[114289] = 4,
|
||||
[105651] = 4,
|
||||
[105699] = 3,
|
||||
[105715] = 4,
|
||||
[98368] = 4,
|
||||
[95834] = 2,
|
||||
[99675] = 4,
|
||||
[91786] = 4,
|
||||
[98177] = 12,
|
||||
[97173] = 4,
|
||||
[100249] = 1,
|
||||
[105636] = 4,
|
||||
[95771] = 4,
|
||||
[96584] = 4,
|
||||
[97365] = 4,
|
||||
[91006] = 4,
|
||||
[91787] = 2,
|
||||
[109908] = 10,
|
||||
[96664] = 2,
|
||||
[105876] = 1,
|
||||
[95947] = 4,
|
||||
[99804] = 2,
|
||||
[95772] = 4,
|
||||
[99358] = 4,
|
||||
[101414] = 2,
|
||||
[106785] = 1,
|
||||
[104251] = 4,
|
||||
[100713] = 4,
|
||||
[105845] = 1,
|
||||
[98243] = 4,
|
||||
[98275] = 4,
|
||||
[96028] = 4,
|
||||
[99359] = 3,
|
||||
[105766] = 1,
|
||||
[91008] = 4,
|
||||
[91789] = 4,
|
||||
[98435] = 7,
|
||||
[98706] = 6,
|
||||
[100539] = 4,
|
||||
[98770] = 4,
|
||||
[105703] = 1,
|
||||
[102404] = 4,
|
||||
[99360] = 9,
|
||||
[97097] = 4,
|
||||
[91790] = 4,
|
||||
[98691] = 4,
|
||||
[102277] = 4,
|
||||
[98293] = 1,
|
||||
[98813] = 4,
|
||||
[105720] = 4,
|
||||
[91001] = 4,
|
||||
[101074] = 1,
|
||||
[100532] = 1,
|
||||
[99678] = 4,
|
||||
[104270] = 8,
|
||||
[101991] = 4,
|
||||
[98732] = 1,
|
||||
[98963] = 1,
|
||||
[91792] = 10,
|
||||
[100526] = 4,
|
||||
[98246] = 4,
|
||||
[106546] = 4,
|
||||
[98533] = 10,
|
||||
[105705] = 4,
|
||||
[96015] = 4,
|
||||
[104300] = 4,
|
||||
[113536] = 10,
|
||||
[92610] = 4,
|
||||
[99649] = 12,
|
||||
[98900] = 4,
|
||||
[98406] = 4,
|
||||
[98677] = 1,
|
||||
[91808] = 1,
|
||||
[92350] = 4,
|
||||
[102295] = 10,
|
||||
[102566] = 12,
|
||||
[113998] = 4,
|
||||
[97163] = 3,
|
||||
[102104] = 4,
|
||||
[102375] = 3,
|
||||
[105706] = 8,
|
||||
[95861] = 4,
|
||||
[97068] = 5,
|
||||
[96574] = 5,
|
||||
[97171] = 10,
|
||||
[102094] = 4,
|
||||
[102232] = 4,
|
||||
[99188] = 4,
|
||||
[99307] = 12,
|
||||
[105682] = 8,
|
||||
[92538] = 1,
|
||||
[100527] = 3,
|
||||
[102583] = 4,
|
||||
[96587] = 4,
|
||||
[98280] = 4,
|
||||
[98370] = 4,
|
||||
[98538] = 10,
|
||||
[106786] = 1,
|
||||
[113111] = 1,
|
||||
[91783] = 4,
|
||||
[99956] = 4,
|
||||
[114712] = 3,
|
||||
[91332] = 4,
|
||||
[91794] = 1,
|
||||
[96657] = 12,
|
||||
[98426] = 4,
|
||||
[97197] = 2,
|
||||
[91796] = 10,
|
||||
[98759] = 4,
|
||||
[105915] = 4,
|
||||
[98919] = 4,
|
||||
[99908] = 1,
|
||||
[98362] = 10,
|
||||
[95779] = 10,
|
||||
[99365] = 4,
|
||||
[99891] = 5,
|
||||
[101437] = 1,
|
||||
[90998] = 4,
|
||||
[106059] = 4,
|
||||
[98425] = 4,
|
||||
[96640] = 2,
|
||||
[97182] = 6,
|
||||
[98728] = 7,
|
||||
[95939] = 10,
|
||||
[100529] = 1,
|
||||
[98776] = 4,
|
||||
[105422] = 1,
|
||||
[98792] = 4,
|
||||
[90997] = 4,
|
||||
[105629] = 1,
|
||||
[99366] = 4,
|
||||
[97087] = 2,
|
||||
[101438] = 4,
|
||||
[97119] = 1,
|
||||
[96608] = 2,
|
||||
[98681] = 6,
|
||||
[97677] = 1,
|
||||
[96480] = 1,
|
||||
[102584] = 4,
|
||||
[95842] = 2,
|
||||
[100364] = 4,
|
||||
[101072] = 1,
|
||||
[94968] = 5,
|
||||
[98973] = 1,
|
||||
[102788] = 4,
|
||||
[96934] = 2,
|
||||
[98756] = 4,
|
||||
[107288] = 1,
|
||||
[91793] = 1,
|
||||
[91000] = 8,
|
||||
[91781] = 4,
|
||||
[91782] = 10,
|
||||
[97678] = 8,
|
||||
[98926] = 4,
|
||||
[97200] = 4,
|
||||
[100531] = 8,
|
||||
[92387] = 4,
|
||||
[99033] = 4,
|
||||
[95920] = 2,
|
||||
[98810] = 6,
|
||||
[95766] = 4,
|
||||
[105921] = 4,
|
||||
[96677] = 2,
|
||||
[101679] = 4,
|
||||
[114288] = 4,
|
||||
[96611] = 2,
|
||||
[106787] = 1
|
||||
}
|
||||
--ON SOME EVENTS
|
||||
--Maybe make trigger on ~~party kill?~~ threat update? ++ namepalteadd/remove
|
||||
|
||||
--[[
|
||||
1) On threat update calculate new %
|
||||
2) On namepalte added look for threat and calculate new %
|
||||
3) Organize into table with GUIDs
|
||||
4) On nameplate remove remove from table // PARTY_KILL
|
||||
5) Make more table for current pull, projected pull and projected total
|
||||
6) Organize mobs into groups before bosses or before other groups big ???
|
||||
]]
|
||||
|
||||
--[[
|
||||
1) UNIT_THREAT_LIST_UPDATE (e, u)
|
||||
Get GUID
|
||||
Put into table
|
||||
ggez
|
||||
|
||||
2) NAME_PLATE_UNIT_ADDED NAME_PLATE_UNIT_REMOVED (e, u)
|
||||
UnitDetailedThreatSituation("player", "target") empty result for no threat
|
||||
|
||||
[02:49 PM] Dump: value=UnitDetailedThreatSituation("player", "target")
|
||||
[02:49 PM] [1]=true, --Boolean - returns true if the unit is primary threat target of the mob (is tanking), or false otherwise
|
||||
[02:49 PM] [2]=3, --Integer - returns the threat status for the unit on the mob, or nil if unit is not on mob's threat table. (3 = securely tanking, 2 = insecurely tanking, 1 = not tanking but higher threat than tank, 0 = not tanking and lower threat than tank)
|
||||
[02:49 PM] [3]=100, --Number - returns the unit's threat on the mob as a percentage of the amount required to pull aggro, scaled according to the unit's range from the mob. At 100 the unit will pull aggro. Returns 100 if the unit is tanking and nil if the unit is not on the mob's threat list.
|
||||
[02:49 PM] [4]=255, --Number - returns the unit's threat as a percentage of the tank's current threat. Returns nil if the unit is not on the mob's threat list.
|
||||
[02:49 PM] [5]=0 --Number - returns the unit's total threat on the mob
|
||||
for threat
|
||||
|
||||
3) can say table 1: GUID in current pull - use 1) and 2)
|
||||
table 2: GUID to be pull on mouseover - use previous work
|
||||
table 3: global GUID to be pull - reset with GUID of boss or pre boss maybe?
|
||||
look for PARTY_KILL se in CLEU maybe? (for progress table ?)
|
||||
]]
|
||||
|
||||
--[[
|
||||
Random garbage info
|
||||
|
||||
[10:59 AM] Dump: value=C_Scenario.GetInfo()
|
||||
[10:59 AM] [1]="Black Rook Hold",
|
||||
[10:59 AM] [2]=1,
|
||||
[10:59 AM] [3]=1,
|
||||
[10:59 AM] [4]=3,
|
||||
[10:59 AM] [5]=false,
|
||||
[10:59 AM] [6]=false,
|
||||
[10:59 AM] [7]=false,
|
||||
[10:59 AM] [8]=0,
|
||||
[10:59 AM] [9]=0,
|
||||
[10:59 AM] [10]=1,
|
||||
[10:59 AM] [11]="UNKNOWN"
|
||||
|
||||
[11:01 AM] Dump: value=C_Scenario.GetStepInfo()
|
||||
[11:01 AM] [1]="Black Rook Hold",
|
||||
[11:01 AM] [2]="Deal with the restless spirits of Black Rook Hold.",
|
||||
[11:01 AM] [3]=5, --Num criteria
|
||||
[11:01 AM] [4]=false,
|
||||
[11:01 AM] [5]=false,
|
||||
[11:01 AM] [6]=false,
|
||||
[11:01 AM] [7]=0,
|
||||
[11:01 AM] [8]={
|
||||
[11:01 AM] },
|
||||
[11:01 AM] [10]=0
|
||||
|
||||
/run local numCriteria = select(3, C_Scenario.GetStepInfo()); for i = 1, numCriteria do print(C_Scenario.GetCriteriaInfo(i)) end
|
||||
[11:02 AM] Amalgam of Souls 165 false 0 1 0 1832 0 29464 0 0 false false
|
||||
[11:02 AM] Illysanna Ravencrest 165 false 0 1 0 1833 0 29465 0 0 false false
|
||||
[11:02 AM] Smashspite the Hateful 165 false 0 1 0 1834 0 29466 0 0 false false
|
||||
[11:02 AM] Lord Kurtalos Ravencrest 165 false 0 1 0 1835 0 29467 0 0 false false
|
||||
[11:02 AM] Enemy Forces 0 false 0 360 0 0 0% 0 0 0 false true
|
||||
|
||||
[11:06 AM] Dump: value=C_Scenario.GetCriteriaInfo(5)
|
||||
[11:06 AM] [1]="Enemy Forces",
|
||||
[11:06 AM] [2]=0,
|
||||
[11:06 AM] [3]=false,
|
||||
[11:06 AM] [4]=0,
|
||||
[11:06 AM] [5]=360,
|
||||
[11:06 AM] [6]=0,
|
||||
[11:06 AM] [7]=0,
|
||||
[11:06 AM] [8]="0%",
|
||||
[11:06 AM] [9]=0,
|
||||
[11:06 AM] [10]=0,
|
||||
[11:06 AM] [11]=0,
|
||||
[11:06 AM] [12]=false,
|
||||
[11:06 AM] [13]=true --Weighted progress?
|
||||
]]
|
||||
|
||||
--[[
|
||||
So far got the mouseover counting working
|
||||
Get total mob # from C_Scenario.GetCriteriaInfo(5
|
||||
Add mouseover to #
|
||||
Add pulls & nameplate fuckery from above into same #
|
||||
Maybe use global table for all
|
||||
Should be easy
|
||||
Maybe add textures and attach to namepaltes of planned units??? Pog POG
|
||||
]]
|
||||
function()
|
||||
--Very inefficient maybe fix later who cares
|
||||
local scenarioType = select(10, C_Scenario.GetInfo())
|
||||
if scenarioType == 1 then
|
||||
local numCriteria = select(3, C_Scenario.GetStepInfo())
|
||||
for i = 1, numCriteria do
|
||||
local name = C_Scenario.GetCriteriaInfo(i)
|
||||
if name == "Enemy Forces" then
|
||||
aura_env.davystone.totalProgress = select(5, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.currentProgress = aura_env.davystone.currentProgress:gsub("%%", "")
|
||||
aura_env.davystone.currentProgress = tonumber(aura_env.davystone.currentProgress)
|
||||
aura_env.davystone.newProgress = select(8, C_Scenario.GetCriteriaInfo(i))
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress:gsub("%%", "")
|
||||
aura_env.davystone.newProgress = tonumber(aura_env.davystone.newProgress)
|
||||
end
|
||||
end
|
||||
for i = 1, 40 do
|
||||
local unit = "nameplate" .. i
|
||||
if UnitAffectingCombat(unit) then
|
||||
local GUID = UnitGUID(unit)
|
||||
local ID = GUID:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
ID = tonumber(ID)
|
||||
if aura_env.IDthing[ID] then
|
||||
local progress = aura_env.IDthing[ID]
|
||||
aura_env.davystone.newProgress = aura_env.davystone.newProgress + progress
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
if aura_env.davystone.currentProgress and aura_env.davystone.totalProgress and aura_env.davystone.newProgress then
|
||||
return aura_env.round((aura_env.davystone.currentProgress / aura_env.davystone.totalProgress) * 100, 2) .. " " .. aura_env.round((aura_env.davystone.newProgress / aura_env.davystone.totalProgress) * 100, 2)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
local OnTooltipSetUnit = function()
|
||||
print("yeet")
|
||||
local name, unit = tooltip:GetUnit()
|
||||
local guid = unit and UnitGUID(unit)
|
||||
if guid then
|
||||
local type, zero, server_id, instance_id, zone_uid, npc_id, spawn_uid = strsplit("-", guid)
|
||||
npc_id = tonumber(npc_id)
|
||||
print(npcID)
|
||||
end
|
||||
end
|
||||
GameTooltip:HookScript("OnTooltipSetUnit", OnTooltipSetUnit)
|
||||
aura_env.davystone = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4, [102253] = 4, [98954] = 4, [97185] = 10, [113537] = 10, [101839] = 4, [104246] = 4, [104278] = 10, [97170] = 4, [113506] = 4, [105617] = 4, [105633] = 4, [102095] = 4, [105952] = 6, [97043] = 4, [102430] = 1, [98366] = 4, [95832] = 2, [91784] = 1, [104295] = 1, [102781] = 4, [102287] = 10, [98733] = 4, [102351] = 1, [96247] = 1, [111563] = 4, [95769] = 4, [113699] = 8, [91785] = 2, [100216] = 4, [97172] = 1, [100248] = 4, [114289] = 4, [105651] = 4, [105699] = 3, [105715] = 4, [98368] = 4, [95834] = 2, [99675] = 4, [91786] = 4, [98177] = 12, [97173] = 4, [100249] = 1, [105636] = 4, [95771] = 4, [96584] = 4, [97365] = 4, [91006] = 4, [91787] = 2, [109908] = 10, [96664] = 2, [105876] = 1, [95947] = 4, [99804] = 2, [95772] = 4, [99358] = 4, [101414] = 2, [106785] = 1, [104251] = 4, [100713] = 4, [105845] = 1, [98243] = 4, [98275] = 4, [96028] = 4, [99359] = 3, [105766] = 1, [91008] = 4, [91789] = 4, [98435] = 7, [98706] = 6, [100539] = 4, [98770] = 4, [105703] = 1, [102404] = 4, [99360] = 9, [97097] = 4, [91790] = 4, [98691] = 4, [102277] = 4, [98293] = 1, [98813] = 4, [105720] = 4, [91001] = 4, [101074] = 1, [100532] = 1, [99678] = 4, [104270] = 8, [101991] = 4, [98732] = 1, [98963] = 1, [91792] = 10, [100526] = 4, [98246] = 4, [106546] = 4, [98533] = 10, [105705] = 4, [96015] = 4, [104300] = 4, [113536] = 10, [92610] = 4, [99649] = 12, [98900] = 4, [98406] = 4, [98677] = 1, [91808] = 1, [92350] = 4, [102295] = 10, [102566] = 12, [113998] = 4, [97163] = 3, [102104] = 4, [102375] = 3, [105706] = 8, [95861] = 4, [97068] = 5, [96574] = 5, [97171] = 10, [102094] = 4, [102232] = 4, [99188] = 4, [99307] = 12, [105682] = 8, [92538] = 1, [100527] = 3, [102583] = 4, [96587] = 4, [98280] = 4, [98370] = 4, [98538] = 10, [106786] = 1, [113111] = 1, [91783] = 4, [99956] = 4, [114712] = 3, [91332] = 4, [91794] = 1, [96657] = 12, [98426] = 4, [97197] = 2, [91796] = 10, [98759] = 4, [105915] = 4, [98919] = 4, [99908] = 1, [98362] = 10, [95779] = 10, [99365] = 4, [99891] = 5, [101437] = 1, [90998] = 4, [106059] = 4, [98425] = 4, [96640] = 2, [97182] = 6, [98728] = 7, [95939] = 10, [100529] = 1, [98776] = 4, [105422] = 1, [98792] = 4, [90997] = 4, [105629] = 1, [99366] = 4, [97087] = 2, [101438] = 4, [97119] = 1, [96608] = 2, [98681] = 6, [97677] = 1, [96480] = 1, [102584] = 4, [95842] = 2, [100364] = 4, [101072] = 1, [94968] = 5, [98973] = 1, [102788] = 4, [96934] = 2, [98756] = 4, [107288] = 1, [91793] = 1, [91000] = 8, [91781] = 4, [91782] = 10, [97678] = 8, [98926] = 4, [97200] = 4, [100531] = 8, [92387] = 4, [99033] = 4, [95920] = 2, [98810] = 6, [95766] = 4, [105921] = 4, [96677] = 2, [101679] = 4, [114288] = 4, [96611] = 2, [106787] = 1
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
|
||||
--PART OF DIFFERENT AURA
|
||||
--UPDATE_MOUSEOVER_UNIT
|
||||
function(e)
|
||||
if not aura_env.time then
|
||||
aura_env.time = debugprofilestop()
|
||||
end
|
||||
if not aura_env.mobs then
|
||||
aura_env.mobs = {}
|
||||
end
|
||||
if not aura_env.mobC then
|
||||
aura_env.mobC = 0
|
||||
end
|
||||
local u = "mouseover"
|
||||
local guid = UnitGUID(u)
|
||||
local npc_id = guid:match("%w+%-%d*%-%d*%-%d*%-%d*-(%d*)")
|
||||
npc_id = tonumber(npc_id)
|
||||
aura_env.time = debugprofilestop()
|
||||
--print("aura", guid, aura_env.mobs[guid])
|
||||
if npc_id and aura_env.IDthing[npc_id] then
|
||||
if guid and not aura_env.mouseoverPull[guid] then
|
||||
aura_env.mouseoverPull[guid] = aura_env.IDthing[npc_id]
|
||||
aura_env.mobC = aura_env.mobC + 1
|
||||
end
|
||||
end
|
||||
--This works for now
|
||||
end
|
||||
|
||||
--EVERY FRAME
|
||||
function()
|
||||
if aura_env.time and aura_env.time > 0 then
|
||||
--print(aura_env.mobC)
|
||||
--DevTools_Dump(aura_env.mobs)
|
||||
local totalMouseoverPull = 0
|
||||
for k, v in pairs(aura_env.mouseoverPull) do
|
||||
totalMouseoverPull = totalMouseoverPull + v
|
||||
print(totalMouseoverPull)
|
||||
end
|
||||
if debugprofilestop() - aura_env.time > 1500 then
|
||||
aura_env.time = 0
|
||||
aura_env.mouseoverPull = {}
|
||||
aura_env.mobC = 0
|
||||
print("RESET", aura_env.mobC)
|
||||
DevTools_Dump(aura_env.mobs)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.davystone = {}
|
||||
aura_env.currentPull = {}
|
||||
aura_env.mouseoverPull = {}
|
||||
aura_env.IDthing = {
|
||||
[104277] = 4,
|
||||
[102253] = 4,
|
||||
[98954] = 4,
|
||||
[97185] = 10,
|
||||
[113537] = 10,
|
||||
[101839] = 4,
|
||||
[104246] = 4,
|
||||
[104278] = 10,
|
||||
[97170] = 4,
|
||||
[113506] = 4,
|
||||
[105617] = 4,
|
||||
[105633] = 4,
|
||||
[102095] = 4,
|
||||
[105952] = 6,
|
||||
[97043] = 4,
|
||||
[102430] = 1,
|
||||
[98366] = 4,
|
||||
[95832] = 2,
|
||||
[91784] = 1,
|
||||
[104295] = 1,
|
||||
[102781] = 4,
|
||||
[102287] = 10,
|
||||
[98733] = 4,
|
||||
[102351] = 1,
|
||||
[96247] = 1,
|
||||
[111563] = 4,
|
||||
[95769] = 4,
|
||||
[113699] = 8,
|
||||
[91785] = 2,
|
||||
[100216] = 4,
|
||||
[97172] = 1,
|
||||
[100248] = 4,
|
||||
[114289] = 4,
|
||||
[105651] = 4,
|
||||
[105699] = 3,
|
||||
[105715] = 4,
|
||||
[98368] = 4,
|
||||
[95834] = 2,
|
||||
[99675] = 4,
|
||||
[91786] = 4,
|
||||
[98177] = 12,
|
||||
[97173] = 4,
|
||||
[100249] = 1,
|
||||
[105636] = 4,
|
||||
[95771] = 4,
|
||||
[96584] = 4,
|
||||
[97365] = 4,
|
||||
[91006] = 4,
|
||||
[91787] = 2,
|
||||
[109908] = 10,
|
||||
[96664] = 2,
|
||||
[105876] = 1,
|
||||
[95947] = 4,
|
||||
[99804] = 2,
|
||||
[95772] = 4,
|
||||
[99358] = 4,
|
||||
[101414] = 2,
|
||||
[106785] = 1,
|
||||
[104251] = 4,
|
||||
[100713] = 4,
|
||||
[105845] = 1,
|
||||
[98243] = 4,
|
||||
[98275] = 4,
|
||||
[96028] = 4,
|
||||
[99359] = 3,
|
||||
[105766] = 1,
|
||||
[91008] = 4,
|
||||
[91789] = 4,
|
||||
[98435] = 7,
|
||||
[98706] = 6,
|
||||
[100539] = 4,
|
||||
[98770] = 4,
|
||||
[105703] = 1,
|
||||
[102404] = 4,
|
||||
[99360] = 9,
|
||||
[97097] = 4,
|
||||
[91790] = 4,
|
||||
[98691] = 4,
|
||||
[102277] = 4,
|
||||
[98293] = 1,
|
||||
[98813] = 4,
|
||||
[105720] = 4,
|
||||
[91001] = 4,
|
||||
[101074] = 1,
|
||||
[100532] = 1,
|
||||
[99678] = 4,
|
||||
[104270] = 8,
|
||||
[101991] = 4,
|
||||
[98732] = 1,
|
||||
[98963] = 1,
|
||||
[91792] = 10,
|
||||
[100526] = 4,
|
||||
[98246] = 4,
|
||||
[106546] = 4,
|
||||
[98533] = 10,
|
||||
[105705] = 4,
|
||||
[96015] = 4,
|
||||
[104300] = 4,
|
||||
[113536] = 10,
|
||||
[92610] = 4,
|
||||
[99649] = 12,
|
||||
[98900] = 4,
|
||||
[98406] = 4,
|
||||
[98677] = 1,
|
||||
[91808] = 1,
|
||||
[92350] = 4,
|
||||
[102295] = 10,
|
||||
[102566] = 12,
|
||||
[113998] = 4,
|
||||
[97163] = 3,
|
||||
[102104] = 4,
|
||||
[102375] = 3,
|
||||
[105706] = 8,
|
||||
[95861] = 4,
|
||||
[97068] = 5,
|
||||
[96574] = 5,
|
||||
[97171] = 10,
|
||||
[102094] = 4,
|
||||
[102232] = 4,
|
||||
[99188] = 4,
|
||||
[99307] = 12,
|
||||
[105682] = 8,
|
||||
[92538] = 1,
|
||||
[100527] = 3,
|
||||
[102583] = 4,
|
||||
[96587] = 4,
|
||||
[98280] = 4,
|
||||
[98370] = 4,
|
||||
[98538] = 10,
|
||||
[106786] = 1,
|
||||
[113111] = 1,
|
||||
[91783] = 4,
|
||||
[99956] = 4,
|
||||
[114712] = 3,
|
||||
[91332] = 4,
|
||||
[91794] = 1,
|
||||
[96657] = 12,
|
||||
[98426] = 4,
|
||||
[97197] = 2,
|
||||
[91796] = 10,
|
||||
[98759] = 4,
|
||||
[105915] = 4,
|
||||
[98919] = 4,
|
||||
[99908] = 1,
|
||||
[98362] = 10,
|
||||
[95779] = 10,
|
||||
[99365] = 4,
|
||||
[99891] = 5,
|
||||
[101437] = 1,
|
||||
[90998] = 4,
|
||||
[106059] = 4,
|
||||
[98425] = 4,
|
||||
[96640] = 2,
|
||||
[97182] = 6,
|
||||
[98728] = 7,
|
||||
[95939] = 10,
|
||||
[100529] = 1,
|
||||
[98776] = 4,
|
||||
[105422] = 1,
|
||||
[98792] = 4,
|
||||
[90997] = 4,
|
||||
[105629] = 1,
|
||||
[99366] = 4,
|
||||
[97087] = 2,
|
||||
[101438] = 4,
|
||||
[97119] = 1,
|
||||
[96608] = 2,
|
||||
[98681] = 6,
|
||||
[97677] = 1,
|
||||
[96480] = 1,
|
||||
[102584] = 4,
|
||||
[95842] = 2,
|
||||
[100364] = 4,
|
||||
[101072] = 1,
|
||||
[94968] = 5,
|
||||
[98973] = 1,
|
||||
[102788] = 4,
|
||||
[96934] = 2,
|
||||
[98756] = 4,
|
||||
[107288] = 1,
|
||||
[91793] = 1,
|
||||
[91000] = 8,
|
||||
[91781] = 4,
|
||||
[91782] = 10,
|
||||
[97678] = 8,
|
||||
[98926] = 4,
|
||||
[97200] = 4,
|
||||
[100531] = 8,
|
||||
[92387] = 4,
|
||||
[99033] = 4,
|
||||
[95920] = 2,
|
||||
[98810] = 6,
|
||||
[95766] = 4,
|
||||
[105921] = 4,
|
||||
[96677] = 2,
|
||||
[101679] = 4,
|
||||
[114288] = 4,
|
||||
[96611] = 2,
|
||||
[106787] = 1
|
||||
}
|
||||
|
||||
@@ -1,64 +1,64 @@
|
||||
--PLAYER_DEAD COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local se = select(3, ...)
|
||||
if se == "SPELL_DAMAGE" or se == "SPELL_PERIODIC_DAMAGE" then
|
||||
local caster = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
local overkill = select(17, ...)
|
||||
if overkill > 0 and target == UnitName("player") then
|
||||
local id = #DED + 1
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
local localzone = GetZoneText()
|
||||
DED[id] =
|
||||
{
|
||||
["Date"] = localdate,
|
||||
["Time"] = localtime,
|
||||
["Zone"] = localzone,
|
||||
["Killer"] = caster,
|
||||
["Overkill"] = overkill
|
||||
}
|
||||
end
|
||||
end
|
||||
if se == "SWING_DAMAGE" then
|
||||
local caster = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
local overkill = select(14, ...)
|
||||
if overkill > 0 and target == UnitName("player") then
|
||||
local id = #DED + 1
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
local localzone = GetZoneText()
|
||||
DED[id] =
|
||||
{
|
||||
["Date"] = localdate,
|
||||
["Time"] = localtime,
|
||||
["Zone"] = localzone,
|
||||
["Killer"] = caster,
|
||||
["Overkill"] = overkill
|
||||
}
|
||||
end
|
||||
end
|
||||
--PLAYER_DEAD COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local se = select(3, ...)
|
||||
if se == "SPELL_DAMAGE" or se == "SPELL_PERIODIC_DAMAGE" then
|
||||
local caster = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
local overkill = select(17, ...)
|
||||
if overkill > 0 and target == UnitName("player") then
|
||||
local id = #DED + 1
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
local localzone = GetZoneText()
|
||||
DED[id] =
|
||||
{
|
||||
["Date"] = localdate,
|
||||
["Time"] = localtime,
|
||||
["Zone"] = localzone,
|
||||
["Killer"] = caster,
|
||||
["Overkill"] = overkill
|
||||
}
|
||||
end
|
||||
end
|
||||
if se == "SWING_DAMAGE" then
|
||||
local caster = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
local overkill = select(14, ...)
|
||||
if overkill > 0 and target == UnitName("player") then
|
||||
local id = #DED + 1
|
||||
local date = date()
|
||||
local localtime = date:match("%d%d%/%d%d%/%d%d%s(%d%d%p%d%d%p%d%d)")
|
||||
local year = date:match("%d%d%/%d%d/(%d%d)") + 2000 --01/07/(19) 14:36:42
|
||||
local month = date:match("(%d%d)") --(01)/07/19 14:36:42
|
||||
local day = date:match("%d%d%/(%d%d)") --01/(07)/19 14:36:42
|
||||
--Remove first place zeros
|
||||
if day:find("0") == 1 then
|
||||
day = day:gsub("0", "")
|
||||
end
|
||||
if month:find("0") == 1 then
|
||||
month = month:gsub("0", "")
|
||||
end
|
||||
local localdate = day .. "." .. month .. "." .. year
|
||||
local localzone = GetZoneText()
|
||||
DED[id] =
|
||||
{
|
||||
["Date"] = localdate,
|
||||
["Time"] = localtime,
|
||||
["Zone"] = localzone,
|
||||
["Killer"] = caster,
|
||||
["Overkill"] = overkill
|
||||
}
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,14 +1,14 @@
|
||||
--Delete Dumbass Shit
|
||||
function()
|
||||
local deletlist = {34984}
|
||||
for i = 1, GetContainerNumSlots(0) do
|
||||
local _, _, _, _, _, _, _, _, _, itemID = GetContainerItemInfo(0, i)
|
||||
for k, v in ipairs(deletlist) do
|
||||
if itemID == v then
|
||||
PickupContainerItem(0, i)
|
||||
print(itemID)
|
||||
DeleteCursorItem()
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
--Delete Dumbass Shit
|
||||
function()
|
||||
local deletlist = {34984}
|
||||
for i = 1, GetContainerNumSlots(0) do
|
||||
local _, _, _, _, _, _, _, _, _, itemID = GetContainerItemInfo(0, i)
|
||||
for k, v in ipairs(deletlist) do
|
||||
if itemID == v then
|
||||
PickupContainerItem(0, i)
|
||||
print(itemID)
|
||||
DeleteCursorItem()
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...)
|
||||
local ID = select(5, ...)
|
||||
local source = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
if target == UnitName("player") and (subEvent == "SWING_DAMAGE" or subEvent == "SPELL_DAMAGE") and string.match(ID, "Player") then
|
||||
local targetExist = 0
|
||||
for k, v in ipairs(aura_env.dickRiders) do
|
||||
if source == v then
|
||||
targetExist = 1
|
||||
end
|
||||
end
|
||||
if targetExist == 0 then
|
||||
aura_env.dickRiders[table.getn(aura_env.dickRiders) + 1] = source
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = table.getn(aura_env.dickRiders) .. "\n"
|
||||
for k, v in ipairs(aura_env.dickRiders) do
|
||||
output = output .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT AND SHOW
|
||||
aura_env.dickRiders = {}
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...)
|
||||
local ID = select(5, ...)
|
||||
local source = select(6, ...)
|
||||
local target = select(10, ...)
|
||||
if target == UnitName("player") and (subEvent == "SWING_DAMAGE" or subEvent == "SPELL_DAMAGE") and string.match(ID, "Player") then
|
||||
local targetExist = 0
|
||||
for k, v in ipairs(aura_env.dickRiders) do
|
||||
if source == v then
|
||||
targetExist = 1
|
||||
end
|
||||
end
|
||||
if targetExist == 0 then
|
||||
aura_env.dickRiders[table.getn(aura_env.dickRiders) + 1] = source
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = table.getn(aura_env.dickRiders) .. "\n"
|
||||
for k, v in ipairs(aura_env.dickRiders) do
|
||||
output = output .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT AND SHOW
|
||||
aura_env.dickRiders = {}
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
DISPLAY
|
||||
function()
|
||||
if aura_env.cast_spells > 0 then
|
||||
local pp = aura_env.count / aura_env.cast_spells
|
||||
if (2) then
|
||||
pp = math.floor((pp * 10^2) + 0.5) / (10^2)
|
||||
else
|
||||
pp = math.floor(pp+0.5)
|
||||
end
|
||||
pp = pp * 100
|
||||
return "Divine " .. aura_env.count .. " " .. aura_env.cast_spells .. " " .. pp
|
||||
else
|
||||
return "Divine " .. aura_env.count .. " " .. aura_env.cast_spells
|
||||
end
|
||||
end
|
||||
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(_,_,subEvent,_,_,sourceName,_,_,_,_,_,_,spellId)
|
||||
if subEvent == "SPELL_CAST_SUCCESS" and sourceName == UnitName("player") then
|
||||
if spellId == 85256 or spellId == 53385 then
|
||||
aura_env.cast_spells = aura_env.cast_spells + 1
|
||||
end
|
||||
end
|
||||
if subEvent == "SPELL_AURA_APPLIED" and sourceName == UnitName("player") then
|
||||
if spellId == 223819 then
|
||||
aura_env.count = aura_env.count + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.count = 0
|
||||
aura_env.cast_spells = 0
|
||||
DISPLAY
|
||||
function()
|
||||
if aura_env.cast_spells > 0 then
|
||||
local pp = aura_env.count / aura_env.cast_spells
|
||||
if (2) then
|
||||
pp = math.floor((pp * 10^2) + 0.5) / (10^2)
|
||||
else
|
||||
pp = math.floor(pp+0.5)
|
||||
end
|
||||
pp = pp * 100
|
||||
return "Divine " .. aura_env.count .. " " .. aura_env.cast_spells .. " " .. pp
|
||||
else
|
||||
return "Divine " .. aura_env.count .. " " .. aura_env.cast_spells
|
||||
end
|
||||
end
|
||||
|
||||
COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(_,_,subEvent,_,_,sourceName,_,_,_,_,_,_,spellId)
|
||||
if subEvent == "SPELL_CAST_SUCCESS" and sourceName == UnitName("player") then
|
||||
if spellId == 85256 or spellId == 53385 then
|
||||
aura_env.cast_spells = aura_env.cast_spells + 1
|
||||
end
|
||||
end
|
||||
if subEvent == "SPELL_AURA_APPLIED" and sourceName == UnitName("player") then
|
||||
if spellId == 223819 then
|
||||
aura_env.count = aura_env.count + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.count = 0
|
||||
aura_env.cast_spells = 0
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
local leather = GetItemCount("Raw Beast Hide")
|
||||
return leather .. " " .. leather / 5 .. "\n" .. aura_env.skins .. " " .. aura_env.hide .. " " .. round(aura_env.hide / aura_env.skins, 1)
|
||||
end
|
||||
|
||||
--CHAT_MSG_LOOT
|
||||
function(...)
|
||||
local msg = select(2, ...)
|
||||
local what = msg:match("%[(.+)%]")
|
||||
local howmuch = msg:match("x(%d*)") or 1
|
||||
if what == "Raw Beast Hide" then
|
||||
aura_env.skins = aura_env.skins + 1
|
||||
aura_env.hide = aura_env.hide + howmuch
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.skins = 0
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
local leather = GetItemCount("Raw Beast Hide")
|
||||
return leather .. " " .. leather / 5 .. "\n" .. aura_env.skins .. " " .. aura_env.hide .. " " .. round(aura_env.hide / aura_env.skins, 1)
|
||||
end
|
||||
|
||||
--CHAT_MSG_LOOT
|
||||
function(...)
|
||||
local msg = select(2, ...)
|
||||
local what = msg:match("%[(.+)%]")
|
||||
local howmuch = msg:match("x(%d*)") or 1
|
||||
if what == "Raw Beast Hide" then
|
||||
aura_env.skins = aura_env.skins + 1
|
||||
aura_env.hide = aura_env.hide + howmuch
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.skins = 0
|
||||
aura_env.hide = 0
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,55 +1,55 @@
|
||||
--NAME_PLATE_UNIT_ADDED NAME_PLATE_UNIT_REMOVED PLAYER_TARGET_CHANGED
|
||||
function(e,id)
|
||||
if e == "NAME_PLATE_UNIT_ADDED" then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
table.insert(aura_env.targets, UnitName(id) .. " " .. race)
|
||||
end
|
||||
end
|
||||
if e == "NAME_PLATE_UNIT_REMOVED" then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
for k,v in ipairs(aura_env.targets) do
|
||||
if v:match(UnitName(id)) then
|
||||
table.remove(aura_env.targets, k)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if e == "PLAYER_TARGET_CHANGED" and UnitExists("target") then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
table.insert(aura_env.targets, UnitName(id) .. " " .. race)
|
||||
end
|
||||
end
|
||||
if e == "PLAYER_TARGET_CHANGED" and not UnitExists("target") then
|
||||
aura_env.targets = {}
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(aura_env.targets) do
|
||||
output = output .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.races =
|
||||
{
|
||||
["Gnome"] = 1,
|
||||
["Night Elf"] = 0,
|
||||
["Draenei"] = 0,
|
||||
["Orc"] = 0,
|
||||
["Undead"] = 0,
|
||||
["Dwarf"] = 1,
|
||||
["Human"] = 0,
|
||||
["Tauren"] = 0,
|
||||
["Worgen"] = 0,
|
||||
}
|
||||
--NAME_PLATE_UNIT_ADDED NAME_PLATE_UNIT_REMOVED PLAYER_TARGET_CHANGED
|
||||
function(e,id)
|
||||
if e == "NAME_PLATE_UNIT_ADDED" then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
table.insert(aura_env.targets, UnitName(id) .. " " .. race)
|
||||
end
|
||||
end
|
||||
if e == "NAME_PLATE_UNIT_REMOVED" then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
for k,v in ipairs(aura_env.targets) do
|
||||
if v:match(UnitName(id)) then
|
||||
table.remove(aura_env.targets, k)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
if e == "PLAYER_TARGET_CHANGED" and UnitExists("target") then
|
||||
local race = UnitRace(id)
|
||||
local sex = UnitSex(id)
|
||||
if sex == 3 and aura_env.races[race] == 1 then
|
||||
table.insert(aura_env.targets, UnitName(id) .. " " .. race)
|
||||
end
|
||||
end
|
||||
if e == "PLAYER_TARGET_CHANGED" and not UnitExists("target") then
|
||||
aura_env.targets = {}
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in ipairs(aura_env.targets) do
|
||||
output = output .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.races =
|
||||
{
|
||||
["Gnome"] = 1,
|
||||
["Night Elf"] = 0,
|
||||
["Draenei"] = 0,
|
||||
["Orc"] = 0,
|
||||
["Undead"] = 0,
|
||||
["Dwarf"] = 1,
|
||||
["Human"] = 0,
|
||||
["Tauren"] = 0,
|
||||
["Worgen"] = 0,
|
||||
}
|
||||
aura_env.targets = {}
|
||||
@@ -1,116 +1,116 @@
|
||||
--ZONE_CHANGED_NEW_AREA GGEZCHATSPAM GGEZBEGIN GGEZSTOP INSPIREME
|
||||
--Doesn't work :((((((
|
||||
function(e)
|
||||
if e == "ZONE_CHANGED_NEW_AREA" then
|
||||
local currentZone = GetRealZoneText()
|
||||
if currentZone == "Elwynn Forest" then
|
||||
print("GET INSPIRED")
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(15, function() WeakAuras.ScanEvents("GGEZCHATSPAM") end) end
|
||||
else
|
||||
print(":(")
|
||||
if aura_env.ticker then aura_env.ticker:Cancel(); aura_env.ticker = nil end
|
||||
end
|
||||
elseif e == "GGEZCHATSPAM" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
elseif e == "GGEZBEGIN" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
print("GET INSPIRED")
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(15, function() WeakAuras.ScanEvents("GGEZCHATSPAM") end) end
|
||||
elseif e == "GGEZSTOP" then
|
||||
if aura_env.ticker then aura_env.ticker:Cancel(); aura_env.ticker = nil end
|
||||
elseif e == "INSPIREME" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.chatMessages = {"Ah shucks... you guys are the best!", "C’mon, Mom! One more game before you tuck me in. Oops mistell.", "For glory and honor! Huzzah comrades!", "Gee whiz! That was fun. Good playing!", "Good game! Best of luck to you all!", "Great game, everyone!", "I could really use a hug right now.", "I feel very, very small... please hold me...", "I'm trying to be a nicer person. It's hard, but I am trying guys.", "I'm wrestling with some insecurity issues in my life but thank you all for playing with me.", "It was an honor to play with you all. Thank you.", "It’s past my bedtime. Please don’t tell my mommy.", "Mommy says people my age shouldn’t suck their thumbs.", "Well played. I salute you all.", "Wishing you all the best."}
|
||||
|
||||
aura_env.inspirationalQuotes = {
|
||||
"Sheep love nu metal",
|
||||
"Students eat what reality stars demand",
|
||||
"Don't investigate bath salts",
|
||||
"Push yourself against yoga",
|
||||
"Artificate regulations",
|
||||
"Human emotion can't always be sad",
|
||||
"There is no need to ruin your marriage because of multiresistant bacteria",
|
||||
"Failing at punching yourself is probably caused by retardation",
|
||||
"Get erected and don't be scientific",
|
||||
"Be weary of rimjobs",
|
||||
"Keep dieting",
|
||||
"Ignore how your joints are pulsating",
|
||||
"You cannot allow RFID-chips to jeopardize your dreams",
|
||||
"Don’t you get tired of sleeping?",
|
||||
"Ass kissing can be a cry for help",
|
||||
"Stop using a condom",
|
||||
"Simply being beautiful, doesn’t mean you’re not average",
|
||||
"Trust the grotesqueness of time",
|
||||
"Your head is dissolving the ground",
|
||||
"Keep in mind how God once said: A friend loves you",
|
||||
"All you need in order to create art is gasoline and organic vegetables",
|
||||
"It takes soft drugs, like marijuana to become above average within the business of caressing",
|
||||
"Carry on straightening",
|
||||
"Try to think about that ancient proverb: Those who can live through ignorance, can sell out the earth",
|
||||
"Be the first person ever to listen to what what nobody expects you to listen to",
|
||||
"Think about that ancient buddhist wisdom: Our bodily orifices end when our orgasms begin",
|
||||
"Aim to straighten your belly",
|
||||
"Keep your eyes shut",
|
||||
"You can be the first person in the world to try to punch what others find unpunchable",
|
||||
"Think about these words of wisdom: Glory holes begin when mason jars end",
|
||||
"Keep in mind that you are not average",
|
||||
"Notice how your nose is letting go",
|
||||
"Bend your stomach inwards",
|
||||
"It's your life. Cut your hair",
|
||||
"I am so clever that sometimes I don’t understand a single word of what I am saying",
|
||||
"The only distinction between daylight and an imaginary friend, is that an imaginary friend doesn’t cost anything",
|
||||
"If one expects irony, one has to prepare for a violin",
|
||||
"Back in the middle ages there was a dimwitted wanderer who was looking for some poontang, when he encountered a tired, old seer. \"Can you tell me where to find some poontang?\" he asked the seer. The seer quickly replied \"of some poontang I do not know, for I am only a seer\"",
|
||||
"Think about how your head is energized by the vacuum of space",
|
||||
"Don't cry over your shrinking wealth, just eat more calories",
|
||||
"There are some old people who only say no to cryptocurrencies",
|
||||
"Regret and call 911",
|
||||
"Reveal your teeth",
|
||||
"Become independent from fatties",
|
||||
"Don't stop freaking out",
|
||||
"Car salesmen become car salesmen because of weakness",
|
||||
"You have always been a smelly wreck",
|
||||
"Love milk, die young",
|
||||
"Childhood is almost identical to being buried alive, you never know what you're gonna get",
|
||||
"Can you imagine what would happend if the robots were allowed to wear clothes?",
|
||||
"Where wisdom collapses farts are born",
|
||||
"Only when you understand the beatuy of vegetables will you confront money",
|
||||
"Look at the watch, prepare to die, hurt your mouth",
|
||||
"Before inspiration comes the slaughter",
|
||||
"Try to tell yourself that you are horrible",
|
||||
"If you want to get somewhere in life you have to try to be dead",
|
||||
"Spending time with your family is impossible if you don't do drugs",
|
||||
"Canada. It's a hoax",
|
||||
"It's up to you to remind yourself that you are undesired",
|
||||
"Our large intestines end where our souls begin",
|
||||
"Seek success but prepare for vegetables",
|
||||
"Mass-incineration is 70 percent a cry for help",
|
||||
"Face risk and drink milk",
|
||||
"There is no I in \"Totalitarianism\"",
|
||||
"Don't argue with success, be naked",
|
||||
"If you actually need recognition be a complete imbecile",
|
||||
"You are a russian bot",
|
||||
"Each day is another chance to be dreadfully dysfunctional",
|
||||
"Be the reason why a stranger calls the police at night",
|
||||
"Hate the mountains",
|
||||
"Neighbourhoods begin when we learn to moisturize love",
|
||||
"Puberty can be quite similar to having brain damage",
|
||||
"Uuuuuurrr Ahhhrrr Uhrrrrr Ahhhhhhrrr Aaaaaarrhg",
|
||||
"The simple fact that you are dead makes you awesome",
|
||||
"Get fucked",
|
||||
"You are being monitored, keep yourself frightened",
|
||||
"Inspiration is to re-demand ",
|
||||
"Invert your stomach backwards ",
|
||||
"Together we can make equality collapse under its own weight ",
|
||||
"If you find it difficult to achieve the right state, consider this ancient buddhist wisdom: The UFO phenomenon is personalities",
|
||||
"Isn't it beautiful to take notice of how the air you breathe is letting go of the walls around you?",
|
||||
}
|
||||
aura_env.size = table.getn(aura_env.inspirationalQuotes)
|
||||
print(aura_env.size)
|
||||
--ZONE_CHANGED_NEW_AREA GGEZCHATSPAM GGEZBEGIN GGEZSTOP INSPIREME
|
||||
--Doesn't work :((((((
|
||||
function(e)
|
||||
if e == "ZONE_CHANGED_NEW_AREA" then
|
||||
local currentZone = GetRealZoneText()
|
||||
if currentZone == "Elwynn Forest" then
|
||||
print("GET INSPIRED")
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(15, function() WeakAuras.ScanEvents("GGEZCHATSPAM") end) end
|
||||
else
|
||||
print(":(")
|
||||
if aura_env.ticker then aura_env.ticker:Cancel(); aura_env.ticker = nil end
|
||||
end
|
||||
elseif e == "GGEZCHATSPAM" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
elseif e == "GGEZBEGIN" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
print("GET INSPIRED")
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(15, function() WeakAuras.ScanEvents("GGEZCHATSPAM") end) end
|
||||
elseif e == "GGEZSTOP" then
|
||||
if aura_env.ticker then aura_env.ticker:Cancel(); aura_env.ticker = nil end
|
||||
elseif e == "INSPIREME" then
|
||||
local rng = math.random(1, aura_env.size)
|
||||
SendChatMessage(aura_env.inspirationalQuotes[rng], "SAY")
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.chatMessages = {"Ah shucks... you guys are the best!", "C’mon, Mom! One more game before you tuck me in. Oops mistell.", "For glory and honor! Huzzah comrades!", "Gee whiz! That was fun. Good playing!", "Good game! Best of luck to you all!", "Great game, everyone!", "I could really use a hug right now.", "I feel very, very small... please hold me...", "I'm trying to be a nicer person. It's hard, but I am trying guys.", "I'm wrestling with some insecurity issues in my life but thank you all for playing with me.", "It was an honor to play with you all. Thank you.", "It’s past my bedtime. Please don’t tell my mommy.", "Mommy says people my age shouldn’t suck their thumbs.", "Well played. I salute you all.", "Wishing you all the best."}
|
||||
|
||||
aura_env.inspirationalQuotes = {
|
||||
"Sheep love nu metal",
|
||||
"Students eat what reality stars demand",
|
||||
"Don't investigate bath salts",
|
||||
"Push yourself against yoga",
|
||||
"Artificate regulations",
|
||||
"Human emotion can't always be sad",
|
||||
"There is no need to ruin your marriage because of multiresistant bacteria",
|
||||
"Failing at punching yourself is probably caused by retardation",
|
||||
"Get erected and don't be scientific",
|
||||
"Be weary of rimjobs",
|
||||
"Keep dieting",
|
||||
"Ignore how your joints are pulsating",
|
||||
"You cannot allow RFID-chips to jeopardize your dreams",
|
||||
"Don’t you get tired of sleeping?",
|
||||
"Ass kissing can be a cry for help",
|
||||
"Stop using a condom",
|
||||
"Simply being beautiful, doesn’t mean you’re not average",
|
||||
"Trust the grotesqueness of time",
|
||||
"Your head is dissolving the ground",
|
||||
"Keep in mind how God once said: A friend loves you",
|
||||
"All you need in order to create art is gasoline and organic vegetables",
|
||||
"It takes soft drugs, like marijuana to become above average within the business of caressing",
|
||||
"Carry on straightening",
|
||||
"Try to think about that ancient proverb: Those who can live through ignorance, can sell out the earth",
|
||||
"Be the first person ever to listen to what what nobody expects you to listen to",
|
||||
"Think about that ancient buddhist wisdom: Our bodily orifices end when our orgasms begin",
|
||||
"Aim to straighten your belly",
|
||||
"Keep your eyes shut",
|
||||
"You can be the first person in the world to try to punch what others find unpunchable",
|
||||
"Think about these words of wisdom: Glory holes begin when mason jars end",
|
||||
"Keep in mind that you are not average",
|
||||
"Notice how your nose is letting go",
|
||||
"Bend your stomach inwards",
|
||||
"It's your life. Cut your hair",
|
||||
"I am so clever that sometimes I don’t understand a single word of what I am saying",
|
||||
"The only distinction between daylight and an imaginary friend, is that an imaginary friend doesn’t cost anything",
|
||||
"If one expects irony, one has to prepare for a violin",
|
||||
"Back in the middle ages there was a dimwitted wanderer who was looking for some poontang, when he encountered a tired, old seer. \"Can you tell me where to find some poontang?\" he asked the seer. The seer quickly replied \"of some poontang I do not know, for I am only a seer\"",
|
||||
"Think about how your head is energized by the vacuum of space",
|
||||
"Don't cry over your shrinking wealth, just eat more calories",
|
||||
"There are some old people who only say no to cryptocurrencies",
|
||||
"Regret and call 911",
|
||||
"Reveal your teeth",
|
||||
"Become independent from fatties",
|
||||
"Don't stop freaking out",
|
||||
"Car salesmen become car salesmen because of weakness",
|
||||
"You have always been a smelly wreck",
|
||||
"Love milk, die young",
|
||||
"Childhood is almost identical to being buried alive, you never know what you're gonna get",
|
||||
"Can you imagine what would happend if the robots were allowed to wear clothes?",
|
||||
"Where wisdom collapses farts are born",
|
||||
"Only when you understand the beatuy of vegetables will you confront money",
|
||||
"Look at the watch, prepare to die, hurt your mouth",
|
||||
"Before inspiration comes the slaughter",
|
||||
"Try to tell yourself that you are horrible",
|
||||
"If you want to get somewhere in life you have to try to be dead",
|
||||
"Spending time with your family is impossible if you don't do drugs",
|
||||
"Canada. It's a hoax",
|
||||
"It's up to you to remind yourself that you are undesired",
|
||||
"Our large intestines end where our souls begin",
|
||||
"Seek success but prepare for vegetables",
|
||||
"Mass-incineration is 70 percent a cry for help",
|
||||
"Face risk and drink milk",
|
||||
"There is no I in \"Totalitarianism\"",
|
||||
"Don't argue with success, be naked",
|
||||
"If you actually need recognition be a complete imbecile",
|
||||
"You are a russian bot",
|
||||
"Each day is another chance to be dreadfully dysfunctional",
|
||||
"Be the reason why a stranger calls the police at night",
|
||||
"Hate the mountains",
|
||||
"Neighbourhoods begin when we learn to moisturize love",
|
||||
"Puberty can be quite similar to having brain damage",
|
||||
"Uuuuuurrr Ahhhrrr Uhrrrrr Ahhhhhhrrr Aaaaaarrhg",
|
||||
"The simple fact that you are dead makes you awesome",
|
||||
"Get fucked",
|
||||
"You are being monitored, keep yourself frightened",
|
||||
"Inspiration is to re-demand ",
|
||||
"Invert your stomach backwards ",
|
||||
"Together we can make equality collapse under its own weight ",
|
||||
"If you find it difficult to achieve the right state, consider this ancient buddhist wisdom: The UFO phenomenon is personalities",
|
||||
"Isn't it beautiful to take notice of how the air you breathe is letting go of the walls around you?",
|
||||
}
|
||||
aura_env.size = table.getn(aura_env.inspirationalQuotes)
|
||||
print(aura_env.size)
|
||||
|
||||
@@ -1,131 +1,131 @@
|
||||
DISPLAY
|
||||
function()
|
||||
if aura_env.errorFlag == 0 then
|
||||
if aura_env.triggerState == 1 then
|
||||
local tt = math.floor((GetTime() - aura_env.startTime) * 10)
|
||||
local nameplateindex = {}
|
||||
local pointer = 1
|
||||
if aura_env.target == 0 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) and UnitIsFriend("player", "nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if aura_env.target == 1 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) and UnitIsEnemy("player", "nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if aura_env.target == 2 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if nameplateindex[1] == nil then
|
||||
nameplateindex[1] = UnitName("player")
|
||||
end
|
||||
if tt ~= aura_env.lastTime and tt % aura_env.tickRate == 0 then
|
||||
DoEmote(aura_env.emoteToken, "nameplate" .. nameplateindex[aura_env.pointer2])
|
||||
aura_env.pointer2 = aura_env.pointer2 + 1
|
||||
aura_env.lastTime = tt
|
||||
end
|
||||
if aura_env.pointer2 >= pointer then
|
||||
aura_env.pointer2 = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
CHAT_MSG_WHISPER
|
||||
function(_,msg,sender)
|
||||
if aura_env.errorFlag == 0 then
|
||||
sender = string.match(sender, "%a+")
|
||||
if aura_env.caseSensitive == 0 then
|
||||
msg = msg:lower()
|
||||
aura_env.triggerOn = aura_env.triggerOn:lower()
|
||||
aura_env.triggerOff = aura_env.triggerOff:lower()
|
||||
end
|
||||
if sender == UnitName("player") and msg == aura_env.triggerOn and aura_env.triggerState == 0 then
|
||||
aura_env.triggerState = 1
|
||||
print("ENABLED")
|
||||
end
|
||||
if sender == UnitName("player") and msg == aura_env.triggerOff and aura_env.triggerState == 1 then
|
||||
aura_env.triggerState = 0
|
||||
print("DISABLED")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
INIT AND SHOW
|
||||
--Word to turn on
|
||||
aura_env.triggerOn = "on"
|
||||
--Word to turn off
|
||||
aura_env.triggerOff = "off"
|
||||
--Case sensitive input?
|
||||
aura_env.caseSensitive = 0
|
||||
--Tick interval with 10 being 1 second; must not be <1
|
||||
aura_env.tickRate = 5
|
||||
--Emote
|
||||
aura_env.emoteToken = "wave"
|
||||
--0 for friendlies, 1 for enemies, 2 for both
|
||||
aura_env.target = 0
|
||||
|
||||
--Do NOT change anything from code below
|
||||
--For info, questions, feedback or anything alike mail Pinkiepiie on Felsong
|
||||
aura_env.startTime = GetTime()
|
||||
aura_env.pointer2 = 1
|
||||
aura_env.lastTime = 0
|
||||
aura_env.triggerState = 0
|
||||
aura_env.errorFlag = 0
|
||||
|
||||
if aura_env.triggerOn == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF triggerOn must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.triggerOff == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF triggerOff must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.caseSensitive ~= 0 and aura_env.caseSensitive ~= 1 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF caseSensitive must be 1 or 0!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.target ~= 0 and aura_env.target ~= 1 and aura_env.target ~= 2 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF target must be either 0, 1 or 2!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.tickRate < 1 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF tickRate must be > 1!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.emoteToken == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF emoteToken must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.errorFlag == 0 then
|
||||
print("-------------------------------------------------------------")
|
||||
print("Dave's emote spam bonanza extravaganza!")
|
||||
print("|cFFFF7F7FNAMEPATES MUST BE ENABLED FOR THIS TO WORK!!")
|
||||
print("~~only works on players~~")
|
||||
print("Whisper yourself |cFF00FF00" .. aura_env.triggerOn .. "|cFFFFFFFF to unleash mayhem!")
|
||||
print("To stop the spam whisper |cFFFF0000" .. aura_env.triggerOff .. "|cFFFFFFFF")
|
||||
print("Current emote is |cFF7F7FFF" .. aura_env.emoteToken .. "|cFFFFFFFF")
|
||||
if aura_env.target == 0 then
|
||||
print("Currently spamming |cFF7FFF7Ffriendlies!|cFFFFFFFF")
|
||||
end
|
||||
if aura_env.target == 1 then
|
||||
print("Currently spamming |cFFFF7F7Fenemies!|cFFFFFFFF")
|
||||
end
|
||||
if aura_env.target == 2 then
|
||||
print("Currently spamming |cFF7F7FFFboth!|cFFFFFFFF")
|
||||
end
|
||||
print("-------------------------------------------------------------")
|
||||
end
|
||||
DISPLAY
|
||||
function()
|
||||
if aura_env.errorFlag == 0 then
|
||||
if aura_env.triggerState == 1 then
|
||||
local tt = math.floor((GetTime() - aura_env.startTime) * 10)
|
||||
local nameplateindex = {}
|
||||
local pointer = 1
|
||||
if aura_env.target == 0 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) and UnitIsFriend("player", "nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if aura_env.target == 1 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) and UnitIsEnemy("player", "nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if aura_env.target == 2 then
|
||||
for i = 1, 40 do
|
||||
if UnitIsPlayer("nameplate" .. i) then
|
||||
nameplateindex[pointer] = i
|
||||
pointer = pointer + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if nameplateindex[1] == nil then
|
||||
nameplateindex[1] = UnitName("player")
|
||||
end
|
||||
if tt ~= aura_env.lastTime and tt % aura_env.tickRate == 0 then
|
||||
DoEmote(aura_env.emoteToken, "nameplate" .. nameplateindex[aura_env.pointer2])
|
||||
aura_env.pointer2 = aura_env.pointer2 + 1
|
||||
aura_env.lastTime = tt
|
||||
end
|
||||
if aura_env.pointer2 >= pointer then
|
||||
aura_env.pointer2 = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
CHAT_MSG_WHISPER
|
||||
function(_,msg,sender)
|
||||
if aura_env.errorFlag == 0 then
|
||||
sender = string.match(sender, "%a+")
|
||||
if aura_env.caseSensitive == 0 then
|
||||
msg = msg:lower()
|
||||
aura_env.triggerOn = aura_env.triggerOn:lower()
|
||||
aura_env.triggerOff = aura_env.triggerOff:lower()
|
||||
end
|
||||
if sender == UnitName("player") and msg == aura_env.triggerOn and aura_env.triggerState == 0 then
|
||||
aura_env.triggerState = 1
|
||||
print("ENABLED")
|
||||
end
|
||||
if sender == UnitName("player") and msg == aura_env.triggerOff and aura_env.triggerState == 1 then
|
||||
aura_env.triggerState = 0
|
||||
print("DISABLED")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
INIT AND SHOW
|
||||
--Word to turn on
|
||||
aura_env.triggerOn = "on"
|
||||
--Word to turn off
|
||||
aura_env.triggerOff = "off"
|
||||
--Case sensitive input?
|
||||
aura_env.caseSensitive = 0
|
||||
--Tick interval with 10 being 1 second; must not be <1
|
||||
aura_env.tickRate = 5
|
||||
--Emote
|
||||
aura_env.emoteToken = "wave"
|
||||
--0 for friendlies, 1 for enemies, 2 for both
|
||||
aura_env.target = 0
|
||||
|
||||
--Do NOT change anything from code below
|
||||
--For info, questions, feedback or anything alike mail Pinkiepiie on Felsong
|
||||
aura_env.startTime = GetTime()
|
||||
aura_env.pointer2 = 1
|
||||
aura_env.lastTime = 0
|
||||
aura_env.triggerState = 0
|
||||
aura_env.errorFlag = 0
|
||||
|
||||
if aura_env.triggerOn == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF triggerOn must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.triggerOff == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF triggerOff must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.caseSensitive ~= 0 and aura_env.caseSensitive ~= 1 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF caseSensitive must be 1 or 0!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.target ~= 0 and aura_env.target ~= 1 and aura_env.target ~= 2 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF target must be either 0, 1 or 2!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.tickRate < 1 then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF tickRate must be > 1!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.emoteToken == "" then
|
||||
print("|cFFFF0000ERROR::|cFFFFFFFF emoteToken must not be empty!")
|
||||
aura_env.errorFlag = 1
|
||||
end
|
||||
if aura_env.errorFlag == 0 then
|
||||
print("-------------------------------------------------------------")
|
||||
print("Dave's emote spam bonanza extravaganza!")
|
||||
print("|cFFFF7F7FNAMEPATES MUST BE ENABLED FOR THIS TO WORK!!")
|
||||
print("~~only works on players~~")
|
||||
print("Whisper yourself |cFF00FF00" .. aura_env.triggerOn .. "|cFFFFFFFF to unleash mayhem!")
|
||||
print("To stop the spam whisper |cFFFF0000" .. aura_env.triggerOff .. "|cFFFFFFFF")
|
||||
print("Current emote is |cFF7F7FFF" .. aura_env.emoteToken .. "|cFFFFFFFF")
|
||||
if aura_env.target == 0 then
|
||||
print("Currently spamming |cFF7FFF7Ffriendlies!|cFFFFFFFF")
|
||||
end
|
||||
if aura_env.target == 1 then
|
||||
print("Currently spamming |cFFFF7F7Fenemies!|cFFFFFFFF")
|
||||
end
|
||||
if aura_env.target == 2 then
|
||||
print("Currently spamming |cFF7F7FFFboth!|cFFFFFFFF")
|
||||
end
|
||||
print("-------------------------------------------------------------")
|
||||
end
|
||||
|
||||
@@ -1,45 +1,45 @@
|
||||
CHAT_MSG_TEXT_EMOTE
|
||||
function(_, msg, sender)
|
||||
local whitelist = {}
|
||||
local goodbois = {"Choklata", "Iisa", "Tossmysalade", "Tossmychelka", "Rogeuw", "Melna"}
|
||||
local docry = 0
|
||||
if string.match(msg, "you") or string.match(msg, "your") then
|
||||
docry = 1
|
||||
for k, v in ipairs(whitelist) do
|
||||
if sender == v then
|
||||
docry = 0
|
||||
break
|
||||
end
|
||||
end
|
||||
for k, v in ipairs(goodbois) do
|
||||
if sender == v then
|
||||
docry = 2
|
||||
break
|
||||
end
|
||||
end
|
||||
if docry == 1 then
|
||||
local rand = math.random(1, 8)
|
||||
if rand == 1 then DoEmote("cry", sender) end
|
||||
if rand == 2 then DoEmote("bonk", sender) end
|
||||
if rand == 3 then DoEmote("pat", sender) end
|
||||
if rand == 4 then DoEmote("moon", sender) end
|
||||
if rand == 5 then DoEmote("agree", sender) end
|
||||
if rand == 6 then DoEmote("bored", sender) end
|
||||
if rand == 7 then DoEmote("giggle", sender) end
|
||||
if rand == 8 then DoEmote("helpme", sender) end
|
||||
end
|
||||
if docry == 2 then
|
||||
local rand = math.random(1, 10)
|
||||
if rand == 1 then DoEmote("moan", sender) end
|
||||
if rand == 2 then DoEmote("hug", sender) end
|
||||
if rand == 3 then DoEmote("love", sender) end
|
||||
if rand == 4 then DoEmote("cuddle", sender) end
|
||||
if rand == 5 then DoEmote("drool", sender) end
|
||||
if rand == 6 then DoEmote("happy", sender) end
|
||||
if rand == 7 then DoEmote("flirt", sender) end
|
||||
if rand == 8 then DoEmote("lick", sender) end
|
||||
if rand == 9 then DoEmote("sexy", sender) end
|
||||
if rand == 10 then DoEmote("smile", sender) end
|
||||
end
|
||||
end
|
||||
end
|
||||
CHAT_MSG_TEXT_EMOTE
|
||||
function(_, msg, sender)
|
||||
local whitelist = {}
|
||||
local goodbois = {"Choklata", "Iisa", "Tossmysalade", "Tossmychelka", "Rogeuw", "Melna"}
|
||||
local docry = 0
|
||||
if string.match(msg, "you") or string.match(msg, "your") then
|
||||
docry = 1
|
||||
for k, v in ipairs(whitelist) do
|
||||
if sender == v then
|
||||
docry = 0
|
||||
break
|
||||
end
|
||||
end
|
||||
for k, v in ipairs(goodbois) do
|
||||
if sender == v then
|
||||
docry = 2
|
||||
break
|
||||
end
|
||||
end
|
||||
if docry == 1 then
|
||||
local rand = math.random(1, 8)
|
||||
if rand == 1 then DoEmote("cry", sender) end
|
||||
if rand == 2 then DoEmote("bonk", sender) end
|
||||
if rand == 3 then DoEmote("pat", sender) end
|
||||
if rand == 4 then DoEmote("moon", sender) end
|
||||
if rand == 5 then DoEmote("agree", sender) end
|
||||
if rand == 6 then DoEmote("bored", sender) end
|
||||
if rand == 7 then DoEmote("giggle", sender) end
|
||||
if rand == 8 then DoEmote("helpme", sender) end
|
||||
end
|
||||
if docry == 2 then
|
||||
local rand = math.random(1, 10)
|
||||
if rand == 1 then DoEmote("moan", sender) end
|
||||
if rand == 2 then DoEmote("hug", sender) end
|
||||
if rand == 3 then DoEmote("love", sender) end
|
||||
if rand == 4 then DoEmote("cuddle", sender) end
|
||||
if rand == 5 then DoEmote("drool", sender) end
|
||||
if rand == 6 then DoEmote("happy", sender) end
|
||||
if rand == 7 then DoEmote("flirt", sender) end
|
||||
if rand == 8 then DoEmote("lick", sender) end
|
||||
if rand == 9 then DoEmote("sexy", sender) end
|
||||
if rand == 10 then DoEmote("smile", sender) end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.fevered .. "/" .. aura_env.swings
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...)
|
||||
local target = select(10, ...)
|
||||
local caster = select(6, ...)
|
||||
local spell = select(14, ...)
|
||||
if subEvent == "SWING_DAMAGE" and target == UnitName("player") and UnitBuff("player", "Infernal Skin") then
|
||||
aura_env.swings = aura_env.swings + 1
|
||||
end
|
||||
if subEvent == "SPELL_DAMAGE" and caster == UnitName("player") and UnitBuff("player", "Infernal Skin") and spell == "Fevered Touch" then
|
||||
aura_env.fevered = aura_env.fevered + 1
|
||||
end
|
||||
end
|
||||
|
||||
--PLAYER_REGEN_DISABLED
|
||||
function()
|
||||
aura_env.swings = 0
|
||||
aura_env.fevered = 0
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.swings = 0
|
||||
aura_env.fevered = 0
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.fevered .. "/" .. aura_env.swings
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subEvent = select(3, ...)
|
||||
local target = select(10, ...)
|
||||
local caster = select(6, ...)
|
||||
local spell = select(14, ...)
|
||||
if subEvent == "SWING_DAMAGE" and target == UnitName("player") and UnitBuff("player", "Infernal Skin") then
|
||||
aura_env.swings = aura_env.swings + 1
|
||||
end
|
||||
if subEvent == "SPELL_DAMAGE" and caster == UnitName("player") and UnitBuff("player", "Infernal Skin") and spell == "Fevered Touch" then
|
||||
aura_env.fevered = aura_env.fevered + 1
|
||||
end
|
||||
end
|
||||
|
||||
--PLAYER_REGEN_DISABLED
|
||||
function()
|
||||
aura_env.swings = 0
|
||||
aura_env.fevered = 0
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.swings = 0
|
||||
aura_env.fevered = 0
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
--Fishing
|
||||
function()
|
||||
local fish = {"Glassfin Minnow", "Pygmy Suckerfish"}
|
||||
local output = ""
|
||||
for k,v in ipairs(fish) do
|
||||
output = output .. v .. " " .. GetItemCount(v) .. "\n"
|
||||
end
|
||||
return output
|
||||
--Fishing
|
||||
function()
|
||||
local fish = {"Glassfin Minnow", "Pygmy Suckerfish"}
|
||||
local output = ""
|
||||
for k,v in ipairs(fish) do
|
||||
output = output .. v .. " " .. GetItemCount(v) .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
@@ -1,30 +1,30 @@
|
||||
--EVERY FRAME
|
||||
function()
|
||||
local focusmax = UnitPowerMax("player")
|
||||
local time = GetTime()
|
||||
local star, dur = GetSpellCooldown(61304)
|
||||
local regen = GetPowerRegen()
|
||||
if dur > 0 and aura_env.spell == "Arcane Shot" then
|
||||
aura_env.newfocus = aura_env.focus + dur * regen + 8
|
||||
end
|
||||
if dur > 0 and aura_env.spell ~= "Arcane Shot" then
|
||||
aura_env.newfocus = aura_env.focus + dur * regen
|
||||
end
|
||||
return aura_env.newfocus, focusmax, 1
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local se = select(3, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(6, ...)
|
||||
aura_env.spell = select(14, ...)
|
||||
if caster == UnitName("player") then
|
||||
aura_env.focus = UnitPower("player")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.focus = 0
|
||||
--EVERY FRAME
|
||||
function()
|
||||
local focusmax = UnitPowerMax("player")
|
||||
local time = GetTime()
|
||||
local star, dur = GetSpellCooldown(61304)
|
||||
local regen = GetPowerRegen()
|
||||
if dur > 0 and aura_env.spell == "Arcane Shot" then
|
||||
aura_env.newfocus = aura_env.focus + dur * regen + 8
|
||||
end
|
||||
if dur > 0 and aura_env.spell ~= "Arcane Shot" then
|
||||
aura_env.newfocus = aura_env.focus + dur * regen
|
||||
end
|
||||
return aura_env.newfocus, focusmax, 1
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local se = select(3, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(6, ...)
|
||||
aura_env.spell = select(14, ...)
|
||||
if caster == UnitName("player") then
|
||||
aura_env.focus = UnitPower("player")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.focus = 0
|
||||
aura_env.newfocus = 0
|
||||
@@ -1,29 +1,29 @@
|
||||
function()
|
||||
local output = ""
|
||||
local friends_on = select(2, GetNumFriends())
|
||||
local my_zone = GetMapNameByID(GetCurrentMapAreaID())
|
||||
for i = 1, friends_on do
|
||||
local name, _, _, zone, _, status, note = GetFriendInfo(i)
|
||||
local override_color = ""
|
||||
if note ~= nil and note:match("+") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFFE541F4"
|
||||
elseif note ~= nil and note:match("-") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF42D9F4"
|
||||
elseif note ~= nil and note:match(";") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF2020D8"
|
||||
elseif note ~= nil and note:match("_") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF7E1357"
|
||||
else
|
||||
override_color = ""
|
||||
end
|
||||
local zone_color = "|cFF787878"
|
||||
local status_color = "|cFF00FF00"
|
||||
if zone == my_zone then zone_color = "|cFF007800" end
|
||||
if status == "<Busy>" then status_color = "|cFFFF0000" end
|
||||
if status == "<Away>" then status_color = "|cFFF4C842" end
|
||||
if name ~= nil then
|
||||
output = output .. status_color .. override_color .. name .. "|cFFFFFFFF" .. " - " .. zone_color .. zone .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
function()
|
||||
local output = ""
|
||||
local friends_on = select(2, GetNumFriends())
|
||||
local my_zone = GetMapNameByID(GetCurrentMapAreaID())
|
||||
for i = 1, friends_on do
|
||||
local name, _, _, zone, _, status, note = GetFriendInfo(i)
|
||||
local override_color = ""
|
||||
if note ~= nil and note:match("+") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFFE541F4"
|
||||
elseif note ~= nil and note:match("-") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF42D9F4"
|
||||
elseif note ~= nil and note:match(";") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF2020D8"
|
||||
elseif note ~= nil and note:match("_") and status ~= "<Busy>" and status ~= "<Away>" then
|
||||
override_color = "|cFF7E1357"
|
||||
else
|
||||
override_color = ""
|
||||
end
|
||||
local zone_color = "|cFF787878"
|
||||
local status_color = "|cFF00FF00"
|
||||
if zone == my_zone then zone_color = "|cFF007800" end
|
||||
if status == "<Busy>" then status_color = "|cFFFF0000" end
|
||||
if status == "<Away>" then status_color = "|cFFF4C842" end
|
||||
if name ~= nil then
|
||||
output = output .. status_color .. override_color .. name .. "|cFFFFFFFF" .. " - " .. zone_color .. zone .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
function()
|
||||
local output = ""
|
||||
for i = 1, 40 do
|
||||
local name = UnitName("nameplate" .. i)
|
||||
if name == "Cult Fanatic" or name == "Cult Adherent" or name == "Deformed Fanatic" or name == "Reanimated Fanatic" or name == "Reanimated Adherent" then
|
||||
output = output .. name .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
function()
|
||||
local output = ""
|
||||
for i = 1, 40 do
|
||||
local name = UnitName("nameplate" .. i)
|
||||
if name == "Cult Fanatic" or name == "Cult Adherent" or name == "Deformed Fanatic" or name == "Reanimated Fanatic" or name == "Reanimated Adherent" then
|
||||
output = output .. name .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
@@ -1,66 +1,66 @@
|
||||
-- .add <id> <quant> <mod1> <mod2> <mod3> <mod4> <mod5>
|
||||
-- .add 136716 1 1672 42 41 40 1
|
||||
-- Add chat command interaction, pass through flags and aura_env
|
||||
-- CHAT_MSG_LOOT
|
||||
function(e, ...)
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch then WeakAurasSaved.CustomTrash.ItemResearch = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.Stage then WeakAurasSaved.CustomTrash.ItemResearch.Stage = 1 end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.ilvl then WeakAurasSaved.CustomTrash.ItemResearch.ilvl = 1672 end
|
||||
local daiTooltip = function(link)
|
||||
if aura_env.tooltip then
|
||||
aura_env.tooltip:SetOwner(UIParent, "ANCHOR_NONE")
|
||||
aura_env.tooltip:ClearLines();
|
||||
aura_env.tooltip:SetHyperlink(link)
|
||||
|
||||
local itemData = {}
|
||||
itemData[#itemData + 1] = "New item"
|
||||
itemData[#itemData + 1] = WeakAurasSaved.CustomTrash.ItemResearch.Stage - 1 -- Add parameter info
|
||||
itemData[#itemData + 1] = "Left text"
|
||||
|
||||
for i = 1, aura_env.tooltip:NumLines() do
|
||||
local field = "MyTooltipTextLeft" .. i
|
||||
if _G[field]:GetText() then
|
||||
local text = _G[field]:GetText()
|
||||
itemData[#itemData + 1] = text
|
||||
end
|
||||
end
|
||||
|
||||
itemData[#itemData + 1] = "Right text"
|
||||
for i = 1, aura_env.tooltip:NumLines() do
|
||||
local field = "MyTooltipTextRight" .. i
|
||||
if _G[field]:GetText() then
|
||||
local text = _G[field]:GetText()
|
||||
itemData[#itemData + 1] = text
|
||||
end
|
||||
end
|
||||
itemData[#itemData + 1] = "End of Item"
|
||||
itemData[#itemData + 1] = ""
|
||||
WeakAurasSaved.CustomTrash.ItemResearch[#WeakAurasSaved.CustomTrash.ItemResearch + 1] = itemData;
|
||||
SendChatMessage(".add 152134 -1", "SAY");
|
||||
end
|
||||
end
|
||||
if e == "CHAT_MSG_LOOT" then
|
||||
local msg = ...
|
||||
local link = msg:match("\124c.+\124r")
|
||||
daiTooltip(link)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch then WeakAurasSaved.CustomTrash.ItemResearch = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.Stage then WeakAurasSaved.CustomTrash.ItemResearch.Stage = 1 end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.ilvl then WeakAurasSaved.CustomTrash.ItemResearch.ilvl = 1672 end
|
||||
|
||||
aura_env.tooltip = CreateFrame("GameTooltip", "MyTooltip", UIParent, "GameTooltipTemplate")
|
||||
local aura_env = aura_env
|
||||
aura_env.daiItem = function()
|
||||
print("On stage " .. WeakAurasSaved.CustomTrash.ItemResearch.Stage)
|
||||
local message = ".add 152134 1 " .. WeakAurasSaved.CustomTrash.ItemResearch.ilvl .. " 42 41 40 " .. WeakAurasSaved.CustomTrash.ItemResearch.Stage
|
||||
SendChatMessage(message, "PARTY")
|
||||
WeakAurasSaved.CustomTrash.ItemResearch.Stage = WeakAurasSaved.CustomTrash.ItemResearch.Stage + 1
|
||||
end
|
||||
|
||||
if WeakAurasSaved.CustomTrash.ItemResearch.Ticker and WeakAurasSaved.CustomTrash.ItemResearch.Ticker[0] then WeakAurasSaved.CustomTrash.ItemResearch.Ticker:Cancel(); WeakAurasSaved.CustomTrash.ItemResearch.Ticker = nil end
|
||||
-- .add <id> <quant> <mod1> <mod2> <mod3> <mod4> <mod5>
|
||||
-- .add 136716 1 1672 42 41 40 1
|
||||
-- Add chat command interaction, pass through flags and aura_env
|
||||
-- CHAT_MSG_LOOT
|
||||
function(e, ...)
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch then WeakAurasSaved.CustomTrash.ItemResearch = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.Stage then WeakAurasSaved.CustomTrash.ItemResearch.Stage = 1 end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.ilvl then WeakAurasSaved.CustomTrash.ItemResearch.ilvl = 1672 end
|
||||
local daiTooltip = function(link)
|
||||
if aura_env.tooltip then
|
||||
aura_env.tooltip:SetOwner(UIParent, "ANCHOR_NONE")
|
||||
aura_env.tooltip:ClearLines();
|
||||
aura_env.tooltip:SetHyperlink(link)
|
||||
|
||||
local itemData = {}
|
||||
itemData[#itemData + 1] = "New item"
|
||||
itemData[#itemData + 1] = WeakAurasSaved.CustomTrash.ItemResearch.Stage - 1 -- Add parameter info
|
||||
itemData[#itemData + 1] = "Left text"
|
||||
|
||||
for i = 1, aura_env.tooltip:NumLines() do
|
||||
local field = "MyTooltipTextLeft" .. i
|
||||
if _G[field]:GetText() then
|
||||
local text = _G[field]:GetText()
|
||||
itemData[#itemData + 1] = text
|
||||
end
|
||||
end
|
||||
|
||||
itemData[#itemData + 1] = "Right text"
|
||||
for i = 1, aura_env.tooltip:NumLines() do
|
||||
local field = "MyTooltipTextRight" .. i
|
||||
if _G[field]:GetText() then
|
||||
local text = _G[field]:GetText()
|
||||
itemData[#itemData + 1] = text
|
||||
end
|
||||
end
|
||||
itemData[#itemData + 1] = "End of Item"
|
||||
itemData[#itemData + 1] = ""
|
||||
WeakAurasSaved.CustomTrash.ItemResearch[#WeakAurasSaved.CustomTrash.ItemResearch + 1] = itemData;
|
||||
SendChatMessage(".add 152134 -1", "SAY");
|
||||
end
|
||||
end
|
||||
if e == "CHAT_MSG_LOOT" then
|
||||
local msg = ...
|
||||
local link = msg:match("\124c.+\124r")
|
||||
daiTooltip(link)
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not WeakAurasSaved.CustomTrash then WeakAurasSaved.CustomTrash = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch then WeakAurasSaved.CustomTrash.ItemResearch = {} end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.Stage then WeakAurasSaved.CustomTrash.ItemResearch.Stage = 1 end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.ilvl then WeakAurasSaved.CustomTrash.ItemResearch.ilvl = 1672 end
|
||||
|
||||
aura_env.tooltip = CreateFrame("GameTooltip", "MyTooltip", UIParent, "GameTooltipTemplate")
|
||||
local aura_env = aura_env
|
||||
aura_env.daiItem = function()
|
||||
print("On stage " .. WeakAurasSaved.CustomTrash.ItemResearch.Stage)
|
||||
local message = ".add 152134 1 " .. WeakAurasSaved.CustomTrash.ItemResearch.ilvl .. " 42 41 40 " .. WeakAurasSaved.CustomTrash.ItemResearch.Stage
|
||||
SendChatMessage(message, "PARTY")
|
||||
WeakAurasSaved.CustomTrash.ItemResearch.Stage = WeakAurasSaved.CustomTrash.ItemResearch.Stage + 1
|
||||
end
|
||||
|
||||
if WeakAurasSaved.CustomTrash.ItemResearch.Ticker and WeakAurasSaved.CustomTrash.ItemResearch.Ticker[0] then WeakAurasSaved.CustomTrash.ItemResearch.Ticker:Cancel(); WeakAurasSaved.CustomTrash.ItemResearch.Ticker = nil end
|
||||
if not WeakAurasSaved.CustomTrash.ItemResearch.Ticker or WeakAurasSaved.CustomTrash.ItemResearch.Ticker[0] then WeakAurasSaved.CustomTrash.ItemResearch.Ticker = C_Timer.NewTicker(1, aura_env.daiItem) end
|
||||
@@ -1,23 +1,23 @@
|
||||
function()
|
||||
--GPS
|
||||
local X, Y = UnitPosition("player")
|
||||
if X < aura_env.X then
|
||||
print("X DECREASING")
|
||||
aura_env.X = X
|
||||
end
|
||||
if X > aura_env.X then
|
||||
print("X INCREASING")
|
||||
aura_env.X = X
|
||||
end
|
||||
if Y < aura_env.Y then
|
||||
print("Y DECREASING")
|
||||
aura_env.Y = Y
|
||||
end
|
||||
if Y > aura_env.Y then
|
||||
print("Y INCREASING")
|
||||
aura_env.Y = Y
|
||||
end
|
||||
end
|
||||
|
||||
aura_env.X = 0
|
||||
aura_env.Y = 0
|
||||
function()
|
||||
--GPS
|
||||
local X, Y = UnitPosition("player")
|
||||
if X < aura_env.X then
|
||||
print("X DECREASING")
|
||||
aura_env.X = X
|
||||
end
|
||||
if X > aura_env.X then
|
||||
print("X INCREASING")
|
||||
aura_env.X = X
|
||||
end
|
||||
if Y < aura_env.Y then
|
||||
print("Y DECREASING")
|
||||
aura_env.Y = Y
|
||||
end
|
||||
if Y > aura_env.Y then
|
||||
print("Y INCREASING")
|
||||
aura_env.Y = Y
|
||||
end
|
||||
end
|
||||
|
||||
aura_env.X = 0
|
||||
aura_env.Y = 0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,148 +1,148 @@
|
||||
--ID_UPDATED UPDATE_FRAME_GLOW
|
||||
function(e, id)
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(0.1, function() WeakAuras.ScanEvents("UPDATE_FRAME_GLOW") end) end
|
||||
if e ~= "ID_UPDATED" then
|
||||
local hptable = {[1] = ["hp"] = 100000000000, ["id"] = 0, ["mhp"] = 0, ["php"] = 100}
|
||||
if IsInRaid() then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
--if UnitHealthMax("raid" .. i) - UnitHealth("raid" .. i) > hptable.mhp then --Missing HP
|
||||
if UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) < hptable.php then --% HP
|
||||
if UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) < 0.5 and UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) > 0 then
|
||||
hptable.hp = UnitHealth("raid" .. i)
|
||||
hptable.mhp = UnitHealthMax("raid" .. i) - UnitHealth("raid" .. i)
|
||||
hptable.php = UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i)
|
||||
hptable.id = i
|
||||
hptable.name = UnitName("raid" .. i)
|
||||
end
|
||||
end
|
||||
end
|
||||
if hptable.id ~= aura_env.lastID then
|
||||
WeakAuras.ScanEvents("ID_UPDATED", hptable.id)
|
||||
aura_env.lastID = hptable.id
|
||||
end
|
||||
end
|
||||
elseif e == "ID_UPDATED" then
|
||||
if id ~= aura_env.glowingPlate and aura_env.glowingPlate > 0 then
|
||||
ActionButton_HideOverlayGlow(aura_env.GetFrame("raid" .. aura_env.glowingPlate))
|
||||
end
|
||||
if aura_env.GetFrame("raid" .. id) then
|
||||
ActionButton_ShowOverlayGlow(aura_env.GetFrame("raid" .. id))
|
||||
aura_env.glowingPlate = id
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(0.1, function() WeakAuras.ScanEvents("UPDATE_FRAME_GLOW") end) end
|
||||
aura_env.lastID = 0
|
||||
aura_env.glowingPlate = 0
|
||||
|
||||
local frame_priority = {
|
||||
-- raid frames
|
||||
[1] = "^Vd1", -- vuhdo
|
||||
[2] = "^Healbot", -- healbot
|
||||
[3] = "^GridLayout", -- grid
|
||||
[4] = "^Grid2Layout", -- grid2
|
||||
[5] = "^ElvUF_RaidGroup", -- elv
|
||||
[6] = "^oUF_bdGrid", -- bdgrid
|
||||
[7] = "^oUF.*raid", -- generic oUF
|
||||
[8] = "^LimeGroup", -- lime
|
||||
[9] = "^SUFHeaderraid", -- suf
|
||||
[10] = "^CompactRaid", -- blizz
|
||||
-- party frames
|
||||
[11] = "^SUFHeaderparty", --suf
|
||||
[12] = "^ElvUF_PartyGroup", -- elv
|
||||
[13] = "^oUF.*party", -- generic oUF
|
||||
[14] = "^PitBull4_Groups_Party", -- pitbull4
|
||||
[15] = "^CompactParty", -- blizz
|
||||
-- player frame
|
||||
[16] = "^SUFUnitplayer",
|
||||
[17] = "^PitBull4_Frames_Player",
|
||||
[18] = "^ElvUF_Player",
|
||||
[19] = "^oUF.*player",
|
||||
[20] = "^PlayerFrame",
|
||||
}
|
||||
|
||||
WA_GetFramesCache = WA_GetFramesCache or {}
|
||||
if not WA_GetFramesCacheListener then
|
||||
WA_GetFramesCacheListener = CreateFrame("Frame")
|
||||
local f = WA_GetFramesCacheListener
|
||||
f:RegisterEvent("PLAYER_REGEN_DISABLED")
|
||||
f:RegisterEvent("PLAYER_REGEN_ENABLED")
|
||||
f:RegisterEvent("GROUP_ROSTER_UPDATE")
|
||||
f:SetScript("OnEvent", function(self, event, ...)
|
||||
WA_GetFramesCache = {}
|
||||
end)
|
||||
end
|
||||
|
||||
local function GetFrames(target)
|
||||
local function FindButtonsForUnit(frame, target)
|
||||
local results = {}
|
||||
if type(frame) == "table" and not frame:IsForbidden() then
|
||||
local type = frame:GetObjectType()
|
||||
if type == "Frame" or type == "Button" then
|
||||
for _, child in ipairs({frame:GetChildren()}) do
|
||||
for _, v in pairs(FindButtonsForUnit(child, target)) do
|
||||
tinsert(results, v)
|
||||
end
|
||||
end
|
||||
end
|
||||
if type == "Button" then
|
||||
local unit = frame:GetAttribute('unit')
|
||||
if unit and frame:IsVisible() and frame:GetName() then
|
||||
WA_GetFramesCache[frame] = unit
|
||||
if UnitIsUnit(unit, target) then
|
||||
-- print("F:", frame:GetName())
|
||||
tinsert(results, frame)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return results
|
||||
end
|
||||
|
||||
if not UnitExists(target) then
|
||||
if type(target) == "string" and target:find("Player") then
|
||||
target = select(6, GetPlayerInfoByGUID(target))
|
||||
else
|
||||
return {}
|
||||
end
|
||||
end
|
||||
|
||||
local results = {}
|
||||
for frame, unit in pairs(WA_GetFramesCache) do
|
||||
--print("from cache:", frame:GetName())
|
||||
if UnitIsUnit(unit, target) then
|
||||
if frame:GetAttribute('unit') == unit then
|
||||
tinsert(results, frame)
|
||||
else
|
||||
results = {}
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return #results > 0 and results or FindButtonsForUnit(UIParent, target)
|
||||
end
|
||||
|
||||
local isElvUI = IsAddOnLoaded("ElvUI")
|
||||
local function WhyElvWhy(frame)
|
||||
if isElvUI and frame and frame:GetName():find("^ElvUF_") and frame.Health then
|
||||
return frame.Health
|
||||
else
|
||||
return frame
|
||||
end
|
||||
end
|
||||
|
||||
function aura_env.GetFrame(target)
|
||||
local frames = GetFrames(target)
|
||||
if not frames then return nil end
|
||||
for i = 1, #frame_priority do
|
||||
for _, frame in pairs(frames) do
|
||||
if (frame:GetName()):find(frame_priority[i]) then
|
||||
return WhyElvWhy(frame)
|
||||
end
|
||||
end
|
||||
end
|
||||
return WhyElvWhy(frames[1])
|
||||
end
|
||||
--ID_UPDATED UPDATE_FRAME_GLOW
|
||||
function(e, id)
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(0.1, function() WeakAuras.ScanEvents("UPDATE_FRAME_GLOW") end) end
|
||||
if e ~= "ID_UPDATED" then
|
||||
local hptable = {[1] = ["hp"] = 100000000000, ["id"] = 0, ["mhp"] = 0, ["php"] = 100}
|
||||
if IsInRaid() then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
--if UnitHealthMax("raid" .. i) - UnitHealth("raid" .. i) > hptable.mhp then --Missing HP
|
||||
if UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) < hptable.php then --% HP
|
||||
if UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) < 0.5 and UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i) > 0 then
|
||||
hptable.hp = UnitHealth("raid" .. i)
|
||||
hptable.mhp = UnitHealthMax("raid" .. i) - UnitHealth("raid" .. i)
|
||||
hptable.php = UnitHealth("raid" .. i) / UnitHealthMax("raid" .. i)
|
||||
hptable.id = i
|
||||
hptable.name = UnitName("raid" .. i)
|
||||
end
|
||||
end
|
||||
end
|
||||
if hptable.id ~= aura_env.lastID then
|
||||
WeakAuras.ScanEvents("ID_UPDATED", hptable.id)
|
||||
aura_env.lastID = hptable.id
|
||||
end
|
||||
end
|
||||
elseif e == "ID_UPDATED" then
|
||||
if id ~= aura_env.glowingPlate and aura_env.glowingPlate > 0 then
|
||||
ActionButton_HideOverlayGlow(aura_env.GetFrame("raid" .. aura_env.glowingPlate))
|
||||
end
|
||||
if aura_env.GetFrame("raid" .. id) then
|
||||
ActionButton_ShowOverlayGlow(aura_env.GetFrame("raid" .. id))
|
||||
aura_env.glowingPlate = id
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--INIT
|
||||
if not aura_env.ticker then aura_env.ticker = C_Timer.NewTicker(0.1, function() WeakAuras.ScanEvents("UPDATE_FRAME_GLOW") end) end
|
||||
aura_env.lastID = 0
|
||||
aura_env.glowingPlate = 0
|
||||
|
||||
local frame_priority = {
|
||||
-- raid frames
|
||||
[1] = "^Vd1", -- vuhdo
|
||||
[2] = "^Healbot", -- healbot
|
||||
[3] = "^GridLayout", -- grid
|
||||
[4] = "^Grid2Layout", -- grid2
|
||||
[5] = "^ElvUF_RaidGroup", -- elv
|
||||
[6] = "^oUF_bdGrid", -- bdgrid
|
||||
[7] = "^oUF.*raid", -- generic oUF
|
||||
[8] = "^LimeGroup", -- lime
|
||||
[9] = "^SUFHeaderraid", -- suf
|
||||
[10] = "^CompactRaid", -- blizz
|
||||
-- party frames
|
||||
[11] = "^SUFHeaderparty", --suf
|
||||
[12] = "^ElvUF_PartyGroup", -- elv
|
||||
[13] = "^oUF.*party", -- generic oUF
|
||||
[14] = "^PitBull4_Groups_Party", -- pitbull4
|
||||
[15] = "^CompactParty", -- blizz
|
||||
-- player frame
|
||||
[16] = "^SUFUnitplayer",
|
||||
[17] = "^PitBull4_Frames_Player",
|
||||
[18] = "^ElvUF_Player",
|
||||
[19] = "^oUF.*player",
|
||||
[20] = "^PlayerFrame",
|
||||
}
|
||||
|
||||
WA_GetFramesCache = WA_GetFramesCache or {}
|
||||
if not WA_GetFramesCacheListener then
|
||||
WA_GetFramesCacheListener = CreateFrame("Frame")
|
||||
local f = WA_GetFramesCacheListener
|
||||
f:RegisterEvent("PLAYER_REGEN_DISABLED")
|
||||
f:RegisterEvent("PLAYER_REGEN_ENABLED")
|
||||
f:RegisterEvent("GROUP_ROSTER_UPDATE")
|
||||
f:SetScript("OnEvent", function(self, event, ...)
|
||||
WA_GetFramesCache = {}
|
||||
end)
|
||||
end
|
||||
|
||||
local function GetFrames(target)
|
||||
local function FindButtonsForUnit(frame, target)
|
||||
local results = {}
|
||||
if type(frame) == "table" and not frame:IsForbidden() then
|
||||
local type = frame:GetObjectType()
|
||||
if type == "Frame" or type == "Button" then
|
||||
for _, child in ipairs({frame:GetChildren()}) do
|
||||
for _, v in pairs(FindButtonsForUnit(child, target)) do
|
||||
tinsert(results, v)
|
||||
end
|
||||
end
|
||||
end
|
||||
if type == "Button" then
|
||||
local unit = frame:GetAttribute('unit')
|
||||
if unit and frame:IsVisible() and frame:GetName() then
|
||||
WA_GetFramesCache[frame] = unit
|
||||
if UnitIsUnit(unit, target) then
|
||||
-- print("F:", frame:GetName())
|
||||
tinsert(results, frame)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return results
|
||||
end
|
||||
|
||||
if not UnitExists(target) then
|
||||
if type(target) == "string" and target:find("Player") then
|
||||
target = select(6, GetPlayerInfoByGUID(target))
|
||||
else
|
||||
return {}
|
||||
end
|
||||
end
|
||||
|
||||
local results = {}
|
||||
for frame, unit in pairs(WA_GetFramesCache) do
|
||||
--print("from cache:", frame:GetName())
|
||||
if UnitIsUnit(unit, target) then
|
||||
if frame:GetAttribute('unit') == unit then
|
||||
tinsert(results, frame)
|
||||
else
|
||||
results = {}
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return #results > 0 and results or FindButtonsForUnit(UIParent, target)
|
||||
end
|
||||
|
||||
local isElvUI = IsAddOnLoaded("ElvUI")
|
||||
local function WhyElvWhy(frame)
|
||||
if isElvUI and frame and frame:GetName():find("^ElvUF_") and frame.Health then
|
||||
return frame.Health
|
||||
else
|
||||
return frame
|
||||
end
|
||||
end
|
||||
|
||||
function aura_env.GetFrame(target)
|
||||
local frames = GetFrames(target)
|
||||
if not frames then return nil end
|
||||
for i = 1, #frame_priority do
|
||||
for _, frame in pairs(frames) do
|
||||
if (frame:GetName()):find(frame_priority[i]) then
|
||||
return WhyElvWhy(frame)
|
||||
end
|
||||
end
|
||||
end
|
||||
return WhyElvWhy(frames[1])
|
||||
end
|
||||
|
||||
@@ -1,76 +1,76 @@
|
||||
DISPLAY
|
||||
function()
|
||||
local dps = 0; local heal = 0; local tank = 0
|
||||
local dpsDead = 0; local healDead = 0; local tankDead = 0
|
||||
if IsInRaid("player") == true then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitGroupRolesAssigned("raid"..i) == "TANK" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
tankDead = tankDead + 1
|
||||
else
|
||||
tank = tank + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("raid"..i) == "DAMAGER" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
dpsDead = dpsDead + 1
|
||||
else
|
||||
dps = dps + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("raid"..i) == "HEALER" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
healDead = healDead + 1
|
||||
else
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitGroupRolesAssigned("party"..i) == "TANK" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
tankDead = tankDead + 1
|
||||
else
|
||||
tank = tank + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("party"..i) == "DAMAGER" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
dpsDead = dpsDead + 1
|
||||
else
|
||||
dps = dps + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("party"..i) == "HEALER" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
healDead = healDead + 1
|
||||
else
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") then
|
||||
if UnitGroupRolesAssigned("player") == "TANK" then
|
||||
tankDead = tankDead + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "DAMAGER" then
|
||||
dpsDead = dpsDead + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "HEALER" then
|
||||
healDead = healDead + 1
|
||||
end
|
||||
else
|
||||
if UnitGroupRolesAssigned("player") == "TANK" then
|
||||
tank = tank + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "DAMAGER" then
|
||||
dps = dps + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "HEALER" then
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
return string.format("TANKS: %s \n HEALS: %s \n DPS: %s", tank, heal, dps)
|
||||
end
|
||||
DISPLAY
|
||||
function()
|
||||
local dps = 0; local heal = 0; local tank = 0
|
||||
local dpsDead = 0; local healDead = 0; local tankDead = 0
|
||||
if IsInRaid("player") == true then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitGroupRolesAssigned("raid"..i) == "TANK" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
tankDead = tankDead + 1
|
||||
else
|
||||
tank = tank + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("raid"..i) == "DAMAGER" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
dpsDead = dpsDead + 1
|
||||
else
|
||||
dps = dps + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("raid"..i) == "HEALER" then
|
||||
if UnitIsDeadOrGhost("raid"..i) then
|
||||
healDead = healDead + 1
|
||||
else
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
if UnitGroupRolesAssigned("party"..i) == "TANK" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
tankDead = tankDead + 1
|
||||
else
|
||||
tank = tank + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("party"..i) == "DAMAGER" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
dpsDead = dpsDead + 1
|
||||
else
|
||||
dps = dps + 1
|
||||
end
|
||||
end
|
||||
if UnitGroupRolesAssigned("party"..i) == "HEALER" then
|
||||
if UnitIsDeadOrGhost("party"..i) then
|
||||
healDead = healDead + 1
|
||||
else
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
if UnitIsDeadOrGhost("player") then
|
||||
if UnitGroupRolesAssigned("player") == "TANK" then
|
||||
tankDead = tankDead + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "DAMAGER" then
|
||||
dpsDead = dpsDead + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "HEALER" then
|
||||
healDead = healDead + 1
|
||||
end
|
||||
else
|
||||
if UnitGroupRolesAssigned("player") == "TANK" then
|
||||
tank = tank + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "DAMAGER" then
|
||||
dps = dps + 1
|
||||
end
|
||||
if UnitGroupRolesAssigned("player") == "HEALER" then
|
||||
heal = heal + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
return string.format("TANKS: %s \n HEALS: %s \n DPS: %s", tank, heal, dps)
|
||||
end
|
||||
|
||||
@@ -1,39 +1,39 @@
|
||||
--GROUP_ROSTER_UPDATE
|
||||
function(e)
|
||||
local r = "raid"
|
||||
if IsInRaid() == false then
|
||||
r = "party"
|
||||
end
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
local n = r .. i
|
||||
local pname = UnitName(n)
|
||||
local gname = GetGuildInfo(n)
|
||||
local grank = select(3, GetGuildInfo(n))
|
||||
--print(pname, gname, grank)
|
||||
if not aura_env.playerList[pname] then
|
||||
aura_env.playerList[pname] = {
|
||||
["guild"] = gname,
|
||||
["rank"] = grank,
|
||||
}
|
||||
end
|
||||
end
|
||||
DevTools_Dump(aura_env.playerList)
|
||||
table.sort(aura_env.playerList)
|
||||
DevTools_Dump(aura_env.playerList)
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in pairs(aura_env.playerList) do
|
||||
output = k .. " "
|
||||
if v.guild then
|
||||
output = output .. v.guild .. " " .. v.rank .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
--GROUP_ROSTER_UPDATE
|
||||
function(e)
|
||||
local r = "raid"
|
||||
if IsInRaid() == false then
|
||||
r = "party"
|
||||
end
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
local n = r .. i
|
||||
local pname = UnitName(n)
|
||||
local gname = GetGuildInfo(n)
|
||||
local grank = select(3, GetGuildInfo(n))
|
||||
--print(pname, gname, grank)
|
||||
if not aura_env.playerList[pname] then
|
||||
aura_env.playerList[pname] = {
|
||||
["guild"] = gname,
|
||||
["rank"] = grank,
|
||||
}
|
||||
end
|
||||
end
|
||||
DevTools_Dump(aura_env.playerList)
|
||||
table.sort(aura_env.playerList)
|
||||
DevTools_Dump(aura_env.playerList)
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in pairs(aura_env.playerList) do
|
||||
output = k .. " "
|
||||
if v.guild then
|
||||
output = output .. v.guild .. " " .. v.rank .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.playerList = {}
|
||||
@@ -1,24 +1,24 @@
|
||||
--NAME_PLATE_UNIT_ADDED GLOBAL_TICKER
|
||||
function(e, u)
|
||||
if e == "NAME_PLATE_UNIT_ADDED" then
|
||||
local guildName, guildRankName = GetGuildInfo(u);
|
||||
local uname = UnitName(u)
|
||||
if uname and u and guildName and guildRankName and guildName == "Indecisive" and not aura_env.unitList[uname]then
|
||||
--if guildRankName ~= "Trial" and guildName == "Indecisive" and not aura_env.unitList[u] and u then
|
||||
DoEmote("PAT", u)
|
||||
--DoEmote("HELLO", u)
|
||||
aura_env.unitList[uname] = GetTime() + 600
|
||||
end
|
||||
elseif e == "ONE_SECOND_TICK" then
|
||||
for k, v in pairs(aura_env.unitList) do
|
||||
if GetTime() > v then
|
||||
aura_env.unitList[uname] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
--print(GetTime())
|
||||
--DevTools_Dump(aura_env.unitList)
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.unitList = {}
|
||||
--NAME_PLATE_UNIT_ADDED GLOBAL_TICKER
|
||||
function(e, u)
|
||||
if e == "NAME_PLATE_UNIT_ADDED" then
|
||||
local guildName, guildRankName = GetGuildInfo(u);
|
||||
local uname = UnitName(u)
|
||||
if uname and u and guildName and guildRankName and guildName == "Indecisive" and not aura_env.unitList[uname]then
|
||||
--if guildRankName ~= "Trial" and guildName == "Indecisive" and not aura_env.unitList[u] and u then
|
||||
DoEmote("PAT", u)
|
||||
--DoEmote("HELLO", u)
|
||||
aura_env.unitList[uname] = GetTime() + 600
|
||||
end
|
||||
elseif e == "ONE_SECOND_TICK" then
|
||||
for k, v in pairs(aura_env.unitList) do
|
||||
if GetTime() > v then
|
||||
aura_env.unitList[uname] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
--print(GetTime())
|
||||
--DevTools_Dump(aura_env.unitList)
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.unitList = {}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
--SPELL_ACTIVATION_OVERLAY_GLOW_SHOW
|
||||
function(_,ID)
|
||||
if ID == 31935 then
|
||||
CustomTrash.hammersnshields.shields = CustomTrash.hammersnshields.shields + 1
|
||||
end
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subevent = select(3, ...)
|
||||
if subevent == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(6, ...)
|
||||
local spell = select(14, ...)
|
||||
if caster == UnitName("player") and (spell == "Hammer of the Righteous" or spell == "Blessed Hammer") then
|
||||
CustomTrash.hammersnshields.hammers = CustomTrash.hammersnshields.hammers + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
return CustomTrash.hammersnshields.shields .. " / " .. CustomTrash.hammersnshields.hammers .. " " .. CustomTrash.hammersnshields.shields / CustomTrash.hammersnshields.hammers
|
||||
--SPELL_ACTIVATION_OVERLAY_GLOW_SHOW
|
||||
function(_,ID)
|
||||
if ID == 31935 then
|
||||
CustomTrash.hammersnshields.shields = CustomTrash.hammersnshields.shields + 1
|
||||
end
|
||||
end
|
||||
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(...)
|
||||
local subevent = select(3, ...)
|
||||
if subevent == "SPELL_CAST_SUCCESS" then
|
||||
local caster = select(6, ...)
|
||||
local spell = select(14, ...)
|
||||
if caster == UnitName("player") and (spell == "Hammer of the Righteous" or spell == "Blessed Hammer") then
|
||||
CustomTrash.hammersnshields.hammers = CustomTrash.hammersnshields.hammers + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
return CustomTrash.hammersnshields.shields .. " / " .. CustomTrash.hammersnshields.hammers .. " " .. CustomTrash.hammersnshields.shields / CustomTrash.hammersnshields.hammers
|
||||
end
|
||||
@@ -1,76 +1,76 @@
|
||||
--TSU
|
||||
--COMBAT_LOG_EVENT_UNFILTERED GROUP_ROSTER_UPDATE
|
||||
function(allstates, e, ...)
|
||||
if e == "GROUP_ROSTER_UPDATE" then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
local u = "raid" .. i
|
||||
if aura_env.healers[UnitName(u)] then aura_env.healers[UnitName(u)] = NULL end
|
||||
-- if UnitGroupRolesAssigned(u) == "TANK" then
|
||||
if UnitGroupRolesAssigned(u) == "HEALER" then
|
||||
aura_env.healers[UnitName(u)] = true
|
||||
end
|
||||
for k,v in pairs(aura_env.healers) do
|
||||
allstates[k] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "static",
|
||||
value = 0,
|
||||
total = 100,
|
||||
name = k,
|
||||
class = select(3, UnitClass(k)),
|
||||
}
|
||||
end
|
||||
end
|
||||
--DevTools_Dump(allstates)
|
||||
return true
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local spellId = select(12, ...)
|
||||
if aura_env.dispels[spellId] then
|
||||
local caster = select(5, ...)
|
||||
allstates[caster] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "timed",
|
||||
duration = 8,
|
||||
expirationTime = GetTime() + 8,
|
||||
name = caster,
|
||||
class = select(3, UnitClass(caster)),
|
||||
}
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--ON SHOW
|
||||
if aura_env.state then
|
||||
local class = aura_env.state.class
|
||||
aura_env.region.bar:SetForegroundColor(aura_env.classColor(class))
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.healers = {}
|
||||
aura_env.dispels = {
|
||||
[4987] = true, -- Cleanse
|
||||
[88423] = true, -- Nature's Cure
|
||||
[77130] = true, -- Purify Spirit
|
||||
[115450] = true, -- Detox
|
||||
-- [236186] = true, -- Tank dispel, testing
|
||||
}
|
||||
aura_env.classColor = function(class)
|
||||
if class == 1 then return 0.78, 0.61, 0.43, 1 elseif
|
||||
class == 2 then return 0.96, 0.55, 0.73, 1 elseif
|
||||
class == 3 then return 0.67, 0.83, 0.45, 1 elseif
|
||||
class == 4 then return 1, 0.96, 0.41, 1 elseif
|
||||
class == 5 then return 1, 1, 1, 1 elseif
|
||||
class == 6 then return 0.77, 0.12, 0.23, 1 elseif
|
||||
class == 7 then return 0, 0.44, 0.87, 1 elseif
|
||||
class == 8 then return 0.25, 0.78, 0.92, 1 elseif
|
||||
class == 9 then return 0.53, 0.53, 0.93, 1 elseif
|
||||
class == 10 then return 0, 1, 0.59, 1 elseif
|
||||
class == 11 then return 1, 0.49, 0.04, 1 elseif
|
||||
class == 12 then return 0.64, 0.19, 0.79, 1 else
|
||||
return 1, 1, 1, 1 end
|
||||
--TSU
|
||||
--COMBAT_LOG_EVENT_UNFILTERED GROUP_ROSTER_UPDATE
|
||||
function(allstates, e, ...)
|
||||
if e == "GROUP_ROSTER_UPDATE" then
|
||||
for i = 1, GetNumGroupMembers() do
|
||||
local u = "raid" .. i
|
||||
if aura_env.healers[UnitName(u)] then aura_env.healers[UnitName(u)] = NULL end
|
||||
-- if UnitGroupRolesAssigned(u) == "TANK" then
|
||||
if UnitGroupRolesAssigned(u) == "HEALER" then
|
||||
aura_env.healers[UnitName(u)] = true
|
||||
end
|
||||
for k,v in pairs(aura_env.healers) do
|
||||
allstates[k] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "static",
|
||||
value = 0,
|
||||
total = 100,
|
||||
name = k,
|
||||
class = select(3, UnitClass(k)),
|
||||
}
|
||||
end
|
||||
end
|
||||
--DevTools_Dump(allstates)
|
||||
return true
|
||||
elseif e == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_CAST_SUCCESS" then
|
||||
local spellId = select(12, ...)
|
||||
if aura_env.dispels[spellId] then
|
||||
local caster = select(5, ...)
|
||||
allstates[caster] = {
|
||||
show = true,
|
||||
changed = true,
|
||||
progressType = "timed",
|
||||
duration = 8,
|
||||
expirationTime = GetTime() + 8,
|
||||
name = caster,
|
||||
class = select(3, UnitClass(caster)),
|
||||
}
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
--ON SHOW
|
||||
if aura_env.statee then
|
||||
local class = aura_env.statee.class
|
||||
aura_env.region.bar:SetForegroundColor(aura_env.classColor(class))
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.healers = {}
|
||||
aura_env.dispels = {
|
||||
[4987] = true, -- Cleanse
|
||||
[88423] = true, -- Nature's Cure
|
||||
[77130] = true, -- Purify Spirit
|
||||
[115450] = true, -- Detox
|
||||
-- [236186] = true, -- Tank dispel, testing
|
||||
}
|
||||
aura_env.classColor = function(class)
|
||||
if class == 1 then return 0.78, 0.61, 0.43, 1 elseif
|
||||
class == 2 then return 0.96, 0.55, 0.73, 1 elseif
|
||||
class == 3 then return 0.67, 0.83, 0.45, 1 elseif
|
||||
class == 4 then return 1, 0.96, 0.41, 1 elseif
|
||||
class == 5 then return 1, 1, 1, 1 elseif
|
||||
class == 6 then return 0.77, 0.12, 0.23, 1 elseif
|
||||
class == 7 then return 0, 0.44, 0.87, 1 elseif
|
||||
class == 8 then return 0.25, 0.78, 0.92, 1 elseif
|
||||
class == 9 then return 0.53, 0.53, 0.93, 1 elseif
|
||||
class == 10 then return 0, 1, 0.59, 1 elseif
|
||||
class == 11 then return 1, 0.49, 0.04, 1 elseif
|
||||
class == 12 then return 0.64, 0.19, 0.79, 1 else
|
||||
return 1, 1, 1, 1 end
|
||||
end
|
||||
@@ -1,34 +1,34 @@
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k, v in pairs(aura_env.herbs) do
|
||||
if k == "Starlight Rose" then
|
||||
if GetItemCount(k) % 7 == 0 then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. " " .. GetItemCount(k) / 4 .. " " .. "|cFF6CFF6C" .. math.floor(GetItemCount(k) / 7) .. "\n"
|
||||
else
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. " " .. GetItemCount(k) / 4 .. " " .. "|cFFFF6C6C" .. math.floor(GetItemCount(k) / 7) .. " - " .. (math.floor(GetItemCount(k) / 7)) * 7 .. "\n"
|
||||
end
|
||||
elseif k == "Icecap" then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) + (GetItemCount("Icecap Petal") / 10) .. "\n"
|
||||
elseif k == "Mountain Silversage" then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) + (GetItemCount("Mountain Silversage Stalk") / 10) .. "\n"
|
||||
else
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
CHAT_MSG_OPENING
|
||||
function(_, msg)
|
||||
local caster, event, target = msg:match("(%a+) perform ([%a*%s*]+) on ([%a*%s*%p*]+).")
|
||||
if caster == "You" and event == "Herb Gathering" then
|
||||
if aura_env.herbs[target] == nil then
|
||||
aura_env.herbs[target] = 0
|
||||
end
|
||||
aura_env.herbs[target] = aura_env.herbs[target] + 1
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.herbs = {}
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k, v in pairs(aura_env.herbs) do
|
||||
if k == "Starlight Rose" then
|
||||
if GetItemCount(k) % 7 == 0 then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. " " .. GetItemCount(k) / 4 .. " " .. "|cFF6CFF6C" .. math.floor(GetItemCount(k) / 7) .. "\n"
|
||||
else
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. " " .. GetItemCount(k) / 4 .. " " .. "|cFFFF6C6C" .. math.floor(GetItemCount(k) / 7) .. " - " .. (math.floor(GetItemCount(k) / 7)) * 7 .. "\n"
|
||||
end
|
||||
elseif k == "Icecap" then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) + (GetItemCount("Icecap Petal") / 10) .. "\n"
|
||||
elseif k == "Mountain Silversage" then
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) + (GetItemCount("Mountain Silversage Stalk") / 10) .. "\n"
|
||||
else
|
||||
output = output .. k .. " " .. v .. " " .. GetItemCount(k) .. "\n"
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
CHAT_MSG_OPENING
|
||||
function(_, msg)
|
||||
local caster, event, target = msg:match("(%a+) perform ([%a*%s*]+) on ([%a*%s*%p*]+).")
|
||||
if caster == "You" and event == "Herb Gathering" then
|
||||
if aura_env.herbs[target] == nil then
|
||||
aura_env.herbs[target] = 0
|
||||
end
|
||||
aura_env.herbs[target] = aura_env.herbs[target] + 1
|
||||
end
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.herbs = {}
|
||||
|
||||
@@ -1,37 +1,37 @@
|
||||
CHAT_MSG_OPENING
|
||||
function(_,msg)
|
||||
local _,_,caster,event,target = string.find(msg, "(%a+)%s*perform*%s*(%a+)%s*Gathering%s*on%s*(%a*)")
|
||||
local herbN = 0
|
||||
if caster == "You" and event == "Herb" then
|
||||
for i = 1, 5 do
|
||||
if target == aura_env.herbs[i] then
|
||||
herbN = i
|
||||
break
|
||||
end
|
||||
end
|
||||
aura_env.herbCount[herbN] = aura_env.herbCount[herbN] + 1
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for i = 1, 5 do
|
||||
if aura_env.herbCount[i] > 0 then
|
||||
if aura_env.herbs[i] == "Starlight" then
|
||||
if GetItemCount("Starlight Rose") % 7 == 0 then
|
||||
output = output .. "Starlight Rose" .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount("Starlight Rose") .. " " .. GetItemCount("Starlight Rose") / 4 .. " " .. "|cFF6CFF6C" .. math.floor(GetItemCount("Starlight Rose") / 7) .. "\n"
|
||||
else
|
||||
output = output .. "Starlight Rose" .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount("Starlight Rose") .. " " .. GetItemCount("Starlight Rose") / 4 .. " " .. "|cFFFF6C6C" .. math.floor(GetItemCount("Starlight Rose") / 7) .. " - " .. (math.floor(GetItemCount("Starlight Rose") / 7) + 1) * 7 .. "\n"
|
||||
end
|
||||
else
|
||||
output = output .. aura_env.herbs[i] .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount(aura_env.herbs[i]) .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.herbCount = {0, 0, 0, 0, 0}
|
||||
CHAT_MSG_OPENING
|
||||
function(_,msg)
|
||||
local _,_,caster,event,target = string.find(msg, "(%a+)%s*perform*%s*(%a+)%s*Gathering%s*on%s*(%a*)")
|
||||
local herbN = 0
|
||||
if caster == "You" and event == "Herb" then
|
||||
for i = 1, 5 do
|
||||
if target == aura_env.herbs[i] then
|
||||
herbN = i
|
||||
break
|
||||
end
|
||||
end
|
||||
aura_env.herbCount[herbN] = aura_env.herbCount[herbN] + 1
|
||||
end
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for i = 1, 5 do
|
||||
if aura_env.herbCount[i] > 0 then
|
||||
if aura_env.herbs[i] == "Starlight" then
|
||||
if GetItemCount("Starlight Rose") % 7 == 0 then
|
||||
output = output .. "Starlight Rose" .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount("Starlight Rose") .. " " .. GetItemCount("Starlight Rose") / 4 .. " " .. "|cFF6CFF6C" .. math.floor(GetItemCount("Starlight Rose") / 7) .. "\n"
|
||||
else
|
||||
output = output .. "Starlight Rose" .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount("Starlight Rose") .. " " .. GetItemCount("Starlight Rose") / 4 .. " " .. "|cFFFF6C6C" .. math.floor(GetItemCount("Starlight Rose") / 7) .. " - " .. (math.floor(GetItemCount("Starlight Rose") / 7) + 1) * 7 .. "\n"
|
||||
end
|
||||
else
|
||||
output = output .. aura_env.herbs[i] .. " " .. aura_env.herbCount[i] .. " " .. GetItemCount(aura_env.herbs[i]) .. "\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.herbCount = {0, 0, 0, 0, 0}
|
||||
aura_env.herbs = {"Dreamleaf", "Aethril", "Fjarnskaggl", "Foxflower", "Starlight"}
|
||||
@@ -1,63 +1,63 @@
|
||||
--PLAYER_ENTERING_WORLD BAG_UPDATE
|
||||
function()
|
||||
aura_env.output = ""
|
||||
local herbs = {}
|
||||
local twok = 0
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.HerbQuota) do
|
||||
if UnitName("player") == "Pinkiepiie" then
|
||||
WeakAurasSaved.CustomTrash.HerbQuota[k] = GetItemCount(k, 1)
|
||||
else
|
||||
herbs[k] = v + GetItemCount(k, 1)
|
||||
end
|
||||
if v >= 2400 then twok = twok + 1 end
|
||||
end
|
||||
local function hexgrad(val, min, max)
|
||||
if val >= 2400 then return "\124cff3366ff" end
|
||||
local function tohex(input)
|
||||
local output = string.format("%x", input * 255)
|
||||
return output
|
||||
end
|
||||
local function grad(c, min, max)
|
||||
c = 1 - (((max - c) / (max - min)) * 1)
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
local color1, color2, color3, color4 = 0, 0, 0, 0
|
||||
color1, color2, color3, color4 = grad(val, min, max)
|
||||
color1, color2, color3, color4 = tohex(color1), tohex(color2), tohex(color3), tohex(color4)
|
||||
color1, color2, color3, color4 = tostring(color1), tostring(color2), tostring(color3), tostring(color4)
|
||||
if string.len(color1) == 1 then color1 = "0" .. color1 end
|
||||
if string.len(color2) == 1 then color2 = "0" .. color2 end
|
||||
if string.len(color3) == 1 then color3 = "0" .. color3 end
|
||||
if string.len(color4) == 1 then color4 = "0" .. color4 end
|
||||
local color = "\124c" .. color4 .. color1 .. color2 .. color3
|
||||
return color
|
||||
end
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.HerbQuota) do
|
||||
if twok < 5 then
|
||||
aura_env.output = aura_env.output .. hexgrad(v, 0, 2400) .. k .. " " .. v .. " / 2400" .. "\124r\n"
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = ""
|
||||
if not WeakAurasSaved.CustomTrash.HerbQuota then WeakAurasSaved.CustomTrash.HerbQuota = {} end
|
||||
WeakAurasSaved.CustomTrash.HerbQuota = {
|
||||
["Starlight Rose"] = 0,
|
||||
["Fjarnskaggl"] = 0,
|
||||
["Foxflower"] = 0,
|
||||
["Dreamleaf"] = 0,
|
||||
["Aethril"] = 0,
|
||||
}
|
||||
--PLAYER_ENTERING_WORLD BAG_UPDATE
|
||||
function()
|
||||
aura_env.output = ""
|
||||
local herbs = {}
|
||||
local twok = 0
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.HerbQuota) do
|
||||
if UnitName("player") == "Pinkiepiie" then
|
||||
WeakAurasSaved.CustomTrash.HerbQuota[k] = GetItemCount(k, 1)
|
||||
else
|
||||
herbs[k] = v + GetItemCount(k, 1)
|
||||
end
|
||||
if v >= 2400 then twok = twok + 1 end
|
||||
end
|
||||
local function hexgrad(val, min, max)
|
||||
if val >= 2400 then return "\124cff3366ff" end
|
||||
local function tohex(input)
|
||||
local output = string.format("%x", input * 255)
|
||||
return output
|
||||
end
|
||||
local function grad(c, min, max)
|
||||
c = 1 - (((max - c) / (max - min)) * 1)
|
||||
if c > 0.5 then
|
||||
c = 1 - (2 * (c - 0.5))
|
||||
return c, 1, 0, 1
|
||||
else
|
||||
c = c * 2
|
||||
return 1, c, 0, 1
|
||||
end
|
||||
end
|
||||
local color1, color2, color3, color4 = 0, 0, 0, 0
|
||||
color1, color2, color3, color4 = grad(val, min, max)
|
||||
color1, color2, color3, color4 = tohex(color1), tohex(color2), tohex(color3), tohex(color4)
|
||||
color1, color2, color3, color4 = tostring(color1), tostring(color2), tostring(color3), tostring(color4)
|
||||
if string.len(color1) == 1 then color1 = "0" .. color1 end
|
||||
if string.len(color2) == 1 then color2 = "0" .. color2 end
|
||||
if string.len(color3) == 1 then color3 = "0" .. color3 end
|
||||
if string.len(color4) == 1 then color4 = "0" .. color4 end
|
||||
local color = "\124c" .. color4 .. color1 .. color2 .. color3
|
||||
return color
|
||||
end
|
||||
for k, v in pairs(WeakAurasSaved.CustomTrash.HerbQuota) do
|
||||
if twok < 5 then
|
||||
aura_env.output = aura_env.output .. hexgrad(v, 0, 2400) .. k .. " " .. v .. " / 2400" .. "\124r\n"
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
return aura_env.output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.output = ""
|
||||
if not WeakAurasSaved.CustomTrash.HerbQuota then WeakAurasSaved.CustomTrash.HerbQuota = {} end
|
||||
WeakAurasSaved.CustomTrash.HerbQuota = {
|
||||
["Starlight Rose"] = 0,
|
||||
["Fjarnskaggl"] = 0,
|
||||
["Foxflower"] = 0,
|
||||
["Dreamleaf"] = 0,
|
||||
["Aethril"] = 0,
|
||||
}
|
||||
|
||||
@@ -1,65 +1,65 @@
|
||||
--EVERY FRAME TRIGGER
|
||||
function()
|
||||
if not WeakAurasSaved.HerbSniffer then WeakAurasSaved.HerbSniffer = {} end
|
||||
if not WeakAurasSaved.HerbSniffer.CD then WeakAurasSaved.HerbSniffer.CD = 0 end
|
||||
if not WeakAurasSaved.HerbSniffer.NoCD then WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local id = aura_env.GetClosestHerb()
|
||||
local hX, hY = aura_env.herbs[id]["X"], aura_env.herbs[id]["Y"]
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
local X = pX - hX
|
||||
local Y = pY - hY
|
||||
local playerFace = GetPlayerFacing() or 0
|
||||
local playerA = math.floor(playerFace * 100)
|
||||
playerA = range(playerA, 0, 630, 360) - 1
|
||||
playerA = - playerA
|
||||
playerA = playerA - 90
|
||||
if playerA < 0 then playerA = playerA + 360 end
|
||||
aura_env.hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2))) * 100
|
||||
WeakAurasSaved.HerbSniffer.hyp = aura_env.hyp
|
||||
aura_env.angle = math.deg(math.atan2(Y, X))
|
||||
aura_env.angle = aura_env.angle - playerA
|
||||
aura_env.angle = aura_env.angle - 180
|
||||
if aura_env.hyp < aura_env.wipeDistance then --When reach herb activate it's cooldown (herbcd[cd] = coords)
|
||||
aura_env.herbs[id]["CD"] = math.floor(GetTime() + aura_env.cooldown)
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD + 1
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD - 1
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 10000,
|
||||
["ID"] = 0
|
||||
}
|
||||
end
|
||||
for k,v in ipairs(aura_env.herbs) do --if cooldown is up then insert back into proper array
|
||||
local cd = aura_env.herbs[k]["CD"]
|
||||
if cd > 0 then
|
||||
if GetTime() > cd then
|
||||
aura_env.herbs[k]["CD"] = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD + 1
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD - 1
|
||||
end
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--RESET_COUNTER
|
||||
function()
|
||||
WeakAurasSaved.HerbSniffer.CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = 200
|
||||
end
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
return - aura_env.angle
|
||||
end
|
||||
|
||||
--INIT
|
||||
--EVERY FRAME TRIGGER
|
||||
function()
|
||||
if not WeakAurasSaved.HerbSniffer then WeakAurasSaved.HerbSniffer = {} end
|
||||
if not WeakAurasSaved.HerbSniffer.CD then WeakAurasSaved.HerbSniffer.CD = 0 end
|
||||
if not WeakAurasSaved.HerbSniffer.NoCD then WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local id = aura_env.GetClosestHerb()
|
||||
local hX, hY = aura_env.herbs[id]["X"], aura_env.herbs[id]["Y"]
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
local X = pX - hX
|
||||
local Y = pY - hY
|
||||
local playerFace = GetPlayerFacing() or 0
|
||||
local playerA = math.floor(playerFace * 100)
|
||||
playerA = range(playerA, 0, 630, 360) - 1
|
||||
playerA = - playerA
|
||||
playerA = playerA - 90
|
||||
if playerA < 0 then playerA = playerA + 360 end
|
||||
aura_env.hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2))) * 100
|
||||
WeakAurasSaved.HerbSniffer.hyp = aura_env.hyp
|
||||
aura_env.angle = math.deg(math.atan2(Y, X))
|
||||
aura_env.angle = aura_env.angle - playerA
|
||||
aura_env.angle = aura_env.angle - 180
|
||||
if aura_env.hyp < aura_env.wipeDistance then --When reach herb activate it's cooldown (herbcd[cd] = coords)
|
||||
aura_env.herbs[id]["CD"] = math.floor(GetTime() + aura_env.cooldown)
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD + 1
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD - 1
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 10000,
|
||||
["ID"] = 0
|
||||
}
|
||||
end
|
||||
for k,v in ipairs(aura_env.herbs) do --if cooldown is up then insert back into proper array
|
||||
local cd = aura_env.herbs[k]["CD"]
|
||||
if cd > 0 then
|
||||
if GetTime() > cd then
|
||||
aura_env.herbs[k]["CD"] = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD + 1
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD - 1
|
||||
end
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--RESET_COUNTER
|
||||
function()
|
||||
WeakAurasSaved.HerbSniffer.CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = 200
|
||||
end
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
return - aura_env.angle
|
||||
end
|
||||
|
||||
--INIT
|
||||
if WeakAuras.IsOptionsOpen() then WeakAurasSaved.HerbSniffer.CD = 0; WeakAurasSaved.HerbSniffer.NoCD = 200 end
|
||||
@@ -1,14 +1,14 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
if WeakAurasSaved.HerbSniffer.hyp and WeakAurasSaved.HerbSniffer.NoCD and WeakAurasSaved.HerbSniffer.CD then
|
||||
return round(WeakAurasSaved.HerbSniffer.hyp, 0) .. "\n" .. WeakAurasSaved.HerbSniffer.NoCD .. "\n" .. WeakAurasSaved.HerbSniffer.CD
|
||||
end
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
if WeakAurasSaved.HerbSniffer.hyp and WeakAurasSaved.HerbSniffer.NoCD and WeakAurasSaved.HerbSniffer.CD then
|
||||
return round(WeakAurasSaved.HerbSniffer.hyp, 0) .. "\n" .. WeakAurasSaved.HerbSniffer.NoCD .. "\n" .. WeakAurasSaved.HerbSniffer.CD
|
||||
end
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,67 +1,67 @@
|
||||
--EVERY FRAME TRIGGER
|
||||
function()
|
||||
if not WeakAurasSaved.HerbSniffer then WeakAurasSaved.HerbSniffer = {} end
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local id = aura_env.GetClosestHerb()
|
||||
if id > -1 then
|
||||
if not aura_env.herbs then return false end
|
||||
local hX, hY = aura_env.herbs[id].X, aura_env.herbs[id].Y
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
local X = pX - hX
|
||||
local Y = pY - hY
|
||||
local playerFace = GetPlayerFacing() or 0
|
||||
local playerA = math.floor(playerFace * 100)
|
||||
playerA = range(playerA, 0, 630, 360) - 1
|
||||
playerA = -playerA
|
||||
playerA = playerA - 90
|
||||
if playerA < 0 then playerA = playerA + 360 end
|
||||
aura_env.hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2))) * 100
|
||||
WeakAurasSaved.HerbSniffer.hyp = aura_env.hyp
|
||||
aura_env.angle = math.deg(math.atan2(Y, X))
|
||||
aura_env.angle = aura_env.angle - playerA
|
||||
aura_env.angle = aura_env.angle - 180
|
||||
if aura_env.hyp < aura_env.wipeDistance then --When reach herb activate it's cooldown (herbcd[cd] = coords)
|
||||
aura_env.herbs[id].CD = math.floor(GetTime() + aura_env.cooldown)
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD + 1
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD - 1
|
||||
aura_env.minID = {
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 10000,
|
||||
["ID"] = -1
|
||||
}
|
||||
end
|
||||
for k, v in ipairs(aura_env.herbs) do --if cooldown is up then insert back into proper array
|
||||
local cd = aura_env.herbs[k].CD
|
||||
if cd > 0 then
|
||||
if GetTime() > cd then
|
||||
aura_env.herbs[k].CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD + 1
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD - 1
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--RESET_COUNTER
|
||||
function()
|
||||
WeakAurasSaved.HerbSniffer.CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs
|
||||
end
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
return - aura_env.angle
|
||||
end
|
||||
|
||||
--INIT
|
||||
if WeakAuras.IsOptionsOpen() then WeakAurasSaved.HerbSniffer.CD = 0; WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
--EVERY FRAME TRIGGER
|
||||
function()
|
||||
if not WeakAurasSaved.HerbSniffer then WeakAurasSaved.HerbSniffer = {} end
|
||||
local function range (val, min, max, max2)
|
||||
val = 1 - (((max - val) / (max - min)) * max2)
|
||||
return val
|
||||
end
|
||||
local id = aura_env.GetClosestHerb()
|
||||
if id > -1 then
|
||||
if not aura_env.herbs then return false end
|
||||
local hX, hY = aura_env.herbs[id].X, aura_env.herbs[id].Y
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
local X = pX - hX
|
||||
local Y = pY - hY
|
||||
local playerFace = GetPlayerFacing() or 0
|
||||
local playerA = math.floor(playerFace * 100)
|
||||
playerA = range(playerA, 0, 630, 360) - 1
|
||||
playerA = -playerA
|
||||
playerA = playerA - 90
|
||||
if playerA < 0 then playerA = playerA + 360 end
|
||||
aura_env.hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2))) * 100
|
||||
WeakAurasSaved.HerbSniffer.hyp = aura_env.hyp
|
||||
aura_env.angle = math.deg(math.atan2(Y, X))
|
||||
aura_env.angle = aura_env.angle - playerA
|
||||
aura_env.angle = aura_env.angle - 180
|
||||
if aura_env.hyp < aura_env.wipeDistance then --When reach herb activate it's cooldown (herbcd[cd] = coords)
|
||||
aura_env.herbs[id].CD = math.floor(GetTime() + aura_env.cooldown)
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD + 1
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD - 1
|
||||
aura_env.minID = {
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 10000,
|
||||
["ID"] = -1
|
||||
}
|
||||
end
|
||||
for k, v in ipairs(aura_env.herbs) do --if cooldown is up then insert back into proper array
|
||||
local cd = aura_env.herbs[k].CD
|
||||
if cd > 0 then
|
||||
if GetTime() > cd then
|
||||
aura_env.herbs[k].CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = WeakAurasSaved.HerbSniffer.NoCD + 1
|
||||
WeakAurasSaved.HerbSniffer.CD = WeakAurasSaved.HerbSniffer.CD - 1
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
--RESET_COUNTER
|
||||
function()
|
||||
WeakAurasSaved.HerbSniffer.CD = 0
|
||||
WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs
|
||||
end
|
||||
|
||||
--ANIMATION
|
||||
function()
|
||||
return - aura_env.angle
|
||||
end
|
||||
|
||||
--INIT
|
||||
if WeakAuras.IsOptionsOpen() then WeakAurasSaved.HerbSniffer.CD = 0; WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
if WeakAurasSaved.HerbSniffer.hyp and WeakAurasSaved.HerbSniffer.NoCD and WeakAurasSaved.HerbSniffer.CD then
|
||||
return round(WeakAurasSaved.HerbSniffer.hyp, 0) .. "\n" .. WeakAurasSaved.HerbSniffer.NoCD .. "\n" .. WeakAurasSaved.HerbSniffer.CD
|
||||
end
|
||||
end
|
||||
--DISPLAY
|
||||
function()
|
||||
local function round(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10 ^ n) + 0.5) / (10 ^ n)
|
||||
else
|
||||
var = math.floor(var + 0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
if WeakAurasSaved.HerbSniffer.hyp and WeakAurasSaved.HerbSniffer.NoCD and WeakAurasSaved.HerbSniffer.CD then
|
||||
return round(WeakAurasSaved.HerbSniffer.hyp, 0) .. "\n" .. WeakAurasSaved.HerbSniffer.NoCD .. "\n" .. WeakAurasSaved.HerbSniffer.CD
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,82 +1,82 @@
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 49.38,
|
||||
["Y"] = 77.73,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 48.13,
|
||||
["Y"] = 85.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 47.99,
|
||||
["Y"] = 73.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.28,
|
||||
["Y"] = 61.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 58.67,
|
||||
["Y"] = 59.56,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 57.57,
|
||||
["Y"] = 57.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 57.13,
|
||||
["Y"] = 60.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 55.73,
|
||||
["Y"] = 51.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 56.14,
|
||||
["Y"] = 51.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 41.07,
|
||||
["Y"] = 73.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID = {
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = -1
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k].X, aura_env.herbs[k].Y, aura_env.herbs[k].CD
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID.D then
|
||||
aura_env.minID.X = hX
|
||||
aura_env.minID.Y = hY
|
||||
aura_env.minID.D = hyp
|
||||
aura_env.minID.ID = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID.ID
|
||||
end
|
||||
if WeakAuras.IsOptionsOpen() then WeakAurasSaved.HerbSniffer.CD = 0; WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 49.38,
|
||||
["Y"] = 77.73,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 48.13,
|
||||
["Y"] = 85.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 47.99,
|
||||
["Y"] = 73.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.28,
|
||||
["Y"] = 61.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 58.67,
|
||||
["Y"] = 59.56,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 57.57,
|
||||
["Y"] = 57.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 57.13,
|
||||
["Y"] = 60.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 55.73,
|
||||
["Y"] = 51.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 56.14,
|
||||
["Y"] = 51.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 41.07,
|
||||
["Y"] = 73.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID = {
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = -1
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k].X, aura_env.herbs[k].Y, aura_env.herbs[k].CD
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID.D then
|
||||
aura_env.minID.X = hX
|
||||
aura_env.minID.Y = hY
|
||||
aura_env.minID.D = hyp
|
||||
aura_env.minID.ID = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID.ID
|
||||
end
|
||||
if WeakAuras.IsOptionsOpen() then WeakAurasSaved.HerbSniffer.CD = 0; WeakAurasSaved.HerbSniffer.NoCD = #aura_env.herbs end
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,77 +1,77 @@
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 58.54,
|
||||
["Y"] = 51.33,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 55.51,
|
||||
["Y"] = 55.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 49.55,
|
||||
["Y"] = 58.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.87,
|
||||
["Y"] = 79,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 56.32,
|
||||
["Y"] = 77.94,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 57.65,
|
||||
["Y"] = 72.89,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 52.06,
|
||||
["Y"] = 22.41,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 49.8,
|
||||
["Y"] = 14.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 42.4,
|
||||
["Y"] = 71.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 66.74,
|
||||
["Y"] = 37.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 71.61,
|
||||
["Y"] = 34.02,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 43.66,
|
||||
["Y"] = 42.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 51.79,
|
||||
["Y"] = 70.39,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 45.17,
|
||||
["Y"] = 53.13,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 71.88,
|
||||
["Y"] = 27.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 58.54,
|
||||
["Y"] = 51.33,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 55.51,
|
||||
["Y"] = 55.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 49.55,
|
||||
["Y"] = 58.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.87,
|
||||
["Y"] = 79,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 56.32,
|
||||
["Y"] = 77.94,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 57.65,
|
||||
["Y"] = 72.89,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 52.06,
|
||||
["Y"] = 22.41,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 49.8,
|
||||
["Y"] = 14.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 42.4,
|
||||
["Y"] = 71.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 66.74,
|
||||
["Y"] = 37.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 71.61,
|
||||
["Y"] = 34.02,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 43.66,
|
||||
["Y"] = 42.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 51.79,
|
||||
["Y"] = 70.39,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 45.17,
|
||||
["Y"] = 53.13,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 71.88,
|
||||
["Y"] = 27.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,453 +1,453 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 55.83,
|
||||
["Y"] = 70.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 54.79,
|
||||
["Y"] = 69.62,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 54.46,
|
||||
["Y"] = 68.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 54.06,
|
||||
["Y"] = 67.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 53.67,
|
||||
["Y"] = 65.79,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 54.4,
|
||||
["Y"] = 64.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 55.43,
|
||||
["Y"] = 63.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 56.1,
|
||||
["Y"] = 64.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 56.57,
|
||||
["Y"] = 65.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 57.3,
|
||||
["Y"] = 65.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 58.88,
|
||||
["Y"] = 64.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.57,
|
||||
["Y"] = 63.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 61.47,
|
||||
["Y"] = 63.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 62.21,
|
||||
["Y"] = 63.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 63.2,
|
||||
["Y"] = 63.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 64.17,
|
||||
["Y"] = 62.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 65.08,
|
||||
["Y"] = 61.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 65.39,
|
||||
["Y"] = 60.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 65.57,
|
||||
["Y"] = 57.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 65.53,
|
||||
["Y"] = 55.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 64.44,
|
||||
["Y"] = 52.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 63.86,
|
||||
["Y"] = 50.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 63.14,
|
||||
["Y"] = 49.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 58.31,
|
||||
["Y"] = 47.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 56.2,
|
||||
["Y"] = 46.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 55.45,
|
||||
["Y"] = 47.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 55.15,
|
||||
["Y"] = 48.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 54.81,
|
||||
["Y"] = 49.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 55.15,
|
||||
["Y"] = 49.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 57.26,
|
||||
["Y"] = 51.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 57.23,
|
||||
["Y"] = 53.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 57.06,
|
||||
["Y"] = 53.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 57.09,
|
||||
["Y"] = 54.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 56.75,
|
||||
["Y"] = 54.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 56.22,
|
||||
["Y"] = 53.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 55.69,
|
||||
["Y"] = 53.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 55.34,
|
||||
["Y"] = 53.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 54.31,
|
||||
["Y"] = 53.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 54.17,
|
||||
["Y"] = 53.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 53.38,
|
||||
["Y"] = 53.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 52.77,
|
||||
["Y"] = 53.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 51.93,
|
||||
["Y"] = 53.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 51.84,
|
||||
["Y"] = 52.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 52.12,
|
||||
["Y"] = 51.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 52.44,
|
||||
["Y"] = 49.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 52.48,
|
||||
["Y"] = 48.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 52.39,
|
||||
["Y"] = 48.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 52.08,
|
||||
["Y"] = 47.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 51.87,
|
||||
["Y"] = 46.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 50.91,
|
||||
["Y"] = 47.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 50.39,
|
||||
["Y"] = 46.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 50,
|
||||
["Y"] = 46.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 49.86,
|
||||
["Y"] = 46.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 49.44,
|
||||
["Y"] = 46.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 48.98,
|
||||
["Y"] = 46.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 48.4,
|
||||
["Y"] = 45.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 47.67,
|
||||
["Y"] = 45.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 47.06,
|
||||
["Y"] = 44.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 46.5,
|
||||
["Y"] = 43.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 32.58,
|
||||
["Y"] = 38.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 34.29,
|
||||
["Y"] = 39.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 36.08,
|
||||
["Y"] = 39.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 36.91,
|
||||
["Y"] = 41.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 38.79,
|
||||
["Y"] = 40.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[68] =
|
||||
{
|
||||
["X"] = 39.68,
|
||||
["Y"] = 40.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[69] =
|
||||
{
|
||||
["X"] = 41.32,
|
||||
["Y"] = 41.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[70] =
|
||||
{
|
||||
["X"] = 42.81,
|
||||
["Y"] = 43.91,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 55.83,
|
||||
["Y"] = 70.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 54.79,
|
||||
["Y"] = 69.62,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 54.46,
|
||||
["Y"] = 68.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 54.06,
|
||||
["Y"] = 67.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 53.67,
|
||||
["Y"] = 65.79,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 54.4,
|
||||
["Y"] = 64.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 55.43,
|
||||
["Y"] = 63.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 56.1,
|
||||
["Y"] = 64.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 56.57,
|
||||
["Y"] = 65.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 57.3,
|
||||
["Y"] = 65.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 58.88,
|
||||
["Y"] = 64.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.57,
|
||||
["Y"] = 63.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 61.47,
|
||||
["Y"] = 63.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 62.21,
|
||||
["Y"] = 63.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 63.2,
|
||||
["Y"] = 63.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 64.17,
|
||||
["Y"] = 62.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 65.08,
|
||||
["Y"] = 61.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 65.39,
|
||||
["Y"] = 60.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 65.57,
|
||||
["Y"] = 57.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 65.53,
|
||||
["Y"] = 55.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 64.44,
|
||||
["Y"] = 52.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 63.86,
|
||||
["Y"] = 50.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 63.14,
|
||||
["Y"] = 49.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 58.31,
|
||||
["Y"] = 47.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 56.2,
|
||||
["Y"] = 46.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 55.45,
|
||||
["Y"] = 47.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 55.15,
|
||||
["Y"] = 48.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 54.81,
|
||||
["Y"] = 49.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 55.15,
|
||||
["Y"] = 49.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 56.01,
|
||||
["Y"] = 50.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 57.26,
|
||||
["Y"] = 51.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 57.23,
|
||||
["Y"] = 53.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 57.06,
|
||||
["Y"] = 53.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 57.09,
|
||||
["Y"] = 54.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 56.75,
|
||||
["Y"] = 54.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 56.22,
|
||||
["Y"] = 53.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 55.69,
|
||||
["Y"] = 53.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 55.34,
|
||||
["Y"] = 53.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 54.31,
|
||||
["Y"] = 53.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 54.17,
|
||||
["Y"] = 53.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 53.38,
|
||||
["Y"] = 53.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 52.77,
|
||||
["Y"] = 53.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 51.93,
|
||||
["Y"] = 53.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 51.84,
|
||||
["Y"] = 52.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 52.12,
|
||||
["Y"] = 51.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 52.44,
|
||||
["Y"] = 49.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 52.48,
|
||||
["Y"] = 48.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 52.39,
|
||||
["Y"] = 48.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 52.08,
|
||||
["Y"] = 47.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 51.87,
|
||||
["Y"] = 46.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 50.91,
|
||||
["Y"] = 47.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 50.39,
|
||||
["Y"] = 46.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 50,
|
||||
["Y"] = 46.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 49.86,
|
||||
["Y"] = 46.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 49.44,
|
||||
["Y"] = 46.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 48.98,
|
||||
["Y"] = 46.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 48.4,
|
||||
["Y"] = 45.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 47.67,
|
||||
["Y"] = 45.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 47.06,
|
||||
["Y"] = 44.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 46.5,
|
||||
["Y"] = 43.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 32.58,
|
||||
["Y"] = 38.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 34.29,
|
||||
["Y"] = 39.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 36.08,
|
||||
["Y"] = 39.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 36.91,
|
||||
["Y"] = 41.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 38.79,
|
||||
["Y"] = 40.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[68] =
|
||||
{
|
||||
["X"] = 39.68,
|
||||
["Y"] = 40.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[69] =
|
||||
{
|
||||
["X"] = 41.32,
|
||||
["Y"] = 41.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[70] =
|
||||
{
|
||||
["X"] = 42.81,
|
||||
["Y"] = 43.91,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,321 +1,321 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 43.7,
|
||||
["Y"] = 47.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 55.11,
|
||||
["Y"] = 53.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 67.75,
|
||||
["Y"] = 35.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 46.51,
|
||||
["Y"] = 31.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 46.21,
|
||||
["Y"] = 39.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 41.5,
|
||||
["Y"] = 42.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 50.73,
|
||||
["Y"] = 36.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 52,
|
||||
["Y"] = 38.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 51.73,
|
||||
["Y"] = 44.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 48.85,
|
||||
["Y"] = 43.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 43.36,
|
||||
["Y"] = 27.42,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 38.9,
|
||||
["Y"] = 37.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 39.14,
|
||||
["Y"] = 48.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 45.77,
|
||||
["Y"] = 43.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 42.81,
|
||||
["Y"] = 39.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 44.9,
|
||||
["Y"] = 33.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 51.19,
|
||||
["Y"] = 34.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 54.96,
|
||||
["Y"] = 29.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 53.75,
|
||||
["Y"] = 55.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 58.01,
|
||||
["Y"] = 52.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 73.65,
|
||||
["Y"] = 35.59,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 68.83,
|
||||
["Y"] = 38.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 64.86,
|
||||
["Y"] = 31.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 55.37,
|
||||
["Y"] = 46.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 51.96,
|
||||
["Y"] = 54.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 52.07,
|
||||
["Y"] = 48.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 39.85,
|
||||
["Y"] = 43.02,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 45.11,
|
||||
["Y"] = 31.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 58.81,
|
||||
["Y"] = 42.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.87,
|
||||
["Y"] = 35.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 80.46,
|
||||
["Y"] = 42.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 73.35,
|
||||
["Y"] = 40.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 65.26,
|
||||
["Y"] = 49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 38.29,
|
||||
["Y"] = 21.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 64.95,
|
||||
["Y"] = 44.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 48.04,
|
||||
["Y"] = 40.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 47.18,
|
||||
["Y"] = 41.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 30.84,
|
||||
["Y"] = 32.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 43.7,
|
||||
["Y"] = 47.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 44.9,
|
||||
["Y"] = 33.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 49.05,
|
||||
["Y"] = 39.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 44.09,
|
||||
["Y"] = 53.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 39.14,
|
||||
["Y"] = 32.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 61.13,
|
||||
["Y"] = 44.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 60.53,
|
||||
["Y"] = 46.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 52.47,
|
||||
["Y"] = 52.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 68.45,
|
||||
["Y"] = 27.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 68.14,
|
||||
["Y"] = 32.64,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 43.7,
|
||||
["Y"] = 47.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 55.11,
|
||||
["Y"] = 53.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 67.75,
|
||||
["Y"] = 35.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 46.51,
|
||||
["Y"] = 31.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 46.21,
|
||||
["Y"] = 39.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 41.5,
|
||||
["Y"] = 42.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 50.73,
|
||||
["Y"] = 36.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 52,
|
||||
["Y"] = 38.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 51.73,
|
||||
["Y"] = 44.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 48.85,
|
||||
["Y"] = 43.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 43.36,
|
||||
["Y"] = 27.42,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 38.9,
|
||||
["Y"] = 37.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 39.14,
|
||||
["Y"] = 48.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 45.77,
|
||||
["Y"] = 43.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 42.81,
|
||||
["Y"] = 39.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 44.9,
|
||||
["Y"] = 33.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 51.19,
|
||||
["Y"] = 34.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 54.96,
|
||||
["Y"] = 29.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 53.75,
|
||||
["Y"] = 55.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 58.01,
|
||||
["Y"] = 52.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 73.65,
|
||||
["Y"] = 35.59,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 68.83,
|
||||
["Y"] = 38.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 64.86,
|
||||
["Y"] = 31.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 55.37,
|
||||
["Y"] = 46.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 51.96,
|
||||
["Y"] = 54.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 52.07,
|
||||
["Y"] = 48.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 39.85,
|
||||
["Y"] = 43.02,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 45.11,
|
||||
["Y"] = 31.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 58.81,
|
||||
["Y"] = 42.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.87,
|
||||
["Y"] = 35.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 80.46,
|
||||
["Y"] = 42.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 73.35,
|
||||
["Y"] = 40.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 65.26,
|
||||
["Y"] = 49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 38.29,
|
||||
["Y"] = 21.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 64.95,
|
||||
["Y"] = 44.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 48.04,
|
||||
["Y"] = 40.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 47.18,
|
||||
["Y"] = 41.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 30.84,
|
||||
["Y"] = 32.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 43.7,
|
||||
["Y"] = 47.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 44.9,
|
||||
["Y"] = 33.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 49.05,
|
||||
["Y"] = 39.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 44.09,
|
||||
["Y"] = 53.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 39.14,
|
||||
["Y"] = 32.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 61.13,
|
||||
["Y"] = 44.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 60.53,
|
||||
["Y"] = 46.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 52.47,
|
||||
["Y"] = 52.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 68.45,
|
||||
["Y"] = 27.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 68.14,
|
||||
["Y"] = 32.64,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,453 +1,453 @@
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 59.16,
|
||||
["Y"] = 84.77,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 62.31,
|
||||
["Y"] = 83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 57.11,
|
||||
["Y"] = 82.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 64.06,
|
||||
["Y"] = 78.62,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 61.3,
|
||||
["Y"] = 77.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 62.98,
|
||||
["Y"] = 75.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 60.57,
|
||||
["Y"] = 72.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 57.89,
|
||||
["Y"] = 76.61,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 58.81,
|
||||
["Y"] = 71.72,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 61.9,
|
||||
["Y"] = 70.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 55.55,
|
||||
["Y"] = 66.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 57.47,
|
||||
["Y"] = 67.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 64.62,
|
||||
["Y"] = 67.64,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 58.61,
|
||||
["Y"] = 64.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 60.58,
|
||||
["Y"] = 63.25,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[16] = {
|
||||
["X"] = 66.46,
|
||||
["Y"] = 63.37,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[17] = {
|
||||
["X"] = 54.22,
|
||||
["Y"] = 59.72,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[18] = {
|
||||
["X"] = 50.02,
|
||||
["Y"] = 59.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[19] = {
|
||||
["X"] = 55.15,
|
||||
["Y"] = 58.99,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[20] = {
|
||||
["X"] = 58.3,
|
||||
["Y"] = 57.27,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[21] = {
|
||||
["X"] = 66.48,
|
||||
["Y"] = 58.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[22] = {
|
||||
["X"] = 65.73,
|
||||
["Y"] = 55.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[23] = {
|
||||
["X"] = 67.08,
|
||||
["Y"] = 55.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[24] = {
|
||||
["X"] = 56.21,
|
||||
["Y"] = 54.41,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[25] = {
|
||||
["X"] = 63.85,
|
||||
["Y"] = 54.34,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[26] = {
|
||||
["X"] = 57.63,
|
||||
["Y"] = 53.91,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[27] = {
|
||||
["X"] = 62.95,
|
||||
["Y"] = 52.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[28] = {
|
||||
["X"] = 54.26,
|
||||
["Y"] = 51.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[29] = {
|
||||
["X"] = 53.42,
|
||||
["Y"] = 52.49,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[30] = {
|
||||
["X"] = 51.05,
|
||||
["Y"] = 47.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[31] = {
|
||||
["X"] = 62.14,
|
||||
["Y"] = 46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[32] = {
|
||||
["X"] = 57.41,
|
||||
["Y"] = 44.12,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[33] = {
|
||||
["X"] = 67.38,
|
||||
["Y"] = 43.91,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[34] = {
|
||||
["X"] = 64.77,
|
||||
["Y"] = 44.54,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[35] = {
|
||||
["X"] = 63.95,
|
||||
["Y"] = 38.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[36] = {
|
||||
["X"] = 56.38,
|
||||
["Y"] = 40.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[37] = {
|
||||
["X"] = 53.33,
|
||||
["Y"] = 40.12,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[38] = {
|
||||
["X"] = 54.33,
|
||||
["Y"] = 39.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[39] = {
|
||||
["X"] = 58.25,
|
||||
["Y"] = 36.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[40] = {
|
||||
["X"] = 66.39,
|
||||
["Y"] = 31.62,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[41] = {
|
||||
["X"] = 65.34,
|
||||
["Y"] = 33.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[42] = {
|
||||
["X"] = 56.84,
|
||||
["Y"] = 35.19,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[43] = {
|
||||
["X"] = 53.46,
|
||||
["Y"] = 28.57,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[44] = {
|
||||
["X"] = 61.98,
|
||||
["Y"] = 31.58,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[45] = {
|
||||
["X"] = 61.24,
|
||||
["Y"] = 31.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[46] = {
|
||||
["X"] = 57.11,
|
||||
["Y"] = 33.25,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[47] = {
|
||||
["X"] = 47.75,
|
||||
["Y"] = 31.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[48] = {
|
||||
["X"] = 53.36,
|
||||
["Y"] = 33.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[49] = {
|
||||
["X"] = 58,
|
||||
["Y"] = 25.44,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[50] = {
|
||||
["X"] = 56.97,
|
||||
["Y"] = 26.83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[51] = {
|
||||
["X"] = 49.79,
|
||||
["Y"] = 25.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[52] = {
|
||||
["X"] = 56.02,
|
||||
["Y"] = 22.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[53] = {
|
||||
["X"] = 46.42,
|
||||
["Y"] = 24.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[54] = {
|
||||
["X"] = 50.08,
|
||||
["Y"] = 22.67,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[55] = {
|
||||
["X"] = 46.7,
|
||||
["Y"] = 18.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[56] = {
|
||||
["X"] = 48.65,
|
||||
["Y"] = 17.22,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[57] = {
|
||||
["X"] = 49.35,
|
||||
["Y"] = 18.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[58] = {
|
||||
["X"] = 52.3,
|
||||
["Y"] = 20.68,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[59] = {
|
||||
["X"] = 45.21,
|
||||
["Y"] = 14.81,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[60] = {
|
||||
["X"] = 45.87,
|
||||
["Y"] = 20.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[61] = {
|
||||
["X"] = 47.49,
|
||||
["Y"] = 50.39,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[62] = {
|
||||
["X"] = 48.23,
|
||||
["Y"] = 53.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[63] = {
|
||||
["X"] = 47.36,
|
||||
["Y"] = 58.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[64] = {
|
||||
["X"] = 48.56,
|
||||
["Y"] = 57.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[65] = {
|
||||
["X"] = 45.22,
|
||||
["Y"] = 57.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[66] = {
|
||||
["X"] = 45.19,
|
||||
["Y"] = 59.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[67] = {
|
||||
["X"] = 42.43,
|
||||
["Y"] = 49.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[68] = {
|
||||
["X"] = 40.35,
|
||||
["Y"] = 49.45,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[69] = {
|
||||
["X"] = 40.46,
|
||||
["Y"] = 54.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[70] = {
|
||||
["X"] = 39.05,
|
||||
["Y"] = 55.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[71] = {
|
||||
["X"] = 37.6,
|
||||
["Y"] = 55.77,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[72] = {
|
||||
["X"] = 34.89,
|
||||
["Y"] = 57.33,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[73] = {
|
||||
["X"] = 34.59,
|
||||
["Y"] = 50.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[74] = {
|
||||
["X"] = 33.26,
|
||||
["Y"] = 48.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[75] = {
|
||||
["X"] = 32.77,
|
||||
["Y"] = 51.29,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[76] = {
|
||||
["X"] = 31.15,
|
||||
["Y"] = 57.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[77] = {
|
||||
["X"] = 30.3,
|
||||
["Y"] = 54.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[78] = {
|
||||
["X"] = 28.92,
|
||||
["Y"] = 52.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[79] = {
|
||||
["X"] = 28.32,
|
||||
["Y"] = 55.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[80] = {
|
||||
["X"] = 26.04,
|
||||
["Y"] = 49.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[81] = {
|
||||
["X"] = 24.02,
|
||||
["Y"] = 49.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[82] = {
|
||||
["X"] = 25.24,
|
||||
["Y"] = 51.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[83] = {
|
||||
["X"] = 24.44,
|
||||
["Y"] = 50.98,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[84] = {
|
||||
["X"] = 24.27,
|
||||
["Y"] = 56.95,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 59.16,
|
||||
["Y"] = 84.77,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 62.31,
|
||||
["Y"] = 83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 57.11,
|
||||
["Y"] = 82.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 64.06,
|
||||
["Y"] = 78.62,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 61.3,
|
||||
["Y"] = 77.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 62.98,
|
||||
["Y"] = 75.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 60.57,
|
||||
["Y"] = 72.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 57.89,
|
||||
["Y"] = 76.61,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 58.81,
|
||||
["Y"] = 71.72,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 61.9,
|
||||
["Y"] = 70.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 55.55,
|
||||
["Y"] = 66.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 57.47,
|
||||
["Y"] = 67.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 64.62,
|
||||
["Y"] = 67.64,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 58.61,
|
||||
["Y"] = 64.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 60.58,
|
||||
["Y"] = 63.25,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[16] = {
|
||||
["X"] = 66.46,
|
||||
["Y"] = 63.37,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[17] = {
|
||||
["X"] = 54.22,
|
||||
["Y"] = 59.72,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[18] = {
|
||||
["X"] = 50.02,
|
||||
["Y"] = 59.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[19] = {
|
||||
["X"] = 55.15,
|
||||
["Y"] = 58.99,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[20] = {
|
||||
["X"] = 58.3,
|
||||
["Y"] = 57.27,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[21] = {
|
||||
["X"] = 66.48,
|
||||
["Y"] = 58.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[22] = {
|
||||
["X"] = 65.73,
|
||||
["Y"] = 55.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[23] = {
|
||||
["X"] = 67.08,
|
||||
["Y"] = 55.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[24] = {
|
||||
["X"] = 56.21,
|
||||
["Y"] = 54.41,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[25] = {
|
||||
["X"] = 63.85,
|
||||
["Y"] = 54.34,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[26] = {
|
||||
["X"] = 57.63,
|
||||
["Y"] = 53.91,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[27] = {
|
||||
["X"] = 62.95,
|
||||
["Y"] = 52.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[28] = {
|
||||
["X"] = 54.26,
|
||||
["Y"] = 51.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[29] = {
|
||||
["X"] = 53.42,
|
||||
["Y"] = 52.49,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[30] = {
|
||||
["X"] = 51.05,
|
||||
["Y"] = 47.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[31] = {
|
||||
["X"] = 62.14,
|
||||
["Y"] = 46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[32] = {
|
||||
["X"] = 57.41,
|
||||
["Y"] = 44.12,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[33] = {
|
||||
["X"] = 67.38,
|
||||
["Y"] = 43.91,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[34] = {
|
||||
["X"] = 64.77,
|
||||
["Y"] = 44.54,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[35] = {
|
||||
["X"] = 63.95,
|
||||
["Y"] = 38.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[36] = {
|
||||
["X"] = 56.38,
|
||||
["Y"] = 40.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[37] = {
|
||||
["X"] = 53.33,
|
||||
["Y"] = 40.12,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[38] = {
|
||||
["X"] = 54.33,
|
||||
["Y"] = 39.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[39] = {
|
||||
["X"] = 58.25,
|
||||
["Y"] = 36.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[40] = {
|
||||
["X"] = 66.39,
|
||||
["Y"] = 31.62,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[41] = {
|
||||
["X"] = 65.34,
|
||||
["Y"] = 33.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[42] = {
|
||||
["X"] = 56.84,
|
||||
["Y"] = 35.19,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[43] = {
|
||||
["X"] = 53.46,
|
||||
["Y"] = 28.57,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[44] = {
|
||||
["X"] = 61.98,
|
||||
["Y"] = 31.58,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[45] = {
|
||||
["X"] = 61.24,
|
||||
["Y"] = 31.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[46] = {
|
||||
["X"] = 57.11,
|
||||
["Y"] = 33.25,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[47] = {
|
||||
["X"] = 47.75,
|
||||
["Y"] = 31.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[48] = {
|
||||
["X"] = 53.36,
|
||||
["Y"] = 33.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[49] = {
|
||||
["X"] = 58,
|
||||
["Y"] = 25.44,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[50] = {
|
||||
["X"] = 56.97,
|
||||
["Y"] = 26.83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[51] = {
|
||||
["X"] = 49.79,
|
||||
["Y"] = 25.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[52] = {
|
||||
["X"] = 56.02,
|
||||
["Y"] = 22.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[53] = {
|
||||
["X"] = 46.42,
|
||||
["Y"] = 24.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[54] = {
|
||||
["X"] = 50.08,
|
||||
["Y"] = 22.67,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[55] = {
|
||||
["X"] = 46.7,
|
||||
["Y"] = 18.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[56] = {
|
||||
["X"] = 48.65,
|
||||
["Y"] = 17.22,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[57] = {
|
||||
["X"] = 49.35,
|
||||
["Y"] = 18.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[58] = {
|
||||
["X"] = 52.3,
|
||||
["Y"] = 20.68,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[59] = {
|
||||
["X"] = 45.21,
|
||||
["Y"] = 14.81,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[60] = {
|
||||
["X"] = 45.87,
|
||||
["Y"] = 20.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[61] = {
|
||||
["X"] = 47.49,
|
||||
["Y"] = 50.39,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[62] = {
|
||||
["X"] = 48.23,
|
||||
["Y"] = 53.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[63] = {
|
||||
["X"] = 47.36,
|
||||
["Y"] = 58.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[64] = {
|
||||
["X"] = 48.56,
|
||||
["Y"] = 57.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[65] = {
|
||||
["X"] = 45.22,
|
||||
["Y"] = 57.7,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[66] = {
|
||||
["X"] = 45.19,
|
||||
["Y"] = 59.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[67] = {
|
||||
["X"] = 42.43,
|
||||
["Y"] = 49.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[68] = {
|
||||
["X"] = 40.35,
|
||||
["Y"] = 49.45,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[69] = {
|
||||
["X"] = 40.46,
|
||||
["Y"] = 54.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[70] = {
|
||||
["X"] = 39.05,
|
||||
["Y"] = 55.74,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[71] = {
|
||||
["X"] = 37.6,
|
||||
["Y"] = 55.77,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[72] = {
|
||||
["X"] = 34.89,
|
||||
["Y"] = 57.33,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[73] = {
|
||||
["X"] = 34.59,
|
||||
["Y"] = 50.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[74] = {
|
||||
["X"] = 33.26,
|
||||
["Y"] = 48.43,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[75] = {
|
||||
["X"] = 32.77,
|
||||
["Y"] = 51.29,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[76] = {
|
||||
["X"] = 31.15,
|
||||
["Y"] = 57.24,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[77] = {
|
||||
["X"] = 30.3,
|
||||
["Y"] = 54.04,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[78] = {
|
||||
["X"] = 28.92,
|
||||
["Y"] = 52.76,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[79] = {
|
||||
["X"] = 28.32,
|
||||
["Y"] = 55.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[80] = {
|
||||
["X"] = 26.04,
|
||||
["Y"] = 49.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[81] = {
|
||||
["X"] = 24.02,
|
||||
["Y"] = 49.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[82] = {
|
||||
["X"] = 25.24,
|
||||
["Y"] = 51.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[83] = {
|
||||
["X"] = 24.44,
|
||||
["Y"] = 50.98,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[84] = {
|
||||
["X"] = 24.27,
|
||||
["Y"] = 56.95,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,297 +1,297 @@
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 66.76,
|
||||
["Y"] = 84.03,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 66.36,
|
||||
["Y"] = 80.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 62.24,
|
||||
["Y"] = 80.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.96,
|
||||
["Y"] = 78.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 56.02,
|
||||
["Y"] = 76.95,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 64.96,
|
||||
["Y"] = 72.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 65.44,
|
||||
["Y"] = 70.65,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 68.36,
|
||||
["Y"] = 69,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 52.57,
|
||||
["Y"] = 67.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 53.37,
|
||||
["Y"] = 66.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 61.09,
|
||||
["Y"] = 66.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 67.45,
|
||||
["Y"] = 66.84,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 68.19,
|
||||
["Y"] = 64.02,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 47.6,
|
||||
["Y"] = 63.37,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 67.42,
|
||||
["Y"] = 57.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[16] = {
|
||||
["X"] = 67.19,
|
||||
["Y"] = 51.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[17] = {
|
||||
["X"] = 63.49,
|
||||
["Y"] = 50.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[18] = {
|
||||
["X"] = 58.87,
|
||||
["Y"] = 45.42,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[19] = {
|
||||
["X"] = 53.68,
|
||||
["Y"] = 45.06,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[20] = {
|
||||
["X"] = 69.19,
|
||||
["Y"] = 44.89,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[21] = {
|
||||
["X"] = 59.6,
|
||||
["Y"] = 42,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[22] = {
|
||||
["X"] = 67.82,
|
||||
["Y"] = 39.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[23] = {
|
||||
["X"] = 59.84,
|
||||
["Y"] = 37.64,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[24] = {
|
||||
["X"] = 67.43,
|
||||
["Y"] = 35.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[25] = {
|
||||
["X"] = 66.7,
|
||||
["Y"] = 29.13,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[26] = {
|
||||
["X"] = 60.88,
|
||||
["Y"] = 28.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[27] = {
|
||||
["X"] = 60.16,
|
||||
["Y"] = 21.19,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[28] = {
|
||||
["X"] = 53.95,
|
||||
["Y"] = 19.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[29] = {
|
||||
["X"] = 52.44,
|
||||
["Y"] = 18.27,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[30] = {
|
||||
["X"] = 48.51,
|
||||
["Y"] = 14.34,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[31] = {
|
||||
["X"] = 44.13,
|
||||
["Y"] = 14.69,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[32] = {
|
||||
["X"] = 44.53,
|
||||
["Y"] = 21.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[33] = {
|
||||
["X"] = 45.31,
|
||||
["Y"] = 26.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[34] = {
|
||||
["X"] = 46.16,
|
||||
["Y"] = 33.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[35] = {
|
||||
["X"] = 48.2,
|
||||
["Y"] = 45.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[36] = {
|
||||
["X"] = 42.52,
|
||||
["Y"] = 56.26,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[37] = {
|
||||
["X"] = 42.18,
|
||||
["Y"] = 53.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[38] = {
|
||||
["X"] = 42.49,
|
||||
["Y"] = 45.67,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[39] = {
|
||||
["X"] = 40.75,
|
||||
["Y"] = 46.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[40] = {
|
||||
["X"] = 40.5,
|
||||
["Y"] = 58,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[41] = {
|
||||
["X"] = 39.56,
|
||||
["Y"] = 44.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[42] = {
|
||||
["X"] = 37.41,
|
||||
["Y"] = 47.1,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[43] = {
|
||||
["X"] = 37.05,
|
||||
["Y"] = 58.92,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[44] = {
|
||||
["X"] = 35.56,
|
||||
["Y"] = 47.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[45] = {
|
||||
["X"] = 34.11,
|
||||
["Y"] = 59.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[46] = {
|
||||
["X"] = 31.96,
|
||||
["Y"] = 59.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[47] = {
|
||||
["X"] = 31.19,
|
||||
["Y"] = 47.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[48] = {
|
||||
["X"] = 27.81,
|
||||
["Y"] = 58.83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[49] = {
|
||||
["X"] = 27.7,
|
||||
["Y"] = 47.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[50] = {
|
||||
["X"] = 26.52,
|
||||
["Y"] = 47.47,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[51] = {
|
||||
["X"] = 24.62,
|
||||
["Y"] = 62.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[52] = {
|
||||
["X"] = 21.76,
|
||||
["Y"] = 62.47,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[53] = {
|
||||
["X"] = 22.41,
|
||||
["Y"] = 58.99,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
aura_env.herbs = {
|
||||
[1] = {
|
||||
["X"] = 66.76,
|
||||
["Y"] = 84.03,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[2] = {
|
||||
["X"] = 66.36,
|
||||
["Y"] = 80.75,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[3] = {
|
||||
["X"] = 62.24,
|
||||
["Y"] = 80.15,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[4] = {
|
||||
["X"] = 55.96,
|
||||
["Y"] = 78.8,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[5] = {
|
||||
["X"] = 56.02,
|
||||
["Y"] = 76.95,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[6] = {
|
||||
["X"] = 64.96,
|
||||
["Y"] = 72.59,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[7] = {
|
||||
["X"] = 65.44,
|
||||
["Y"] = 70.65,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[8] = {
|
||||
["X"] = 68.36,
|
||||
["Y"] = 69,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[9] = {
|
||||
["X"] = 52.57,
|
||||
["Y"] = 67.93,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[10] = {
|
||||
["X"] = 53.37,
|
||||
["Y"] = 66.5,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[11] = {
|
||||
["X"] = 61.09,
|
||||
["Y"] = 66.97,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[12] = {
|
||||
["X"] = 67.45,
|
||||
["Y"] = 66.84,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[13] = {
|
||||
["X"] = 68.19,
|
||||
["Y"] = 64.02,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[14] = {
|
||||
["X"] = 47.6,
|
||||
["Y"] = 63.37,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[15] = {
|
||||
["X"] = 67.42,
|
||||
["Y"] = 57.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[16] = {
|
||||
["X"] = 67.19,
|
||||
["Y"] = 51.85,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[17] = {
|
||||
["X"] = 63.49,
|
||||
["Y"] = 50.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[18] = {
|
||||
["X"] = 58.87,
|
||||
["Y"] = 45.42,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[19] = {
|
||||
["X"] = 53.68,
|
||||
["Y"] = 45.06,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[20] = {
|
||||
["X"] = 69.19,
|
||||
["Y"] = 44.89,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[21] = {
|
||||
["X"] = 59.6,
|
||||
["Y"] = 42,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[22] = {
|
||||
["X"] = 67.82,
|
||||
["Y"] = 39.48,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[23] = {
|
||||
["X"] = 59.84,
|
||||
["Y"] = 37.64,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[24] = {
|
||||
["X"] = 67.43,
|
||||
["Y"] = 35.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[25] = {
|
||||
["X"] = 66.7,
|
||||
["Y"] = 29.13,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[26] = {
|
||||
["X"] = 60.88,
|
||||
["Y"] = 28.01,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[27] = {
|
||||
["X"] = 60.16,
|
||||
["Y"] = 21.19,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[28] = {
|
||||
["X"] = 53.95,
|
||||
["Y"] = 19.05,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[29] = {
|
||||
["X"] = 52.44,
|
||||
["Y"] = 18.27,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[30] = {
|
||||
["X"] = 48.51,
|
||||
["Y"] = 14.34,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[31] = {
|
||||
["X"] = 44.13,
|
||||
["Y"] = 14.69,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[32] = {
|
||||
["X"] = 44.53,
|
||||
["Y"] = 21.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[33] = {
|
||||
["X"] = 45.31,
|
||||
["Y"] = 26.71,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[34] = {
|
||||
["X"] = 46.16,
|
||||
["Y"] = 33.23,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[35] = {
|
||||
["X"] = 48.2,
|
||||
["Y"] = 45.28,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[36] = {
|
||||
["X"] = 42.52,
|
||||
["Y"] = 56.26,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[37] = {
|
||||
["X"] = 42.18,
|
||||
["Y"] = 53.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[38] = {
|
||||
["X"] = 42.49,
|
||||
["Y"] = 45.67,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[39] = {
|
||||
["X"] = 40.75,
|
||||
["Y"] = 46.4,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[40] = {
|
||||
["X"] = 40.5,
|
||||
["Y"] = 58,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[41] = {
|
||||
["X"] = 39.56,
|
||||
["Y"] = 44.86,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[42] = {
|
||||
["X"] = 37.41,
|
||||
["Y"] = 47.1,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[43] = {
|
||||
["X"] = 37.05,
|
||||
["Y"] = 58.92,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[44] = {
|
||||
["X"] = 35.56,
|
||||
["Y"] = 47.08,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[45] = {
|
||||
["X"] = 34.11,
|
||||
["Y"] = 59.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[46] = {
|
||||
["X"] = 31.96,
|
||||
["Y"] = 59.46,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[47] = {
|
||||
["X"] = 31.19,
|
||||
["Y"] = 47.17,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[48] = {
|
||||
["X"] = 27.81,
|
||||
["Y"] = 58.83,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[49] = {
|
||||
["X"] = 27.7,
|
||||
["Y"] = 47.35,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[50] = {
|
||||
["X"] = 26.52,
|
||||
["Y"] = 47.47,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[51] = {
|
||||
["X"] = 24.62,
|
||||
["Y"] = 62.82,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[52] = {
|
||||
["X"] = 21.76,
|
||||
["Y"] = 62.47,
|
||||
["CD"] = 0,
|
||||
},
|
||||
[53] = {
|
||||
["X"] = 22.41,
|
||||
["Y"] = 58.99,
|
||||
["CD"] = 0,
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k, v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X ^ 2)) + (math.abs(Y ^ 2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
|
||||
@@ -1,327 +1,327 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 88.46,
|
||||
["Y"] = 17.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 87.27,
|
||||
["Y"] = 17.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 86.48,
|
||||
["Y"] = 17.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 85.78,
|
||||
["Y"] = 17.6,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 85,
|
||||
["Y"] = 18.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 84.03,
|
||||
["Y"] = 19.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 83.28,
|
||||
["Y"] = 20.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 82.62,
|
||||
["Y"] = 20.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 81.96,
|
||||
["Y"] = 22.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 81.22,
|
||||
["Y"] = 22.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 80.32,
|
||||
["Y"] = 25.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 80.19,
|
||||
["Y"] = 25.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 78.88,
|
||||
["Y"] = 27.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 77.91,
|
||||
["Y"] = 27.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 76.98,
|
||||
["Y"] = 28.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 75.11,
|
||||
["Y"] = 32.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 74.55,
|
||||
["Y"] = 33.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 73.58,
|
||||
["Y"] = 32.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 73.64,
|
||||
["Y"] = 31.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 73.51,
|
||||
["Y"] = 30.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 72.86,
|
||||
["Y"] = 29.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 72.18,
|
||||
["Y"] = 28.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 72.13,
|
||||
["Y"] = 26.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 71.46,
|
||||
["Y"] = 26.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 70.67,
|
||||
["Y"] = 26.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 90.04,
|
||||
["Y"] = 50.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 90.84,
|
||||
["Y"] = 50.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 88.81,
|
||||
["Y"] = 61.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 78.92,
|
||||
["Y"] = 61.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 82.26,
|
||||
["Y"] = 59.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 85.43,
|
||||
["Y"] = 57.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 74.46,
|
||||
["Y"] = 28.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 69.36,
|
||||
["Y"] = 25.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 73.21,
|
||||
["Y"] = 26.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 56.52,
|
||||
["Y"] = 35.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 57.94,
|
||||
["Y"] = 33.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 55.19,
|
||||
["Y"] = 32.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 54.89,
|
||||
["Y"] = 37.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 51.74,
|
||||
["Y"] = 38.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 52.5,
|
||||
["Y"] = 38.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 49.22,
|
||||
["Y"] = 43.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 49.78,
|
||||
["Y"] = 50.78,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 45.13,
|
||||
["Y"] = 52.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 45.02,
|
||||
["Y"] = 47.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 31.45,
|
||||
["Y"] = 55.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 30.49,
|
||||
["Y"] = 60.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 26.19,
|
||||
["Y"] = 62.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 19.5,
|
||||
["Y"] = 61.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 21.36,
|
||||
["Y"] = 56.44,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 88.46,
|
||||
["Y"] = 17.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 87.27,
|
||||
["Y"] = 17.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 86.48,
|
||||
["Y"] = 17.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 85.78,
|
||||
["Y"] = 17.6,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 85,
|
||||
["Y"] = 18.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 84.03,
|
||||
["Y"] = 19.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 83.28,
|
||||
["Y"] = 20.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 82.62,
|
||||
["Y"] = 20.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 81.96,
|
||||
["Y"] = 22.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 81.22,
|
||||
["Y"] = 22.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 80.32,
|
||||
["Y"] = 25.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 80.19,
|
||||
["Y"] = 25.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 78.88,
|
||||
["Y"] = 27.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 77.91,
|
||||
["Y"] = 27.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 76.98,
|
||||
["Y"] = 28.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 75.11,
|
||||
["Y"] = 32.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 74.55,
|
||||
["Y"] = 33.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 73.58,
|
||||
["Y"] = 32.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 73.64,
|
||||
["Y"] = 31.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 73.51,
|
||||
["Y"] = 30.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 72.86,
|
||||
["Y"] = 29.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 72.18,
|
||||
["Y"] = 28.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 72.13,
|
||||
["Y"] = 26.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 71.46,
|
||||
["Y"] = 26.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 70.67,
|
||||
["Y"] = 26.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 90.04,
|
||||
["Y"] = 50.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 90.84,
|
||||
["Y"] = 50.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 88.81,
|
||||
["Y"] = 61.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 78.92,
|
||||
["Y"] = 61.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 82.26,
|
||||
["Y"] = 59.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 85.43,
|
||||
["Y"] = 57.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 74.46,
|
||||
["Y"] = 28.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 69.36,
|
||||
["Y"] = 25.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 73.21,
|
||||
["Y"] = 26.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 56.52,
|
||||
["Y"] = 35.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 57.94,
|
||||
["Y"] = 33.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 55.19,
|
||||
["Y"] = 32.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 54.89,
|
||||
["Y"] = 37.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 51.74,
|
||||
["Y"] = 38.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 52.5,
|
||||
["Y"] = 38.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 49.22,
|
||||
["Y"] = 43.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 49.78,
|
||||
["Y"] = 50.78,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 45.13,
|
||||
["Y"] = 52.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 45.02,
|
||||
["Y"] = 47.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 31.45,
|
||||
["Y"] = 55.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 30.49,
|
||||
["Y"] = 60.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 26.19,
|
||||
["Y"] = 62.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 19.5,
|
||||
["Y"] = 61.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 21.36,
|
||||
["Y"] = 56.44,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,219 +1,219 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 62.63,
|
||||
["Y"] = 80.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 61.03,
|
||||
["Y"] = 83.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 60.11,
|
||||
["Y"] = 80.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 59.29,
|
||||
["Y"] = 77.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 56.55,
|
||||
["Y"] = 77.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 56.87,
|
||||
["Y"] = 75.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 51.04,
|
||||
["Y"] = 72.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 45.02,
|
||||
["Y"] = 70.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 72.27,
|
||||
["Y"] = 20.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 75.45,
|
||||
["Y"] = 17.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 76.63,
|
||||
["Y"] = 19.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 75.67,
|
||||
["Y"] = 21.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 73.78,
|
||||
["Y"] = 24.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 70.92,
|
||||
["Y"] = 34.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 65.32,
|
||||
["Y"] = 47.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 69.86,
|
||||
["Y"] = 52.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 74.82,
|
||||
["Y"] = 57.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 73.72,
|
||||
["Y"] = 55.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 75.55,
|
||||
["Y"] = 56.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 78.32,
|
||||
["Y"] = 59.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 77.23,
|
||||
["Y"] = 61.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 75.08,
|
||||
["Y"] = 61.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 72.99,
|
||||
["Y"] = 62.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 71.3,
|
||||
["Y"] = 63.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 68.84,
|
||||
["Y"] = 59.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 68.09,
|
||||
["Y"] = 59.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 67.89,
|
||||
["Y"] = 59.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 42.19,
|
||||
["Y"] = 84.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 34.22,
|
||||
["Y"] = 48.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 34.19,
|
||||
["Y"] = 42.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 19.86,
|
||||
["Y"] = 48.49,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 62.63,
|
||||
["Y"] = 80.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 61.03,
|
||||
["Y"] = 83.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 60.11,
|
||||
["Y"] = 80.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 59.29,
|
||||
["Y"] = 77.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 56.55,
|
||||
["Y"] = 77.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 56.87,
|
||||
["Y"] = 75.77,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 51.04,
|
||||
["Y"] = 72.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 45.02,
|
||||
["Y"] = 70.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 72.27,
|
||||
["Y"] = 20.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 75.45,
|
||||
["Y"] = 17.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 76.63,
|
||||
["Y"] = 19.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 75.67,
|
||||
["Y"] = 21.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 73.78,
|
||||
["Y"] = 24.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 70.92,
|
||||
["Y"] = 34.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 65.32,
|
||||
["Y"] = 47.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 69.86,
|
||||
["Y"] = 52.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 74.82,
|
||||
["Y"] = 57.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 73.72,
|
||||
["Y"] = 55.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 75.55,
|
||||
["Y"] = 56.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 78.32,
|
||||
["Y"] = 59.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 77.23,
|
||||
["Y"] = 61.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 75.08,
|
||||
["Y"] = 61.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 72.99,
|
||||
["Y"] = 62.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 71.3,
|
||||
["Y"] = 63.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 68.84,
|
||||
["Y"] = 59.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 68.09,
|
||||
["Y"] = 59.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 67.89,
|
||||
["Y"] = 59.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 42.19,
|
||||
["Y"] = 84.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 34.22,
|
||||
["Y"] = 48.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 34.19,
|
||||
["Y"] = 42.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 19.86,
|
||||
["Y"] = 48.49,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,423 +1,423 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 20.97,
|
||||
["Y"] = 15.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 27.52,
|
||||
["Y"] = 9.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 25.93,
|
||||
["Y"] = 25.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 34.07,
|
||||
["Y"] = 50.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 37.23,
|
||||
["Y"] = 54.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 34.77,
|
||||
["Y"] = 58.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 39.56,
|
||||
["Y"] = 79.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 66.46,
|
||||
["Y"] = 57.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 66.74,
|
||||
["Y"] = 66.02,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 71.94,
|
||||
["Y"] = 68.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 69.51,
|
||||
["Y"] = 67.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 69.31,
|
||||
["Y"] = 50.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 63.31,
|
||||
["Y"] = 53.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 63.96,
|
||||
["Y"] = 50.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 65.37,
|
||||
["Y"] = 43.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 63.15,
|
||||
["Y"] = 35.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 60.59,
|
||||
["Y"] = 44.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 35.55,
|
||||
["Y"] = 61.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 40.1,
|
||||
["Y"] = 53.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.46,
|
||||
["Y"] = 47.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 49.48,
|
||||
["Y"] = 39.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 35.79,
|
||||
["Y"] = 42.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 33.35,
|
||||
["Y"] = 45.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 30.25,
|
||||
["Y"] = 43.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 28.76,
|
||||
["Y"] = 48.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 30.18,
|
||||
["Y"] = 65.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 32.64,
|
||||
["Y"] = 74.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 35.41,
|
||||
["Y"] = 80.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 32.08,
|
||||
["Y"] = 81.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 30.03,
|
||||
["Y"] = 82.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 27.52,
|
||||
["Y"] = 67.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 26.24,
|
||||
["Y"] = 69.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 24.97,
|
||||
["Y"] = 61.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 25.91,
|
||||
["Y"] = 58.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 34.69,
|
||||
["Y"] = 39.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 37.45,
|
||||
["Y"] = 38.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 45.96,
|
||||
["Y"] = 36.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 46.54,
|
||||
["Y"] = 33.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 37.6,
|
||||
["Y"] = 31.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 24.73,
|
||||
["Y"] = 54.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 21.68,
|
||||
["Y"] = 47.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 23.58,
|
||||
["Y"] = 50.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 25.01,
|
||||
["Y"] = 35.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 25.25,
|
||||
["Y"] = 37.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 41.53,
|
||||
["Y"] = 17.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 27.84,
|
||||
["Y"] = 15.94,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 44.1,
|
||||
["Y"] = 24.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 41.45,
|
||||
["Y"] = 24.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 40.28,
|
||||
["Y"] = 27.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 37.57,
|
||||
["Y"] = 27.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 33.71,
|
||||
["Y"] = 31.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 28.85,
|
||||
["Y"] = 29.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 27.2,
|
||||
["Y"] = 29.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 23.31,
|
||||
["Y"] = 34.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 15.86,
|
||||
["Y"] = 43.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 16.17,
|
||||
["Y"] = 39.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 16.88,
|
||||
["Y"] = 28.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 19.56,
|
||||
["Y"] = 18.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 19.99,
|
||||
["Y"] = 18.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 49.54,
|
||||
["Y"] = 43.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 55.47,
|
||||
["Y"] = 40.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 57.64,
|
||||
["Y"] = 37.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 62.48,
|
||||
["Y"] = 57.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 63.78,
|
||||
["Y"] = 60.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 50.61,
|
||||
["Y"] = 60.74,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 20.97,
|
||||
["Y"] = 15.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 27.52,
|
||||
["Y"] = 9.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 25.93,
|
||||
["Y"] = 25.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 34.07,
|
||||
["Y"] = 50.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 37.23,
|
||||
["Y"] = 54.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 34.77,
|
||||
["Y"] = 58.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 39.56,
|
||||
["Y"] = 79.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 66.46,
|
||||
["Y"] = 57.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 66.74,
|
||||
["Y"] = 66.02,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 71.94,
|
||||
["Y"] = 68.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 69.51,
|
||||
["Y"] = 67.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 69.31,
|
||||
["Y"] = 50.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 63.31,
|
||||
["Y"] = 53.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 63.96,
|
||||
["Y"] = 50.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 65.37,
|
||||
["Y"] = 43.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 63.15,
|
||||
["Y"] = 35.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 60.59,
|
||||
["Y"] = 44.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 35.55,
|
||||
["Y"] = 61.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 40.1,
|
||||
["Y"] = 53.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.46,
|
||||
["Y"] = 47.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 49.48,
|
||||
["Y"] = 39.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 35.79,
|
||||
["Y"] = 42.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 33.35,
|
||||
["Y"] = 45.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 30.25,
|
||||
["Y"] = 43.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 28.76,
|
||||
["Y"] = 48.41,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 30.18,
|
||||
["Y"] = 65.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 32.64,
|
||||
["Y"] = 74.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 35.41,
|
||||
["Y"] = 80.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 32.08,
|
||||
["Y"] = 81.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 30.03,
|
||||
["Y"] = 82.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 27.52,
|
||||
["Y"] = 67.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 26.24,
|
||||
["Y"] = 69.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 24.97,
|
||||
["Y"] = 61.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 25.91,
|
||||
["Y"] = 58.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 34.69,
|
||||
["Y"] = 39.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 37.45,
|
||||
["Y"] = 38.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 45.96,
|
||||
["Y"] = 36.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 46.54,
|
||||
["Y"] = 33.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 37.6,
|
||||
["Y"] = 31.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 24.73,
|
||||
["Y"] = 54.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 21.68,
|
||||
["Y"] = 47.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 23.58,
|
||||
["Y"] = 50.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 25.01,
|
||||
["Y"] = 35.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 25.25,
|
||||
["Y"] = 37.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 41.53,
|
||||
["Y"] = 17.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 27.84,
|
||||
["Y"] = 15.94,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 44.1,
|
||||
["Y"] = 24.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 41.45,
|
||||
["Y"] = 24.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 40.28,
|
||||
["Y"] = 27.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 37.57,
|
||||
["Y"] = 27.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 33.71,
|
||||
["Y"] = 31.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 28.85,
|
||||
["Y"] = 29.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 27.2,
|
||||
["Y"] = 29.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 23.31,
|
||||
["Y"] = 34.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 15.86,
|
||||
["Y"] = 43.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 16.17,
|
||||
["Y"] = 39.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 16.88,
|
||||
["Y"] = 28.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 19.56,
|
||||
["Y"] = 18.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 19.99,
|
||||
["Y"] = 18.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 49.54,
|
||||
["Y"] = 43.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 55.47,
|
||||
["Y"] = 40.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 57.64,
|
||||
["Y"] = 37.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 62.48,
|
||||
["Y"] = 57.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 63.78,
|
||||
["Y"] = 60.52,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 50.61,
|
||||
["Y"] = 60.74,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,453 +1,453 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 64.49,
|
||||
["Y"] = 56.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 63.79,
|
||||
["Y"] = 54.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 61.99,
|
||||
["Y"] = 53.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 61.48,
|
||||
["Y"] = 49.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 61.46,
|
||||
["Y"] = 47.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 59.23,
|
||||
["Y"] = 46.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 56.86,
|
||||
["Y"] = 45.6,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 55.78,
|
||||
["Y"] = 44.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 55.06,
|
||||
["Y"] = 34.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 56.92,
|
||||
["Y"] = 34.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 59,
|
||||
["Y"] = 34.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.2,
|
||||
["Y"] = 36.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 61.85,
|
||||
["Y"] = 36.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 64.38,
|
||||
["Y"] = 35.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 66.81,
|
||||
["Y"] = 36.14,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 67.47,
|
||||
["Y"] = 35.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 69.55,
|
||||
["Y"] = 37.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 69.25,
|
||||
["Y"] = 37.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 68.77,
|
||||
["Y"] = 39.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 70.23,
|
||||
["Y"] = 39.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 72.53,
|
||||
["Y"] = 40.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 77.18,
|
||||
["Y"] = 44.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 77.7,
|
||||
["Y"] = 50.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 77.21,
|
||||
["Y"] = 49.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 77.8,
|
||||
["Y"] = 48.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 77.04,
|
||||
["Y"] = 47.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 74.84,
|
||||
["Y"] = 48.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 74.71,
|
||||
["Y"] = 49.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 77.44,
|
||||
["Y"] = 51.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 78.28,
|
||||
["Y"] = 52.79,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 76.61,
|
||||
["Y"] = 56.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 78.15,
|
||||
["Y"] = 58.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 77.88,
|
||||
["Y"] = 59.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 78.99,
|
||||
["Y"] = 59.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 78.7,
|
||||
["Y"] = 61.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 80.81,
|
||||
["Y"] = 62.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 80.67,
|
||||
["Y"] = 63.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 81.77,
|
||||
["Y"] = 64.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 81.61,
|
||||
["Y"] = 67.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 80.59,
|
||||
["Y"] = 69.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 54.85,
|
||||
["Y"] = 78.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 54.64,
|
||||
["Y"] = 77.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 54.11,
|
||||
["Y"] = 76.34,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 52.14,
|
||||
["Y"] = 71.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 49.89,
|
||||
["Y"] = 61.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 49.47,
|
||||
["Y"] = 56.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 49.33,
|
||||
["Y"] = 52.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 49.79,
|
||||
["Y"] = 47.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 78.74,
|
||||
["Y"] = 32.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 76.86,
|
||||
["Y"] = 33.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 74.67,
|
||||
["Y"] = 37.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 74.93,
|
||||
["Y"] = 41.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 70.73,
|
||||
["Y"] = 43.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 70.35,
|
||||
["Y"] = 45.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 37.66,
|
||||
["Y"] = 22.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 36.85,
|
||||
["Y"] = 26.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 33.63,
|
||||
["Y"] = 29.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 31.25,
|
||||
["Y"] = 33.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 29,
|
||||
["Y"] = 41.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 27.51,
|
||||
["Y"] = 43.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 29.19,
|
||||
["Y"] = 44.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 30.22,
|
||||
["Y"] = 46.68,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 30.56,
|
||||
["Y"] = 60.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 31.8,
|
||||
["Y"] = 62.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 32.24,
|
||||
["Y"] = 64.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 33,
|
||||
["Y"] = 66.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 35.52,
|
||||
["Y"] = 69.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[68] =
|
||||
{
|
||||
["X"] = 33.51,
|
||||
["Y"] = 70.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[69] =
|
||||
{
|
||||
["X"] = 32.51,
|
||||
["Y"] = 67.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[70] =
|
||||
{
|
||||
["X"] = 30.69,
|
||||
["Y"] = 67.28,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 64.49,
|
||||
["Y"] = 56.55,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 63.79,
|
||||
["Y"] = 54.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 61.99,
|
||||
["Y"] = 53.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 61.48,
|
||||
["Y"] = 49.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 61.46,
|
||||
["Y"] = 47.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 59.23,
|
||||
["Y"] = 46.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 56.86,
|
||||
["Y"] = 45.6,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 55.78,
|
||||
["Y"] = 44.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 55.06,
|
||||
["Y"] = 34.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 56.92,
|
||||
["Y"] = 34.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 59,
|
||||
["Y"] = 34.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.2,
|
||||
["Y"] = 36.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 61.85,
|
||||
["Y"] = 36.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 64.38,
|
||||
["Y"] = 35.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 66.81,
|
||||
["Y"] = 36.14,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 67.47,
|
||||
["Y"] = 35.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 69.55,
|
||||
["Y"] = 37.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 69.25,
|
||||
["Y"] = 37.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 68.77,
|
||||
["Y"] = 39.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 70.23,
|
||||
["Y"] = 39.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 72.53,
|
||||
["Y"] = 40.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 77.18,
|
||||
["Y"] = 44.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 77.7,
|
||||
["Y"] = 50.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 77.21,
|
||||
["Y"] = 49.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 77.8,
|
||||
["Y"] = 48.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 77.04,
|
||||
["Y"] = 47.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 74.84,
|
||||
["Y"] = 48.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 74.71,
|
||||
["Y"] = 49.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 77.44,
|
||||
["Y"] = 51.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 78.28,
|
||||
["Y"] = 52.79,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 76.61,
|
||||
["Y"] = 56.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 78.15,
|
||||
["Y"] = 58.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 77.88,
|
||||
["Y"] = 59.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 78.99,
|
||||
["Y"] = 59.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 78.7,
|
||||
["Y"] = 61.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 80.81,
|
||||
["Y"] = 62.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 80.67,
|
||||
["Y"] = 63.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 81.77,
|
||||
["Y"] = 64.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 81.61,
|
||||
["Y"] = 67.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 80.59,
|
||||
["Y"] = 69.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 54.85,
|
||||
["Y"] = 78.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 54.64,
|
||||
["Y"] = 77.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 54.11,
|
||||
["Y"] = 76.34,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 52.14,
|
||||
["Y"] = 71.88,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 49.89,
|
||||
["Y"] = 61.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 49.47,
|
||||
["Y"] = 56.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 49.33,
|
||||
["Y"] = 52.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 49.79,
|
||||
["Y"] = 47.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 78.74,
|
||||
["Y"] = 32.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 76.86,
|
||||
["Y"] = 33.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 74.67,
|
||||
["Y"] = 37.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 74.93,
|
||||
["Y"] = 41.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 70.73,
|
||||
["Y"] = 43.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 70.35,
|
||||
["Y"] = 45.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 37.66,
|
||||
["Y"] = 22.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 36.85,
|
||||
["Y"] = 26.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 33.63,
|
||||
["Y"] = 29.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 31.25,
|
||||
["Y"] = 33.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 29,
|
||||
["Y"] = 41.91,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 27.51,
|
||||
["Y"] = 43.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 29.19,
|
||||
["Y"] = 44.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 30.22,
|
||||
["Y"] = 46.68,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 30.56,
|
||||
["Y"] = 60.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 31.8,
|
||||
["Y"] = 62.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 32.24,
|
||||
["Y"] = 64.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 33,
|
||||
["Y"] = 66.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 35.52,
|
||||
["Y"] = 69.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[68] =
|
||||
{
|
||||
["X"] = 33.51,
|
||||
["Y"] = 70.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[69] =
|
||||
{
|
||||
["X"] = 32.51,
|
||||
["Y"] = 67.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[70] =
|
||||
{
|
||||
["X"] = 30.69,
|
||||
["Y"] = 67.28,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 600
|
||||
aura_env.wipeDistance = 50
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,435 +1,435 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 55.21,
|
||||
["Y"] = 29.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 56.38,
|
||||
["Y"] = 30.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 54.25,
|
||||
["Y"] = 31.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 56.5,
|
||||
["Y"] = 32.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 58.44,
|
||||
["Y"] = 35.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 53.05,
|
||||
["Y"] = 37.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 52.92,
|
||||
["Y"] = 37.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 56.85,
|
||||
["Y"] = 37.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 59.32,
|
||||
["Y"] = 39.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 60.24,
|
||||
["Y"] = 43.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 62.38,
|
||||
["Y"] = 44.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.31,
|
||||
["Y"] = 44.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 62.63,
|
||||
["Y"] = 45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 58.79,
|
||||
["Y"] = 66.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 58.07,
|
||||
["Y"] = 67.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 58.8,
|
||||
["Y"] = 68.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 56.18,
|
||||
["Y"] = 68.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 56.89,
|
||||
["Y"] = 68.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 55.99,
|
||||
["Y"] = 68.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 54.79,
|
||||
["Y"] = 69.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 78.12,
|
||||
["Y"] = 69.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 55.23,
|
||||
["Y"] = 69.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 56.47,
|
||||
["Y"] = 69.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 78.49,
|
||||
["Y"] = 70,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 57.49,
|
||||
["Y"] = 70.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 62.05,
|
||||
["Y"] = 70.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 53.23,
|
||||
["Y"] = 70.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 55.72,
|
||||
["Y"] = 70.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 60.45,
|
||||
["Y"] = 70.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 78.71,
|
||||
["Y"] = 71.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 59.93,
|
||||
["Y"] = 71.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 60.96,
|
||||
["Y"] = 71.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 78.05,
|
||||
["Y"] = 71.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 53.97,
|
||||
["Y"] = 71.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 58.78,
|
||||
["Y"] = 71.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 59.19,
|
||||
["Y"] = 72.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 57.1,
|
||||
["Y"] = 72.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 63.61,
|
||||
["Y"] = 73.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 57.6,
|
||||
["Y"] = 73.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 55.82,
|
||||
["Y"] = 73.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 56.83,
|
||||
["Y"] = 74.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 59.48,
|
||||
["Y"] = 75.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 57.28,
|
||||
["Y"] = 75.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 56.2,
|
||||
["Y"] = 75.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 65.04,
|
||||
["Y"] = 75.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 57.1,
|
||||
["Y"] = 75.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 64.03,
|
||||
["Y"] = 76.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 65.94,
|
||||
["Y"] = 76.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 60.04,
|
||||
["Y"] = 76.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 51.69,
|
||||
["Y"] = 77.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 66.38,
|
||||
["Y"] = 77.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 61.34,
|
||||
["Y"] = 77.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 56.96,
|
||||
["Y"] = 77.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 63.81,
|
||||
["Y"] = 77.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 65.79,
|
||||
["Y"] = 77.78,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 66.91,
|
||||
["Y"] = 78.43,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 64.63,
|
||||
["Y"] = 79.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 63.47,
|
||||
["Y"] = 79.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 61.37,
|
||||
["Y"] = 79.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 60.47,
|
||||
["Y"] = 80.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 62.7,
|
||||
["Y"] = 80.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 70.7,
|
||||
["Y"] = 80.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 60.52,
|
||||
["Y"] = 81.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 72.19,
|
||||
["Y"] = 82.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 71.35,
|
||||
["Y"] = 82.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 67.39,
|
||||
["Y"] = 83.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 71.42,
|
||||
["Y"] = 84.27,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 92
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 55.21,
|
||||
["Y"] = 29.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 56.38,
|
||||
["Y"] = 30.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 54.25,
|
||||
["Y"] = 31.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 56.5,
|
||||
["Y"] = 32.12,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 58.44,
|
||||
["Y"] = 35.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 53.05,
|
||||
["Y"] = 37.22,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 52.92,
|
||||
["Y"] = 37.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 56.85,
|
||||
["Y"] = 37.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 59.32,
|
||||
["Y"] = 39.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 60.24,
|
||||
["Y"] = 43.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 62.38,
|
||||
["Y"] = 44.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.31,
|
||||
["Y"] = 44.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 62.63,
|
||||
["Y"] = 45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 58.79,
|
||||
["Y"] = 66.11,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 58.07,
|
||||
["Y"] = 67.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 58.8,
|
||||
["Y"] = 68.04,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 56.18,
|
||||
["Y"] = 68.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 56.89,
|
||||
["Y"] = 68.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 55.99,
|
||||
["Y"] = 68.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 54.79,
|
||||
["Y"] = 69.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 78.12,
|
||||
["Y"] = 69.46,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 55.23,
|
||||
["Y"] = 69.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 56.47,
|
||||
["Y"] = 69.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 78.49,
|
||||
["Y"] = 70,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 57.49,
|
||||
["Y"] = 70.1,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 62.05,
|
||||
["Y"] = 70.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 53.23,
|
||||
["Y"] = 70.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 55.72,
|
||||
["Y"] = 70.85,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 60.45,
|
||||
["Y"] = 70.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 78.71,
|
||||
["Y"] = 71.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 59.93,
|
||||
["Y"] = 71.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 60.96,
|
||||
["Y"] = 71.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 78.05,
|
||||
["Y"] = 71.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 53.97,
|
||||
["Y"] = 71.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 58.78,
|
||||
["Y"] = 71.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 59.19,
|
||||
["Y"] = 72.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 57.1,
|
||||
["Y"] = 72.76,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 63.61,
|
||||
["Y"] = 73.32,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 57.6,
|
||||
["Y"] = 73.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 55.82,
|
||||
["Y"] = 73.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 56.83,
|
||||
["Y"] = 74.09,
|
||||
["CD"] = 0
|
||||
},
|
||||
[42] =
|
||||
{
|
||||
["X"] = 59.48,
|
||||
["Y"] = 75.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[43] =
|
||||
{
|
||||
["X"] = 57.28,
|
||||
["Y"] = 75.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[44] =
|
||||
{
|
||||
["X"] = 56.2,
|
||||
["Y"] = 75.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[45] =
|
||||
{
|
||||
["X"] = 65.04,
|
||||
["Y"] = 75.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[46] =
|
||||
{
|
||||
["X"] = 57.1,
|
||||
["Y"] = 75.83,
|
||||
["CD"] = 0
|
||||
},
|
||||
[47] =
|
||||
{
|
||||
["X"] = 64.03,
|
||||
["Y"] = 76.03,
|
||||
["CD"] = 0
|
||||
},
|
||||
[48] =
|
||||
{
|
||||
["X"] = 65.94,
|
||||
["Y"] = 76.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[49] =
|
||||
{
|
||||
["X"] = 60.04,
|
||||
["Y"] = 76.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[50] =
|
||||
{
|
||||
["X"] = 51.69,
|
||||
["Y"] = 77.08,
|
||||
["CD"] = 0
|
||||
},
|
||||
[51] =
|
||||
{
|
||||
["X"] = 66.38,
|
||||
["Y"] = 77.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[52] =
|
||||
{
|
||||
["X"] = 61.34,
|
||||
["Y"] = 77.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[53] =
|
||||
{
|
||||
["X"] = 56.96,
|
||||
["Y"] = 77.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[54] =
|
||||
{
|
||||
["X"] = 63.81,
|
||||
["Y"] = 77.73,
|
||||
["CD"] = 0
|
||||
},
|
||||
[55] =
|
||||
{
|
||||
["X"] = 65.79,
|
||||
["Y"] = 77.78,
|
||||
["CD"] = 0
|
||||
},
|
||||
[56] =
|
||||
{
|
||||
["X"] = 66.91,
|
||||
["Y"] = 78.43,
|
||||
["CD"] = 0
|
||||
},
|
||||
[57] =
|
||||
{
|
||||
["X"] = 64.63,
|
||||
["Y"] = 79.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[58] =
|
||||
{
|
||||
["X"] = 63.47,
|
||||
["Y"] = 79.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[59] =
|
||||
{
|
||||
["X"] = 61.37,
|
||||
["Y"] = 79.81,
|
||||
["CD"] = 0
|
||||
},
|
||||
[60] =
|
||||
{
|
||||
["X"] = 60.47,
|
||||
["Y"] = 80.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[61] =
|
||||
{
|
||||
["X"] = 62.7,
|
||||
["Y"] = 80.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[62] =
|
||||
{
|
||||
["X"] = 70.7,
|
||||
["Y"] = 80.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[63] =
|
||||
{
|
||||
["X"] = 60.52,
|
||||
["Y"] = 81.06,
|
||||
["CD"] = 0
|
||||
},
|
||||
[64] =
|
||||
{
|
||||
["X"] = 72.19,
|
||||
["Y"] = 82.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[65] =
|
||||
{
|
||||
["X"] = 71.35,
|
||||
["Y"] = 82.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[66] =
|
||||
{
|
||||
["X"] = 67.39,
|
||||
["Y"] = 83.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[67] =
|
||||
{
|
||||
["X"] = 71.42,
|
||||
["Y"] = 84.27,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 92
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,153 +1,153 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 51.58,
|
||||
["Y"] = 43.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 51.71,
|
||||
["Y"] = 43.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 52.19,
|
||||
["Y"] = 43.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 53.1,
|
||||
["Y"] = 43.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 53.56,
|
||||
["Y"] = 43.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 54.06,
|
||||
["Y"] = 43.34,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 54.63,
|
||||
["Y"] = 43.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 54.84,
|
||||
["Y"] = 42.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 54.89,
|
||||
["Y"] = 41.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 54.53,
|
||||
["Y"] = 41.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 54.27,
|
||||
["Y"] = 41.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 53.86,
|
||||
["Y"] = 41.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 53.74,
|
||||
["Y"] = 40.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 52.95,
|
||||
["Y"] = 40.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 52.78,
|
||||
["Y"] = 40.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 51.58,
|
||||
["Y"] = 43.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 51.71,
|
||||
["Y"] = 43.97,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 52.19,
|
||||
["Y"] = 43.75,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 53.1,
|
||||
["Y"] = 43.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 53.56,
|
||||
["Y"] = 43.28,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 54.06,
|
||||
["Y"] = 43.34,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 54.63,
|
||||
["Y"] = 43.33,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 54.84,
|
||||
["Y"] = 42.4,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 54.89,
|
||||
["Y"] = 41.74,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 54.53,
|
||||
["Y"] = 41.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 54.27,
|
||||
["Y"] = 41.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 53.86,
|
||||
["Y"] = 41.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 53.74,
|
||||
["Y"] = 40.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 52.95,
|
||||
["Y"] = 40.72,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 52.78,
|
||||
["Y"] = 40.24,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,153 +1,153 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 47.45,
|
||||
["Y"] = 45.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 47.1,
|
||||
["Y"] = 45.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 46.85,
|
||||
["Y"] = 45.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 47.26,
|
||||
["Y"] = 46.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 46.37,
|
||||
["Y"] = 46.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 46.23,
|
||||
["Y"] = 47.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 46.35,
|
||||
["Y"] = 48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 46.92,
|
||||
["Y"] = 48.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 47.02,
|
||||
["Y"] = 47.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 47.28,
|
||||
["Y"] = 47.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 47.45,
|
||||
["Y"] = 47.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 47.55,
|
||||
["Y"] = 47.42,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 47.84,
|
||||
["Y"] = 46.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 48.13,
|
||||
["Y"] = 46.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 48.24,
|
||||
["Y"] = 45.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 47.45,
|
||||
["Y"] = 45.25,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 47.1,
|
||||
["Y"] = 45.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 46.85,
|
||||
["Y"] = 45.64,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 47.26,
|
||||
["Y"] = 46.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 46.37,
|
||||
["Y"] = 46.44,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 46.23,
|
||||
["Y"] = 47.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 46.35,
|
||||
["Y"] = 48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 46.92,
|
||||
["Y"] = 48.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 47.02,
|
||||
["Y"] = 47.71,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 47.28,
|
||||
["Y"] = 47.65,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 47.45,
|
||||
["Y"] = 47.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 47.55,
|
||||
["Y"] = 47.42,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 47.84,
|
||||
["Y"] = 46.89,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 48.13,
|
||||
["Y"] = 46.47,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 48.24,
|
||||
["Y"] = 45.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,153 +1,153 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 47.58,
|
||||
["Y"] = 61.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 47.75,
|
||||
["Y"] = 61.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 49.39,
|
||||
["Y"] = 61.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 48.9,
|
||||
["Y"] = 60.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 49.1,
|
||||
["Y"] = 59.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 49.51,
|
||||
["Y"] = 60.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 49.15,
|
||||
["Y"] = 58.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 49.67,
|
||||
["Y"] = 58.14,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 48.5,
|
||||
["Y"] = 58.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 58.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 48.13,
|
||||
["Y"] = 58.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 47.72,
|
||||
["Y"] = 58.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 47.55,
|
||||
["Y"] = 59.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 47.97,
|
||||
["Y"] = 60.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 47.95,
|
||||
["Y"] = 60.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 47.58,
|
||||
["Y"] = 61.98,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 47.75,
|
||||
["Y"] = 61.61,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 49.39,
|
||||
["Y"] = 61.5,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 48.9,
|
||||
["Y"] = 60.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 49.1,
|
||||
["Y"] = 59.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 49.51,
|
||||
["Y"] = 60.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 49.15,
|
||||
["Y"] = 58.8,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 49.67,
|
||||
["Y"] = 58.14,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 48.5,
|
||||
["Y"] = 58.18,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 58.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 48.13,
|
||||
["Y"] = 58.66,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 47.72,
|
||||
["Y"] = 58.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 47.55,
|
||||
["Y"] = 59.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 47.97,
|
||||
["Y"] = 60.7,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 47.95,
|
||||
["Y"] = 60.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,153 +1,153 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 54.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 62.75,
|
||||
["Y"] = 54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 53.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 51.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 62.78,
|
||||
["Y"] = 51.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 62.44,
|
||||
["Y"] = 50.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 61.85,
|
||||
["Y"] = 50.94,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 61.45,
|
||||
["Y"] = 51.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 61.14,
|
||||
["Y"] = 51.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 61.08,
|
||||
["Y"] = 52.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 60.35,
|
||||
["Y"] = 51.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.05,
|
||||
["Y"] = 51.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 60.05,
|
||||
["Y"] = 52.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 59.53,
|
||||
["Y"] = 52.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 59.53,
|
||||
["Y"] = 53.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 54.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 62.75,
|
||||
["Y"] = 54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 53.13,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 62.88,
|
||||
["Y"] = 51.82,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 62.78,
|
||||
["Y"] = 51.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 62.44,
|
||||
["Y"] = 50.9,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 61.85,
|
||||
["Y"] = 50.94,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 61.45,
|
||||
["Y"] = 51.58,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 61.14,
|
||||
["Y"] = 51.67,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 61.08,
|
||||
["Y"] = 52.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 60.35,
|
||||
["Y"] = 51.69,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.05,
|
||||
["Y"] = 51.23,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 60.05,
|
||||
["Y"] = 52.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 59.53,
|
||||
["Y"] = 52.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 59.53,
|
||||
["Y"] = 53.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 47.99,
|
||||
["Y"] = 45.57,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.29,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 47.57,
|
||||
["Y"] = 45.38,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 48.18,
|
||||
["Y"] = 46.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 47.05,
|
||||
["Y"] = 46.63,
|
||||
["CD"] = 0
|
||||
},
|
||||
}
|
||||
aura_env.cooldown = 120
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,167 +1,167 @@
|
||||
/way Eversong Woods 47.45 45.25
|
||||
/way Eversong Woods 47.1 45.39
|
||||
/way Eversong Woods 46.85 45.64
|
||||
/way Eversong Woods 47.26 46.21
|
||||
/way Eversong Woods 46.37 46.44
|
||||
/way Eversong Woods 46.23 47.2
|
||||
/way Eversong Woods 46.35 48
|
||||
/way Eversong Woods 46.92 48.29
|
||||
/way Eversong Woods 47.02 47.71
|
||||
/way Eversong Woods 47.28 47.65
|
||||
/way Eversong Woods 47.45 47.47
|
||||
/way Eversong Woods 47.55 47.42
|
||||
/way Eversong Woods 47.84 46.89
|
||||
/way Eversong Woods 48.13 46.47
|
||||
/way Eversong Woods 48.24 45.63
|
||||
/way Eversong Woods 47.99 45.57
|
||||
/way Eversong Woods 47.57 45.29
|
||||
/way Eversong Woods 47.57 45.38
|
||||
/way Eversong Woods 48.18 46.31
|
||||
/way Eversong Woods 47.05 46.63
|
||||
|
||||
/way Mulgore 47.58 61.98
|
||||
/way Mulgore 47.75 61.61
|
||||
/way Mulgore 49.39 61.5
|
||||
/way Mulgore 48.9 60.63
|
||||
/way Mulgore 49.1 59.96
|
||||
/way Mulgore 49.51 60.13
|
||||
/way Mulgore 49.15 58.8
|
||||
/way Mulgore 49.67 58.14
|
||||
/way Mulgore 48.5 58.18
|
||||
/way Mulgore 48.18 58.23
|
||||
/way Mulgore 48.13 58.66
|
||||
/way Mulgore 47.72 58.57
|
||||
/way Mulgore 47.55 59.51
|
||||
/way Mulgore 47.97 60.7
|
||||
/way Mulgore 47.95 60.92
|
||||
/way Mulgore 47.99 45.57
|
||||
/way Mulgore 47.57 45.29
|
||||
/way Mulgore 47.57 45.38
|
||||
/way Mulgore 48.18 46.31
|
||||
/way Mulgore 47.05 46.63
|
||||
|
||||
/way Durotar 51.58 43.53
|
||||
/way Durotar 51.71 43.97
|
||||
/way Durotar 52.19 43.75
|
||||
/way Durotar 53.1 43.07
|
||||
/way Durotar 53.56 43.28
|
||||
/way Durotar 54.06 43.34
|
||||
/way Durotar 54.63 43.33
|
||||
/way Durotar 54.84 42.4
|
||||
/way Durotar 54.89 41.74
|
||||
/way Durotar 54.53 41.47
|
||||
/way Durotar 54.27 41.65
|
||||
/way Durotar 53.86 41.66
|
||||
/way Durotar 53.74 40.67
|
||||
/way Durotar 52.95 40.72
|
||||
/way Durotar 52.78 40.24
|
||||
/way Durotar 47.99 45.57
|
||||
/way Durotar 47.57 45.29
|
||||
/way Durotar 47.57 45.38
|
||||
/way Durotar 48.18 46.31
|
||||
/way Durotar 47.05 46.63
|
||||
|
||||
/way Tirisfal Glades 62.88 54.49
|
||||
/way Tirisfal Glades 62.75 54
|
||||
/way Tirisfal Glades 62.88 53.13
|
||||
/way Tirisfal Glades 62.88 51.82
|
||||
/way Tirisfal Glades 62.78 51.54
|
||||
/way Tirisfal Glades 62.44 50.9
|
||||
/way Tirisfal Glades 61.85 50.94
|
||||
/way Tirisfal Glades 61.45 51.58
|
||||
/way Tirisfal Glades 61.14 51.67
|
||||
/way Tirisfal Glades 61.08 52.31
|
||||
/way Tirisfal Glades 60.35 51.69
|
||||
/way Tirisfal Glades 60.05 51.23
|
||||
/way Tirisfal Glades 60.05 52.29
|
||||
/way Tirisfal Glades 59.53 52.96
|
||||
/way Tirisfal Glades 59.53 53.51
|
||||
/way Tirisfal Glades 47.99 45.57
|
||||
/way Tirisfal Glades 47.57 45.29
|
||||
/way Tirisfal Glades 47.57 45.38
|
||||
/way Tirisfal Glades 48.18 46.31
|
||||
/way Tirisfal Glades 47.05 46.63
|
||||
|
||||
/way Teldrassil 56.36 51.89
|
||||
/way Teldrassil 56.3 52.47
|
||||
/way Teldrassil 56.15 52.66
|
||||
/way Teldrassil 55.77 52.93
|
||||
/way Teldrassil 55.59 52.59
|
||||
/way Teldrassil 55.34 52.53
|
||||
/way Teldrassil 55.22 52.12
|
||||
/way Teldrassil 55.36 51.37
|
||||
/way Teldrassil 55.14 51.69
|
||||
/way Teldrassil 54.87 49.49
|
||||
/way Teldrassil 55.15 49.23
|
||||
/way Teldrassil 55.61 49.51
|
||||
/way Teldrassil 55.77 49.77
|
||||
/way Teldrassil 55.7 50.34
|
||||
/way Teldrassil 55.31 50.68
|
||||
/way Teldrassil 47.99 45.57
|
||||
/way Teldrassil 47.57 45.29
|
||||
/way Teldrassil 47.57 45.38
|
||||
/way Teldrassil 48.18 46.31
|
||||
/way Teldrassil 47.05 46.63
|
||||
|
||||
/way Azuremyst Isle 50 50.24
|
||||
/way Azuremyst Isle 48.98 50.97
|
||||
/way Azuremyst Isle 49.26 50.68
|
||||
/way Azuremyst Isle 50.18 52.1
|
||||
/way Azuremyst Isle 49.8 52.07
|
||||
/way Azuremyst Isle 49.26 52.84
|
||||
/way Azuremyst Isle 48.83 52.7
|
||||
/way Azuremyst Isle 48.39 52.23
|
||||
/way Azuremyst Isle 47.8 51.37
|
||||
/way Azuremyst Isle 48.02 50.57
|
||||
/way Azuremyst Isle 48.6 50.24
|
||||
/way Azuremyst Isle 49.41 49.05
|
||||
/way Azuremyst Isle 49.77 49.6
|
||||
/way Azuremyst Isle 50.16 50.91
|
||||
/way Azuremyst Isle 49.28 51.31
|
||||
/way Azuremyst Isle 47.99 45.57
|
||||
/way Azuremyst Isle 47.57 45.29
|
||||
/way Azuremyst Isle 47.57 45.38
|
||||
/way Azuremyst Isle 48.18 46.31
|
||||
/way Azuremyst Isle 47.05 46.63
|
||||
|
||||
/way Dun Morogh 53.18 51.5
|
||||
/way Dun Morogh 52.71 51.12
|
||||
/way Dun Morogh 53.14 53.76
|
||||
/way Dun Morogh 53.33 54.06
|
||||
/way Dun Morogh 53.78 53.14
|
||||
/way Dun Morogh 54.41 53.24
|
||||
/way Dun Morogh 54.1 52.4
|
||||
/way Dun Morogh 54.56 51.32
|
||||
/way Dun Morogh 54.55 52.1
|
||||
/way Dun Morogh 53.14 51.99
|
||||
/way Dun Morogh 53.97 51.94
|
||||
/way Dun Morogh 53.94 50.74
|
||||
/way Dun Morogh 53.95 50.29
|
||||
/way Dun Morogh 54.11 50.07
|
||||
/way Dun Morogh 54.47 49.32
|
||||
/way Dun Morogh 47.99 45.57
|
||||
/way Dun Morogh 47.57 45.29
|
||||
/way Dun Morogh 47.57 45.38
|
||||
/way Dun Morogh 48.18 46.31
|
||||
/way Dun Morogh 47.05 46.63
|
||||
|
||||
/way Elwynn Forest 40.72 65.51
|
||||
/way Elwynn Forest 40.78 64.88
|
||||
/way Elwynn Forest 40.88 64.47
|
||||
/way Elwynn Forest 41.23 64.63
|
||||
/way Elwynn Forest 42.6 63.71
|
||||
/way Elwynn Forest 42.8 63.79
|
||||
/way Elwynn Forest 43.74 64.78
|
||||
/way Elwynn Forest 43.74 65.38
|
||||
/way Elwynn Forest 44.1 65.46
|
||||
/way Elwynn Forest 44.55 65.71
|
||||
/way Elwynn Forest 44.52 66.37
|
||||
/way Elwynn Forest 43.9 66.74
|
||||
/way Elwynn Forest 43.17 66.67
|
||||
/way Elwynn Forest 42.96 66.44
|
||||
/way Elwynn Forest 54.47 49.32
|
||||
/way Elwynn Forest 47.99 45.57
|
||||
/way Elwynn Forest 47.57 45.29
|
||||
/way Elwynn Forest 47.57 45.38
|
||||
/way Elwynn Forest 48.18 46.31
|
||||
/way Eversong Woods 47.45 45.25
|
||||
/way Eversong Woods 47.1 45.39
|
||||
/way Eversong Woods 46.85 45.64
|
||||
/way Eversong Woods 47.26 46.21
|
||||
/way Eversong Woods 46.37 46.44
|
||||
/way Eversong Woods 46.23 47.2
|
||||
/way Eversong Woods 46.35 48
|
||||
/way Eversong Woods 46.92 48.29
|
||||
/way Eversong Woods 47.02 47.71
|
||||
/way Eversong Woods 47.28 47.65
|
||||
/way Eversong Woods 47.45 47.47
|
||||
/way Eversong Woods 47.55 47.42
|
||||
/way Eversong Woods 47.84 46.89
|
||||
/way Eversong Woods 48.13 46.47
|
||||
/way Eversong Woods 48.24 45.63
|
||||
/way Eversong Woods 47.99 45.57
|
||||
/way Eversong Woods 47.57 45.29
|
||||
/way Eversong Woods 47.57 45.38
|
||||
/way Eversong Woods 48.18 46.31
|
||||
/way Eversong Woods 47.05 46.63
|
||||
|
||||
/way Mulgore 47.58 61.98
|
||||
/way Mulgore 47.75 61.61
|
||||
/way Mulgore 49.39 61.5
|
||||
/way Mulgore 48.9 60.63
|
||||
/way Mulgore 49.1 59.96
|
||||
/way Mulgore 49.51 60.13
|
||||
/way Mulgore 49.15 58.8
|
||||
/way Mulgore 49.67 58.14
|
||||
/way Mulgore 48.5 58.18
|
||||
/way Mulgore 48.18 58.23
|
||||
/way Mulgore 48.13 58.66
|
||||
/way Mulgore 47.72 58.57
|
||||
/way Mulgore 47.55 59.51
|
||||
/way Mulgore 47.97 60.7
|
||||
/way Mulgore 47.95 60.92
|
||||
/way Mulgore 47.99 45.57
|
||||
/way Mulgore 47.57 45.29
|
||||
/way Mulgore 47.57 45.38
|
||||
/way Mulgore 48.18 46.31
|
||||
/way Mulgore 47.05 46.63
|
||||
|
||||
/way Durotar 51.58 43.53
|
||||
/way Durotar 51.71 43.97
|
||||
/way Durotar 52.19 43.75
|
||||
/way Durotar 53.1 43.07
|
||||
/way Durotar 53.56 43.28
|
||||
/way Durotar 54.06 43.34
|
||||
/way Durotar 54.63 43.33
|
||||
/way Durotar 54.84 42.4
|
||||
/way Durotar 54.89 41.74
|
||||
/way Durotar 54.53 41.47
|
||||
/way Durotar 54.27 41.65
|
||||
/way Durotar 53.86 41.66
|
||||
/way Durotar 53.74 40.67
|
||||
/way Durotar 52.95 40.72
|
||||
/way Durotar 52.78 40.24
|
||||
/way Durotar 47.99 45.57
|
||||
/way Durotar 47.57 45.29
|
||||
/way Durotar 47.57 45.38
|
||||
/way Durotar 48.18 46.31
|
||||
/way Durotar 47.05 46.63
|
||||
|
||||
/way Tirisfal Glades 62.88 54.49
|
||||
/way Tirisfal Glades 62.75 54
|
||||
/way Tirisfal Glades 62.88 53.13
|
||||
/way Tirisfal Glades 62.88 51.82
|
||||
/way Tirisfal Glades 62.78 51.54
|
||||
/way Tirisfal Glades 62.44 50.9
|
||||
/way Tirisfal Glades 61.85 50.94
|
||||
/way Tirisfal Glades 61.45 51.58
|
||||
/way Tirisfal Glades 61.14 51.67
|
||||
/way Tirisfal Glades 61.08 52.31
|
||||
/way Tirisfal Glades 60.35 51.69
|
||||
/way Tirisfal Glades 60.05 51.23
|
||||
/way Tirisfal Glades 60.05 52.29
|
||||
/way Tirisfal Glades 59.53 52.96
|
||||
/way Tirisfal Glades 59.53 53.51
|
||||
/way Tirisfal Glades 47.99 45.57
|
||||
/way Tirisfal Glades 47.57 45.29
|
||||
/way Tirisfal Glades 47.57 45.38
|
||||
/way Tirisfal Glades 48.18 46.31
|
||||
/way Tirisfal Glades 47.05 46.63
|
||||
|
||||
/way Teldrassil 56.36 51.89
|
||||
/way Teldrassil 56.3 52.47
|
||||
/way Teldrassil 56.15 52.66
|
||||
/way Teldrassil 55.77 52.93
|
||||
/way Teldrassil 55.59 52.59
|
||||
/way Teldrassil 55.34 52.53
|
||||
/way Teldrassil 55.22 52.12
|
||||
/way Teldrassil 55.36 51.37
|
||||
/way Teldrassil 55.14 51.69
|
||||
/way Teldrassil 54.87 49.49
|
||||
/way Teldrassil 55.15 49.23
|
||||
/way Teldrassil 55.61 49.51
|
||||
/way Teldrassil 55.77 49.77
|
||||
/way Teldrassil 55.7 50.34
|
||||
/way Teldrassil 55.31 50.68
|
||||
/way Teldrassil 47.99 45.57
|
||||
/way Teldrassil 47.57 45.29
|
||||
/way Teldrassil 47.57 45.38
|
||||
/way Teldrassil 48.18 46.31
|
||||
/way Teldrassil 47.05 46.63
|
||||
|
||||
/way Azuremyst Isle 50 50.24
|
||||
/way Azuremyst Isle 48.98 50.97
|
||||
/way Azuremyst Isle 49.26 50.68
|
||||
/way Azuremyst Isle 50.18 52.1
|
||||
/way Azuremyst Isle 49.8 52.07
|
||||
/way Azuremyst Isle 49.26 52.84
|
||||
/way Azuremyst Isle 48.83 52.7
|
||||
/way Azuremyst Isle 48.39 52.23
|
||||
/way Azuremyst Isle 47.8 51.37
|
||||
/way Azuremyst Isle 48.02 50.57
|
||||
/way Azuremyst Isle 48.6 50.24
|
||||
/way Azuremyst Isle 49.41 49.05
|
||||
/way Azuremyst Isle 49.77 49.6
|
||||
/way Azuremyst Isle 50.16 50.91
|
||||
/way Azuremyst Isle 49.28 51.31
|
||||
/way Azuremyst Isle 47.99 45.57
|
||||
/way Azuremyst Isle 47.57 45.29
|
||||
/way Azuremyst Isle 47.57 45.38
|
||||
/way Azuremyst Isle 48.18 46.31
|
||||
/way Azuremyst Isle 47.05 46.63
|
||||
|
||||
/way Dun Morogh 53.18 51.5
|
||||
/way Dun Morogh 52.71 51.12
|
||||
/way Dun Morogh 53.14 53.76
|
||||
/way Dun Morogh 53.33 54.06
|
||||
/way Dun Morogh 53.78 53.14
|
||||
/way Dun Morogh 54.41 53.24
|
||||
/way Dun Morogh 54.1 52.4
|
||||
/way Dun Morogh 54.56 51.32
|
||||
/way Dun Morogh 54.55 52.1
|
||||
/way Dun Morogh 53.14 51.99
|
||||
/way Dun Morogh 53.97 51.94
|
||||
/way Dun Morogh 53.94 50.74
|
||||
/way Dun Morogh 53.95 50.29
|
||||
/way Dun Morogh 54.11 50.07
|
||||
/way Dun Morogh 54.47 49.32
|
||||
/way Dun Morogh 47.99 45.57
|
||||
/way Dun Morogh 47.57 45.29
|
||||
/way Dun Morogh 47.57 45.38
|
||||
/way Dun Morogh 48.18 46.31
|
||||
/way Dun Morogh 47.05 46.63
|
||||
|
||||
/way Elwynn Forest 40.72 65.51
|
||||
/way Elwynn Forest 40.78 64.88
|
||||
/way Elwynn Forest 40.88 64.47
|
||||
/way Elwynn Forest 41.23 64.63
|
||||
/way Elwynn Forest 42.6 63.71
|
||||
/way Elwynn Forest 42.8 63.79
|
||||
/way Elwynn Forest 43.74 64.78
|
||||
/way Elwynn Forest 43.74 65.38
|
||||
/way Elwynn Forest 44.1 65.46
|
||||
/way Elwynn Forest 44.55 65.71
|
||||
/way Elwynn Forest 44.52 66.37
|
||||
/way Elwynn Forest 43.9 66.74
|
||||
/way Elwynn Forest 43.17 66.67
|
||||
/way Elwynn Forest 42.96 66.44
|
||||
/way Elwynn Forest 54.47 49.32
|
||||
/way Elwynn Forest 47.99 45.57
|
||||
/way Elwynn Forest 47.57 45.29
|
||||
/way Elwynn Forest 47.57 45.38
|
||||
/way Elwynn Forest 48.18 46.31
|
||||
/way Elwynn Forest 47.05 46.63
|
||||
@@ -1,279 +1,279 @@
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 57.62,
|
||||
["Y"] = 72.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 57.57,
|
||||
["Y"] = 72.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 60.72,
|
||||
["Y"] = 70.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 57.63,
|
||||
["Y"] = 72.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 57.74,
|
||||
["Y"] = 72.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 60.67,
|
||||
["Y"] = 70.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 57.84,
|
||||
["Y"] = 72.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 60.66,
|
||||
["Y"] = 70.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 60.71,
|
||||
["Y"] = 70.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 60.67,
|
||||
["Y"] = 70.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 60.71,
|
||||
["Y"] = 70.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.64,
|
||||
["Y"] = 70.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 60.73,
|
||||
["Y"] = 70.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 60.14,
|
||||
["Y"] = 70.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 71.7,
|
||||
["Y"] = 70.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 72.11,
|
||||
["Y"] = 71.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 71.94,
|
||||
["Y"] = 70.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 72.01,
|
||||
["Y"] = 70.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 66.58,
|
||||
["Y"] = 69.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 72.16,
|
||||
["Y"] = 70.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 66.99,
|
||||
["Y"] = 68.62,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 65.63,
|
||||
["Y"] = 69.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 57.32,
|
||||
["Y"] = 76.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 65.54,
|
||||
["Y"] = 69.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 65.66,
|
||||
["Y"] = 69.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 57.68,
|
||||
["Y"] = 72.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 56.46,
|
||||
["Y"] = 73.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 64.03,
|
||||
["Y"] = 73.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 71.66,
|
||||
["Y"] = 70.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.82,
|
||||
["Y"] = 75.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 56.21,
|
||||
["Y"] = 76.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 48.26,
|
||||
["Y"] = 79.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 55.4,
|
||||
["Y"] = 73.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 56.71,
|
||||
["Y"] = 78.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 56.45,
|
||||
["Y"] = 76.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 50.67,
|
||||
["Y"] = 80.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 55.33,
|
||||
["Y"] = 76.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 49.13,
|
||||
["Y"] = 78.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 50.61,
|
||||
["Y"] = 78.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 46.32,
|
||||
["Y"] = 78.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 47.29,
|
||||
["Y"] = 79.19,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 91
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
aura_env.herbs =
|
||||
{
|
||||
[1] =
|
||||
{
|
||||
["X"] = 57.62,
|
||||
["Y"] = 72.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[2] =
|
||||
{
|
||||
["X"] = 57.57,
|
||||
["Y"] = 72.49,
|
||||
["CD"] = 0
|
||||
},
|
||||
[3] =
|
||||
{
|
||||
["X"] = 60.72,
|
||||
["Y"] = 70.21,
|
||||
["CD"] = 0
|
||||
},
|
||||
[4] =
|
||||
{
|
||||
["X"] = 57.63,
|
||||
["Y"] = 72.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[5] =
|
||||
{
|
||||
["X"] = 57.74,
|
||||
["Y"] = 72.2,
|
||||
["CD"] = 0
|
||||
},
|
||||
[6] =
|
||||
{
|
||||
["X"] = 60.67,
|
||||
["Y"] = 70.3,
|
||||
["CD"] = 0
|
||||
},
|
||||
[7] =
|
||||
{
|
||||
["X"] = 57.84,
|
||||
["Y"] = 72.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[8] =
|
||||
{
|
||||
["X"] = 60.66,
|
||||
["Y"] = 70.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[9] =
|
||||
{
|
||||
["X"] = 60.71,
|
||||
["Y"] = 70.26,
|
||||
["CD"] = 0
|
||||
},
|
||||
[10] =
|
||||
{
|
||||
["X"] = 60.67,
|
||||
["Y"] = 70.19,
|
||||
["CD"] = 0
|
||||
},
|
||||
[11] =
|
||||
{
|
||||
["X"] = 60.71,
|
||||
["Y"] = 70.31,
|
||||
["CD"] = 0
|
||||
},
|
||||
[12] =
|
||||
{
|
||||
["X"] = 60.64,
|
||||
["Y"] = 70.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[13] =
|
||||
{
|
||||
["X"] = 60.73,
|
||||
["Y"] = 70.37,
|
||||
["CD"] = 0
|
||||
},
|
||||
[14] =
|
||||
{
|
||||
["X"] = 60.14,
|
||||
["Y"] = 70.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[15] =
|
||||
{
|
||||
["X"] = 71.7,
|
||||
["Y"] = 70.48,
|
||||
["CD"] = 0
|
||||
},
|
||||
[16] =
|
||||
{
|
||||
["X"] = 72.11,
|
||||
["Y"] = 71.16,
|
||||
["CD"] = 0
|
||||
},
|
||||
[17] =
|
||||
{
|
||||
["X"] = 71.94,
|
||||
["Y"] = 70.56,
|
||||
["CD"] = 0
|
||||
},
|
||||
[18] =
|
||||
{
|
||||
["X"] = 72.01,
|
||||
["Y"] = 70.35,
|
||||
["CD"] = 0
|
||||
},
|
||||
[19] =
|
||||
{
|
||||
["X"] = 66.58,
|
||||
["Y"] = 69.36,
|
||||
["CD"] = 0
|
||||
},
|
||||
[20] =
|
||||
{
|
||||
["X"] = 72.16,
|
||||
["Y"] = 70.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[21] =
|
||||
{
|
||||
["X"] = 66.99,
|
||||
["Y"] = 68.62,
|
||||
["CD"] = 0
|
||||
},
|
||||
[22] =
|
||||
{
|
||||
["X"] = 65.63,
|
||||
["Y"] = 69.87,
|
||||
["CD"] = 0
|
||||
},
|
||||
[23] =
|
||||
{
|
||||
["X"] = 57.32,
|
||||
["Y"] = 76.15,
|
||||
["CD"] = 0
|
||||
},
|
||||
[24] =
|
||||
{
|
||||
["X"] = 65.54,
|
||||
["Y"] = 69.99,
|
||||
["CD"] = 0
|
||||
},
|
||||
[25] =
|
||||
{
|
||||
["X"] = 65.66,
|
||||
["Y"] = 69.51,
|
||||
["CD"] = 0
|
||||
},
|
||||
[26] =
|
||||
{
|
||||
["X"] = 57.68,
|
||||
["Y"] = 72.53,
|
||||
["CD"] = 0
|
||||
},
|
||||
[27] =
|
||||
{
|
||||
["X"] = 56.46,
|
||||
["Y"] = 73.39,
|
||||
["CD"] = 0
|
||||
},
|
||||
[28] =
|
||||
{
|
||||
["X"] = 64.03,
|
||||
["Y"] = 73.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[29] =
|
||||
{
|
||||
["X"] = 71.66,
|
||||
["Y"] = 70.86,
|
||||
["CD"] = 0
|
||||
},
|
||||
[30] =
|
||||
{
|
||||
["X"] = 56.82,
|
||||
["Y"] = 75.45,
|
||||
["CD"] = 0
|
||||
},
|
||||
[31] =
|
||||
{
|
||||
["X"] = 56.21,
|
||||
["Y"] = 76.01,
|
||||
["CD"] = 0
|
||||
},
|
||||
[32] =
|
||||
{
|
||||
["X"] = 48.26,
|
||||
["Y"] = 79.27,
|
||||
["CD"] = 0
|
||||
},
|
||||
[33] =
|
||||
{
|
||||
["X"] = 55.4,
|
||||
["Y"] = 73.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[34] =
|
||||
{
|
||||
["X"] = 56.71,
|
||||
["Y"] = 78.07,
|
||||
["CD"] = 0
|
||||
},
|
||||
[35] =
|
||||
{
|
||||
["X"] = 56.45,
|
||||
["Y"] = 76.92,
|
||||
["CD"] = 0
|
||||
},
|
||||
[36] =
|
||||
{
|
||||
["X"] = 50.67,
|
||||
["Y"] = 80.17,
|
||||
["CD"] = 0
|
||||
},
|
||||
[37] =
|
||||
{
|
||||
["X"] = 55.33,
|
||||
["Y"] = 76.05,
|
||||
["CD"] = 0
|
||||
},
|
||||
[38] =
|
||||
{
|
||||
["X"] = 49.13,
|
||||
["Y"] = 78.84,
|
||||
["CD"] = 0
|
||||
},
|
||||
[39] =
|
||||
{
|
||||
["X"] = 50.61,
|
||||
["Y"] = 78.54,
|
||||
["CD"] = 0
|
||||
},
|
||||
[40] =
|
||||
{
|
||||
["X"] = 46.32,
|
||||
["Y"] = 78.96,
|
||||
["CD"] = 0
|
||||
},
|
||||
[41] =
|
||||
{
|
||||
["X"] = 47.29,
|
||||
["Y"] = 79.19,
|
||||
["CD"] = 0
|
||||
}
|
||||
}
|
||||
aura_env.cooldown = 91
|
||||
aura_env.wipeDistance = 15
|
||||
aura_env.angle = 0
|
||||
aura_env.hyp = 0
|
||||
aura_env.GetClosestHerb = function()
|
||||
aura_env.minID =
|
||||
{
|
||||
["X"] = 0,
|
||||
["Y"] = 0,
|
||||
["D"] = 1000,
|
||||
["ID"] = 0
|
||||
}
|
||||
local pX = GetPlayerMapPosition("player") or 0
|
||||
local pY = select(2, GetPlayerMapPosition("player")) or 0
|
||||
pX, pY = pX * 100, pY * 100
|
||||
for k,v in ipairs(aura_env.herbs) do
|
||||
local hX, hY, cd = aura_env.herbs[k]["X"], aura_env.herbs[k]["Y"], aura_env.herbs[k]["CD"]
|
||||
if cd == 0 then
|
||||
local X, Y = pX - hX, pY - hY
|
||||
local hyp = math.sqrt((math.abs(X^2)) + (math.abs(Y^2)))
|
||||
if hyp < aura_env.minID["D"] then
|
||||
aura_env.minID["X"] = hX
|
||||
aura_env.minID["Y"] = hY
|
||||
aura_env.minID["D"] = hyp
|
||||
aura_env.minID["ID"] = k
|
||||
end
|
||||
end
|
||||
end
|
||||
return aura_env.minID["ID"]
|
||||
end
|
||||
@@ -1,5 +1,5 @@
|
||||
left: (\d+\.?\d*)%; top: (\d+\.?\d*)
|
||||
|
||||
/way [a-z ]+(\d+\.?\d*) (\d+\.?\d*)
|
||||
left: (\d+\.?\d*)%; top: (\d+\.?\d*)
|
||||
left: (\d+\.?\d*)%; top: (\d+\.?\d*)
|
||||
|
||||
/way [a-z ]+(\d+\.?\d*) (\d+\.?\d*)
|
||||
left: (\d+\.?\d*)%; top: (\d+\.?\d*)
|
||||
\[\] = \n\{\n\[\"X\"\] = $1,\n\[\"Y\"\] = $2,\n\[\"CD\"\] = 0\n\},
|
||||
@@ -1,39 +1,39 @@
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_AURA_APPLIED" or se == "SPELL_AURA_APPLIED_DOSE" then
|
||||
local source = select(5, ...)
|
||||
if source == UnitName("player") then
|
||||
local spell = select(13, ...)
|
||||
local target = select(9, ...)
|
||||
if spell == "Highfather's Timekeeping" then
|
||||
if not aura_env.targets[target] then
|
||||
aura_env.targets[target] = 1
|
||||
else
|
||||
aura_env.targets[target] = aura_env.targets[target] + 1
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif se == "SPELL_AURA_REMOVED" then
|
||||
local source = select(5, ...)
|
||||
local target = select(9, ...)
|
||||
local spell = select(13, ...)
|
||||
if source == UnitName("player") and spell == "Highfather's Timekeeping" and aura_env.targets[target] then
|
||||
aura_env.targets[target] = nil
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in pairs(aura_env.targets) do
|
||||
output = output .. k .. " " .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
--COMBAT_LOG_EVENT_UNFILTERED
|
||||
function(e, ...)
|
||||
local se = select(2, ...)
|
||||
if se == "SPELL_AURA_APPLIED" or se == "SPELL_AURA_APPLIED_DOSE" then
|
||||
local source = select(5, ...)
|
||||
if source == UnitName("player") then
|
||||
local spell = select(13, ...)
|
||||
local target = select(9, ...)
|
||||
if spell == "Highfather's Timekeeping" then
|
||||
if not aura_env.targets[target] then
|
||||
aura_env.targets[target] = 1
|
||||
else
|
||||
aura_env.targets[target] = aura_env.targets[target] + 1
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
elseif se == "SPELL_AURA_REMOVED" then
|
||||
local source = select(5, ...)
|
||||
local target = select(9, ...)
|
||||
local spell = select(13, ...)
|
||||
if source == UnitName("player") and spell == "Highfather's Timekeeping" and aura_env.targets[target] then
|
||||
aura_env.targets[target] = nil
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--DISPLAY
|
||||
function()
|
||||
local output = ""
|
||||
for k,v in pairs(aura_env.targets) do
|
||||
output = output .. k .. " " .. v .. "\n"
|
||||
end
|
||||
return output
|
||||
end
|
||||
|
||||
--INIT
|
||||
aura_env.targets = {}
|
||||
@@ -1,48 +1,48 @@
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
curHealth = floor((UnitHealth("player")/UnitHealthMax("player"))*100);
|
||||
return curHealth,100,true;
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.36 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return string.format("%.f", p) .. " " .. string.format("%.f", new) .. " " .. string.format("+%.f", final_heal_relative)
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
curHealth = floor((UnitHealth("player")/UnitHealthMax("player"))*100);
|
||||
return curHealth,100,true;
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.36 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return string.format("%.f", p) .. " " .. string.format("%.f", new) .. " " .. string.format("+%.f", final_heal_relative)
|
||||
end
|
||||
@@ -1,76 +1,76 @@
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.42 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return new,100,true;
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.36 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return string.format("%.f", p) .. " " .. string.format("%.f", new) .. " " .. string.format("+%.f", final_heal_relative)
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.42 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return new,100,true;
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
local p = math.max(0, UnitHealth("player")) / math.max(1, UnitHealthMax("player")) * 100;
|
||||
local missing_health = UnitHealthMax("player") - UnitHealth("player")
|
||||
local b = UnitBuff("player", "Consecration")
|
||||
local b2 = UnitBuff("player", "Avenging Wrath")
|
||||
local b3 = UnitBuff("player", "Chain of Thrayn")
|
||||
local b4 = UnitBuff("player", "Ilterendi, Crown Jewel of Silvermoon")
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
local hotp_base_heal = 0.3 + (0.36 * 0.3)
|
||||
local healing_multiplier = 1 + (versa / 100)
|
||||
if b == "Consecration" then
|
||||
hotp_base_heal = hotp_base_heal + (0.3 * 0.3)
|
||||
end
|
||||
if b3 == "Chain of Thrayn" then
|
||||
healing_multiplier = healing_multiplier + 0.5
|
||||
end
|
||||
if b2 == "Avenging Wrath" then
|
||||
healing_multiplier = healing_multiplier + 0.35
|
||||
end
|
||||
if b4 == "Ilterendi, Crown Jewel of Silvermoon" then
|
||||
healing_multiplier = healing_multiplier + 0.2
|
||||
end
|
||||
local absolute_healing_only_hotp = missing_health * hotp_base_heal
|
||||
if healing_multiplier > 2 then healing_multiplier = 2 end
|
||||
local final_heal_absolute = absolute_healing_only_hotp * healing_multiplier
|
||||
local final_heal_relative = math.floor((final_heal_absolute / UnitHealthMax("player"))*100)
|
||||
local heal_percentage = math.floor((final_heal_absolute / missing_health) * 100)
|
||||
--print(heal_percentage)
|
||||
local new = p + final_heal_relative
|
||||
return string.format("%.f", p) .. " " .. string.format("%.f", new) .. " " .. string.format("+%.f", final_heal_relative)
|
||||
end
|
||||
|
||||
|
||||
@@ -1,79 +1,79 @@
|
||||
--HoTP 2.0
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
ICON --Trigger for scripts
|
||||
function()
|
||||
aura_env.percentageHealth = aura_env.round((UnitHealth("player") / UnitHealthMax("player")) * 100, 0)
|
||||
aura_env.currentHealth = UnitHealth("player")
|
||||
aura_env.maxHealth = UnitHealthMax("player")
|
||||
aura_env.missingHealthPercentage = aura_env.round(((UnitHealthMax("player") - UnitHealth("player")) / UnitHealthMax("player")) * 100, 2)
|
||||
aura_env.missingHealth = UnitHealthMax("player") - UnitHealth("player")
|
||||
local healingMultiplier = 1.
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * (aura_env.traitLevel * aura_env.traitEffectiveness)) + (healingMultiplier * (versa / 100))
|
||||
for k,v in pairs(aura_env.buffs) do
|
||||
if UnitBuff("player", k) ~= nil then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * v)
|
||||
end
|
||||
end
|
||||
local talent = select(10, GetTalentInfoByID(22430))
|
||||
if talent == true then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * 0.3)
|
||||
end
|
||||
aura_env.hotpRelativeHeal = 0.3 * healingMultiplier --How much % hotp heals disregarding missing health
|
||||
aura_env.hotpAbsoluteRelativeHeal = aura_env.hotpRelativeHeal * aura_env.missingHealthPercentage --How much % hp hotp will heal regarding missing health
|
||||
aura_env.hotpAbsoluteHeal = aura_env.round(aura_env.hotpRelativeHeal * aura_env.missingHealth, 0)
|
||||
aura_env.newApsoluteHealth = aura_env.round(aura_env.currentHealth + aura_env.hotpAbsoluteHeal, 0)
|
||||
aura_env.newRelativeHealth = aura_env.round(aura_env.percentageHealth + aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
--print(healingMultiplier,aura_env.hotpRelativeHeal,aura_env.hotpAbsoluteRelativeHeal,aura_env.hotpAbsoluteHeal,aura_env.newApsoluteHealth,aura_env.newRelativeHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteRelativeHeal, aura_env.newRelativeHealth, aura_env.percentageHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteHeal, aura_env.newApsoluteHealth, aura_env.currentHealth) --DEBUG
|
||||
--print(aura_env.round(aura_env.hotpRelativeHeal * 100, 0)) --% of health hotp heals
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
return aura_env.percentageHealth, 100, 1
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
return aura_env.percentageHealth .. " " .. aura_env.newRelativeHealth .. " +" .. aura_env.round(aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.traitLevel = 7
|
||||
aura_env.traitEffectiveness = 0.06
|
||||
aura_env.buffs =
|
||||
{
|
||||
["Consecration"] = 0.3,
|
||||
["Avenging Wrath"] = 0.35,
|
||||
["Chains of Thrayn"] = 0.5,
|
||||
["Ilterendi, Crown Jewel of Silvermoon"] = 0.15
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
aura_env.percentageHealth = 0
|
||||
aura_env.currentHealth = 0
|
||||
aura_env.maxHealth = 0
|
||||
aura_env.hotpRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteHeal = 0
|
||||
aura_env.newApsoluteHealth = 0
|
||||
aura_env.newRelativeHealth = 0
|
||||
aura_env.missingHealth = 0
|
||||
--HoTP 2.0
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
ICON --Trigger for scripts
|
||||
function()
|
||||
aura_env.percentageHealth = aura_env.round((UnitHealth("player") / UnitHealthMax("player")) * 100, 0)
|
||||
aura_env.currentHealth = UnitHealth("player")
|
||||
aura_env.maxHealth = UnitHealthMax("player")
|
||||
aura_env.missingHealthPercentage = aura_env.round(((UnitHealthMax("player") - UnitHealth("player")) / UnitHealthMax("player")) * 100, 2)
|
||||
aura_env.missingHealth = UnitHealthMax("player") - UnitHealth("player")
|
||||
local healingMultiplier = 1.
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * (aura_env.traitLevel * aura_env.traitEffectiveness)) + (healingMultiplier * (versa / 100))
|
||||
for k,v in pairs(aura_env.buffs) do
|
||||
if UnitBuff("player", k) ~= nil then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * v)
|
||||
end
|
||||
end
|
||||
local talent = select(10, GetTalentInfoByID(22430))
|
||||
if talent == true then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * 0.3)
|
||||
end
|
||||
aura_env.hotpRelativeHeal = 0.3 * healingMultiplier --How much % hotp heals disregarding missing health
|
||||
aura_env.hotpAbsoluteRelativeHeal = aura_env.hotpRelativeHeal * aura_env.missingHealthPercentage --How much % hp hotp will heal regarding missing health
|
||||
aura_env.hotpAbsoluteHeal = aura_env.round(aura_env.hotpRelativeHeal * aura_env.missingHealth, 0)
|
||||
aura_env.newApsoluteHealth = aura_env.round(aura_env.currentHealth + aura_env.hotpAbsoluteHeal, 0)
|
||||
aura_env.newRelativeHealth = aura_env.round(aura_env.percentageHealth + aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
--print(healingMultiplier,aura_env.hotpRelativeHeal,aura_env.hotpAbsoluteRelativeHeal,aura_env.hotpAbsoluteHeal,aura_env.newApsoluteHealth,aura_env.newRelativeHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteRelativeHeal, aura_env.newRelativeHealth, aura_env.percentageHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteHeal, aura_env.newApsoluteHealth, aura_env.currentHealth) --DEBUG
|
||||
--print(aura_env.round(aura_env.hotpRelativeHeal * 100, 0)) --% of health hotp heals
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
return aura_env.percentageHealth, 100, 1
|
||||
end
|
||||
|
||||
NAME
|
||||
function()
|
||||
return aura_env.percentageHealth .. " " .. aura_env.newRelativeHealth .. " +" .. aura_env.round(aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
end
|
||||
|
||||
DISPLAY
|
||||
function()
|
||||
return ("%.0fk / %.0fk"):format(UnitHealth("player") / 1000, UnitHealthMax("player") / 1000);
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.traitLevel = 7
|
||||
aura_env.traitEffectiveness = 0.06
|
||||
aura_env.buffs =
|
||||
{
|
||||
["Consecration"] = 0.3,
|
||||
["Avenging Wrath"] = 0.35,
|
||||
["Chains of Thrayn"] = 0.5,
|
||||
["Ilterendi, Crown Jewel of Silvermoon"] = 0.15
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
aura_env.percentageHealth = 0
|
||||
aura_env.currentHealth = 0
|
||||
aura_env.maxHealth = 0
|
||||
aura_env.hotpRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteHeal = 0
|
||||
aura_env.newApsoluteHealth = 0
|
||||
aura_env.newRelativeHealth = 0
|
||||
aura_env.missingHealth = 0
|
||||
aura_env.missingHealthPercentage = 0
|
||||
@@ -1,69 +1,69 @@
|
||||
--HoTP 2.0
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
ICON --Trigger for scripts
|
||||
function()
|
||||
aura_env.percentageHealth = aura_env.round((UnitHealth("player") / UnitHealthMax("player")) * 100, 0)
|
||||
aura_env.currentHealth = UnitHealth("player")
|
||||
aura_env.maxHealth = UnitHealthMax("player")
|
||||
aura_env.missingHealthPercentage = aura_env.round(((UnitHealthMax("player") - UnitHealth("player")) / UnitHealthMax("player")) * 100, 2)
|
||||
aura_env.missingHealth = UnitHealthMax("player") - UnitHealth("player")
|
||||
local healingMultiplier = 1.
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * (aura_env.traitLevel * aura_env.traitEffectiveness)) + (healingMultiplier * (versa / 100))
|
||||
for k,v in pairs(aura_env.buffs) do
|
||||
if UnitBuff("player", k) ~= nil then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * v)
|
||||
end
|
||||
end
|
||||
local talent = select(10, GetTalentInfoByID(22430))
|
||||
if talent == true then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * 0.3)
|
||||
end
|
||||
aura_env.hotpRelativeHeal = 0.3 * healingMultiplier --How much % hotp heals disregarding missing health
|
||||
aura_env.hotpAbsoluteRelativeHeal = aura_env.hotpRelativeHeal * aura_env.missingHealthPercentage --How much % hp hotp will heal regarding missing health
|
||||
aura_env.hotpAbsoluteHeal = aura_env.round(aura_env.hotpRelativeHeal * aura_env.missingHealth, 0)
|
||||
aura_env.newApsoluteHealth = aura_env.round(aura_env.currentHealth + aura_env.hotpAbsoluteHeal, 0)
|
||||
aura_env.newRelativeHealth = aura_env.round(aura_env.percentageHealth + aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
--print(healingMultiplier,aura_env.hotpRelativeHeal,aura_env.hotpAbsoluteRelativeHeal,aura_env.hotpAbsoluteHeal,aura_env.newApsoluteHealth,aura_env.newRelativeHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteRelativeHeal, aura_env.newRelativeHealth, aura_env.percentageHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteHeal, aura_env.newApsoluteHealth, aura_env.currentHealth) --DEBUG
|
||||
--print(aura_env.round(aura_env.hotpRelativeHeal * 100, 0)) --% of health hotp heals
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
return aura_env.newRelativeHealth, 100, 1
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.traitLevel = 7
|
||||
aura_env.traitEffectiveness = 0.06
|
||||
aura_env.buffs =
|
||||
{
|
||||
["Consecration"] = 0.3,
|
||||
["Avenging Wrath"] = 0.35,
|
||||
["Chains of Thrayn"] = 0.5,
|
||||
["Ilterendi, Crown Jewel of Silvermoon"] = 0.15
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
aura_env.percentageHealth = 0
|
||||
aura_env.currentHealth = 0
|
||||
aura_env.maxHealth = 0
|
||||
aura_env.hotpRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteHeal = 0
|
||||
aura_env.newApsoluteHealth = 0
|
||||
aura_env.newRelativeHealth = 0
|
||||
aura_env.missingHealth = 0
|
||||
--HoTP 2.0
|
||||
TRIGGER
|
||||
function()
|
||||
return true
|
||||
end
|
||||
|
||||
ICON --Trigger for scripts
|
||||
function()
|
||||
aura_env.percentageHealth = aura_env.round((UnitHealth("player") / UnitHealthMax("player")) * 100, 0)
|
||||
aura_env.currentHealth = UnitHealth("player")
|
||||
aura_env.maxHealth = UnitHealthMax("player")
|
||||
aura_env.missingHealthPercentage = aura_env.round(((UnitHealthMax("player") - UnitHealth("player")) / UnitHealthMax("player")) * 100, 2)
|
||||
aura_env.missingHealth = UnitHealthMax("player") - UnitHealth("player")
|
||||
local healingMultiplier = 1.
|
||||
local versa = GetCombatRatingBonus(CR_VERSATILITY_DAMAGE_DONE)
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * (aura_env.traitLevel * aura_env.traitEffectiveness)) + (healingMultiplier * (versa / 100))
|
||||
for k,v in pairs(aura_env.buffs) do
|
||||
if UnitBuff("player", k) ~= nil then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * v)
|
||||
end
|
||||
end
|
||||
local talent = select(10, GetTalentInfoByID(22430))
|
||||
if talent == true then
|
||||
healingMultiplier = healingMultiplier + (healingMultiplier * 0.3)
|
||||
end
|
||||
aura_env.hotpRelativeHeal = 0.3 * healingMultiplier --How much % hotp heals disregarding missing health
|
||||
aura_env.hotpAbsoluteRelativeHeal = aura_env.hotpRelativeHeal * aura_env.missingHealthPercentage --How much % hp hotp will heal regarding missing health
|
||||
aura_env.hotpAbsoluteHeal = aura_env.round(aura_env.hotpRelativeHeal * aura_env.missingHealth, 0)
|
||||
aura_env.newApsoluteHealth = aura_env.round(aura_env.currentHealth + aura_env.hotpAbsoluteHeal, 0)
|
||||
aura_env.newRelativeHealth = aura_env.round(aura_env.percentageHealth + aura_env.hotpAbsoluteRelativeHeal, 0)
|
||||
--print(healingMultiplier,aura_env.hotpRelativeHeal,aura_env.hotpAbsoluteRelativeHeal,aura_env.hotpAbsoluteHeal,aura_env.newApsoluteHealth,aura_env.newRelativeHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteRelativeHeal, aura_env.newRelativeHealth, aura_env.percentageHealth) --DEBUG
|
||||
--print(aura_env.hotpAbsoluteHeal, aura_env.newApsoluteHealth, aura_env.currentHealth) --DEBUG
|
||||
--print(aura_env.round(aura_env.hotpRelativeHeal * 100, 0)) --% of health hotp heals
|
||||
end
|
||||
|
||||
DURATION
|
||||
function()
|
||||
return aura_env.newRelativeHealth, 100, 1
|
||||
end
|
||||
|
||||
INIT
|
||||
aura_env.traitLevel = 7
|
||||
aura_env.traitEffectiveness = 0.06
|
||||
aura_env.buffs =
|
||||
{
|
||||
["Consecration"] = 0.3,
|
||||
["Avenging Wrath"] = 0.35,
|
||||
["Chains of Thrayn"] = 0.5,
|
||||
["Ilterendi, Crown Jewel of Silvermoon"] = 0.15
|
||||
}
|
||||
aura_env.round = function(var, n)
|
||||
if (n) then
|
||||
var = math.floor((var * 10^n) + 0.5) / (10^n)
|
||||
else
|
||||
var = math.floor(var+0.5)
|
||||
end
|
||||
return var
|
||||
end
|
||||
aura_env.percentageHealth = 0
|
||||
aura_env.currentHealth = 0
|
||||
aura_env.maxHealth = 0
|
||||
aura_env.hotpRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteRelativeHeal = 0
|
||||
aura_env.hotpAbsoluteHeal = 0
|
||||
aura_env.newApsoluteHealth = 0
|
||||
aura_env.newRelativeHealth = 0
|
||||
aura_env.missingHealth = 0
|
||||
aura_env.missingHealthPercentage = 0
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user