RU/addAccount: Difference between revisions

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


==Использование==  
==Синтаксис==  
<!-- NOTE: don't use 'special' names for variable names, e.g. you shouldn't be writing things like 'player player, vehicle vehicle', instead write something like 'player thePlayer, vehicle vehicleToGetInto'. This is less confusing and prevents the syntax highlighting being odd -->
{{New feature/item|3|1.0|848|
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
account addAccount ( string name, string pass )
account addAccount(string name, string pass[, bool allowCaseVariations = false])
</syntaxhighlight>
</syntaxhighlight>
}}
{{RU/OOP|Эта функция является статической функцией класса [[RU/Account|account]].|[[RU/Account|Account]].add||}}
{{Deprecated_feature|3|1.0|
===Обязательные аргументы===
<syntaxhighlight lang="lua">
*'''name:''' Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока.
bool addAccount ( string name, string pass )
*'''pass:''' Пароль от аккаунта.
</syntaxhighlight>
 
}}
===Необязательные аргументы===
*'''allowCaseVariations:''' Чувствительность к регистру. Если установлено значение ''true'', то имена аккаунтов ''Bob'' и ''bob'' будут относиться к разным аккаунтам, а ''false'' - к одинаковым. По умолчанию установлено значение ''false''.


===Необходимые параметры===  
===Возвращаемые значения===
<!-- List each argument one per line. This should be the argument's name as in the argument list above, NOT the argument's data type -->
Возвращает [[RU/Account|аккаунт]], или ''false'', если аккаунт уже существует или произошла ошибка.
*'''name:''' Имя аккаунта.
*'''pass:''' Пароль от аккаунта.


===Что возвращает===
===Ограничения===
<!-- Make this descriptive. Explain what cases will return false. If you're unsure, add a tag to it so we can check -->
*'''name:'''
{{New feature|3|1.0 r848|
** Минимальная длина имени аккаунта - 1 символ.
Возвращает елемент ''account'' если он создался, ''false'' если произошла ошибка при создании.
** Имя аккаунта не может быть равно "*****".
}}
*'''pass:'''
{{Deprecated_feature|3|1.0|
** Минимальная длина пароля аккаунта - 1 символ.
Returns ''true'' if the account was created, ''false'' if the account already exists or an error occured.
** Максимальная длина пароля аккаунта - 30 символов.
}}
** Пароль от аккаунта не может быть равен "*****".


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


'''Пример 3:''' Этот пример показывает регистрацию на сервере командой /register <password>.
==Смотрите также==
<syntaxhighlight lang="lua">
{{RU/Account_functions}}
local bRegisteredOnce = false
 
function registerPlayer ( source, commandName, username, password )
        if(password ~= "" and password ~= nil and username ~= "" and username ~= nil and bRegisteredOnce == false) then
                local accountAdded = addAccount(username,password)
                if(accountAdded) then
                        outputChatBox("Спасибо, " .. getPlayerName(source) .. ", теперь вы зарегистрированы, вы можете войти используя /login",source)
                        bRegisteredOnce = true
                else
                        outputChatBox("Ошибка в создании аккаунта, свяжитесь с администратором.",source)
                end
        else
                if bRegisteredOnce == true then
                    outputChatBox("Вы уже зарегистрированы на сервере!",source)
                else
                    outputChatBox("Ошибка в создании аккаунта, правильный синтаксис: /register <nick> <pass>",source)
                end
        end
end
addCommandHandler ( "register", registerPlayer ) -- создадим команду /register
</syntaxhighlight>
</section>


==Смотри также==
[[ar:addAcount]]
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc -->
[[en:addAccount]]
{{Account_functions}}
[[es:addAcount]]
[[pl:addAccount]]

Revision as of 10:15, 30 September 2017

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

Синтаксис

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

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

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

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

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

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

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

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

Возвращает аккаунт, или false, если аккаунт уже существует или произошла ошибка.

Ограничения

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

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

Click to expand [+]
Сервер

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

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

  • 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 - устанавливает пароль аккаунта