Compare commits

...

5 Commits

Author SHA1 Message Date
Wuzzy 4efe71378c Add locale 2020-04-07 14:31:59 +02:00
Wuzzy d3d432b33a Add z_index 2020-04-07 14:31:49 +02:00
Wuzzy bf800aa5f9 Add locale support 2019-09-03 13:38:08 +02:00
Wuzzy f491c3cfc4 Use new 5.0.0 mod.conf format 2019-03-20 15:14:49 +01:00
Wuzzy 2100a02fb8 Move to MIT License 2019-03-20 15:14:17 +01:00
7 changed files with 26 additions and 9 deletions

View File

@ -2,7 +2,7 @@
## Overview
* Description: Simple API and server command to display short messages at the center of the screen
* Author: Wuzzy
* License of everything: WTFPL
* License of everything: MIT License
* Shortname: `central_message`
* Version: 0.3.0 (using Semantic Versioning 2.0.0, see [SemVer](http://semver.org/))

View File

View File

@ -1 +0,0 @@
Simple API to show messages to the center of the screen to players.

View File

@ -1,3 +1,5 @@
local S = minetest.get_translator("central_message")
cmsg = {}
cmsg.hudids = {}
cmsg.messages = {}
@ -92,6 +94,7 @@ cmsg.push_message_player = function(player, text)
direction = 3,
alignment = {x=0,y=1},
scale = {x=800,y=20*cmsg.settings.max_messages},
z_index = 10,
})
cmsg.messages[pname] = {}
cmsg.next_msgids[pname] = 0
@ -142,29 +145,29 @@ minetest.register_on_leaveplayer(function(player)
end)
minetest.register_privilege("announce", {
description = "Can use /cmsg",
description = S("Can use /cmsg"),
give_to_singleplayer = false,
})
minetest.register_chatcommand("cmsg", {
description = "Show message in the center of the screen to player (“*” sends to all players)",
description = S("Show message in the center of the screen to player (“*” sends to all players)"),
privs = {announce = true},
params = "<player> <text>",
params = S("<player> <text>"),
func = function(name, params)
local player = minetest.get_player_by_name(name)
local targetname, text = string.match(params, "^(%S+)%s(.+)$")
if not targetname then
return false, "Invalid usage, see /help title"
return false, S("Invalid usage, see “/help cmsg”.")
end
if targetname == "*" then
cmsg.push_message_all(text)
return true, "Message sent."
return true, S("Message sent.")
else
local target = minetest.get_player_by_name(targetname)
if not target then
return false, "The player "..targetname.." is not online."
return false, S("The player @1 is not online.", targetname)
end
cmsg.push_message_player(target, text)
return true, "Message sent."
return true, S("Message sent.")
end
end,
})

View File

@ -0,0 +1,7 @@
# textdomain:central_message
Can use /cmsg=Kann /cmsg benutzen
Show message in the center of the screen to player (“*” sends to all players)")=Nachricht in Mitte des Bildschirms an Spieler senden („*“ sendet an alle Spieler)
<player> <text>=<Spieler> <Text>
Invalid usage, see “/help cmsg”.=Ungültige Verwendung, siehe „/help cmsg“.
Message sent.=Nachricht gesendet.
The player @1 is not online.=Der Spieler @1 ist nicht online.

7
locale/template.txt Normal file
View File

@ -0,0 +1,7 @@
# textdomain:central_message
Can use /cmsg=
Show message in the center of the screen to player (“*” sends to all players)")=
<player> <text>=
Invalid usage, see “/help cmsg”.=
Message sent.=
The player @1 is not online.=

View File

@ -1 +1,2 @@
name = central_message
description = Simple API to show messages to the center of the screen to players.