ClearChatBox: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(rework examples section)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Server client function}}  
{{Server client function}}  
{{New feature/item|3.0156|1.5.6|14198|This function clearing chatbox, not console under F8.}}
{{New feature/item|3.0156|1.5.5|14165|This function clears the chatbox. It does not clear the console (F8)}}


==Syntax==
==Syntax==
Line 17: Line 17:


===Required Arguments===  
===Required Arguments===  
*'''clearFor :''' The [[player]] whose chat is to be cleared. By default clear for all.
*'''clearFor :''' The [[player]] whose chat is to be cleared. By default, this is set to the root element, which will affect all players.


===Returns===
===Returns===
Line 23: Line 23:
</section>
</section>


==Example==  
==Example==
<section name="Client" class="client" show="true">
<section name="Server" class="server" show="true">
This example removing spam couse by outputChatBox
This example adds an admin command to clear the chatbox for everyone
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function cmdClearChat(p, cmd)
    if not isPlayerStaff(p) then return end
    clearChatBox()
end
addCommandHandler("clearchat", cmdClearChat)
-- Utility function
local staffACLs = {
    aclGetGroup("Admin"),
    aclGetGroup("Moderator")
}


for i=1,10 do
function isPlayerStaff(p)
  outputChatBox( "spam ..." )
if isElement(p) and getElementType(p) == "player" and not isGuestAccount(getPlayerAccount(p)) then
local object = getAccountName(getPlayerAccount(p))
 
for _, group in ipairs(staffACLs) do
if isObjectInACLGroup("user." .. object, group) then
return true
end
end
end
return false
end
end
clearChatBox()
outputChatBox("Chat cleared successfully!")
</syntaxhighlight>
</syntaxhighlight>
</section>
</section>

Latest revision as of 04:42, 30 October 2021

This function clears the chatbox. It does not clear the console (F8)

Syntax

Click to collapse [-]
Client
bool clearChatBox ()

Returns

Returns true if the player's chat was cleared successfully, false otherwise.

Click to collapse [-]
Server
bool clearChatBox ( [ element clearFor = getRootElement() ])

Required Arguments

  • clearFor : The player whose chat is to be cleared. By default, this is set to the root element, which will affect all players.

Returns

Returns true if the player's chat was cleared successfully, false otherwise.

Example

Click to collapse [-]
Server

This example adds an admin command to clear the chatbox for everyone

function cmdClearChat(p, cmd)
    if not isPlayerStaff(p) then return end
    clearChatBox()
end
addCommandHandler("clearchat", cmdClearChat)

-- Utility function
local staffACLs = {
    aclGetGroup("Admin"),
    aclGetGroup("Moderator")
}

function isPlayerStaff(p)
	if isElement(p) and getElementType(p) == "player" and not isGuestAccount(getPlayerAccount(p)) then
		local object = getAccountName(getPlayerAccount(p))

		for _, group in ipairs(staffACLs) do
			if isObjectInACLGroup("user." .. object, group) then
				return true
			end
		end
	end
	return false
end

See Also