RU/banPlayer
From Multi Theft Auto: Wiki
Эта функция дает бан игроку по IP, серийному коду или имени.
Синтаксис
ban banPlayer ( player bannedPlayer, [ bool IP = true, bool Username = false, bool Serial = false, player responsiblePlayer = nil, string reason = nil, int seconds = 0 ] )
Синтаксис ООП Помогите! Я не понимаю, что это!
- Метод: player:ban(...)
Обязательные аргументы
- bannedPlayer: Игрок, который должен быть забанен сервером.
Необязательные аргументы
Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами.
- IP: Забанить игрока по IP?
- Username: Забанить игрока по имени?
- Serial: Забанить игрока по серийному коду?
- Примечание: Чтобы забанить игрока по имени или серийному коду, verifyserials должна быть включена в серверном файле конфигурации.
- responsibleElement: Элемент, который отвечает за бан игрока. Это может быть игрок или корневой элемент ( getRootElement() ).
- reason: Причина, по которой игрок будет забанен.
- seconds: Количество секунд для бана игрока. Может быть 0, для бесконечного бана.
Возвращения
Возращает элемент бана, если игрок успешно забанен, или false в противном случае.
Пример
Этот пример банит кого-нибудь, если он имеет ACL права.
--Добавляем командный заголовок "ban" -- Пример с игроком function banPlayerCommand ( theClient, commandName, bannedName, reason ) --Показываем ошибку если нет необходимых прав if ( hasObjectPermissionTo ( theClient, "function.banPlayer" ) ) then --Получаем элемент игрока из имени local bannedPlayer = getPlayerFromNick ( bannedName ) --Баним игрока banPlayer ( bannedPlayer, theClient, reason ) outputChatBox ( "ban: " .. bannedName .. " успешно забанен", theClient ) else outputChatBox ( "ban: У вас недостаточно на это прав", theClient ) end end addCommandHandler ( "ban", banPlayerCommand ) --Пример функции с корневым элементом. Здесь вы должны передавать элемент игрока в функцию. function banCheater(theCheater) banPlayer(theCheater, getRootElement(), "Вы забанены за читерство.") end
Это пример файрвола аккаунтов игроков, работающего по серийному коду, во время их входа.
Firewall = { [ 'AccountName' ] = 'SerialPlayer', [ '3ash8' ] = '9C9F3B55D9D7BB7135FF274D3BF444E4', [ 'test5' ] = '1D6F76CF8D7193792D13789849498452', } addEventHandler ( 'onPlayerLogin', getRootElement ( ), function ( _, theCurrentAccount ) local Serial = Firewall[getAccountName(theCurrentAccount)] if ( Serial ) then if Serial ~= getPlayerSerial ( source ) then banPlayer ( source, false, false, true, getRootElement ( ), 'причина бана' ) end end end )