CreateWeapon: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Added OOP syntax and various improvements)
(Replace with predefined variable.)
(One intermediate revision by one other user not shown)
Line 17: Line 17:


===Returns===
===Returns===
Returns a [[Element/Weapon|custom weapon]] element, which represents a weapon floatingat that position.
Returns a [[Element/Weapon|custom weapon]] element, which represents a weapon floating at that position.


==Requirements==
==Requirements==
Line 27: Line 27:
function createMinigunWeapon()
function createMinigunWeapon()
     -- Create the weapon 1 meter above the player
     -- Create the weapon 1 meter above the player
     local x, y, z = getElementPosition(getLocalPlayer())
     local x, y, z = getElementPosition(localPlayer)
     local weapon = createWeapon("minigun", x, y, z + 1)
     local weapon = createWeapon("minigun", x, y, z + 1)
     -- Give it some ammo and fire it
     -- Give it some ammo and fire it

Revision as of 05:17, 26 August 2021

Creates a custom weapon that can fire bullets. Do not confuse this with player held weapons.

[[{{{image}}}|link=|]] Tip: Some weapons (such as the minigun) visually point to a slightly different direction to where they fire. To adjust this, use setWeaponProperty with 'fire_rotation'. See the example below.

Syntax

weapon createWeapon ( string theType, float x, float y, float z )

OOP Syntax Help! I don't understand this!

Method: Weapon(...)


Required Arguments

  • theType: The weapon type which can be:
  • colt 45
  • silenced
  • deagle
  • uzi
  • mp5
  • ak-47
  • m4
  • tec-9
  • rifle
  • sniper
  • minigun

Other weapons can be used but they can't fire. Use createProjectile for projectile based weapons.

  • x: The x position to create the weapon.
  • y: The y position to create the weapon.
  • z: The z position to create the weapon.

Returns

Returns a custom weapon element, which represents a weapon floating at that position.

Requirements

This template will be deleted.

Example

This example adds a /createminigun command to create a weapon that is always firing.

function createMinigunWeapon()
    -- Create the weapon 1 meter above the player
    local x, y, z = getElementPosition(localPlayer)
    local weapon = createWeapon("minigun", x, y, z + 1)
    -- Give it some ammo and fire it
    setWeaponClipAmmo(weapon, 99999)
    setWeaponState(weapon, "firing")

    -- Optionally adjust for model rotation (this value will be different for other weapons)
    setWeaponProperty(weapon, "fire_rotation", 0, -30, 0)
end
addCommandHandler("createminigun", createMinigunWeapon)

See also