]> git.lizzy.rs Git - coronaserver.git/blob - teamchat.lua
Add event-manager role
[coronaserver.git] / teamchat.lua
1 function coronaserver.teamchat_message(name, message)
2         local msg = minetest.colorize("#08FF00", "(TEAMCHAT) ")
3         if name then
4                 msg = msg .. coronaserver.get_player_name(name, {"<", ">"}) .. message
5         else 
6                 msg = msg .. message
7         end
8         local players = minetest.get_connected_players()
9         for _, player in pairs(players) do
10                 local name = player:get_player_name()
11                 if minetest.check_player_privs(name, {team = true}) then
12                         minetest.chat_send_player(name, msg)
13                 end
14         end 
15 end
16
17
18 local teamchat_chatcommand_def = {
19         param = "<nachricht>",
20         description = "Etwas in dem Teamchat schreibem",
21         privs = {team = true},
22         func = coronaserver.teamchat_message
23 }
24
25 minetest.register_chatcommand("teamchat", teamchat_chatcommand_def)
26 minetest.register_chatcommand("t", teamchat_chatcommand_def)
27
28 minetest.register_on_mods_loaded(function()
29         if not invis then return end
30         local old_invis_toggle = invis.toggle
31         function invis.toggle(player, toggle)
32                 old_invis_toggle(player, toggle)
33                 local name = type(player) == "userdata" and player:get_player_name() or player
34                 coronaserver.teamchat_message(nil, coronaserver.get_player_name(name) .. "ist jetzt" .. (invis.get(name) and "" or " nicht mehr") .. minetest.colorize("#00FFFC", " unsichtbar"))
35                 if not toggle then
36                         coronaserver.reload_name_tag(name)
37                 end
38         end
39 end)