FireWeapon: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Remove obsolete Requirements section)
 
(10 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
{{Client function}}
{{Client function}}
Fires one shot from a custom weapon.
Fires one shot from a [[Element/Weapon|custom weapon]].


==Syntax==
==Syntax==
<syntaxhighlight lang="lua">bool fireWeapon ( weapon theWeapon )</syntaxhighlight>
<syntaxhighlight lang="lua">bool fireWeapon ( weapon theWeapon )</syntaxhighlight>
{{OOP||[[Element/Weapon|weapon]]:fire}}


===Required Arguments===
===Required Arguments===
Line 13: Line 14:


==Example==  
==Example==  
This Function create and Fires a Weapon
<section name="Example 1" class="client" show="true">
This function creates and fires a weapon.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function fireandcreate ()
function createAndFire()
local weapon = createWeapon("mp5",0,0,0) --Create a Mp5 at the Cordinates 0,0,0
    local weaponElement = createWeapon("mp5", 0, 0, 3) -- Create a MP5 at the coordinates 0, 0, 3
fireWeapon(weapon) --Fires the Weapon
 
    fireWeapon(weaponElement) -- Fire the weapon we spawned
end
end
addEventHandler("onClientResourceStart", resourceRoot, createAndFire)
</syntaxhighlight>
</syntaxhighlight>
</section>
<section name="Example 2" class="client" show="true">
This example will create an M4, attach it to the local player and fire it every frame. Be aware that neither the weapon nor the shots are synced between players and that normally weapons don't fire every frame.


<syntaxhighlight lang="lua">
local weaponElement = nil


==Requirements==
function onClientResourceStart()
{{Requirements|n/a|1.3.0-9.04555|}}
weaponElement = createWeapon("m4", 0, 0, 0) -- when the resource starts, create the M4 and attach it to the local player with an offset to place it above their head facing forwards
attachElements(weaponElement, localPlayer, 0, 0, 1, 0, 0, 90)
end
addEventHandler("onClientResourceStart", resourceRoot, onClientResourceStart)
 
function onClientRender() -- fire the M4 every frame using the "onClientRender" event
fireWeapon(weaponElement)
end
addEventHandler("onClientRender", root, onClientRender)
</syntaxhighlight>
</section>


==See Also==
==See also==
{{Client weapon creation functions}}
{{Client weapon creation functions}}
[[Category:Needs Example]]

Latest revision as of 17:07, 7 November 2024

Fires one shot from a custom weapon.

Syntax

bool fireWeapon ( weapon theWeapon )

OOP Syntax Help! I don't understand this!

Method: weapon:fire(...)


Required Arguments

  • theWeapon: The weapon to be fired.

Returns

Returns true if the shot weapon is valid and therefore the shot was fired, false otherwise.

Example

Click to collapse [-]
Example 1

This function creates and fires a weapon.

function createAndFire()
    local weaponElement = createWeapon("mp5", 0, 0, 3) -- Create a MP5 at the coordinates 0, 0, 3

    fireWeapon(weaponElement) -- Fire the weapon we spawned
end
addEventHandler("onClientResourceStart", resourceRoot, createAndFire)
Click to collapse [-]
Example 2

This example will create an M4, attach it to the local player and fire it every frame. Be aware that neither the weapon nor the shots are synced between players and that normally weapons don't fire every frame.

local weaponElement = nil

function onClientResourceStart()
	weaponElement = createWeapon("m4", 0, 0, 0) -- when the resource starts, create the M4 and attach it to the local player with an offset to place it above their head facing forwards
	attachElements(weaponElement, localPlayer, 0, 0, 1, 0, 0, 90)
end
addEventHandler("onClientResourceStart", resourceRoot, onClientResourceStart)

function onClientRender() -- fire the M4 every frame using the "onClientRender" event
	fireWeapon(weaponElement)
end
addEventHandler("onClientRender", root, onClientRender)

See also