Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ASCOREBOARD.Config.OrderRanks = {
- "Founder",
- "Community Manager",
- "Staff Manager",
- "Super Administrator",
- "Senior Administrator",
- "Administrator",
- "Senior Moderator",
- "Moderator",
- "Helper",
- "Premium",
- "User",
- }
- local playersToDisplay
- for k, v in pairs(player.GetAll()) do
- table.insert(playersToDisplay, {
- "player" = v,
- "scoreboardSortKey" = table.KeyFromValue(ASCOREBOARD.Config.OrderRanks, v:GetUserGroup()),
- })
- end
- for k, v in pairs SortedPairsByMemberValue(playersToDisplay, "scoreboardSortKey") do
- --This will iterate in order of rank based on your config table
- if table.HasValue(ASCOREBOARD.Config.StaffRanks, v.player:GetUserGroup()) then
- staffonline = staffonline + 1
- end
- local playerPanel = vgui.Create("DPanel", scroll)
- playerPanel:SetPos(0, ypos)
- playerPanel:SetSize(AScoreboard:GetWide(), AScoreboard:GetTall() * .065)
- local name = v:SteamName()
- local ping = v:Ping()
- local rankcolorsback = ASCOREBOARD.Config.RankColors[v:GetUserGroup()] or Color(100,100,100)
- rankcolorsback.a = 50
- playerPanel.Paint = function(self, w, h)
- surface.SetDrawColor(rankcolorsback)
- surface.DrawRect(0, h * .1, w, h)
- if ASCOREBOARD.Config.ShowRanks == true then
- local rptoolong
- if string.len( name ) > 12 then
- rptoolong = string.sub( name, 1, 25 ) .. ".."
- else
- rptoolong = name
- end
- surface.SetFont( "rp_font_24" )
- draw.SimpleText(ASCOREBOARD.Config.CleanRanks[v:GetUserGroup()] .. " " .. rptoolong, "rp_font_24", ScrW() * .005, h / 4, color_white, 0, 0)
- end
- draw.SimpleText("Ping: " .. ping, "rp_font_24", ScrW() * .61, h / 1.94, color_white, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
- end
- ypos = ypos + playerPanel:GetTall() * 1.1
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement