-- SG552
-- Rambo_6


bZoomed = false;


-- Called when the weapon is created.

     function onInit( )
	_SWEPSetSound( MyIndex, "single_shot", "Weapon_sg552.Single" );
          
          _ForceFileConsistency( "gmod/scope.vmf" );
     end


     function onThink( )
end
	-- Infinite ammo!
	function OnPrimary()
		bZoomed = false;
	end
     
     function onSecondaryAttack( )          
          
          ToggleZoom();
          
     end

     
     function ToggleZoom ( )
          
          
          if (bZoomed ~= true) then
               
		_PlayerSetFOV ( Owner, 40, 0.1 );
		_EntEmitSound(Owner, "weapons/sniper/sniper_zoomin.wav")

               
               _GModRect_Start( "gmod/scope" );
                _GModRect_SetPos( 0, 0, 1, 1 );
                _GModRect_SetColor( 0, 0, 0, 235 );
                _GModRect_SetTime( 9999, 0.1, 0.1 );
               _GModRect_Send( Owner, 117 );     
               
               bZoomed = true;
               
               -- Update the variables after changing the zoom to update the bullet spread
               _SWEPUpdateVariables( MyIndex );
               
          else
          
               EndZoom();
               
          end
          
          
          
     end


     function EndZoom ( )
          
          _PlayerStopZooming( Owner );
	--_EntEmitSound(Owner, "weapons/sniper/sniper_zoomout.wav")
          _GModRect_Hide( Owner, 117, 0.1, 0.0 );         
          bZoomed = false;
          _SWEPUpdateVariables( MyIndex );
          
     end
     

     function Deploy( )
          EndZoom();
     end
     
     function Holster( )
          EndZoom();
     end
function onDrop()
	EndZoom();
	_EntEmitSound(Owner,"npc/overwatch/radiovoice/die"..math.random(1,3)..".wav")
	end
     
     function onReload( )
          EndZoom();

          return true;
     end

     

     

     

-- Weapon settings.

-- These are only accessed once when setting the weapon up

     

     function getWeaponSwapHands()
          return true;     
     end

     

     function getWeaponFOV()

          return 74;     

     end

     

     function getWeaponSlot()

          return 1;     

     end

     

     function getWeaponSlotPos()

          return 2;     

     end

     

     function getFiresUnderwater()

          return false;

     end

     

     function getReloadsSingly()

          return false;

     end

     

     function getDamage()

          return 13;

     end

     

     function getPrimaryShotDelay()

          return 0.136;

     end

     

     function getSecondaryShotDelay()

          return 0.1;

     end

     

     function getPrimaryIsAutomatic()

          return true;

     end

     

     function getSecondaryIsAutomatic()

          return false;

     end

     

     function getBulletSpread()

          if (bZoomed) then
               return vector3( -0.010, 0.010, 0.010 );
          else
               return vector3( -0.030, 0.024, 0.024 );
          end

     end

     

     function getViewKick()

          return vector3( -1.49, 0.24, 0.24);

     end

     

     function getViewKickRandom()

          return vector3( -0.45, 0.2, 0.2 );

     end

     

     

     function getBulletSpreadSecondary()

          return vector3( 0.001, 0.001, 0.001 );

     end

     

     function getViewKickSecondary()

          return vector3( 0.0, 0.0, 0.0);

     end

     

     function getViewKickRandomSecondary()

          return vector3( 0.0, 0.0, 0.0 );

     end

     



     function getViewModel( )
          return "models/weapons/v_rif_sg552.mdl";
     end

     function getWorldModel( )
          return "models/weapons/w_rif_sg552.mdl";
     end

     

     function getClassName()

          return "weapon_sg5552";

     end



     function getPrimaryAmmoType()

          return "SMG1";

     end

          

     function getSecondaryAmmoType()

          return "none";

     end

     

     -- return -1 if it doesn't use clips

     function getMaxClipPrimary()

          return 30;

     end

     

     function getMaxClipSecondary()

          return -1;

     end

     

     -- ammo in gun by default

     function getDefClipPrimary()

          return 90

     end

     

     function getDefClipSecondary()

          return -1;

     end



     -- pistol, smg, ar2, shotgun, rpg, phys, crossbow, melee, slam, grenade

     function getAnimPrefix()

          return "smg";

     end



     function getPrintName()

          return "SG-552";

     end



     -- 0 = Don't override, shoot bullets, make sound and flash
     -- 1 = Don't shoot bullets but do make flash/sounds
     -- 2 = Only play animations
     -- 3 = Don't do anything     

     function getPrimaryScriptOverride()

          return 0;

     end



     function getSecondaryScriptOverride()

          return 3;

     end
     
    function getDeathIcon( )
		return "d_sg552";
	end
