1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
---------------
-- Housing Leaderboards
---------------
HOUSING_LEADERBOARD_SYSTEM_NAME = "housingLeaderboards"
local HOME_SHOW_HEADER_ICONS =
{
up = "EsoUI/Art/Journal/leaderboard_indexIcon_housing_up.dds" ,
down = "EsoUI/Art/Journal/leaderboard_indexIcon_housing_down.dds" ,
over = "EsoUI/Art/Journal/leaderboard_indexIcon_housing_over.dds" ,
}
end
self . homeshowListNodes = { }
end
do
return GetHomeShowLeaderboardEntryInfo ( categoryData . voteCategory , categoryData . houseCategory , entryIndex )
end
return ZO_ID_REQUEST_TYPE_HOME_SHOW_LEADERBOARD , categoryData . voteCategory , categoryData . houseCategory , entryIndex
end
end
local node = self . leaderboardSystem : AddEntry ( self , name , nil , parent , categoryData , GetNumEntries , nil , GetSingleHomeShowEntryInfo , nil , GetString ( SI_LEADERBOARDS_HEADER_POINTS ) , GetHousingLeaderboardEntryConsoleIdRequestParams , "EsoUI/Art/Leaderboards/gamepad/gp_leaderBoards_menuIcon_housing.dds" , LEADERBOARD_TYPE_HOUSE )
if node then
nodeData . voteCategory = categoryData . voteCategory
nodeData . houseCategory = categoryData . houseCategory
end
return node
end
--Create the category header
if numVoteCategories > 0 then
self . header = self . leaderboardSystem : AddCategory ( GetString ( SI_HOUSING_LEADERBOARDS_CATEGORIES_HEADER ) , HOME_SHOW_HEADER_ICONS . up , HOME_SHOW_HEADER_ICONS . down , HOME_SHOW_HEADER_ICONS . over )
for voteCategory = 0 , numVoteCategories - 1 do
for houseCategory = HOUSE_CATEGORY_TYPE_MIN_VALUE , HOUSE_CATEGORY_TYPE_MAX_VALUE do
local houseCategoryDisplayName = houseCategory == HOUSE_CATEGORY_TYPE_NONE and GetString ( SI_HOUSING_LEADERBOARDS_ALL_HOMES ) or GetString ( "SI_HOUSECATEGORYTYPE" , houseCategory )
local homeShowName = zo_strformat ( SI_HOUSING_LEADERBOARDS_HOME_SHOW_NAME_AND_CATEGORY , houseEventName , houseCategoryDisplayName )
local categoryData =
{
voteCategory = voteCategory ,
houseCategory = houseCategory
}
end
end
end
end
end
function ZO_HousingLeaderboardsManager_Shared : SelectHomeShowByCategory ( voteCategory , houseCategory , openLeaderboards )
local selectedNode
if nodeData . voteCategory == voteCategory and nodeData . houseCategory == houseCategory then
selectedNode = node
break
end
end
if selectedNode then
if openLeaderboards then
end
end
end
do
local timerLabelLastUpdateSecs = 0
local UPDATE_INTERVAL_SECS = 1
if currentTime - timerLabelLastUpdateSecs >= UPDATE_INTERVAL_SECS then
if secsUntilNextUpdate > 0 then
self . timerLabelIdentifier = SI_HOUSING_LEADERBOARDS_HOME_SHOW_UPDATES_IN_TIMER
self . timerLabelData = ZO_FormatTime ( secsUntilNextUpdate , TIME_FORMAT_STYLE_COLONS , TIME_FORMAT_PRECISION_TWELVE_HOUR )
else
self . timerLabelIdentifier = nil
self . timerLabelData = nil
end
timerLabelLastUpdateSecs = currentTime
end
end
if not self . selectedSubType then
return
end
local bestRank , bestScore = GetHomeShowLeaderboardLocalPlayerInfo ( self . selectedSubType . voteCategory , self . selectedSubType . houseCategory )
self . currentRankData = bestRank and bestRank > 0 and bestRank
self . currentScoreData = bestScore and bestScore > 0 and bestScore
self . control : SetHandler ( "OnUpdate" , function ( _ , currentTime ) self : TimerLabelOnUpdate ( currentTime ) end )
end
end
end
end |