From Multi Theft Auto: Wiki

This event is triggered when a projectile is created.


element creator
  • creator: the element that created the projectile.


The source of this event is the projectile that was created.

Cancel effect

This event cannot be cancelled. To remove the projectile you can use setElementPosition (some where far away) and then destroyElement (which makes it explode).


This will output a chatbox message when someone creates a projectile.

function projectileCreation()
	outputChatBox("A projectile was created!")
addEventHandler("onClientProjectileCreation", getRootElement(), projectileCreation)

This will punish a player for throwing a teargas grenade. When he throws it he keeps getting warped to the location where the teargas got created, and also the teargas keeps getting warped to it. This will result in +/-60hp loss for the creator.

function projectileCreation( creator )
	local projectileType = getProjectileType( source ) -- We get the projectile type
	if projectileType == 17 then -- If is tear gas then...
		local creatorName = getPlayerName( creator ) -- We get the player name who creates the projectile
		local x, y, z = getElementPosition ( source ) --Getting the position from the projectile creator
		outputChatBox ( creatorName.." is a noob teargas user! But he got punished for it don't worry." )
		setTimer ( setElementPosition, 50, 250, source, x, y, z-0.5 )
		setTimer ( setElementPosition, 50, 250, creator, x, y, z-0.5 )
addEventHandler( "onClientProjectileCreation", getRootElement( ), projectileCreation )

This will disable people from creating flares. ( Dropped by Hydras )

function disableFlares ( )
local projType = getProjectileType( source ) --  get the projectile type

    if projType == 58 then -- if the projectile is a flare
	destroyElement(source) -- notice cancelEvent() does not work, so this destroys the projectile element after it was created.


addEventHandler( "onClientProjectileCreation", getRootElement(), disableFlares ) -- when a projectile gets created call disableFlares.

See Also

Client projectile events