OnConsole: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
This event is triggered when a player types a message into the console.
{{Server event}}
This event is triggered when a player types a message into his console.


==Syntax==  
==Parameters==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
void onConsole ( string message )         
string theMessage
</syntaxhighlight>  
</syntaxhighlight>  


==Parameters==
*'''theMessage''': a string representing the message typed into the console.
* The '''source''' of this event refers to the player who typed into the console.
 
*'''message''': a string representing the message typed into the console.
==Source==
The [[event system#Event source|source]] of this event is the [[client]] that entered the message in the console. This can be a player or the server console.


==Example==  
==Example==  

Revision as of 04:17, 30 December 2007

This event is triggered when a player types a message into his console.

Parameters

string theMessage
  • theMessage: a string representing the message typed into the console.

Source

The source of this event is the client that entered the message in the console. This can be a player or the server console.

Example

This example adds the me command into the script. For example, if a player called Bob types "me likes pie" in console, it will display "* Bob likes pie" in the chatbox.

NOTE: this script is for example purposes only. This can be done in a more efficient way with addCommandHandler.
addEventHandler ( "onConsole", getRootElement(), "input_Console" ) -- add an event handler for onConsole
function input_Console ( text ) --when a player types in the console
	-- if it's an ingame player,
	if ( getElementType ( source ) == "player" ) then
		--split the command by spaces (ASCII 32) and get the first piece of text
		local command = gettok ( text, 1, 32 )
		--if the first piece of text was "me",
		if ( command == "me" ) then
			--get the player's name
			local playerName = getClientName ( source )
			-- get the action text by substracting the first three characters ("me ")
			local actionText = string.sub ( text, 3 )
			-- announce the me command into the chatbox
			outputChatBox ( "* " .. playerName .. " " .. actionText, getRootElement(), 255, 255, 0 )
		end
	end
end

See Also