RU/addAccount: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
{{RU/Server function}}
{{RU/Server function}}
__NOTOC__
 
Эта функция добавляет [[RU/Account|аккаунт]] в список зарегистрированных аккаунтов текущего сервера.
Эта функция добавляет [[RU/Account|аккаунт]] в список зарегистрированных аккаунтов, находящихся в ''[[RU/Database|internal.db]]''.


==Синтаксис==  
==Синтаксис==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
account addAccount(string name, string pass[, bool allowCaseVariations = false])
account addAccount( string name, string pass [, bool allowCaseVariations = false] )
</syntaxhighlight>
</syntaxhighlight>
{{RU/OOP|Эта функция является статической функцией класса account.|[[RU/Account|Account]].add||}}
{{RU/OOP|Эта функция является статической функцией класса [[RU/Account|account]].|[[RU/Account|account]].add||}}
===Обязательные аргументы===  
===Обязательные аргументы===  
*'''name:''' Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока.
*'''name:''' Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока.
Line 13: Line 14:


===Необязательные аргументы===
===Необязательные аргументы===
*'''allowCaseVariations:''' Чувствительность к регистру. Если установлено значение ''true'', то имена аккаунтов "Bob" и "bob" будут относиться к разным аккаунтам, а ''false'' - к одинаковым. По умолчанию установлено значение ''false''.
{{RU/OptionalArg}}
*'''allowCaseVariations:''' Чувствительность к регистру. Если установлено значение ''true'', то имена аккаунтов ''Bob'' и ''bob'' будут относиться к разным аккаунтам, а ''false'' - к одинаковым. По умолчанию установлено значение ''false''.


===Возвращаемые значения===
===Возвращаемые значения===
Возвращает [[RU/Account|аккаунт]] или ''false'', если аккаунт уже существует или произошла ошибка.
*'''[[аккаунт]]''', если его удалось создать.
*'''[[RU/Boolean|false]]''', если:
# [[аккаунт]] уже существует;
# произошла ошибка при создании аккаунта.


===Ограничения===
===Ограничения===
*'''name:'''
*'''name:'''
** Минимальная длина имени аккаунта - 1 символ.
** Минимальная длина имени аккаунта - 1 символ.
** Имена аккаунтов чувствительны к регистру.
** Имя аккаунта не может быть равно "*****".
** Имя аккаунта не может быть равно "*****".
*'''pass:'''
*'''pass:'''
Line 29: Line 33:


==Пример использования==
==Пример использования==
<section name="Сервер" class="server" show="false">  
<section name="Сервер" class="server" show="true">  
'''Пример 1:''' Создаёт новый аккаунт с текущим именем при помощи команды /reg [пароль].
'''Пример 1:''' Этот пример создаёт новый аккаунт с текущим именем аккаунта с помощью команды /reg (пароль).
<syntaxhighlight lang="lua">
function registerPlayer( thePlayer, command, password )
if (password ~= "" and password ~= nil) then
local accountAdded = addAccount( getPlayerName( thePlayer ), password )
if (accountAdded) then -- если аккаунт удалось создать, то
outputChatBox( "Аккаунт с именем "..getPlayerName( thePlayer ).." успешно создан", thePlayer )
else -- иначе
outputChatBox( "К сожалению, произошла ошибка при создании аккаунта. Скорее всего, данный аккаунт уже существует", thePlayer )
end
else
outputChatBox( "Синтаксис: /reg (пароль)", thePlayer )
end
end
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"
</syntaxhighlight>
'''Пример 2:''' Этот пример создаёт новый аккаунт с введённым Вами именем с помощью команды /reg (имя) (пароль).
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function registerPlayer(thePlayer, command, password) -- создаём функцию registerPlayer, вызываемую обработчиком команды, с аргументами: thePlayer, command, password
function registerPlayer( thePlayer, command, username, password )
if(password ~= "" and password ~= nil) then -- если пароль чему-то равен, то продолжаем
if (password ~= "" and password ~= nil and username ~= "" and username ~= nil) then
local accountAdded = addAccount(getPlayerName(thePlayer), password) -- создаём локальную переменную, которой присваивается возвращаемое значение от addAccount
local accountAdded = addAccount( username, password )
if(accountAdded == false) then -- если значение false
if (accountAdded) then -- если аккаунт удалось создать, то
outputChatBox("К сожалению, произошла ошибка при создании аккаунта. Скорее всего, данный аккаунт уже существует", thePlayer) -- уведомляем игрока о неудачном создании аккаунта
outputChatBox( "Аккаунт с именем "..username.." успешно создан", thePlayer )
else -- в противном случае (см. 4 строку)
else -- иначе
outputChatBox ("Уважаемый" ..getPlayerName(thePlayer).. ", Ваш аккаунт успешно создан", thePlayer) -- уведомляем игрока об удачном создании аккаунта
outputChatBox( "К сожалению, произошла ошибка при создании аккаунта. Скорее всего, аккаунт с введённым Вами именем уже существует", thePlayer )
end
end
else -- в противном случае (см. 2 строку)
else
outputChatBox("Синтаксис: /reg [пароль]", thePlayer) -- уведомляем игрока о правильном синтаксисе
outputChatBox( "Синтаксис: /reg (имя) (пароль)", thePlayer )
end
end
end
end
addCommandHandler("reg", registerPlayer) -- создаём команду /reg
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"
</syntaxhighlight>
</syntaxhighlight>
'''Пример 2:''' Создаёт новый аккаунт с введённым именем при помощи команды /reg [имя] [пароль].
'''Пример 3:''' Этот пример позволяет пользователю зарегистрироваться только один раз с помощью команды /reg (имя) (пароль).
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function registerPlayer(thePlayer, command, username, password) -- создаём функцию registerPlayer, вызываемую обработчиком команды, с аргументами: thePlayer, command, username, password
bRegisteredOnce = {}
        if(password ~= "" and password ~= nil and username ~= "" and username ~= nil) then -- если пароль и имя чему-то равны, то продолжаем
 
                local accountAdded = addAccount(username, password) -- создаём локальную переменную, которой присваивается возвращаемое значение от addAccount
function registerPlayer( source, commandName, username, password )
                if(accountAdded == false) then -- если значение false
if(password ~= "" and password ~= nil and username ~= "" and username ~= nil and not bRegisteredOnce[source]) then
                        outputChatBox("К сожалению, произошла ошибка при создании аккаунта. Скорее всего, аккаунт с введённым Вами именем уже существует", thePlayer) -- уведомляем игрока о неудачном создании аккаунта
local accountAdded = addAccount( username, password )
                else -- в противном случае (см. 4 строку)
if (accountAdded) then
                        outputChatBox ("Аккаунт с именем" ..getPlayerName(thePlayer).. "успешно создан", thePlayer) -- уведомляем игрока об удачном создании аккаунта
outputChatBox( "Спасибо Вам, " .. getPlayerName(source) .. ", за регистрацию аккаунта. Вы можете войти с помощью команды /login", source )
                end
bRegisteredOnce[source] = true
        else -- в противном случае (см. 2 строку)
else
                outputChatBox("Синтаксис: /reg [имя] [пароль]", thePlayer) -- уведомляем игрока уведомляем игрока о правильном синтаксисе
outputChatBox( "Ошибка создания аккаунта. Пожалуйста, свяжитесь с администрацией.", source )
        end
end
else
if bRegisteredOnce[source] == true then
outputChatBox( "Вы уже зарегистрированы на сервере!", source )
else
outputChatBox( "Команда введена некорректно. Синтаксис: /reg (имя) (пароль)", source)
end
end
end
end
addCommandHandler("reg", registerPlayer) -- создаём команду /reg
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"
</syntaxhighlight>
</syntaxhighlight>
</section>
</section>


==Смотрите также==
==Смотрите также==
{{Account_functions}}
{{RU/Account_functions}}


[[en:addAccount]]
[[en:addAccount]]
[[es:addAcount]]
[[es:addAcount]]
[[pl:addAccount]]
[[pl:addAccount]]
[[ar:addAcount]]
[[ZH-CN:addAccount]]
[[tr:addAccount]]

Latest revision as of 14:59, 8 June 2022

Эта функция добавляет аккаунт в список зарегистрированных аккаунтов, находящихся в internal.db.

Синтаксис

account addAccount( string name, string pass [, bool allowCaseVariations = false] )

Синтаксис ООП Помогите! Я не понимаю, что это!

Примечание: Эта функция является статической функцией класса account.
Метод: account.add(...)

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

  • name: Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока.
  • pass: Пароль от аккаунта.

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

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

  • allowCaseVariations: Чувствительность к регистру. Если установлено значение true, то имена аккаунтов Bob и bob будут относиться к разным аккаунтам, а false - к одинаковым. По умолчанию установлено значение false.

Возвращаемые значения

  1. аккаунт уже существует;
  2. произошла ошибка при создании аккаунта.

Ограничения

  • name:
    • Минимальная длина имени аккаунта - 1 символ.
    • Имя аккаунта не может быть равно "*****".
  • pass:
    • Минимальная длина пароля аккаунта - 1 символ.
    • Максимальная длина пароля аккаунта - 30 символов.
    • Пароль от аккаунта не может быть равен "*****".

Пример использования

Click to collapse [-]
Сервер

Пример 1: Этот пример создаёт новый аккаунт с текущим именем аккаунта с помощью команды /reg (пароль).

function registerPlayer( thePlayer, command, password )
	if (password ~= "" and password ~= nil) then
		local accountAdded = addAccount( getPlayerName( thePlayer ), password )
		if (accountAdded) then -- если аккаунт удалось создать, то
			outputChatBox( "Аккаунт с именем "..getPlayerName( thePlayer ).." успешно создан", thePlayer )
		else -- иначе
			outputChatBox( "К сожалению, произошла ошибка при создании аккаунта. Скорее всего, данный аккаунт уже существует", thePlayer )
		end
	else
		outputChatBox( "Синтаксис: /reg (пароль)", thePlayer )
	end
end
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"

Пример 2: Этот пример создаёт новый аккаунт с введённым Вами именем с помощью команды /reg (имя) (пароль).

function registerPlayer( thePlayer, command, username, password )
	if (password ~= "" and password ~= nil and username ~= "" and username ~= nil) then
		local accountAdded = addAccount( username, password )
		if (accountAdded) then -- если аккаунт удалось создать, то
			outputChatBox( "Аккаунт с именем "..username.." успешно создан", thePlayer )
		else -- иначе
			outputChatBox( "К сожалению, произошла ошибка при создании аккаунта. Скорее всего, аккаунт с введённым Вами именем уже существует", thePlayer )
		end
	else
		outputChatBox( "Синтаксис: /reg (имя) (пароль)", thePlayer )
	end
end
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"

Пример 3: Этот пример позволяет пользователю зарегистрироваться только один раз с помощью команды /reg (имя) (пароль).

bRegisteredOnce = {}

function registerPlayer( source, commandName, username, password )
	if(password ~= "" and password ~= nil and username ~= "" and username ~= nil and not bRegisteredOnce[source]) then
		local accountAdded = addAccount( username, password )
		if (accountAdded) then
			outputChatBox( "Спасибо Вам, " .. getPlayerName(source) .. ", за регистрацию аккаунта. Вы можете войти с помощью команды /login", source )
			bRegisteredOnce[source] = true
		else
			outputChatBox( "Ошибка создания аккаунта. Пожалуйста, свяжитесь с администрацией.", source )
		end
	else
		if bRegisteredOnce[source] == true then
			outputChatBox( "Вы уже зарегистрированы на сервере!", source )
		else
			outputChatBox( "Команда введена некорректно. Синтаксис: /reg (имя) (пароль)", source)
		end
	end
end
addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg"

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

Серверные функции

  • addAccount - регистрирует аккаунт
  • copyAccountData - копирует данные аккаунта в другой
  • getAccount - получает аккаунт указанного пользователя
  • getAccountByID - получает аккаунт с указанным ID
  • getAccountData - получает указанные данные аккаунта
  • getAccountID - получает ID указанного аккаунта
  • getAccountIP - получает IP указанного аккаунта
  • getAccountName - получает имя аккаунта
  • getAccountPlayer - получает активного пользователя аккаунта
  • getAccountSerial - получает серийный номер аккаунта
  • getAccounts - получает все зарегистрированные аккаунты
  • getAccountsByData - получает аккаунты с указанными сохранёнными данными
  • getAccountsByIP - получает аккаунт с указанным IP
  • getAccountsBySerial - получает все аккаунты с указанным серийным номером
  • getAllAccountData - получает все данные аккаунта
  • getPlayerAccount - получает аккаунт указанного игрока
  • isGuestAccount - проверяет, является ли аккаунт гостевым
  • logIn - авторизует игрока под указанный аккаунт
  • logOut - выходит из аккаунта указанного игрока
  • removeAccount - удаляет аккаунт
  • setAccountData - сохраняет данные в аккаунте
  • setAccountName - устанавливает имя аккаунту
  • setAccountPassword - устанавливает пароль аккаунта