<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.splashdamage.com/index.php?action=history&amp;feed=atom&amp;title=Script%3AFiles%3Ascript%2Fweapons%2Fassaultrifle_gren.script</id>
	<title>Script:Files:script/weapons/assaultrifle gren.script - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.splashdamage.com/index.php?action=history&amp;feed=atom&amp;title=Script%3AFiles%3Ascript%2Fweapons%2Fassaultrifle_gren.script"/>
	<link rel="alternate" type="text/html" href="https://wiki.splashdamage.com/index.php?title=Script:Files:script/weapons/assaultrifle_gren.script&amp;action=history"/>
	<updated>2026-04-07T20:31:18Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.splashdamage.com/index.php?title=Script:Files:script/weapons/assaultrifle_gren.script&amp;diff=1765&amp;oldid=prev</id>
		<title>Wizz at 18:09, 2 November 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.splashdamage.com/index.php?title=Script:Files:script/weapons/assaultrifle_gren.script&amp;diff=1765&amp;oldid=prev"/>
		<updated>2007-11-02T18:09:12Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;//&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;//		assaultrifle_gren.script&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;//&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;object&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]] : [[ScriptClass:weapon_clip|weapon_clip]] {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        preinit();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        destroy();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        DoFire();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        OnBecomeViewWeapon();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        OnFinishViewWeapon();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        IdleInit();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        Sprint();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        LeaveSprint( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; newState, &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; blend );&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        FireGrenade();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        Reload();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt;        DoReload( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; wasScoped );&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        Cleanup();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        NeedsReload();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        CanFire();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        CanReload();&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        HasNoAmmo();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        DisableIronSights_Private( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; allowWait );&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        EnableIronSights_Private();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        OnProxyEnter();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt;        PlayFireGrenadeEffect();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        baseShowAllAmmo;&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt;        baseShowClip;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::preinit() {&lt;br /&gt;
     hasScope        = false;&lt;br /&gt;
     hasIronSights    = true;&lt;br /&gt;
 &lt;br /&gt;
     baseShowAllAmmo    = showAllAmmo;&lt;br /&gt;
     baseShowClip    = showClip;&lt;br /&gt;
 &lt;br /&gt;
     fireRateSingle    = [[ScriptEvent:getFloatKeyWithDefault|getFloatKeyWithDefault]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;fire_rate_single&amp;quot;&amp;lt;/span&amp;gt;, 0.2f );&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::destroy() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( myPlayer != &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;$null_entity&amp;lt;/span&amp;gt; ) {&lt;br /&gt;
         myPlayer.[[ScriptEvent:setGUIClipIndex|setGUIClipIndex]]( 0.f );&lt;br /&gt;
         myPlayer.SetFireAnim( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::CanFire() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; [[ScriptEvent:ammoAvailable|ammoAvailable]]( 1 ) &amp;gt; 0;&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; true;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::NeedsReload() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !ironSightsEnabled ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !usesStroyent ) {&lt;br /&gt;
             &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( [[ScriptEvent:ammoInClip|ammoInClip]]( 0 ) &amp;lt;= 0 ) {&lt;br /&gt;
                 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; true;&lt;br /&gt;
             }&lt;br /&gt;
         } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
             &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( [[ScriptEvent:ammoAvailable|ammoAvailable]]( 0 ) &amp;lt;= 0 ) {&lt;br /&gt;
                 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; true;&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; false;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::HasNoAmmo() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !usesStroyent ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; [[ScriptEvent:ammoAvailable|ammoAvailable]]( 0 ) == 0 &amp;amp;&amp;amp; [[ScriptEvent:ammoAvailable|ammoAvailable]]( 1 ) == 0;&lt;br /&gt;
     }&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; [[ScriptEvent:ammoAvailable|ammoAvailable]]( 0 ) == 0;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::CanReload() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !usesStroyent ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;// always update grenade clip,&amp;lt;/span&amp;gt;&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;// set up as clip based but isn't supposed to be&amp;lt;/span&amp;gt;&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !sys.[[ScriptEvent:isClient|isClient]]() ) {&lt;br /&gt;
             [[ScriptEvent:addToClip|addToClip]]( 1, [[ScriptEvent:clipSize|clipSize]]( 1 ) );&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; index;&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
             index = 1;&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ( [[ScriptEvent:ammoAvailable|ammoAvailable]]( index ) &amp;gt; [[ScriptEvent:ammoInClip|ammoInClip]]( index ) ) &amp;amp;&amp;amp; ( [[ScriptEvent:ammoInClip|ammoInClip]]( index ) &amp;lt; [[ScriptEvent:clipSize|clipSize]]( index ) ) ) {&lt;br /&gt;
             &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; true;&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; false;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::FireGrenade() {&lt;br /&gt;
     PlayFireGrenadeEffect();&lt;br /&gt;
 &lt;br /&gt;
     [[ScriptEvent:startSound|startSound]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;snd_fire_gren_local&amp;quot;&amp;lt;/span&amp;gt;, SND_WEAPON_FIRE_LOCAL );&lt;br /&gt;
     [[ScriptEvent:startSound|startSound]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;snd_fire_gren&amp;quot;&amp;lt;/span&amp;gt;, SND_WEAPON_FIRE );&lt;br /&gt;
     [[ScriptEvent:startSound|startSound]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;snd_fire_gren_far&amp;quot;&amp;lt;/span&amp;gt;, SND_WEAPON_FIRE_FAR );&lt;br /&gt;
 &lt;br /&gt;
     [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;alt_fire&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     LaunchProjectile( 1, 1 );&lt;br /&gt;
 &lt;br /&gt;
     waitUntil( [[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) );&lt;br /&gt;
 &lt;br /&gt;
     AmmoCheckClip( 1 );&lt;br /&gt;
 &lt;br /&gt;
     refireTime = sys.[[ScriptEvent:getTime|getTime]]() + fireRateSingle;&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; minAmmoForReload = 0.f;&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( sys.[[ScriptEvent:isClient|isClient]]() ) {&lt;br /&gt;
         minAmmoForReload = 1.f; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;// Gordon: Since clients won't actually use the ammo, bump it by 1&amp;lt;/span&amp;gt;&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( [[ScriptEvent:ammoAvailable|ammoAvailable]]( 1 ) &amp;gt; minAmmoForReload ) {&lt;br /&gt;
         [[ScriptEvent:weaponState|weaponState]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Reload&amp;quot;&amp;lt;/span&amp;gt;, 0 );&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::DoFire() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !mainFireDown ) {&lt;br /&gt;
             FireGrenade();&lt;br /&gt;
         }&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         FireAuto();&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::OnBecomeViewWeapon() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( localScopeEffectsActive ) {&lt;br /&gt;
         AddLocalScopeEffects();&lt;br /&gt;
     }&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( localIronSightsEffectsActive ) {&lt;br /&gt;
         AddLocalIronSightsEffects();&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         myPlayer.[[ScriptEvent:setGUIClipIndex|setGUIClipIndex]]( 1.0f );&lt;br /&gt;
         showAllAmmo = true;&lt;br /&gt;
         showClip = false;&lt;br /&gt;
     }&lt;br /&gt;
     UpdateCrosshair();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::OnFinishViewWeapon() {&lt;br /&gt;
     RemoveLocalScopeEffects();&lt;br /&gt;
     RemoveLocalIronSightsEffects();&lt;br /&gt;
     myPlayer.[[ScriptEvent:setGUIClipIndex|setGUIClipIndex]]( 0.0f );&lt;br /&gt;
     showAllAmmo = false;&lt;br /&gt;
     showClip = true;&lt;br /&gt;
     sys.[[ScriptEvent:setGUIFloat|setGUIFloat]]( GUI_GLOBALS_HANDLE, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;gameHud.weaponReloadTime&amp;quot;&amp;lt;/span&amp;gt;, 0 );&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::IdleInit() {&lt;br /&gt;
     [[ScriptEvent:weaponReady|weaponReady]]();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         [[ScriptEvent:playCycle|playCycle]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;alt_idle&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         [[ScriptEvent:playCycle|playCycle]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;idle&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     playingFireAnim = false;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::DisableIronSights_Private( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; allowWait ) {&lt;br /&gt;
     [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;switch_from_grenade&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( allowWait ) {&lt;br /&gt;
         myPlayer.SetFireAnim( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;switch_from&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
         [[ScriptEvent:fired|fired]]();&lt;br /&gt;
 &lt;br /&gt;
         sys.[[ScriptEvent:wait|wait]]( 0.2f );&lt;br /&gt;
         [[ScriptEvent:setupAnimClass|setupAnimClass]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;anim_prefix&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
 &lt;br /&gt;
         waitUntil( [[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         [[ScriptEvent:setupAnimClass|setupAnimClass]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;anim_prefix&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     }&lt;br /&gt;
     myPlayer.SetFireAnim( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
 &lt;br /&gt;
     ironSightsEnabled = false;&lt;br /&gt;
     [[ScriptEvent:setStatName|setStatName]]( [[ScriptEvent:getKey|getKey]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;stat_name&amp;quot;&amp;lt;/span&amp;gt; ) );&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( myPlayer == sys.[[ScriptEvent:getLocalViewPlayer|getLocalViewPlayer]]() ) {&lt;br /&gt;
         myPlayer.[[ScriptEvent:setGUIClipIndex|setGUIClipIndex]]( 0.0f );&lt;br /&gt;
         showAllAmmo    = baseShowAllAmmo;&lt;br /&gt;
         showClip    = baseShowClip;&lt;br /&gt;
         UpdateCrosshair();&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     UpdateSpreadModifiers();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::EnableIronSights_Private() {&lt;br /&gt;
     [[ScriptEvent:setupAnimClass|setupAnimClass]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;anim_prefix_alt&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     myPlayer.SetFireAnim( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;switch_to&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     [[ScriptEvent:fired|fired]]();&lt;br /&gt;
 &lt;br /&gt;
     [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;switch_to_grenade&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     waitUntil( [[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) );&lt;br /&gt;
 &lt;br /&gt;
     myPlayer.SetFireAnim( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
 &lt;br /&gt;
     ironSightsEnabled = true;&lt;br /&gt;
     [[ScriptEvent:setStatName|setStatName]]( [[ScriptEvent:getKey|getKey]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;stat_name_grenade&amp;quot;&amp;lt;/span&amp;gt; ) );&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( myPlayer == sys.[[ScriptEvent:getLocalViewPlayer|getLocalViewPlayer]]() ) {&lt;br /&gt;
         myPlayer.[[ScriptEvent:setGUIClipIndex|setGUIClipIndex]]( 1.0f );&lt;br /&gt;
         showAllAmmo = true;&lt;br /&gt;
         showClip = false;&lt;br /&gt;
         UpdateCrosshair();&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     UpdateSpreadModifiers();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::Sprint() {&lt;br /&gt;
     [[ScriptEvent:weaponReady|weaponReady]]();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;alt_start_sprint&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;start_sprint&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     }&lt;br /&gt;
     waitUntil( [[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) );&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;while&amp;lt;/span&amp;gt; ( true ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( WEAPON_LOWERWEAPON ) {&lt;br /&gt;
             LeaveSprint( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Lower&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !myPlayer.AI_SPRINT ) {&lt;br /&gt;
             &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( NeedsReload() &amp;amp;&amp;amp; CanReload() ) {&lt;br /&gt;
                 LeaveSprint( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Reload&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
             } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
                 LeaveSprint( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Idle&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( WEAPON_ATTACK ) {&lt;br /&gt;
             LeaveSprint( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Idle&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         sys.[[ScriptEvent:waitFrame|waitFrame]]();&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::LeaveSprint( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;string&amp;lt;/span&amp;gt; newState, &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; blend ) {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( WEAPON_ATTACK ) {&lt;br /&gt;
         mainFireDown = false;&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;alt_leave_sprint&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;leave_sprint&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     }&lt;br /&gt;
     waitUntil( [[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) );&lt;br /&gt;
     [[ScriptEvent:weaponState|weaponState]]( newState, blend );&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::Reload() {&lt;br /&gt;
     myPlayer.[[ScriptEvent:disableSprint|disableSprint]]( 1.f );&lt;br /&gt;
 &lt;br /&gt;
     StopBrassSound();&lt;br /&gt;
 &lt;br /&gt;
     Base_BeginReload();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; wantIronSight = DoReload( ironSightsEnabled );&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( wantIronSight != ironSightsEnabled ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( wantIronSight ) {&lt;br /&gt;
             EnableIronSights();&lt;br /&gt;
         } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
             DisableIronSights();            &lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     Base_EndReload();&lt;br /&gt;
     [[ScriptEvent:weaponState|weaponState]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Idle&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::DoReload( &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; wasScoped ) {&lt;br /&gt;
     [[ScriptEvent:weaponReloading|weaponReloading]]();&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;alt_reload&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( usesStroyent ) {&lt;br /&gt;
             [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;overheat&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
         } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
             [[ScriptEvent:playAnim|playAnim]]( ANIMCHANNEL_ALL, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;reload&amp;quot;&amp;lt;/span&amp;gt; );&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;boolean&amp;lt;/span&amp;gt; altKeyDown;&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;float&amp;lt;/span&amp;gt; stayEnabled = wasScoped;&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;while&amp;lt;/span&amp;gt; ( ![[ScriptEvent:animDone|animDone]]( ANIMCHANNEL_ALL, 4 ) ) {&lt;br /&gt;
         sys.[[ScriptEvent:waitFrame|waitFrame]]();&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( WEAPON_LOWERWEAPON ) {&lt;br /&gt;
             Base_EndReload();&lt;br /&gt;
             [[ScriptEvent:weaponState|weaponState]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;Lower&amp;quot;&amp;lt;/span&amp;gt;, 4 );&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( WEAPON_ALTFIRE ) {&lt;br /&gt;
             &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !altKeyDown ) {&lt;br /&gt;
                 altKeyDown = true;&lt;br /&gt;
                 stayEnabled = 1 - stayEnabled;&lt;br /&gt;
             }&lt;br /&gt;
         } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
             altKeyDown = false;&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( ironSightsEnabled ) {&lt;br /&gt;
         [[ScriptEvent:addToClip|addToClip]]( 1, [[ScriptEvent:clipSize|clipSize]]( 1 ) );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         [[ScriptEvent:addToClip|addToClip]]( 0, [[ScriptEvent:clipSize|clipSize]]( 0 ) );&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;return&amp;lt;/span&amp;gt; stayEnabled;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::PlayFireGrenadeEffect() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( sys.[[ScriptEvent:getLocalViewPlayer|getLocalViewPlayer]]() != myPlayer || pm_thirdperson.[[ScriptEvent:getBoolValue|getBoolValue]]() ) {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;entity&amp;lt;/span&amp;gt; worldModel = [[ScriptEvent:getWorldModel|getWorldModel]]( 0 ); &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;// FIXME&amp;lt;/span&amp;gt;&lt;br /&gt;
         worldModel.[[ScriptEvent:playEffect|playEffect]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;fx_muzzle_flash_world_gren&amp;quot;&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;muzzle&amp;quot;&amp;lt;/span&amp;gt;, 0.0f );&lt;br /&gt;
     } &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;else&amp;lt;/span&amp;gt; {&lt;br /&gt;
         &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;if&amp;lt;/span&amp;gt; ( !myPlayer.IsSniperScopeUp() ) {&lt;br /&gt;
             [[ScriptEvent:playEffect|playEffect]]( &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;fx_muzzle_flash_gren&amp;quot;&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:brown&amp;quot;&amp;gt;&amp;quot;muzzle&amp;quot;&amp;lt;/span&amp;gt;, 0.f );&lt;br /&gt;
         }&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::Cleanup() {&lt;br /&gt;
     &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;// Gordon: blank here, because we don't want to lose 'iron sights', etc&amp;lt;/span&amp;gt;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;void&amp;lt;/span&amp;gt; [[ScriptClass:weapon_assaultrifle_gren|weapon_assaultrifle_gren]]::OnProxyEnter() {&lt;br /&gt;
     Base_OnProxyEnter();&lt;br /&gt;
 &lt;br /&gt;
     [[ScriptEvent:stopSound|stopSound]]( SND_WEAPON_RELOAD );&lt;br /&gt;
     [[ScriptEvent:stopSound|stopSound]]( SND_WEAPON_BRASS );&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>Wizz</name></author>
		
	</entry>
</feed>