This function requires MTA: SA 1.4 or higher to work. It doesn\'t need, however, to activate
OOP.
function getElementSpeed(theElement, unit)
-- Check arguments for errors
assert(isElement(theElement), \"Bad argument 1 @ getElementSpeed (element expected, got \" .. type(theElement) .. \")\")
local elementType = getElementType(theElement)
assert(elementType == \"player\" or elementType == \"ped\" or elementType == \"object\" or elementType == \"vehicle\" or elementType == \"projectile\", \"Invalid element type @ getElementSpeed (player/ped/object/vehicle/projectile expected, got \" .. elementType .. \")\")
assert((unit == nil or type(unit) == \"string\" or type(unit) == \"number\") and (unit == nil or (tonumber(unit) and (tonumber(unit) == 0 or tonumber(unit) == 1 or tonumber(unit) == 2)) or unit == \"m/s\" or unit == \"km/h\" or unit == \"mph\"), \"Bad argument 2 @ getElementSpeed (invalid speed unit)\")
-- Default to m/s if no unit specified and \'ignore\' argument type if the string contains a number
unit = unit == nil and 0 or ((not tonumber(unit)) and unit or tonumber(unit))
-- Setup our multiplier to convert the velocity to the specified unit
local mult = (unit == 0 or unit == \"m/s\") and 50 or ((unit == 1 or unit == \"km/h\") and 180 or 111.84681456)