598 lines
18 KiB
Lua
598 lines
18 KiB
Lua
MAX_ARENA_TEAMS = 3;
|
|
MAX_ARENA_TEAM_MEMBERS = 10;
|
|
MAX_ARENA_TEAM_NAME_WIDTH = 310;
|
|
|
|
function PVPFrame_OnLoad(self)
|
|
PVPFrameLine1:SetAlpha(0.3);
|
|
PVPHonorKillsLabel:SetVertexColor(0.6, 0.6, 0.6);
|
|
PVPHonorHonorLabel:SetVertexColor(0.6, 0.6, 0.6);
|
|
PVPHonorTodayLabel:SetVertexColor(0.6, 0.6, 0.6);
|
|
PVPHonorYesterdayLabel:SetVertexColor(0.6, 0.6, 0.6);
|
|
PVPHonorLifetimeLabel:SetVertexColor(0.6, 0.6, 0.6);
|
|
self:RegisterEvent("PLAYER_ENTERING_WORLD");
|
|
self:RegisterEvent("ARENA_TEAM_UPDATE");
|
|
self:RegisterEvent("ARENA_TEAM_ROSTER_UPDATE");
|
|
self:RegisterEvent("PLAYER_PVP_KILLS_CHANGED");
|
|
self:RegisterEvent("PLAYER_PVP_RANK_CHANGED");
|
|
self:RegisterEvent("HONOR_CURRENCY_UPDATE");
|
|
--self:RegisterEvent("ARENA_SEASON_WORLD_STATE");
|
|
end
|
|
|
|
function PVPFrame_OnEvent(self, event, ...)
|
|
local arg1 = ...;
|
|
if ( event == "PLAYER_ENTERING_WORLD" ) then
|
|
-- PVPFrame.season = GetCurrentArenaSeason();
|
|
PVPFrame_Update();
|
|
PVPHonor_Update();
|
|
elseif ( event == "PLAYER_PVP_KILLS_CHANGED" or event == "PLAYER_PVP_RANK_CHANGED") then
|
|
PVPHonor_Update();
|
|
elseif ( event == "ARENA_TEAM_UPDATE" ) then
|
|
PVPFrame_Update();
|
|
if ( PVPTeamDetails:IsShown() ) then
|
|
local team = GetArenaTeam(PVPTeamDetails.team);
|
|
if ( not team ) then
|
|
PVPTeamDetails:Hide();
|
|
else
|
|
PVPTeamDetails_Update(PVPTeamDetails.team); -- team games played/won are shown in the detail frame
|
|
end
|
|
end
|
|
--[[ elseif ( event == "ARENA_SEASON_WORLD_STATE" ) then
|
|
PVPFrame.season = GetCurrentArenaSeason();
|
|
PVPFrame_Update(); ]]
|
|
elseif ( event == "HONOR_CURRENCY_UPDATE" ) then
|
|
PVPHonor_Update();
|
|
elseif ( event == "ARENA_TEAM_ROSTER_UPDATE" ) then
|
|
if ( arg1 ) then
|
|
if ( PVPTeamDetails:IsShown() ) then
|
|
ArenaTeamRoster(PVPTeamDetails.team);
|
|
end
|
|
elseif ( PVPTeamDetails.team ) then
|
|
PVPTeamDetails_Update(PVPTeamDetails.team);
|
|
PVPFrame_Update();
|
|
end
|
|
end
|
|
end
|
|
|
|
function PVPFrame_OnShow()
|
|
PVPFrame_SetFaction();
|
|
PVPFrame_Update();
|
|
PVPMicroButton_SetPushed();
|
|
UpdateMicroButtons();
|
|
SetPortraitTexture(PVPFramePortrait, "player");
|
|
PlaySound("igCharacterInfoOpen");
|
|
end
|
|
|
|
function PVPFrame_OnHide()
|
|
PVPTeamDetails:Hide();
|
|
PVPFrame_SetJustBG(false);
|
|
PVPMicroButton_SetNormal();
|
|
UpdateMicroButtons();
|
|
PlaySound("igCharacterInfoClose");
|
|
end
|
|
|
|
function PVPFrame_SetFaction()
|
|
local factionGroup = UnitFactionGroup("player");
|
|
if ( factionGroup ) then
|
|
PVPFrameHonorIcon:SetTexture("Interface\\TargetingFrame\\UI-PVP-"..factionGroup);
|
|
PVPFrameHonorIcon:Show();
|
|
end
|
|
end
|
|
|
|
function PVPFrame_Update()
|
|
for i=1, MAX_ARENA_TEAMS do
|
|
GetArenaTeam(i);
|
|
end
|
|
PVPHonor_Update();
|
|
PVPTeam_Update();
|
|
|
|
if ( GetCurrentArenaSeason() == 0 ) then --We're in an off-season.
|
|
PVPFrame_SetToOffSeason();
|
|
elseif ( PVPFrameOffSeason:IsShown() ) then
|
|
PVPFrame_SetToInSeason();
|
|
end
|
|
end
|
|
|
|
function PVPTeam_Update()
|
|
-- Display Elements
|
|
local button, buttonName, highlight, data, standard, emblem, border;
|
|
-- Data Elements
|
|
local teamName, teamSize, teamRating, teamPlayed, teamWins, teamLoss, seasonTeamPlayed, seasonTeamWins, playerPlayed, seasonPlayerPlayed, playerPlayedPct, teamRank, playerRating;
|
|
local played, wins, loss;
|
|
local background = {};
|
|
local borderColor = {};
|
|
local emblemColor = {};
|
|
local ARENA_TEAMS = {};
|
|
ARENA_TEAMS[1] = {size = 2};
|
|
ARENA_TEAMS[2] = {size = 3};
|
|
ARENA_TEAMS[3] = {size = 5};
|
|
|
|
-- Sort teams by size
|
|
|
|
local count = 0;
|
|
local buttonIndex = 0;
|
|
for index, value in pairs(ARENA_TEAMS) do
|
|
for i=1, MAX_ARENA_TEAMS do
|
|
teamName, teamSize = GetArenaTeam(i);
|
|
if ( value.size == teamSize ) then
|
|
value.index = i;
|
|
end
|
|
end
|
|
end
|
|
|
|
-- fill out data
|
|
for index, value in pairs(ARENA_TEAMS) do
|
|
buttonIndex = buttonIndex + 1;
|
|
button = _G["PVPTeam"..buttonIndex];
|
|
if ( value.index ) then
|
|
-- Pull Values
|
|
teamName, teamSize, teamRating, teamPlayed, teamWins, seasonTeamPlayed, seasonTeamWins, playerPlayed, seasonPlayerPlayed, teamRank, playerRating, background.r, background.g, background.b, emblem, emblemColor.r, emblemColor.g, emblemColor.b, border, borderColor.r, borderColor.g, borderColor.b = GetArenaTeam(value.index);
|
|
|
|
-- Set button elements to variables
|
|
buttonName = "PVPTeam"..buttonIndex;
|
|
data = buttonName.."Data";
|
|
standard = buttonName.."Standard";
|
|
|
|
button:SetID(value.index);
|
|
|
|
|
|
if ( PVPFrame.seasonStats ) then
|
|
_G[data.."TypeLabel"]:SetText(ARENA_THIS_SEASON);
|
|
PVPFrameToggleButton:SetText(ARENA_THIS_WEEK_TOGGLE);
|
|
played = seasonTeamPlayed;
|
|
wins = seasonTeamWins;
|
|
playerPlayed = seasonPlayerPlayed;
|
|
else
|
|
_G[data.."TypeLabel"]:SetText(ARENA_THIS_WEEK);
|
|
PVPFrameToggleButton:SetText(ARENA_THIS_SEASON_TOGGLE);
|
|
played = teamPlayed;
|
|
wins = teamWins;
|
|
playerPlayed = playerPlayed;
|
|
end
|
|
|
|
loss = played - wins;
|
|
if ( played ~= 0 ) then
|
|
playerPlayedPct = floor( ( playerPlayed / played ) * 100 );
|
|
else
|
|
playerPlayedPct = floor( ( playerPlayed / 1 ) * 100 );
|
|
end
|
|
|
|
-- Populate Data
|
|
_G[data.."Name"]:SetText(teamName);
|
|
_G[data.."Rating"]:SetText(teamRating);
|
|
_G[data.."Games"]:SetText(played);
|
|
_G[data.."Wins"]:SetText(wins);
|
|
_G[data.."Loss"]:SetText(loss);
|
|
|
|
if ( PVPFrame.seasonStats ) then
|
|
_G[data.."Played"]:SetText(playerRating);
|
|
_G[data.."Played"]:SetVertexColor(1.0, 1.0, 1.0);
|
|
_G[data.."PlayedLabel"]:SetText(PVP_YOUR_RATING);
|
|
else
|
|
-- played %
|
|
if ( playerPlayedPct < 10 ) then
|
|
_G[data.."Played"]:SetVertexColor(1.0, 0, 0);
|
|
else
|
|
_G[data.."Played"]:SetVertexColor(1.0, 1.0, 1.0);
|
|
end
|
|
-- FIXME: Turn this into a localized format string
|
|
playerPlayedPct = format("%d", playerPlayedPct);
|
|
_G[data.."Played"]:SetText(playerPlayed.." ("..playerPlayedPct.."%)");
|
|
_G[data.."PlayedLabel"]:SetText(PLAYED);
|
|
end
|
|
|
|
|
|
-- Set TeamSize Banner
|
|
_G[standard.."Banner"]:SetTexture("Interface\\PVPFrame\\PVP-Banner-"..teamSize);
|
|
_G[standard.."Banner"]:SetVertexColor(background.r, background.g, background.b);
|
|
_G[standard.."Border"]:SetVertexColor(borderColor.r, borderColor.g, borderColor.b);
|
|
_G[standard.."Emblem"]:SetVertexColor(emblemColor.r, emblemColor.g, emblemColor.b);
|
|
if ( border ~= -1 ) then
|
|
_G[standard.."Border"]:SetTexture("Interface\\PVPFrame\\PVP-Banner-"..teamSize.."-Border-"..border);
|
|
end
|
|
if ( emblem ~= -1 ) then
|
|
_G[standard.."Emblem"]:SetTexture("Interface\\PVPFrame\\Icons\\PVP-Banner-Emblem-"..emblem);
|
|
end
|
|
|
|
-- Set visual elements
|
|
_G[data]:Show();
|
|
button:SetAlpha(1);
|
|
_G[buttonName.."Highlight"]:SetAlpha(1);
|
|
_G[buttonName.."Highlight"]:SetBackdropBorderColor(1.0, 0.82, 0);
|
|
_G[standard]:SetAlpha(1);
|
|
_G[standard.."Border"]:Show();
|
|
_G[standard.."Emblem"]:Show();
|
|
_G[buttonName.."Background"]:SetVertexColor(0, 0, 0);
|
|
_G[buttonName.."Background"]:SetAlpha(1);
|
|
_G[buttonName.."TeamType"]:Hide();
|
|
else
|
|
-- Set button elements to variables
|
|
buttonName = "PVPTeam"..buttonIndex;
|
|
data = buttonName.."Data";
|
|
|
|
button:SetID(0);
|
|
|
|
-- Set standard type
|
|
local standardBanner = _G[buttonName.."StandardBanner"];
|
|
standardBanner:SetTexture("Interface\\PVPFrame\\PVP-Banner-"..value.size);
|
|
standardBanner:SetVertexColor(1, 1, 1);
|
|
|
|
-- Hide or Show items
|
|
button:SetAlpha(0.4);
|
|
_G[data]:Hide();
|
|
_G[buttonName.."Background"]:SetVertexColor(0, 0, 0);
|
|
_G[buttonName.."Standard"]:SetAlpha(0.1);
|
|
_G[buttonName.."StandardBorder"]:Hide();
|
|
_G[buttonName.."StandardEmblem"]:Hide();
|
|
_G[buttonName.."TeamType"]:SetFormattedText(PVP_TEAMSIZE, value.size, value.size);
|
|
_G[buttonName.."TeamType"]:Show(); end
|
|
count = count +1;
|
|
end
|
|
if ( count == 3 ) then
|
|
PVPFrameToggleButton:Hide();
|
|
else
|
|
PVPFrameToggleButton:Show();
|
|
end
|
|
|
|
end
|
|
|
|
function PVPTeam_OnEnter(self)
|
|
if ( GetArenaTeam(self:GetID() ) ) then
|
|
_G[self:GetName().."Highlight"]:Show();
|
|
GameTooltip_AddNewbieTip(self, ARENA_TEAM, 1.0, 1.0, 1.0, CLICK_FOR_DETAILS, 1);
|
|
else
|
|
GameTooltip_AddNewbieTip(self, ARENA_TEAM, 1.0, 1.0, 1.0, ARENA_TEAM_LEAD_IN, 1);
|
|
end
|
|
end
|
|
|
|
function PVPTeam_OnLeave(self)
|
|
_G[self:GetName().."Highlight"]:Hide();
|
|
GameTooltip:Hide();
|
|
end
|
|
|
|
function PVPTeamDetails_OnShow()
|
|
PlaySound("igSpellBookOpen");
|
|
end
|
|
|
|
function PVPTeamDetails_OnHide()
|
|
CloseArenaTeamRoster();
|
|
PlaySound("igSpellBookClose");
|
|
end
|
|
|
|
function PVPTeamDetails_Update(id)
|
|
local numMembers = GetNumArenaTeamMembers(id, 1);
|
|
local name, rank, level, class, online, played, win, loss, seasonPlayed, seasonWin, seasonLoss, rating;
|
|
local teamName, teamSize, teamRating, teamPlayed, teamWins, seasonTeamPlayed, seasonTeamWins, playerPlayed, seasonPlayerPlayed, teamRank, personalRating = GetArenaTeam(id);
|
|
local button;
|
|
local teamIndex;
|
|
|
|
-- Display General Team Stats
|
|
PVPTeamDetailsName:SetText(teamName);
|
|
PVPTeamDetailsSize:SetFormattedText(PVP_TEAMSIZE, teamSize, teamSize);
|
|
PVPTeamDetailsRank:SetText(teamRank);
|
|
PVPTeamDetailsRating:SetText(teamRating);
|
|
|
|
-- Tidy up team name display if it's too long - mostly for CN
|
|
PVPTeamDetailsName:SetWidth(0);
|
|
if ( PVPTeamDetailsName:GetWidth() > MAX_ARENA_TEAM_NAME_WIDTH ) then
|
|
PVPTeamDetailsName:SetWidth(MAX_ARENA_TEAM_NAME_WIDTH);
|
|
end
|
|
|
|
-- Display General Team Data
|
|
if ( PVPTeamDetails.season ) then
|
|
PVPTeamDetailsFrameColumnHeader3.sortType = "seasonplayed";
|
|
PVPTeamDetailsFrameColumnHeader4.sortType = "seasonwon";
|
|
PVPTeamDetailsGames:SetText(seasonTeamPlayed);
|
|
PVPTeamDetailsWins:SetText(seasonTeamWins);
|
|
PVPTeamDetailsLoss:SetText(seasonTeamPlayed - seasonTeamWins);
|
|
PVPTeamDetailsStatsType:SetText(strupper(ARENA_THIS_SEASON));
|
|
PVPTeamDetailsToggleButton:SetText(ARENA_THIS_WEEK_TOGGLE);
|
|
else
|
|
PVPTeamDetailsFrameColumnHeader3.sortType = "played";
|
|
PVPTeamDetailsFrameColumnHeader4.sortType = "won";
|
|
PVPTeamDetailsGames:SetText(teamPlayed);
|
|
PVPTeamDetailsWins:SetText(teamWins);
|
|
PVPTeamDetailsLoss:SetText(teamPlayed - teamWins);
|
|
PVPTeamDetailsStatsType:SetText(strupper(ARENA_THIS_WEEK));
|
|
PVPTeamDetailsToggleButton:SetText(ARENA_THIS_SEASON_TOGGLE);
|
|
end
|
|
|
|
local nameText, classText, playedText, winLossWin, winLossLoss, ratingText;
|
|
local nameButton, classButton, playedButton, winLossButton;
|
|
-- Display Team Member Specific Info
|
|
local playedValue, winValue, lossValue, playedPct;
|
|
for i=1, MAX_ARENA_TEAM_MEMBERS, 1 do
|
|
button = _G["PVPTeamDetailsButton"..i];
|
|
if ( i > numMembers ) then
|
|
button:Hide();
|
|
else
|
|
|
|
button.teamIndex = i;
|
|
-- Get Data
|
|
name, rank, level, class, online, played, win, seasonPlayed, seasonWin, rating = GetArenaTeamRosterInfo(id, i);
|
|
loss = played - win;
|
|
seasonLoss = seasonPlayed - seasonWin;
|
|
if ( class ) then
|
|
button.tooltip = LEVEL.." "..level.." "..class;
|
|
else
|
|
button.tooltip = LEVEL.." "..level;
|
|
end
|
|
|
|
-- Populate Data into the display, season or this week
|
|
if ( PVPTeamDetails.season ) then
|
|
playedValue = seasonPlayed;
|
|
winValue = seasonWin;
|
|
lossValue = seasonLoss;
|
|
teamPlayed = seasonTeamPlayed;
|
|
else
|
|
playedValue = played;
|
|
winValue = win;
|
|
lossValue = loss;
|
|
teamPlayed = teamPlayed;
|
|
end
|
|
|
|
if ( teamPlayed ~= 0 ) then
|
|
playedPct = floor( ( playedValue / teamPlayed ) * 100 );
|
|
else
|
|
playedPct = floor( (playedValue / 1 ) * 100 );
|
|
end
|
|
|
|
if ( playedPct < 10 ) then
|
|
_G["PVPTeamDetailsButton"..i.."PlayedText"]:SetVertexColor(1.0, 0, 0);
|
|
else
|
|
_G["PVPTeamDetailsButton"..i.."PlayedText"]:SetVertexColor(1.0, 1.0, 1.0);
|
|
end
|
|
|
|
playedPct = format("%d", playedPct);
|
|
|
|
_G["PVPTeamDetailsButton"..i.."Played"].tooltip = playedPct.."%";
|
|
|
|
nameText = _G["PVPTeamDetailsButton"..i.."NameText"];
|
|
classText = _G["PVPTeamDetailsButton"..i.."ClassText"];
|
|
playedText = _G["PVPTeamDetailsButton"..i.."PlayedText"]
|
|
winLossWin = _G["PVPTeamDetailsButton"..i.."WinLossWin"];
|
|
winLossLoss = _G["PVPTeamDetailsButton"..i.."WinLossLoss"];
|
|
ratingText = _G["PVPTeamDetailsButton"..i.."RatingText"];
|
|
|
|
--- Not needed after Arena Season 3 change.
|
|
nameButton = _G["PVPTeamDetailsButton"..i.."Name"];
|
|
classButton = _G["PVPTeamDetailsButton"..i.."Class"];
|
|
playedButton = _G["PVPTeamDetailsButton"..i.."Played"]
|
|
winLossButton = _G["PVPTeamDetailsButton"..i.."WinLoss"];
|
|
|
|
nameText:SetText(name);
|
|
classText:SetText(class);
|
|
playedText:SetText(playedValue);
|
|
winLossWin:SetText(winValue)
|
|
winLossLoss:SetText(lossValue);
|
|
ratingText:SetText(rating);
|
|
|
|
-- Color Entries based on Online status
|
|
local r, g, b;
|
|
if ( online ) then
|
|
if ( rank > 0 ) then
|
|
r = 1.0;
|
|
g = 1.0;
|
|
b = 1.0;
|
|
else
|
|
r = 1.0;
|
|
g = 0.82;
|
|
b = 0.0;
|
|
end
|
|
else
|
|
r = 0.5;
|
|
g = 0.5;
|
|
b = 0.5;
|
|
end
|
|
|
|
nameText:SetTextColor(r, g, b);
|
|
classText:SetTextColor(r, g, b);
|
|
playedText:SetTextColor(r, g, b);
|
|
winLossWin:SetTextColor(r, g, b);
|
|
_G["PVPTeamDetailsButton"..i.."WinLoss-"]:SetTextColor(r, g, b);
|
|
winLossLoss:SetTextColor(r, g, b);
|
|
ratingText:SetTextColor(r, g, b);
|
|
|
|
button:Show();
|
|
|
|
-- Highlight the correct who
|
|
if ( GetArenaTeamRosterSelection(id) == i ) then
|
|
button:LockHighlight();
|
|
else
|
|
button:UnlockHighlight();
|
|
end
|
|
end
|
|
|
|
end
|
|
|
|
|
|
end
|
|
|
|
function PVPTeamDetailsToggleButton_OnClick()
|
|
if ( PVPTeamDetails.season ) then
|
|
PVPTeamDetails.season = nil;
|
|
else
|
|
PVPTeamDetails.season = 1;
|
|
end
|
|
PVPTeamDetails_Update(PVPTeamDetails.team);
|
|
end
|
|
|
|
function PVPFrameToggleButton_OnClick()
|
|
if ( PVPFrame.seasonStats ) then
|
|
PVPFrame.seasonStats = nil;
|
|
else
|
|
PVPFrame.seasonStats = 1;
|
|
end
|
|
PVPTeam_Update();
|
|
end
|
|
|
|
|
|
function PVPTeamDetailsButton_OnClick(self, button)
|
|
if ( button == "LeftButton" ) then
|
|
PVPTeamDetails.previousSelectedTeamMember = PVPTeamDetails.selectedTeamMember;
|
|
PVPTeamDetails.selectedTeamMember = self.teamIndex;
|
|
SetArenaTeamRosterSelection(PVPTeamDetails.team, PVPTeamDetails.selectedTeamMember);
|
|
PVPTeamDetails_Update(PVPTeamDetails.team);
|
|
else
|
|
local name, rank, level, class, online = GetArenaTeamRosterInfo(PVPTeamDetails.team, self.teamIndex);
|
|
PVPFrame_ShowDropdown(name, online);
|
|
end
|
|
end
|
|
|
|
function PVPDropDown_Initialize()
|
|
UnitPopup_ShowMenu(UIDROPDOWNMENU_OPEN_MENU, "TEAM", nil, PVPDropDown.name);
|
|
end
|
|
|
|
function PVPFrame_ShowDropdown(name, online)
|
|
HideDropDownMenu(1);
|
|
|
|
if ( not IsArenaTeamCaptain(PVPTeamDetails.team) ) then
|
|
if ( online ) then
|
|
PVPDropDown.initialize = PVPDropDown_Initialize;
|
|
PVPDropDown.displayMode = "MENU";
|
|
PVPDropDown.name = name;
|
|
PVPDropDown.online = online;
|
|
ToggleDropDownMenu(1, nil, PVPDropDown, "cursor");
|
|
end
|
|
else
|
|
PVPDropDown.initialize = PVPDropDown_Initialize;
|
|
PVPDropDown.displayMode = "MENU";
|
|
PVPDropDown.name = name;
|
|
PVPDropDown.online = online;
|
|
ToggleDropDownMenu(1, nil, PVPDropDown, "cursor");
|
|
end
|
|
end
|
|
|
|
function PVPStandard_OnLoad(self)
|
|
self:SetAlpha(0.1);
|
|
end
|
|
|
|
function PVPTeam_OnClick(self)
|
|
local id = self:GetID();
|
|
|
|
local teamName, teamSize = GetArenaTeam(id);
|
|
if ( not teamName ) then
|
|
return;
|
|
else
|
|
if ( PVPTeamDetails:IsShown() and id == PVPTeamDetails.team ) then
|
|
PVPTeamDetails:Hide();
|
|
else
|
|
PVPTeamDetails.team = id;
|
|
ArenaTeamRoster(id);
|
|
PVPTeamDetails_Update(id);
|
|
PVPTeamDetails:Show();
|
|
end
|
|
end
|
|
end
|
|
|
|
function PVPTeam_OnMouseDown(self)
|
|
if ( GetArenaTeam(self:GetID()) and (not self.isDown) ) then
|
|
self.isDown = true;
|
|
local point, relativeTo, relativePoint, offsetX, offsetY = self:GetPoint();
|
|
self:SetPoint(point, relativeTo, relativePoint, offsetX-2, offsetY-2);
|
|
end
|
|
end
|
|
function PVPTeam_OnMouseUp(self)
|
|
--Note that this function is also called OnShow. Make sure it always checks if it was previously down.
|
|
if ( GetArenaTeam(self:GetID()) and (self.isDown) ) then
|
|
self.isDown = false;
|
|
local point, relativeTo, relativePoint, offsetX, offsetY = self:GetPoint();
|
|
self:SetPoint(point, relativeTo, relativePoint, offsetX+2, offsetY+2);
|
|
end
|
|
end
|
|
|
|
-- PVP Honor Data
|
|
function PVPHonor_Update()
|
|
local hk, cp, dk, contribution, rank, highestRank, rankName, rankNumber;
|
|
|
|
-- Yesterday's values
|
|
hk, contribution = GetPVPYesterdayStats();
|
|
PVPHonorYesterdayKills:SetText(hk);
|
|
PVPHonorYesterdayHonor:SetText(contribution);
|
|
|
|
-- Lifetime values
|
|
hk, contribution = GetPVPLifetimeStats();
|
|
PVPHonorLifetimeKills:SetText(hk);
|
|
PVPFrameHonorPoints:SetText(GetHonorCurrency());
|
|
PVPFrameArenaPoints:SetText(GetArenaCurrency())
|
|
|
|
-- Today's values
|
|
hk, cp = GetPVPSessionStats();
|
|
PVPHonorTodayKills:SetText(hk);
|
|
PVPHonorTodayHonor:SetText(cp);
|
|
PVPHonorTodayHonor:SetHeight(14);
|
|
end
|
|
|
|
function PVPMicroButton_SetPushed()
|
|
PVPMicroButtonTexture:SetPoint("TOP", PVPMicroButton, "TOP", 5, -31);
|
|
PVPMicroButtonTexture:SetAlpha(0.5);
|
|
end
|
|
|
|
function PVPMicroButton_SetNormal()
|
|
PVPMicroButtonTexture:SetPoint("TOP", PVPMicroButton, "TOP", 6, -30);
|
|
PVPMicroButtonTexture:SetAlpha(1.0);
|
|
end
|
|
|
|
function PVPFrame_SetToOffSeason()
|
|
PVPTeam1:Hide();
|
|
PVPTeam1Standard:Hide();
|
|
PVPTeam2:Hide();
|
|
PVPTeam2Standard:Hide();
|
|
PVPTeam3:Hide();
|
|
PVPTeam3Standard:Hide();
|
|
|
|
PVPFrameBlackFilter:Show();
|
|
|
|
PVPFrameOffSeason:Show();
|
|
|
|
local previousArenaSeason = GetPreviousArenaSeason();
|
|
PVPFrameOffSeasonText:SetText(format(ARENA_OFF_SEASON_TEXT, previousArenaSeason, previousArenaSeason+1));
|
|
end
|
|
|
|
function PVPFrame_SetToInSeason()
|
|
PVPTeam1:Show();
|
|
PVPTeam1Standard:Show();
|
|
PVPTeam2:Show();
|
|
PVPTeam2Standard:Show();
|
|
PVPTeam3:Show();
|
|
PVPTeam3Standard:Show();
|
|
|
|
PVPFrameBlackFilter:Hide();
|
|
|
|
PVPFrameOffSeason:Hide();
|
|
end
|
|
|
|
function TogglePVPFrame()
|
|
if ( PVPFrame_IsJustBG() ) then
|
|
PVPFrame_SetJustBG(false);
|
|
else
|
|
if ( UnitLevel("player") >= SHOW_PVP_LEVEL ) then
|
|
ToggleFrame(PVPParentFrame);
|
|
end
|
|
end
|
|
end
|
|
|
|
function PVPFrame_IsJustBG()
|
|
return PVPParentFrame.justBG;
|
|
end
|
|
|
|
function PVPFrame_SetJustBG(justBG)
|
|
local pvpParentFrame = PVPParentFrame;
|
|
if ( justBG ) then
|
|
pvpParentFrame.justBG = true;
|
|
pvpParentFrame.savedSelectedTab = PanelTemplates_GetSelectedTab(pvpParentFrame);
|
|
PVPParentFrameTab2:Click();
|
|
PVPParentFrameTab1:Hide();
|
|
PVPParentFrameTab2:Hide();
|
|
UpdateMicroButtons();
|
|
else
|
|
pvpParentFrame.justBG = false;
|
|
if ( pvpParentFrame.savedSelectedTab ) then
|
|
_G["PVPParentFrameTab"..pvpParentFrame.savedSelectedTab]:Click();
|
|
pvpParentFrame.savedSelectedTab = nil;
|
|
end
|
|
CloseBattlefield();
|
|
PVPBattlegroundFrame_UpdateVisible();
|
|
UpdateMicroButtons();
|
|
end
|
|
end
|