RU/addAccount: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		 
		
	
| No edit summary | No edit summary | ||
| (43 intermediate revisions by 11 users not shown) | |||
| Line 1: | Line 1: | ||
| __NOTOC__ | __NOTOC__ | ||
| {{RU/Server function}} | |||
| Эта функция добавляет [[RU/Account|аккаунт]] в список зарегистрированных аккаунтов, находящихся в ''[[RU/Database|internal.db]]''. | |||
| ==Синтаксис==  | |||
| <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||}} | |||
| {{ | ===Обязательные аргументы===  | ||
| *'''name:''' Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока. | |||
| *'''pass:''' Пароль от аккаунта. | |||
| }} | ===Необязательные аргументы=== | ||
| {{RU/OptionalArg}} | |||
| *'''allowCaseVariations:''' Чувствительность к регистру. Если установлено значение ''true'', то имена аккаунтов ''Bob'' и ''bob'' будут относиться к разным аккаунтам, а ''false'' - к одинаковым. По умолчанию установлено значение ''false''. | |||
| === | ===Возвращаемые значения=== | ||
| *'''[[аккаунт]]''', если его удалось создать. | |||
| *''' | *'''[[RU/Boolean|false]]''', если: | ||
| *''' | # [[аккаунт]] уже существует; | ||
| # произошла ошибка при создании аккаунта. | |||
| === | ===Ограничения=== | ||
| *'''name:''' | |||
| ** Минимальная длина имени аккаунта - 1 символ. | |||
| ** Имя аккаунта не может быть равно "*****". | |||
| *'''pass:''' | |||
| ** Минимальная длина пароля аккаунта - 1 символ. | |||
| ** Максимальная длина пароля аккаунта - 30 символов. | |||
| ** Пароль от аккаунта не может быть равен "*****". | |||
| == | ==Пример использования== | ||
| <section name=" | <section name="Сервер" class="server" show="true">   | ||
| ''' | '''Пример 1:''' Этот пример создаёт новый аккаунт с текущим именем аккаунта с помощью команды /reg (пароль). | ||
| <syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
| function registerPlayer (  | 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) then -- если аккаунт удалось создать, то | |||
| 		local accountAdded = addAccount( getPlayerName( | 			outputChatBox( "Аккаунт с именем "..getPlayerName( thePlayer ).." успешно создан", thePlayer ) | ||
| 		if ( accountAdded ) then | 		else -- иначе | ||
| 			outputChatBox( "К сожалению, произошла ошибка при создании аккаунта. Скорее всего, данный аккаунт уже существует", thePlayer ) | |||
| 			outputChatBox ( " | |||
| 		else | |||
| 			outputChatBox ( " | |||
| 		end | 		end | ||
| 	else | 	else | ||
| 		outputChatBox( "Синтаксис: /reg (пароль)", thePlayer ) | |||
| 		outputChatBox ( " | |||
| 	end | 	end | ||
| end | end | ||
| addCommandHandler ( " | addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg" | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| '''Пример 2:''' Этот пример создаёт новый аккаунт с введённым Вами именем с помощью команды /reg (имя) (пароль). | |||
| ''' | |||
| <syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
| function registerPlayer (  | 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 | end | ||
| addCommandHandler ( " | addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg" | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| '''Пример 3:''' Этот пример позволяет пользователю зарегистрироваться только один раз с помощью команды /reg (имя) (пароль). | |||
| ''' | |||
| <syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
| bRegisteredOnce = {} | |||
| function registerPlayer ( source, commandName, username, password ) | 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 | end | ||
| addCommandHandler ( " | addCommandHandler( "reg", registerPlayer ) -- прикрепляет функцию 'registerPlayer' к обработчику команды "reg" | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| </section> | </section> | ||
| == | ==Смотрите также== | ||
| {{RU/Account_functions}} | |||
| {{Account_functions}} | |||
| [[en:addAccount]] | |||
| [[es:addAcount]] | |||
| [[pl:addAccount]] | |||
| [[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] )
Синтаксис ООП Помогите! Я не понимаю, что это!
Обязательные аргументы
- name: Имя аккаунта, который Вы хотите добавить. Обычно это имя игрока.
- pass: Пароль от аккаунта.
Необязательные аргументы
Примечание. При использовании необязательных аргументов Вам может потребоваться предоставить все аргументы перед тем аргументом, который Вы хотите использовать. Для более подробной информации ознакомьтесь с необязательными аргументами.
- allowCaseVariations: Чувствительность к регистру. Если установлено значение true, то имена аккаунтов Bob и bob будут относиться к разным аккаунтам, а false - к одинаковым. По умолчанию установлено значение false.
Возвращаемые значения
- аккаунт уже существует;
- произошла ошибка при создании аккаунта.
Ограничения
- 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 - устанавливает пароль аккаунта