diff --git a/depends.txt b/depends.txt index 77e8d97..c8b8aa1 100644 --- a/depends.txt +++ b/depends.txt @@ -1 +1,2 @@ intllib? +areas? diff --git a/init.lua b/init.lua index 34f9819..e5546e8 100644 --- a/init.lua +++ b/init.lua @@ -834,6 +834,42 @@ minetest.register_chatcommand( } ) +local highlighted_areas = function( + player_name +) + if not player_highlighted[ + player_name + ] then + return nil + end + local center = { + x = ( + player_highlighted[ + player_name + ].pos1.x + player_highlighted[ + player_name + ].pos2.x + ) / 2.0, + y = ( + player_highlighted[ + player_name + ].pos1.y + player_highlighted[ + player_name + ].pos2.y + ) / 2.0, + z = ( + player_highlighted[ + player_name + ].pos1.z + player_highlighted[ + player_name + ].pos2.z + ) / 2.0, + } + return areas:getAreasAtPos( + center + ) +end + minetest.register_chatcommand( "highlight_areas", { @@ -857,7 +893,7 @@ minetest.register_chatcommand( ) ) ) - return + return end minetest.chatcommands[ "area_pos1" @@ -865,11 +901,11 @@ minetest.register_chatcommand( own_name, player_highlighted[ own_name - ].pos1.x .. " " .. player_highlighted[ + ].pos1.x .. " " .. player_highlighted[ own_name - ].pos1.y .. " " .. player_highlighted[ + ].pos1.y .. " " .. player_highlighted[ own_name - ].pos1.z + ].pos1.z ) minetest.chatcommands[ "area_pos2" @@ -877,11 +913,11 @@ minetest.register_chatcommand( own_name, player_highlighted[ own_name - ].pos2.x .. " " .. player_highlighted[ + ].pos2.x .. " " .. player_highlighted[ own_name - ].pos2.y .. " " .. player_highlighted[ + ].pos2.y .. " " .. player_highlighted[ own_name - ].pos2.z + ].pos2.z ) local command, params = split_command( param diff --git a/locale/de.txt b/locale/de.txt index 85c7dea..347ed43 100644 --- a/locale/de.txt +++ b/locale/de.txt @@ -29,3 +29,4 @@ list group member names = Namen der Gruppenmitglieder anzeigen apply command to all group members = Kommando auf alle Gruppenmitglieder anwenden list group names = Namen der Gruppen anzeigen found group %s (player count %d) = Gruppe %s (Spieleranzahl %d) gefunden +make the highlighted area owned by a group = nimmt den markierten Bereich für eine Gruppe in Besitz diff --git a/locale/template.txt b/locale/template.txt index 20a2c8a..054f2dc 100644 --- a/locale/template.txt +++ b/locale/template.txt @@ -29,3 +29,4 @@ list group member names = apply command to all group members = list group names = found group %s (player count %d) = +make the highlighted area owned by a group =