From d4d7f710fcd6ce3a02fce0217d9439f0cf607902 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Thu, 26 Sep 2019 13:58:13 +0200 Subject: [PATCH] Add "maphack" privilege for placing villages This priv can later be re-used for other advanced map-changing tools --- mods/privs/init.lua | 6 ++++++ mods/privs/locale/privs.de.tr | 2 ++ mods/privs/locale/template.txt | 2 ++ mods/privs/mod.conf | 1 + mods/village/depends.txt | 1 + mods/village/locale/template.txt | 2 +- mods/village/locale/village.de.tr | 2 +- mods/village/mapgen.lua | 4 ++-- 8 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 mods/privs/init.lua create mode 100644 mods/privs/locale/privs.de.tr create mode 100644 mods/privs/locale/template.txt create mode 100644 mods/privs/mod.conf diff --git a/mods/privs/init.lua b/mods/privs/init.lua new file mode 100644 index 0000000..05296d3 --- /dev/null +++ b/mods/privs/init.lua @@ -0,0 +1,6 @@ +local S = minetest.get_translator("privs") +minetest.register_privilege("maphack", { + description = S("Can make advanced changes to the map, like placing villages"), + give_to_singleplayer = false, + give_to_admin = false, +}) diff --git a/mods/privs/locale/privs.de.tr b/mods/privs/locale/privs.de.tr new file mode 100644 index 0000000..66a9a77 --- /dev/null +++ b/mods/privs/locale/privs.de.tr @@ -0,0 +1,2 @@ +# textdomain:privs +Can make advanced changes to the map, like placing villages=Kann erweitere Änderungen an der Karte vornehmen, z.B. Dörfer platzieren diff --git a/mods/privs/locale/template.txt b/mods/privs/locale/template.txt new file mode 100644 index 0000000..5dc6383 --- /dev/null +++ b/mods/privs/locale/template.txt @@ -0,0 +1,2 @@ +# textdomain:privs +Can make advanced changes to the map, like placing villages= diff --git a/mods/privs/mod.conf b/mods/privs/mod.conf new file mode 100644 index 0000000..37d8642 --- /dev/null +++ b/mods/privs/mod.conf @@ -0,0 +1 @@ +name=privs diff --git a/mods/village/depends.txt b/mods/village/depends.txt index 0a99303..3c2716a 100644 --- a/mods/village/depends.txt +++ b/mods/village/depends.txt @@ -3,4 +3,5 @@ util mobs goodies nav +privs locks? diff --git a/mods/village/locale/template.txt b/mods/village/locale/template.txt index b3610ba..61e9616 100644 --- a/mods/village/locale/template.txt +++ b/mods/village/locale/template.txt @@ -3,4 +3,4 @@ Village Entity Spawner= Village Spawner= Mapgen Village Spawner= (Has chance of not spawning village)= -You need the “server” privilege to use this.= +You need the “maphack” privilege to use this.= diff --git a/mods/village/locale/village.de.tr b/mods/village/locale/village.de.tr index 227d3d2..2630359 100644 --- a/mods/village/locale/village.de.tr +++ b/mods/village/locale/village.de.tr @@ -3,4 +3,4 @@ Village Entity Spawner=Dorf-Entity-Erzeuger Village Spawner=Dorf-Erzeuger Mapgen Village Spawner=Kartengenerator-Dorf-Erzeuger (Has chance of not spawning village)=(Könnte das Dorf evtl. nicht erzeugen) -You need the “server” privilege to use this.=Sie brauchen das „server“-Privileg, um dies benutzen zu können. +You need the “maphack” privilege to use this.=Sie brauchen das „maphack“-Privileg, um dies benutzen zu können. diff --git a/mods/village/mapgen.lua b/mods/village/mapgen.lua index 653fb6a..6faf568 100644 --- a/mods/village/mapgen.lua +++ b/mods/village/mapgen.lua @@ -22,8 +22,8 @@ local shortseed = bitwise_and(mapseed, 0xFFFFFF) -- Nodes local place_priv = function(itemstack, placer, pointed_thing) - if not minetest.get_player_privs(placer:get_player_name()).server then - minetest.chat_send_player(placer:get_player_name(), minetest.colorize("#FF0000", S("You need the “server” privilege to use this."))) + if not minetest.get_player_privs(placer:get_player_name()).maphack then + minetest.chat_send_player(placer:get_player_name(), minetest.colorize("#FF0000", S("You need the “maphack” privilege to use this."))) return itemstack end return minetest.item_place(itemstack, placer, pointed_thing)