CreateEffect: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
Line 27: Line 27:
Returns the [[Element/Effect|effect]] element if creation was successful, ''false'' otherwise.
Returns the [[Element/Effect|effect]] element if creation was successful, ''false'' otherwise.


== Example ==  
==Example==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
addCommandHandler("effect",  
local effectNames = {
function(cmd, name)
"blood_heli","boat_prop","camflash","carwashspray","cement","cloudfast","coke_puff","coke_trail","cigarette_smoke",
local x, y, z = getElementPosition(localPlayer)
"explosion_barrel","explosion_crate","explosion_door","exhale","explosion_fuel_car","explosion_large","explosion_medium",
if createEffect(name, x, y, z) then
"explosion_molotov","explosion_small","explosion_tiny","extinguisher","flame","fire","fire_med","fire_large","flamethrower",
outputChatBox("Effect created!")
"fire_bike","fire_car","gunflash","gunsmoke","insects","heli_dust","jetpack","jetthrust","nitro","molotov_flame",
else
"overheat_car","overheat_car_electric","prt_blood","prt_boatsplash","prt_bubble","prt_cardebris","prt_collisionsmoke",
outputChatBox("Bad effect name.")
"prt_glass","prt_gunshell","prt_sand","prt_sand2","prt_smokeII_3_expand","prt_smoke_huge","prt_spark","prt_spark_2",
end
"prt_splash","prt_wake","prt_watersplash","prt_wheeldirt","petrolcan","puke","riot_smoke","spraycan","smoke30lit","smoke30m",
end
"smoke50lit","shootlight","smoke_flare","tank_fire","teargas","teargasAD","tree_hit_fir","tree_hit_palm","vent","vent2",
)
"water_hydrant","water_ripples","water_speed","water_splash","water_splash_big","water_splsh_sml","water_swim","waterfall_end",
</syntaxhighlight><!--This example synchronize cam flash effect (without this only local player can see this).
"water_fnt_tme","water_fountain","wallbust","WS_factorysmoke"
<syntaxhighlight lang="lua">
}
addEventHandler("onClientPlayerWeaponFire", root,
 
function(weapon)
addCommandHandler("createEffect", function(_, effectIndex)
if weapon == 43 and source ~= localPlayer then
  effectIndex = tonumber(effectIndex)
local x, y, z = getPedWeaponMuzzlePosition(source)
  if effectIndex and type(effectIndex) == "number" then
createEffect("camflash", x, y, z)
      if effectIndex > 0 and effectIndex < 83 then
end
        local effectPosition = Vector3( getElementPosition( getLocalPlayer() ) )
end
        createEffect(effectNames[tonumber(effectIndex)], effectPosition.x, effectPosition.y, effectPosition.z, 0, 0, 0)
)
      end
</syntaxhighlight>-->
  end
end)
 
--Example Command: /createEffect 3
 
</syntaxhighlight>


==Changelog==
==Changelog==

Revision as of 03:17, 21 August 2017

Creates an effect on specified position.

[[{{{image}}}|link=|]] Note: Not all effects support rotation (e.g. the "fire" - effect doesn't).

Syntax

effect createEffect ( string name, float x, float y, float z [, float rX, float rY, float rZ, float drawDistance = 0 ] )

OOP Syntax Help! I don't understand this!

Method: Effect(...)


Required Arguments

  • name: A string contains effect name.
  • x: A floating point number representing the X coordinate on the map.
  • y: A floating point number representing the Y coordinate on the map.
  • z: A floating point number representing the Z coordinate on the map.

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • rX: A floating point number representing the rotation about the X axis in degrees.
  • rY: A floating point number representing the rotation about the Y axis in degrees.
  • rZ: A floating point number representing the rotation about the Z axis in degrees.
ADDED/UPDATED IN VERSION 1.4 r6892:
  • drawDistance: A floating point number between 1 and 8191 which represents the draw distance of the effect, or 0 to use the default draw distance.

Returns

Returns the effect element if creation was successful, false otherwise.

Example

local effectNames = {
"blood_heli","boat_prop","camflash","carwashspray","cement","cloudfast","coke_puff","coke_trail","cigarette_smoke",
"explosion_barrel","explosion_crate","explosion_door","exhale","explosion_fuel_car","explosion_large","explosion_medium",
"explosion_molotov","explosion_small","explosion_tiny","extinguisher","flame","fire","fire_med","fire_large","flamethrower",
"fire_bike","fire_car","gunflash","gunsmoke","insects","heli_dust","jetpack","jetthrust","nitro","molotov_flame",
"overheat_car","overheat_car_electric","prt_blood","prt_boatsplash","prt_bubble","prt_cardebris","prt_collisionsmoke",
"prt_glass","prt_gunshell","prt_sand","prt_sand2","prt_smokeII_3_expand","prt_smoke_huge","prt_spark","prt_spark_2",
"prt_splash","prt_wake","prt_watersplash","prt_wheeldirt","petrolcan","puke","riot_smoke","spraycan","smoke30lit","smoke30m",
"smoke50lit","shootlight","smoke_flare","tank_fire","teargas","teargasAD","tree_hit_fir","tree_hit_palm","vent","vent2",
"water_hydrant","water_ripples","water_speed","water_splash","water_splash_big","water_splsh_sml","water_swim","waterfall_end",
"water_fnt_tme","water_fountain","wallbust","WS_factorysmoke"
}

addCommandHandler("createEffect", function(_, effectIndex)
   effectIndex = tonumber(effectIndex)
   if effectIndex and type(effectIndex) == "number" then
      if effectIndex > 0 and effectIndex < 83 then
         local effectPosition = Vector3( getElementPosition( getLocalPlayer() ) )
         createEffect(effectNames[tonumber(effectIndex)], effectPosition.x, effectPosition.y, effectPosition.z, 0, 0, 0)
      end
   end
end)

--Example Command: /createEffect 3

Changelog

Version Description
1.4.0-9.06892 Added drawDistance argument

See Also