aboutsummaryrefslogtreecommitdiff
path: root/init.lua
blob: e031c51640dfc2c8bd9d2c196d8631c627bb938e (plain)
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
chateffects = {}

function chateffects.send(message)
	local starts_with = message:sub(1, 1)
	
	if starts_with == "/" or starts_with == "." then return end

	local reverse = minetest.settings:get_bool("chat_reverse")
	
	if reverse then
		local msg = ""
		for i = 1, #message do
			msg = message:sub(i, i) .. msg
		end
		message = msg
	end
	
	local use_chat_color = minetest.settings:get_bool("use_chat_color")
	local color = minetest.settings:get("chat_color") or "rainbow"

	if use_chat_color then
		local msg
		if color == "rainbow" then
			msg = minetest.rainbow(message)
		else
			msg = minetest.colorize(color, message)
		end
		message = msg
	end
	
	minetest.send_chat_message(message)
	return true
end

minetest.register_on_sending_chat_message(chateffects.send)

minetest.register_cheat("Colored", "Chat", "use_chat_color")
minetest.register_cheat("Reversed", "Chat", "chat_reverse")