OnClientChatMessage: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(PR isn't merged yet, my bad.)
No edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Client event}}
{{Client event}}
__NOTOC__  
__NOTOC__  
This event is triggered when any text is output to chatbox, including MTA's hardcoded messages.
This event is triggered when any text is output to chatbox, including MTA's internal messages.


==Parameters==  
==Parameters==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
string text, int r, int g, int b
string text, int r, int g, int b, int messageType
</syntaxhighlight>
</syntaxhighlight>
*'''text:''' The text that was output to chatbox
*'''text:''' The text that was output to chatbox.
*'''r:''' The amount of red in the color of the text.
*'''r:''' The amount of red in the color of the text.
*'''g:''' The amount of green in the color of the text.
*'''g:''' The amount of green in the color of the text.
*'''b:''' The amount of blue in the color of the text.
*'''b:''' The amount of blue in the color of the text.
{{Added feature/item|1.5.9|1.5.8|20912|
*'''messageType:''' The type of message as a number.
{{Message Types}}
}}


==Source==
==Source==
The [[event system#Event source|source]] of this event is either a [[player]] element or the [[root]] element.
The [[event system#Event source|source]] of this event is either a [[player]] element or the [[root]] element.


{{New items|3.0132|1.3.2|
==Cancel effect==
==Cancel effect==
AS OF 1.3.2
If this event is [[Event system#Canceling|canceled]], the game's chat system won't deliver the posts. You may use [[outputChatBox]] to send the messages then.
If this event is [[Event system#Canceling|canceled]], the game's chat system won't deliver the posts. You may use [[outputChatBox]] to send the messages then.
}}


==Example==
==Example==
Line 27: Line 32:
end
end
end
end
addEventHandler("onClientChatMessage", getRootElement(), onClientChatMessageHandler)
addEventHandler("onClientChatMessage", root, onClientChatMessageHandler)
</syntaxhighlight>
</syntaxhighlight>



Latest revision as of 14:44, 7 October 2021

This event is triggered when any text is output to chatbox, including MTA's internal messages.

Parameters

string text, int r, int g, int b, int messageType
  • text: The text that was output to chatbox.
  • r: The amount of red in the color of the text.
  • g: The amount of green in the color of the text.
  • b: The amount of blue in the color of the text.
  • messageType: The type of message as a number.
  • 0: normal message
  • 1: action message (/me)
  • 2: team message
  • 3: private message
  • 4: internal message

Source

The source of this event is either a player element or the root element.

Cancel effect

If this event is canceled, the game's chat system won't deliver the posts. You may use outputChatBox to send the messages then.

Example

This example doesn't output anything to chatbox if it consists only of numbers

function onClientChatMessageHandler(text)
	if string.match(text,"%d+") --[[string.match searches for pattern "%d+", means decimals]] == text then -- if string.match and text itself are the same
		cancelEvent() -- don't output it
	end
end
addEventHandler("onClientChatMessage", root, onClientChatMessageHandler)

See Also

Client other events


Client event functions