ZH-CN/addAccount: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 7: Line 7:
</syntaxhighlight>
</syntaxhighlight>
{{OOP_ZH-CN||此函数是Account类下面的静态函数.|[[Account]].add ||}}
{{OOP_ZH-CN||此函数是Account类下面的静态函数.|[[Account]].add ||}}
===Required Arguments===  
===必填参数===  
*'''name:''' The name of the account you wish to make, this normally is the player's name.
*'''name:''' 您希望创建的帐户的名称,这通常是玩家的名称.
*'''pass:''' The password to set for this account for future logins.
*'''pass:''' 为以后登录此帐户设置的密码.


===Optional Arguments===
===选填参数===
*'''allowCaseVariations:''' Whether the username is case sensitive (if this is set to true, usernames "Bob" and "bob" will refer to different accounts)
*'''allowCaseVariations:''' 用户名是否区分大小写(如果设置为true,则用户名“Bob”和“bob”将引用不同的帐户)


===Returns===
===Returns===
Returns an [[account]] or ''false'' if the account already exists or an error occured.
成功时创建一个账户[[account]],如果账户已存在或发生错误返回“false”.


===Limits===
===Limits===

Revision as of 09:54, 3 February 2021

此函数用于将帐户添加到当前服务器的已注册帐户列表中.

语法

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

OOP 语法 什么是OOP?

方法: 此函数是Account类下面的静态函数.(...)
变量: .Account.add

必填参数

  • name: 您希望创建的帐户的名称,这通常是玩家的名称.
  • pass: 为以后登录此帐户设置的密码.

选填参数

  • allowCaseVariations: 用户名是否区分大小写(如果设置为true,则用户名“Bob”和“bob”将引用不同的帐户)

Returns

成功时创建一个账户account,如果账户已存在或发生错误返回“false”.

Limits

  • name:
    • Minimal account name length is 1 character.
    • Account names are case-sensitive if allowCaseVariations is true.
    • Account name can not be equal to "*****"
  • pass:
    • Minimal account password length is 1 character.
    • Maximum account password length was 30 characters until version 1.5.4-11138. Currently there is no upper limit.
    • Account password can not be equal to "*****"

Example

Example 1: This enables players to register on your server by using /register <password> in the chat window.

function registerPlayer ( source, commandName, password )
	-- Check if the password field is blank or not (only blank if they didnt enter one)
	if ( password ~= "" and password ~= nil ) then
		--Attempt to add the account, and save its value in a var
		local accountAdded = addAccount( getPlayerName(source), password )
		if ( accountAdded ) then
			--  Tell the user all is done
			outputChatBox ( "Thank you " .. getPlayerName(source) .. ", you're now registed, you can login with /login", source )
		else
			-- There was an error making the account, tell the user
			outputChatBox ( "Error creating account, contact the server admin", source )
		end
	else
		-- There was an error in the syntax, tell the user the correct syntax.
		outputChatBox ( "Error creating account, correct syntax: /register <password>", source )
	end
end
addCommandHandler ( "register", registerPlayer ) -- add the command handler

This code differs by allowing the user to change their username that they wish to use.

Example 2: This enables players to register on your server by using /register <username> <password> in the chat window.

function registerPlayer ( source, commandName, username, password )
        if(password ~= "" and password ~= nil and username ~= "" and username ~= nil) then
                local accountAdded = addAccount(username,password)
                if(accountAdded) then
                        outputChatBox("Thank you " .. getPlayerName(source) .. ", you're now registed, you can login with /login",source)
                else
                        outputChatBox("Error creating account, contact the server admin.",source)
                end
        else
                outputChatBox("Error creating account, correct syntax: /register <nick> <pass>",source)
        end
end
addCommandHandler ( "register", registerPlayer ) -- add the command handler

Example 3: This code differs again so the user can only register once /register <username> <password>.

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("Thank you " .. getPlayerName(source) .. ", you're now registed, you can login with /login",source)
                        bRegisteredOnce[source] = true
                else
                        outputChatBox("Error creating account, contact the server admin.",source)
                end
        else
                if bRegisteredOnce[source] == true then
                    outputChatBox("You already registered on this server!",source)
                else
                    outputChatBox("Error creating account, correct syntax: /register <nick> <pass>",source)
                end
        end
end

See Also