RU/banPlayer: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
No edit summary |
||
(15 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{RU/Server function}} | {{RU/Server function}} | ||
{{New feature|3|1.0| | {{RU/New feature/item|3|1.0|| | ||
Эта функция дает бан игроку по IP, [[RU/Serial|серийному коду]] или имени. | Эта функция дает бан игроку по IP, [[RU/Serial|серийному коду]] или имени. | ||
}} | }} | ||
==Синтаксис== | ==Синтаксис== | ||
{{New feature|3|1.0| | {{RU/New feature/item|3|1.0|| | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
ban banPlayer ( player bannedPlayer, [ bool IP = true, bool Username = false, bool Serial = false, | ban banPlayer ( player bannedPlayer, [ bool IP = true, bool Username = false, bool Serial = false, | ||
Line 18: | Line 13: | ||
}} | }} | ||
{{RU/OOP||[[RU/Element/Player|player]]:ban||}} | {{RU/OOP||[[RU/Element/Player|player]]:ban||}} | ||
===Обязательные аргументы=== | ===Обязательные аргументы=== | ||
Line 29: | Line 19: | ||
===Необязательные аргументы=== | ===Необязательные аргументы=== | ||
{{RU/OptionalArg}} | {{RU/OptionalArg}} | ||
{{New feature|3|1.0| | {{RU/New feature\item|3|1.0|| | ||
*'''IP:''' Забанить игрока по IP? | *'''IP:''' Забанить игрока по IP? | ||
*'''Username:''' Забанить игрока по имени? | *'''Username:''' Забанить игрока по имени? | ||
*'''Serial:''' Забанить игрока по серийному коду? | *'''Serial:''' Забанить игрока по серийному коду? | ||
:''' | :'''Примечание:''' Чтобы забанить игрока по имени или серийному коду, ''verifyserials'' должна быть включена в серверном файле конфигурации. | ||
}} | }} | ||
Line 42: | Line 32: | ||
===Возвращения=== | ===Возвращения=== | ||
{{New feature|3|1.0| | {{RU/New feature/item|3|1.0|| | ||
Возращает элемент [[RU/Ban|бана]], если игрок | Возращает элемент [[RU/Ban|бана]], если игрок успешно забанен, или ''false'' в противном случае. | ||
}} | }} | ||
Latest revision as of 21:42, 14 June 2021
Эта функция дает бан игроку по 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: Игрок, который должен быть забанен сервером.
Необязательные аргументы
Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами. Template:RU/New feature\item
- 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 )
Смотрите также
Серверные функции
- addBan — блокирует доступ по серийному номеру, IP адресу и / или нику
- banPlayer — блокирует указанного игрока по серийному номеру, IP адресу и / или нику
- getBanAdmin — возвращает ник администратора, ответственного за указанную блокировку
- getBanIP — возвращает заблокированный IP адрес для указанной блокировки
- getBanNick — возвращает ник заблокированного игрока для указанной блокировки
- getBanReason — возвращает причину выдачи для указанной блокировки
- getBans — возвращает таблицу выданных блокировок
- getBanSerial — возвращает заблокированный серийный номер для указанной блокировки
- getBanTime — возвращает время в секундах, прошедшее от 1.01.1970 до момента выдачи указанной блокировки
- getBanUsername — возвращает ник заблокированного игрока для указанной блокировки (устарела)
- getUnbanTime — возвращает время в секундах, прошедшее от 1.01.1970 до момента снятия указанной блокировки
- isBan — проверка значение на соответствие типу ban
- kickPlayer — исключает указанного игрока из игры
- setBanAdmin — изменяет никнейм ответственного за блокировку администратора
- setBanNick — изменяет никнейм игрока для указанной блокировки
- setBanReason — изменяет причину указанной блокировки
- setUnbanTime — изменяет время разблокировки для указанного игрока
- removeBan — удаляет указанную блокировку
- reloadBans — обновление данных о выданных блокировках из файла banlist.xml