setWeaponReloadingTime: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(see also)
m (Text replacement - "user= kju" to "user= .kju")
 
(124 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma2oa |= Game name
|game1= arma2oa
|version1= 1.60


|1.60|= Game version
|game2= tkoh
____________________________________________________________________________________________
|version2= 1.00


| Sets states and/or makes an action of/on weapon. Reload time is between 0 and 1 inclusive, where 1 is 100% of maximum reloading time. |= Description
|game3= arma3
____________________________________________________________________________________________
|version3= 0.50


| vehicle '''setWeaponReloadingTime''' [gunner, weaponName, reloadTime] |= Syntax
|arg= local


|p1= vehicle: [[Object]] |= Parameter 1
|eff= local


|p2= [gunner, weaponName, reloadTime]: [[Array]] |= Parameter 2
|gr1= Weapons


| [[Boolean]] |= Return value
|descr= Sets reloading '''phase''' on the given weapon's current ammo round.
____________________________________________________________________________________________
{{Feature|important|This command does '''not''' change a weapon's (e.g soldier's rifle) ''magazine'' reloading time but changes '''the ammo reloading state''' before the next round is shot.}}


|x1= <code>_done <nowiki>=</nowiki> _vehicle '''setWeaponReloadingTime''' <nowiki>[</nowiki>[[gunner]] ([[vehicle]] [[player]]), [[currentMuzzle]] ([[gunner]] ([[vehicle]] [[player]])), 0.5];</code>|= EXAMPLE1
|s1= vehicle [[setWeaponReloadingTime]] [gunner, muzzleName, reloadTime]
____________________________________________________________________________________________


| [[weapons]], [[magazines]], [[selectWeapon]], [[loadMagazine]], [[weaponState]] |= SEEALSO
|p1= vehicle: [[Object]]


| |= MPBEHAVIOUR
|p2= gunner: [[Object]] - alive and able gunner operating the targeted turret
____________________________________________________________________________________________


}}
|p3= muzzleName: [[String]] - turret's muzzle
 
|p4= reloadTime: [[Number]] - in range 0..1 where 0: reload complete, 1: reload started
 
|r1= [[Boolean]] - [[true]] if given weapon is found


<h3 style='display:none'>Notes</h3>
|x1= <sqf>_success = _vehicle setWeaponReloadingTime [gunner vehicle player, currentMuzzle gunner vehicle player, 0.5];</sqf>
<dl class='command_description'>
<!-- Note Section BEGIN -->


<dd class="notedate">Posted on January 15, 2012
|x2= Boost RPM:
<dt class="note">'''[[User:kju|kju]]'''
<sqf>
<dd class="note">The description is confusing to me. What the command essential does is to set the reloading state/time of the given weapon. For example you can fire a missile, and make the weapon available to fire again instantly if you apply 0.
unit addEventHandler ["Fired", {
Or you can delay or stop the reload event indefinitely. The 0-1 range is a percentage - the reload time is taken from the weapons's config value (either reloadTime or magazineReloadTime - not sure). The effect is one time only each - it does not modify the weapon's general reload time.
_this # 0 setWeaponReloadingTime [_this # 0, _this # 2, 1/3];
<dd class="note">Works also for infantry weapons - probably useful weapons with longer reload time like sniper weapons or launchers:
}];
player setWeaponReloadingTime [player,currentWeapon player,0];
</sqf>
<dd class="note">No idea what's point of the return value.


<!-- Note Section END -->
|seealso= [[weaponReloadingTime]] [[weapons]] [[magazines]] [[selectWeapon]] [[loadMagazine]] [[weaponState]] [[reload]]
</dl>
}}


<h3 style='display:none'>Bottom Section</h3>
{{Note
|user= .kju
|timestamp= 20120115
|text= The description is confusing to me. What the command essential does is to set the reloading state/time of the given weapon. For example you can fire a missile, and make the weapon available to fire again instantly if you apply 0.
Or you can delay or stop the reload event indefinitely. The 0-1 range is a percentage - the reload time is taken from the weapons's config value (either reloadTime or magazineReloadTime - not sure). The effect is one time only each - it does not modify the weapon's general reload time.<br><br>
Works also for infantry weapons - probably useful weapons with longer reload time like sniper weapons or launchers:
player setWeaponReloadingTime [player,currentWeapon player,0];
No idea what's point of the return value.
}}


[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
{{Note
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
|user= Demellion
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
|timestamp= 20170514
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
|text= Note that '''setWeaponReloadingTime''' is only having effect on a current weapon state (loaded projectile) so since the projectile is fired the next one will be reverted to a weapon config defaults. To keep the fire rate speed changed over time, use this code:
[[Category:ArmA 2 OA: New Scripting Commands List|{{uc:{{PAGENAME}}}}]]
<sqf>
player addEventHandler ["FiredMan", {
params ["", "_weapon", "_muzzle"];
private _type = _weapon call BIS_fnc_itemType;
private _time = -1;
switch (_type select 1) do {
case "SniperRifle" : {_time = 0.5};
case "AssaultRifle" : {};
case "Handgun" : {};
case "Rifle" : {};
case "SubmachineGun" : {};
case "MachineGun" : {};
case "Mortar" : {};
case "GrenadeLauncher" : {};
case "BombLauncher" : {};
case "MissileLauncher" : {};
case "RocketLauncher" : {};
case "Cannon" : {};
case "Throw" : {};
};
if (_time isEqualTo -1) exitWith {};
(vehicle player) setWeaponReloadingTime [(vehicle player), _muzzle, _time];
}];
</sqf>
This [[Arma 3: Event Handlers|Event Handler]] makes the gun of specific type shoot at a desired rate on each weapon state (sniper rifle will shoot 50% faster in this example). For more information about weapon kinds are there, visit [[BIS_fnc_itemType]].
}}

Latest revision as of 20:33, 3 May 2024

Hover & click on the images for description

Description

Description:
Sets reloading phase on the given weapon's current ammo round.
This command does not change a weapon's (e.g soldier's rifle) magazine reloading time but changes the ammo reloading state before the next round is shot.
Groups:
Weapons

Syntax

Syntax:
vehicle setWeaponReloadingTime [gunner, muzzleName, reloadTime]
Parameters:
vehicle: Object
gunner: Object - alive and able gunner operating the targeted turret
muzzleName: String - turret's muzzle
reloadTime: Number - in range 0..1 where 0: reload complete, 1: reload started
Return Value:
Boolean - true if given weapon is found

Examples

Example 1:
_success = _vehicle setWeaponReloadingTime [gunner vehicle player, currentMuzzle gunner vehicle player, 0.5];
Example 2:
Boost RPM:
unit addEventHandler ["Fired", { _this # 0 setWeaponReloadingTime [_this # 0, _this # 2, 1/3]; }];

Additional Information

See also:
weaponReloadingTime weapons magazines selectWeapon loadMagazine weaponState reload

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
.kju - c
Posted on Jan 15, 2012 - 00:00 (UTC)
The description is confusing to me. What the command essential does is to set the reloading state/time of the given weapon. For example you can fire a missile, and make the weapon available to fire again instantly if you apply 0. Or you can delay or stop the reload event indefinitely. The 0-1 range is a percentage - the reload time is taken from the weapons's config value (either reloadTime or magazineReloadTime - not sure). The effect is one time only each - it does not modify the weapon's general reload time.

Works also for infantry weapons - probably useful weapons with longer reload time like sniper weapons or launchers: player setWeaponReloadingTime [player,currentWeapon player,0]; No idea what's point of the return value.
Demellion - c
Posted on May 14, 2017 - 00:00 (UTC)
Note that setWeaponReloadingTime is only having effect on a current weapon state (loaded projectile) so since the projectile is fired the next one will be reverted to a weapon config defaults. To keep the fire rate speed changed over time, use this code:
player addEventHandler ["FiredMan", { params ["", "_weapon", "_muzzle"]; private _type = _weapon call BIS_fnc_itemType; private _time = -1; switch (_type select 1) do { case "SniperRifle" : {_time = 0.5}; case "AssaultRifle" : {}; case "Handgun" : {}; case "Rifle" : {}; case "SubmachineGun" : {}; case "MachineGun" : {}; case "Mortar" : {}; case "GrenadeLauncher" : {}; case "BombLauncher" : {}; case "MissileLauncher" : {}; case "RocketLauncher" : {}; case "Cannon" : {}; case "Throw" : {}; }; if (_time isEqualTo -1) exitWith {}; (vehicle player) setWeaponReloadingTime [(vehicle player), _muzzle, _time]; }];
This Event Handler makes the gun of specific type shoot at a desired rate on each weapon state (sniper rifle will shoot 50% faster in this example). For more information about weapon kinds are there, visit BIS_fnc_itemType.