isTimer | Multi Theft Auto: Wiki Skip to content

isTimer

Client-side
Server-side
Shared

This page is incomplete! Help wanted!

Please finish this page using the corresponding Old Wiki article.
Go to Contribution guidelines for more information.


This function checks if a variable is a timer.

Note

This function is not reliable as timer ids are eventually recycled. Always make sure you nil variables containing a timer after it has expired.

Syntax

isTimer ( )

Code Examples

server

This example uses isTimer to prevent players from using chat/teamchat/me more than once a second, to prevent spammers.

-- This anti spam is just an example and won't work if you have other scripts and game modes which manipulate chat,
-- If you do then this script would need to be put with the other script/gamemode that handles chat else cancelEvent() won't work.
antiSpam = {} -- This makes a table called antiSpam
function antiChatSpam() -- The function that the event has called. Will stop all mainchat/teamchat/me spam.
if isTimer(antiSpam[source]) then -- Check if timer is running using isTimer (this is an example of its use and all)
cancelEvent() -- If timer is running then cancel the event
outputChatBox("Sorry bro, you may only send 1 message a second to prevent spam.", source, 255, 255, 0) -- Message to player
else
antiSpam[source] = setTimer(function(source) antiSpam[source] = nil end, 1000, 1, source) -- Timer lasting 1 second.
-- The "function(source) antiSpam[source] = nil end" should clear the player from table after 1 second so he can chat again.
-- antiSpam[source] = setTimer(... is using the table to bind that player to the timer.
end
end
addEventHandler("onPlayerChat", root, antiChatSpam) -- Event we're using, don't waste your time with getRootElement() (root is the same)
-- You now have an antispam to prevent people super spamming your chatbox!