RU/banPlayer: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
(Blanked the page)
Line 1: Line 1:
__NOTOC__
{{RU/Server function}}
{{New feature|3|1.0|
Эта функция дает бан игроку по IP, [[RU/Serial|серийному коду]] или имени.
}}


{{Deprecated_feature|3|1.0|
This function will ban the specified player from the server by IP.
}}
==Синтаксис==
{{New feature|3|1.0|
<syntaxhighlight lang="lua">
ban banPlayer ( player bannedPlayer, [ bool IP = true, bool Username = false, bool Serial = false,
player responsiblePlayer = nil, string reason = nil, int seconds = 0 ] )
</syntaxhighlight>
}}
{{Deprecated_feature|3|1.0|
<syntaxhighlight lang="lua">
bool banPlayer ( player bannedPlayer , [ element responsibleElement, string reason ] )       
</syntaxhighlight>
}}
{{RU/OOP||[[RU/Element/Player|player]]:ban||}}
===Обязательные аргументы===
*'''bannedPlayer:''' Игрок, который должен быть забанен сервером.
===Необязательные аргументы===
{{RU/OptionalArg}}
{{New feature|3|1.0|
*'''IP:''' Забанить игрока по IP?
*'''Username:''' Забанить игрока по имени?
*'''Serial:''' Забанить игрока по серийному коду?
:'''Примечание:''' Чтобы забанить игрока по имени или серийному коду, ''verifyserials'' должна быть включена в серверном файле конфигурации.
}}
*'''responsibleElement:''' Элемент, который отвечает за бан игрока. Это может быть игрок или корневой элемент ([[RU/getRootElement| getRootElement() ]]).
*'''reason:''' Причина, по которой игрок будет забанен.
*'''seconds:''' Количество секунд для бана игрока. Может быть 0, для бесконечного бана.
===Возвращения===
{{Deprecated_feature|3|1.0|
Возвращает ''true'' если игрок успешно забанен, ''false'' если даны неправильные аргументы.
}}
{{New feature|3|1.0|
Возращает элемент [[RU/Ban|бана]], если игрок успешно забанен, или ''false'' в противном случае.
}}
==Пример==
Этот пример банит кого-нибудь, если он имеет ACL права.
<syntaxhighlight lang="lua">
--Добавляем командный заголовок "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
</syntaxhighlight>
Это пример файрвола аккаунтов игроков, работающего по серийному коду, во время их входа.
<syntaxhighlight lang="lua">
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
)
</syntaxhighlight>
==Смотрите также==
{{RU/Admin_functions}}
[[en:banPlayer]]
[[es:banPlayer]]

Revision as of 15:56, 31 March 2016