vanilla-wow-addons – Rev 1
?pathlinks?
--[[
Banknon
Combines the player's bank into a single frame
--]]
--[[ Loading Functions ]]--
function Banknon_OnLoad()
--Create the confirmation dialog when purchasing a bank slot
StaticPopupDialogs["CONFIRM_BUY_BANK_SLOT_BANKNON"] = {
text = TEXT(CONFIRM_BUY_BANK_SLOT),
button1 = TEXT(YES),
button2 = TEXT(NO),
OnAccept = function()
PurchaseSlot();
end,
OnShow = function()
MoneyFrame_Update(this:GetName().."MoneyFrame", GetBankSlotCost(GetNumBankSlots()) );
end,
hasMoneyFrame = 1,
timeout = 0,
hideOnEscape = 1,
};
this:RegisterEvent("ADDON_LOADED");
end
--[[ Event Handler ]]--
function Banknon_OnEvent(event)
if ( event == "PLAYER_MONEY" or event == "PLAYERBANKBAGSLOTS_CHANGED") then
if(Banknon:IsShown() ) then
Banknon_UpdateSlotCost();
end
elseif ( event == "BANKFRAME_OPENED") then
Banknon_UpdatePurchaseButtonVis();
elseif ( event == "BANKFRAME_CLOSED") then
Banknon_UpdatePurchaseButtonVis();
elseif ( event == "ADDON_LOADED" and arg1 == "Banknon") then
Banknon:UnregisterEvent("ADDON_LOADED");
Banknon_Load();
end
end
function Banknon_Load()
BagnonFrame_Load(Banknon, {-1, 5, 6, 7, 8, 9, 10}, BAGNON_BANK_TITLE);
if(CT_BankFrame_AcceptFrame) then
CT_BankFrame_AcceptFrame:SetParent(Banknon);
end
Banknon:RegisterEvent("PLAYER_MONEY");
Banknon:RegisterEvent("PLAYERBANKBAGSLOTS_CHANGED");
Banknon:RegisterEvent("BANKFRAME_OPENED");
Banknon:RegisterEvent("BANKFRAME_CLOSED");
Banknon_UpdateSlotCost();
end
--[[ UI Functions ]]--
--OnShow
function Banknon_OnShow()
Banknon_UpdatePurchaseButtonVis();
PlaySound("igMainMenuOpen");
end
--OnHide
function Banknon_OnHide()
PlaySound("igMainMenuClose");
CloseBankFrame();
end
--[[ Bank Slots functions ]]--
--Show/Hide the bag frame
function Banknon_ToggleSlots()
if( not BanknonBags:IsShown() ) then
BanknonBags:Show();
BagnonSets["Banknon"].bagsShown = 1;
this:SetText(BAGNON_HIDEBAGS);
else
BanknonBags:Hide();
BagnonSets["Banknon"].bagsShown = nil;
this:SetText(BAGNON_SHOWBAGS);
end
Banknon_UpdatePurchaseButtonVis(not BagnonSets["Banknon"].bagsShown);
end
function Banknon_UpdateSlotCost()
local cost = GetBankSlotCost( GetNumBankSlots() );
if( GetMoney() >= cost ) then
SetMoneyFrameColor("BanknonCost", 1.0, 1.0, 1.0);
else
SetMoneyFrameColor("BanknonCost", 1.0, 0.1, 0.1)
end
MoneyFrame_Update("BanknonCost", cost);
Banknon_UpdatePurchaseButtonVis();
end
--yes, magic numbers are bad
function Banknon_UpdatePurchaseButtonVis(hide)
if( BanknonBags:IsVisible() or hide) then
local _, full = GetNumBankSlots();
if( not full and bgn_atBank and (Banknon.player and Banknon.player == UnitName("player") ) and not hide ) then
BanknonPurchase:Show();
BanknonCost:Show();
BanknonBags:SetHeight(72);
else
BanknonPurchase:Hide();
BanknonCost:Hide();
BanknonBags:SetHeight(46);
end
end
BagnonFrame_TrimToSize(Banknon);
end
Generated by GNU Enscript 1.6.5.90.