OnExplosion: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(More clear explanation of source behaviour)
 
(2 intermediate revisions by the same user not shown)
Line 9: Line 9:
*'''y:''' Y coordinate of where the explosion was created
*'''y:''' Y coordinate of where the explosion was created
*'''z:''' Z coordinate of where the explosion was created
*'''z:''' Z coordinate of where the explosion was created
*'''theType:''' the type of explosion created, values are:
*'''theType:''' the type of explosion created, see: [[Explosion types]]
{{Explosions}}
==Source==
==Source==
The [[event system#Event source|source]] of this event is the [[player]] who notified server about explosion, or [[root]] if explosion was created server-side along without specifying creator in [[createExplosion]].
The [[event system#Event source|source]] of this event is the [[player]] who notified server about explosion, or [[root]] if explosion was created server-side along without specifying creator in [[createExplosion]].
Line 32: Line 31:
[5] = "Car Quick",
[5] = "Car Quick",
[6] = "Boat",
[6] = "Boat",
[7] = "Heli",
[7] = "Aircraft",
[8] = "Mine",
[8] = "Mine",
[9] = "Object",
[9] = "Object",
Line 41: Line 40:


function onExplosion(explosionX, explosionY, explosionZ, explosionType)
function onExplosion(explosionX, explosionY, explosionZ, explosionType)
local explosionPos = (explosionX..", "..explosionY..", "..explosionZ)
local explosionPos = explosionX..", "..explosionY..", "..explosionZ
local explosionTypeName = explosionTypes[explosionType]
local explosionTypeName = explosionTypes[explosionType]
local explosionSource = inspect(source)
local explosionSource = inspect(source)
local debugMsg = (explosionTypeName.." explosion has occured at "..explosionPos.." (source: "..explosionSource..")")
local debugMsg = explosionTypeName.." explosion has occured at "..explosionPos.." (source: "..explosionSource..")"


outputDebugString(debugMsg, debugMsgLevel, debugMsgR, debugMsgG, debugMsgB)
outputDebugString(debugMsg, debugMsgLevel, debugMsgR, debugMsgG, debugMsgB)

Latest revision as of 14:09, 11 January 2024

BETA: NEW FEATURE (BUILD: 1.6.0 r21914)
This event is triggered every time an explosion is created either by server-side createExplosion, or when reported by player.

Parameters

float x, float y, float z, int theType
  • x: X coordinate of where the explosion was created
  • y: Y coordinate of where the explosion was created
  • z: Z coordinate of where the explosion was created
  • theType: the type of explosion created, see: Explosion types

Source

The source of this event is the player who notified server about explosion, or root if explosion was created server-side along without specifying creator in createExplosion.

Canceling

If this event is canceled, the explosion will not occur.

Example

This example outputs information about occuring explosion.

local debugMsgLevel = 4
local debugMsgR = 255
local debugMsgG = 127
local debugMsgB = 0
local explosionTypes = {
	[0] = "Grenade",
	[1] = "Molotov",
	[2] = "Rocket",
	[3] = "Rocket Weak",
	[4] = "Car",
	[5] = "Car Quick",
	[6] = "Boat",
	[7] = "Aircraft",
	[8] = "Mine",
	[9] = "Object",
	[10] = "Tank Grenade",
	[11] = "Small",
	[12] = "Tiny",
}

function onExplosion(explosionX, explosionY, explosionZ, explosionType)
	local explosionPos = explosionX..", "..explosionY..", "..explosionZ
	local explosionTypeName = explosionTypes[explosionType]
	local explosionSource = inspect(source)
	local debugMsg = explosionTypeName.." explosion has occured at "..explosionPos.." (source: "..explosionSource..")"

	outputDebugString(debugMsg, debugMsgLevel, debugMsgR, debugMsgG, debugMsgB)
end
addEventHandler("onExplosion", root, onExplosion)

See Also

Server events


Event functions