Release OEVG Cursive 1.6 with ClassicAPI tracking and appearance options
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
local callbacks = {}
|
||||
local auras = {}
|
||||
local removed = 0
|
||||
local pending = {}
|
||||
Cursive = { nampower = true, db = {profile = {enabled=true,useclassicapi=true}},
|
||||
core = {addGuid=function() end},
|
||||
curses = {trackedCurseIds={[172]={name="corruption",rank=1}},guids={},pendingCast=pending} }
|
||||
function Cursive.curses:ApplyCurse(id,guid,start,duration)
|
||||
self.pendingCast = {}
|
||||
self.guids[guid] = self.guids[guid] or {}
|
||||
self.guids[guid].corruption = {currentPlayer=true,start=start,duration=duration}
|
||||
end
|
||||
function Cursive.curses:RemoveCurse(guid,name) self.guids[guid][name]=nil; removed=removed+1 end
|
||||
function CreateFrame() return {RegisterEvent=function() end,SetScript=function(self,key,fn) callbacks[key]=fn end} end
|
||||
function UnitExists(unit) return true,"mob" end
|
||||
function UnitIsUnit(a,b) return a==b end
|
||||
function GetTime() return 100 end
|
||||
C_UnitAuras = {
|
||||
GetAuraSlots=function(unit,filter,a,b,out) for i=1,table.getn(auras) do out[i]=i end; return nil,table.getn(auras) end,
|
||||
UnitAuraBySlot=function(unit,slot) return unpack(auras[slot]) end,
|
||||
GetAuraDataByAuraInstanceID=function() end,
|
||||
}
|
||||
dofile("classicapi.lua")
|
||||
auras[1]={"Corruption","icon",1,"Magic",18,118,"player",false,false,172}
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
assert(Cursive.curses.guids.mob.corruption.start==100)
|
||||
auras[1][6]=125
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
assert(Cursive.curses.guids.mob.corruption.start==107)
|
||||
auras={}
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
assert(removed==1)
|
||||
Cursive.curses.guids.mob.corruption={currentPlayer=true}
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
assert(Cursive.curses.guids.mob.corruption)
|
||||
auras[1]={"Corruption","icon",1,"Magic",18,118,"party1",false,false,172}
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
assert(not Cursive.curses.guids.mob.corruption.classicConfirmed)
|
||||
C_UnitAuras=nil
|
||||
Cursive.ReconcileClassicAuras("target")
|
||||
print("ClassicAPI reconciliation tests passed")
|
||||
Reference in New Issue
Block a user