/
name = L["enablemlde"], |
desc = L["enablemldedesc"], |
get = function() |
return MLmode |
return self.MLmode |
end, |
set = function(v) |
MLmode = v |
self.MLmode = v |
end, |
disabled = "~IsActive", |
order = 3 |
</OnLeave> |
<OnClick> |
MorgDKP.db.account.defaults.dkpaward = not MorgDKP.db.account.defaults.dkpaward |
MorgDKP:ToggleDKPAward() |
MorgDKP:UpdateOptionFrame() |
</OnClick> |
</Scripts> |
Lootwinner = nil |
if self.db.account.defaults.bidwar then |
if self.db.account.defaults.justenough and #self.querytooltips[dkpitem] > 1 then |
if self.querytooltips[dkpitem][2][4] > 0 then itempoints = self.querytooltips[dkpitem][2][4] end |
if self.querytooltips[dkpitem][2][4] > 0 then |
itempoints = self.querytooltips[dkpitem][2][4] |
self.querytooltips[dkpitem][1][4] = itempoints |
end |
else itempoints = self.querytooltips[dkpitem][1][4] |
end |
self.db.account.items[dkpitem].points = itempoints |
local raidID = tbl.unitid |
local _, race = UnitRace(raidID) |
local level = UnitLevel(raidID) |
local guild = GetGuildInfo(raidID) |
local guild, _, _ = GetGuildInfo(raidID) |
local class = BC[string.upper(string.sub(tbl.class,1,1))..string.lower(string.sub(tbl.class,2,-1))] |
if name and name ~= "" and name ~= "UNKNOWN" then |
if not attendees[name] then attendees[name] = { } end |
if not name then |
if oldclass ~= "PET" and class ~= "PET" then |
if self.oldname ~= oldname then |
if name ~= UnitName("player") and not UnitCanAttack("player", "raid"..oldunitid) then |
if name ~= UnitName("player") and not UnitCanAttack("player", oldunitid) then |
if not self.db.account.raidlog[self.db.account.defaults.raidnum].leave then self.db.account.raidlog[self.db.account.defaults.raidnum].leave = { } end |
self.db.account.raidlog[self.db.account.defaults.raidnum].leave[oldname] = ttime |
DEFAULT_CHAT_FRAME:AddMessage(oldname..L["leftraid"]..ttime) |
function MorgDKPFu:OnClick() |
if MorgDKP:IsActive() then |
if IsAltKeyDown() then |
MLmode = not MLmode |
MorgDKP.MLmode = not MorgDKP.MLmode |
self:Update() |
elseif IsShiftKeyDown() then |
MorgDKP:ListDKP("All") |
local dkpstatus = L["normal"] |
local Quality = {[1] = "|c009d9d9dPoor|r", [2] = "|c00ffffffCommon|r", [3] = "|c001eff00Uncommon|r", [4] = "|c000070ddRare|r", [5] = "|c00a335eeEpic|r", [6] = "|c00ff8000Legendary|r", [7] = "|c00e6cc80Artifact|r"} |
if not inraid or not MorgDKP.db.account.defaults.mlooter then colortog = 1 end |
if MLmode then MLstatustext = L["statuson"] end |
if MorgDKP.MLmode then MLstatustext = L["statuson"] end |
if MorgDKP.db.account.defaults.relational and MorgDKP.db.account.defaults.zerosum then dkpstatus = L["enablerelationaldkp"] .. " & " .. L["enablezerosum"] |
elseif MorgDKP.db.account.defaults.relational then dkpstatus = L["enablerelationaldkp"] |
elseif MorgDKP.db.account.defaults.zerosum then dkpstatus = L["enablezerosum"] |
MorgDKP = AceLibrary("AceAddon-2.0"):new("AceEvent-2.0", "AceHook-2.1", "AceConsole-2.0","AceComm-2.0", "AceDB-2.0") |
MorgDKP.version = "6.87" |
MorgDKP.version = "6.88" |
MorgDKP.commPrefix = "MorgDKP" |
MorgDKP.commVersion = 6.2 |
self.origitempoints = { } |
self.queryneeded = nil |
self.killed = { } |
MLmode = true |
raidmembers = { } |
Raidchanged = nil |
self.hasitem = nil |
self.MLmode = true |
self.hasitem = nil |
self.requestsync = nil |
self.repliedleader = nil |
self.random = {} |
self:ConvertDB() |
self.db.account.defaults.dbupdated = 3 |
end |
if MorgDKP_Items then StaticPopup_Show ("MorgImport") end |
if MorgDKP_Items then StaticPopup_Show ("MorgImport") end |
self:ToggleDKPAward() |
if UnitInRaid("player") and self.db.account.defaults.InRaid then |
if self.db.account.defaults.dkpaward and not self:IsEventScheduled("MorgDKP_Award") then |
self:ScheduleRepeatingEvent("MorgDKP_Award", self.RecurrentReward, self.db.account.defaults.dkpsched, self ) |
end |
if not self:IsEventScheduled("MorgDKP_Attendance") then self:ScheduleRepeatingEvent("MorgDKP_Attendance", self.CheckAttendance, 60, self ) end |
end |
if self.db.account.defaults.restoreautozone then |
elseif self:IsEventRegistered("PLAYER_DEAD") then self:UnregisterEvent("PLAYER_DEAD") end |
end |
function MorgDKP:ToggleDKPAward() |
local ON = self:IsEventScheduled("MorgDKP_Award") |
if self.db.account.defaults.InRaid and self.db.account.defaults.dkpaward then |
if not ON then self:ScheduleRepeatingEvent("MorgDKP_Award", self.RecurrentReward, self.db.account.defaults.dkpsched, self ) end |
self:Print("AWARD ON") |
return |
end |
if ON then self:CancelScheduledEvent("MorgDKP_Award") self:Print("AWARD OFF") end |
end |
function MorgDKP:IsRaided() |
if not UnitInRaid("player") then |
DEFAULT_CHAT_FRAME:AddMessage(L["needraid"]) |
function MorgDKP:GiveBOE(id, link) |
if not self.db.account.items[id] then DEFAULT_CHAT_FRAME:AddMessage(L["noitem"]); return end |
if not charstring then DEFAULT_CHAT_FRAME:AddMessage(L["validname"]) return end |
if MLmode and (charstring == self.db.account.defaults.mlooter or charstring == self.db.account.defaults.disenchanter) then |
if self.MLmode and (charstring == self.db.account.defaults.mlooter or charstring == self.db.account.defaults.disenchanter) then |
DEFAULT_CHAT_FRAME:AddMessage(L["nolootrec"]) |
return |
end |
itemCount = 1 |
end |
-- Make sure there is a link |
if MLmode and (sPlayer == self.db.account.defaults.mlooter or sPlayer == self.db.account.defaults.disenchanter) and not self.given then return |
if self.MLmode and (sPlayer == self.db.account.defaults.mlooter or sPlayer == self.db.account.defaults.disenchanter) and not self.given then return |
else self.given = nil end |
if not MorgDKP:CheckRaid(sPlayer) then return end |
if sLink and sPlayer then |
## Interface: 20400 |
## Author: Morg & Fryguy |
## Title: MorgDKP - |cffffffffv|r|cff00ff006.87|r |
## Title: MorgDKP - |cffffffffv|r|cff00ff006.88|r |
## Notes: Inspects all members of raid and saves in database, as well as lists people's dkp values |
## DefaultState: 1 |
## SavedVariables: MorgDKPDB, MorgDKPFuBarDB |
DEFAULT_CHAT_FRAME:AddMessage(L["badformat"]) |
return |
end |
local update = self:GetServerTime() |
local POOL = self:GetPool(self.raidid) |
local killtime = date("%m/%d/%y %H:%M:%S") |
table.insert(self.db.account.raidlog[self.raidid].bosskills, { |
["name"] = name, |
["note"] = note, |
["time"] = update, |
["time"] = killtime, |
["attendees"] = attendees, |
["value"] = value, |
["trash"] = 0}) |
DEFAULT_CHAT_FRAME:AddMessage(name..L["bosskill"]..update.." and "..tostring(#attendees)..L["attadded"]) |
DEFAULT_CHAT_FRAME:AddMessage(name..L["bosskill"]..killtime.." and "..tostring(#attendees)..L["attadded"]) |
if value ~= 0 then self:AwardDKP(nil, value, POOL, attendees) end |
self:ClearRaidFrame() |
self:ChangeRaidsFrame(self.raidid) |
end |
function MorgDKP:DeleteCurrentDKPChange() |
self:AwardDKP(0, self.db.account.raidlog.dkpevents[self.editpool][self.editevent].value, self.editpool, self.db.account.raidlog.dkpevents[self.editpool][self.editevent].members) |
table.remove(self.db.account.raidlog.dkpevents[self.editpool], self.editevent) |
MorgDKP_RaidsPage3Members:Hide() |
MorgDKP_RaidsPage3Value:SetText("0") |
function MorgDKP:AddDKPChange() |
if self.addtype == "individual" then return end |
local attendees = self:AttendtoArray(MorgDKP_RaidsPage3Members) |
local value = MorgDKP_RaidsPage3Value:GetText() |
self:AddMemberData(self.addtype, attendees) |
MorgDKP_RaidsPage3Members:SetText("") |
self:AwardDKP(nil, value, self.editpool, attendees) |
self:ChangeDKPFrame(self.editpool) |
end |