|
1 | | -local lowerBound,upperBound = unpack(get"color_range") |
2 | | -g_Root = getRootElement () |
3 | | -g_ResourceRoot = getResourceRootElement ( getThisResource () ) |
| 1 | +local lowerBound, upperBound = unpack(get("color_range")) |
4 | 2 |
|
5 | | -addEventHandler ( "onResourceStart", g_ResourceRoot, |
6 | | - function() |
7 | | - for i,player in ipairs(getElementsByType"player") do |
8 | | - processPlayer ( player ) |
9 | | - end |
10 | | - end |
11 | | -) |
12 | | - |
13 | | -function processPlayer ( player ) |
| 3 | +function randomizePlayerColor(player) |
14 | 4 | player = player or source |
15 | 5 | local r, g, b = math.random(lowerBound, upperBound), math.random(lowerBound, upperBound), math.random(lowerBound, upperBound) |
16 | 6 | setPlayerNametagColor(player, r, g, b) |
17 | 7 | end |
18 | | -addEventHandler ( "onPlayerJoin", g_Root, processPlayer ) |
| 8 | +addEventHandler("onPlayerJoin", root, randomizePlayerColor) |
19 | 9 |
|
| 10 | +local function randomizeAllPlayerColors() |
| 11 | + for _, player in ipairs(getElementsByType("player")) do |
| 12 | + randomizePlayerColor(player) |
| 13 | + end |
| 14 | +end |
| 15 | +addEventHandler("onResourceStart", resourceRoot, randomizeAllPlayerColors) |
| 16 | +addEventHandler("onGamemodeMapStart", root, randomizeAllPlayerColors) -- mapmanager resets player colors to white when the map ends |
20 | 17 |
|
21 | | -addEventHandler('onPlayerChat', g_Root, |
| 18 | +addEventHandler('onPlayerChat', root, |
22 | 19 | function(msg, type) |
23 | 20 | if type == 0 then |
24 | 21 | cancelEvent() |
25 | 22 | local r, g, b = getPlayerColor(source) |
26 | 23 | local name = getPlayerName(source) |
27 | 24 | local msg = msg:gsub('#%x%x%x%x%x%x', '') |
28 | | - outputChatBox( name.. ': #FFFFFF' .. msg, g_Root, r, g, b, true) |
| 25 | + outputChatBox( name.. ': #FFFFFF' .. msg, root, r, g, b, true) |
29 | 26 | outputServerLog( "CHAT: " .. name .. ": " .. msg ) |
30 | 27 | end |
31 | 28 | end |
|
0 commit comments