FireWeapon: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Remove obsolete Requirements section)
 
(13 intermediate revisions by 6 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 12: Line 13:
Returns ''true'' if the shot weapon is valid and therefore the shot was fired, ''false'' otherwise.
Returns ''true'' if the shot weapon is valid and therefore the shot was fired, ''false'' otherwise.


==Requirements==
==Example==  
{{Requirements|n/a|1.3.0-9.04555|}}
<section name="Example 1" class="client" show="true">
This function creates and fires a weapon.
<syntaxhighlight lang="lua">
function createAndFire()
    local weaponElement = createWeapon("mp5", 0, 0, 3) -- Create a MP5 at the coordinates 0, 0, 3


==See Also==
    fireWeapon(weaponElement) -- Fire the weapon we spawned
end
addEventHandler("onClientResourceStart", resourceRoot, createAndFire)
</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
 
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)
</syntaxhighlight>
</section>
 
==See also==
{{Client weapon creation functions}}
{{Client weapon creation functions}}

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