|
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