1
0
forked from MTSR/jail

Доработать функцию отправки игрока в тюрьму

- добавлена проверка на корректность введенного имени игрока;
- добавлена отправка в тюрьму игрока, который оффлайн.
This commit is contained in:
Aleksandr Avdeev 2024-10-16 11:11:27 +03:00
parent fae274cdab
commit f07ec4feec
2 changed files with 19 additions and 13 deletions

View File

@ -36,22 +36,26 @@ jail.set_permissions_for_the_jail = function (player)
end
jail.add_jail = function(self_player_name, player_name)
for i = 1, #prisoners_list do
if prisoners_list[i] == player_name then
minetest.chat_send_player(self_player_name, S("The player is already in jail"))
return
if (minetest.player_exists(player_name)) then
for i = 1, #prisoners_list do
if prisoners_list[i] == player_name then
minetest.chat_send_player(self_player_name, S("The player is already in jail"))
return
end
end
end
local player = minetest.env:get_player_by_name(player_name)
if (player) then
table.insert(prisoners_list, player_name)
player:setpos(jail.jailpos)
minetest.chat_send_player(player_name, minetest.colorize("red", S("You have been sent to jail")))
minetest.chat_send_all(minetest.colorize("red",
"" .. player_name .. " " .. S("has been sent to jail by") .. " " .. self_player_name))
jail.set_permissions_for_the_jail(player_name)
local player = minetest.env:get_player_by_name(player_name)
if (player) then
player:setpos(jail.jailpos)
minetest.chat_send_player(player_name, minetest.colorize("red", S("You have been sent to jail")))
minetest.chat_send_all(minetest.colorize("red",
"" .. player_name .. " " .. S("has been sent to jail by") .. " " .. self_player_name))
else
minetest.chat_send_player(self_player_name, minetest.colorize("red", S("Player sent to jail, but not online")))
end
else
minetest.chat_send_player(player_name, minetest.colorize("red", S("Не в сети")))
minetest.chat_send_player(self_player_name, minetest.colorize("red", S("The player does not exist, check that the nickname is correct")))
end
end

View File

@ -28,4 +28,6 @@ Players online=Игроки онлайн
Prisoners=Заключенные
To jail=В тюрьму
To freedom=На свободу
Graphical prisoner management shell=Графическая оболочка управления заключенными
Graphical prisoner management shell=Графическая оболочка управления заключенными
Player sent to jail, but not online=Игрок отправлен в тюрьму, но не в сети
The player does not exist, check that the nickname is correct=Игрока не сущеcтвует, проверьте правильность ника