view PartyInfo.lua @ 11:d2cbfe498c4d

first beta
author Jay Bird <a4blank@yahoo.com>
date Sat, 04 Dec 2010 05:53:52 +0300
parents
children
line wrap: on
line source

PartyInfo = class()

function PartyInfo:init()
    self.players = {}
    self.have_party = false
    self.is_in_raid = false
    self.is_in_party = false
end

function PartyInfo:Update()
    self.players = {}
    self.raidCount = GetNumRaidMembers()
    if self.raidCount == 0 then
        self.is_in_raid = false
    else
        self.have_party = true
        self.is_in_raid = true
        self.is_in_party = false
        self:LoadRaidMembers()
        table.sort(self.players)
        return
    end

    self.partyCount = GetNumPartyMembers()
    if self.partyCount == 0 then
        self.is_in_party = false
    else
        self.have_party = true
        self.is_in_party = true
        self:LoadPartyMembers()
        table.sort(self.players)
        return
    end

    self.have_party = false
end

function PartyInfo:LoadRaidMembers()
    local name
    for i=1, self.raidCount do
        name = UnitName("raid" .. i)
        table.insert(self.players, name)
    end
end

function PartyInfo:LoadPartyMembers()
    local name = UnitName("player")
    table.insert(self.players, name)
    for i=1, self.partyCount do
        name = UnitName("party" .. i)
        table.insert(self.players, name)
    end
end

function PartyInfo:GetUsers()
    return self.players
end