RU/unbanIP

From Multi Theft Auto: Wiki

Emblem-important.png Эта функция устарела. Это означает, что её применение настоятельно не рекомендуется, и вполне возможно, что она перестанет существовать в последующих версиях.

Пожалуйста используйте вместо неё removeBan.

Эта функция исключает из списка банов указанный IP.

Синтаксис

bool unbanIP ( string ipToUnban, [player unbanningPlayer = nil] )         

Обязательные аргументы

  • ipToUnban: IP, который нужно разбанить.

Необязательные аргументы

Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами.

  • unbanningPlayer: Игрок, IP которого удаляется из списка банов. По умолчанию nil, то есть не один.

Возвращает

Возвращает true если операция успешна, false в противном случае.

Пример

Этот пример добавляет администраторам команду unbanip(необходимо добавить разрешение в ACL).

addCommandHandler( "unbanip", -- добавляем команду 'unbanip' в обработчик
   function ( thePlayer, command, ip )
      if ( hasObjectPermissionTo ( thePlayer, "command.unbanip", false ) ) then -- проверяем, получал ли игрок доступ к команде
         if not ip then outputChatBox( "No IP specified.", thePlayer ) return end -- если не введен IP, останавливаем выполнение
         if not findpattern( ip, '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+', 1 ) then outputChatBox( "Given IP is not valid.", thePlayer ) return end -- если формат IP некорректен, останавливаем выполнение 
         local success = unbanIP( ip, thePlayer ) -- смотрим, была ли функция успешно выполнена
         if success then
            outputChatBox( "IP " .. ip .. " succesfully unbanned!", thePlayer ) -- если успешно, выводим в чат подтверждение
         else
            outputChatBox( "Unbanning IP " .. ip .. " failed!", thePlayer ) -- если нет, выводим ошибку
         end
      else
         outputChatBox( "You have no permission to use this command.", thePlayer ) -- выводим, что у игрока недостаточно прав
      end
   end
)

-- назначаем дополнительную функцию форматирования текста для обработчика
function findpattern(text, pattern, start)
	local found = string.find(text, pattern, start)
	if found ~= nil then
		return string.gsub(text, found)
	else return nil end
end

Смотрите также