lotrointerface.com
Search Downloads

LoTROInterface SVN KragenBars

[/] [trunk/] [KragenPlugs/] [KragenBars/] [SkillBar.lua] - Blame information for rev 19

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 Kragenwar-3044
import "Turbine.UI";
2 Kragenwar-3044
import "Turbine.UI.Lotro";
3 Kragenwar-3044
import "KragenPlugs.Utils";
4 Kragenwar-3044
import "KragenPlugs.Utils.Extensions";
5 Kragenwar-3044
import "KragenPlugs.KragenBars";
6 Kragenwar-3044
 
7 Kragenwar-3044
SkillBar = class ( KragenPlugs.Utils.Extensions.SimpleWindow );
8 Kragenwar-3044
 
9 Kragenwar-3044
function SkillBar:Constructor ( parent, x, y, width, height, active, exclusive )
10 Kragenwar-3044
        KragenPlugs.Utils.Extensions.SimpleWindow.Constructor( self );
11 Kragenwar-3044
 
12 Kragenwar-3044
        -- declare variables
13 Kragenwar-3044
        self.parent         = parent;
14 Kragenwar-3044
    self.x              = x;
15 Kragenwar-3044
        self.y              = y;
16 Kragenwar-3044
        self.width                      = width;
17 Kragenwar-3044
        self.height         = height;
18 Kragenwar-3044
        self.exclusive      = exclusive;
19 Kragenwar-3044
        self.state          = false;
20 Kragenwar-3044
        self.effectid       = 0;
21 Kragenwar-3044
 
22 Kragenwar-3044
    -- set properties
23 Kragenwar-3044
        self:SetParent( parent );
24 Kragenwar-3044
        self:SetVisible(true);
25 Kragenwar-3044
        self:SetPosition( (x - 1) * 35, (y - 1) * 35 );
26 Kragenwar-3044
        self:SetSize( width * 35, height * 35 );
27 Kragenwar-3044
 
28 Kragenwar-3044
        if (parent.rotate == 1) then
29 Kragenwar-3044
                self:RotateBar();
30 Kragenwar-3044
        end
31 Kragenwar-3044
end
32 Kragenwar-3044
 
33 Kragenwar-3044
-- SET STATE (To be used to track the effect state of buffs/debuffs)
34 Kragenwar-3044
function SkillBar:SetState( state, id )
35 Kragenwar-3044
        -- update state and effect id
36 Kragenwar-3044
        if ( state ) then
37 Kragenwar-3044
                self.state = true;
38 Kragenwar-3044
                self.effectid = id;
39 Kragenwar-3044
        else
40 Kragenwar-3044
                if ( id == self.effectid ) then
41 Kragenwar-3044
                    self.state = false;
42 Kragenwar-3044
                        self.effectid = 0;
43 Kragenwar-3044
                end
44 Kragenwar-3044
 
45 Kragenwar-3044
        end
46 Kragenwar-3044
end
47 Kragenwar-3044
 
48 Kragenwar-3044
-- ROTATE BAR
49 Kragenwar-3044
function SkillBar:RotateBar()
50 Kragenwar-3044
        local newwidth = self.height;
51 Kragenwar-3044
        local newheight = self.width;
52 Kragenwar-3044
        self:SetSize( newwidth * 35, newheight * 35 );
53 Kragenwar-3044
 
54 Kragenwar-3044
        self.width = newwidth;
55 Kragenwar-3044
        self.height = newheight;
56 Kragenwar-3044
 
57 Kragenwar-3044
        local newx = self.y;
58 Kragenwar-3044
        local newy = self.x;
59 Kragenwar-3044
 
60 Kragenwar-3044
        self:SetPosition( (newx - 1) * 35, (newy - 1) * 35 );
61 Kragenwar-3044
        self.x = newx;
62 Kragenwar-3044
        self.y = newy;
63 Kragenwar-3044
 
64 Kragenwar-3044
        if (self.quickslots ~= nil) then
65 Kragenwar-3044
                for k,v in pairs(self.quickslots) do
66 Kragenwar-3044
                        local blankpos = { };
67 Kragenwar-3044
                        blankpos[1], blankpos[2] = v:GetPosition();
68 Kragenwar-3044
                        v:SetPosition(blankpos[2], blankpos[1]);
69 Kragenwar-3044
                end
70 Kragenwar-3044
        end
71 Kragenwar-3044
end

All times are GMT -5. The time now is 09:15 AM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | ESOUI | LoTROInterface | MMOUI | Swtorui