All pastes #1709638 Raw Edit

Gmod9 SWEP

public lua v1 · immutable
#1709638 ·published 2009-12-10 14:13 UTC
rendered paste body
	--    /////////////////////	--   // Updated V1.02 B //	--  // 10 Dec. | 15:11 //	-- /////////////////////_OpenScript( "includes/defines.lua" );_OpenScript( "includes/vector3.lua" );_OpenScript( "includes/misc.lua" );_OpenScript( "includes/backcompat.lua" );	-- Some Variableslocal barshow = 1; local zz = 500;  local cfg = 1;   local tmp = _CurTime() + 0.5;    local tmp2 = _CurTime() + 0.3;     local regen = 1;      local sset = 1;	-- Health Variableslocal reghz = 1; local reghe = 0;	-- Armor Variableslocal regaz = 1; local regae = 0;function onPickup( playerid )	-- Admin Filterlocal AUTHID1 = "STEAM_0:0:16920444"; -- Max local AUTHID2 = "STEAM_0:0:15299434"; -- Jan  local AUTHID3 = "UNKNOWN"; -- Singleplayer   local AUTHID4 = "STEAM_ID_LAN"; -- Lanif (_PlayerInfo(playerid, "networkid") == AUTHID1) or	(_PlayerInfo(playerid, "networkid") == AUTHID2) or	 (_PlayerInfo(playerid, "networkid") == AUTHID3) or	  (_PlayerInfo(playerid, "networkid") == AUTHID4) thenelse	_PlayerSilentKill(playerid, 1, true);	end		-- Show first time the HUD when player pick up weapon	_GModRect_Start( "gmod/white" );	 _GModRect_SetPos( 0.030, 0.720, 0.27, 0.10 );	 _GModRect_SetColor( 0, 0, 0, 180 );	 _GModRect_SetTime( 9999, 0.2, 0.2 );	 _GModRect_SetDelay( 0 );_GModRect_Send( Owner, 1 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.790 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Health : Regeneration ON" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 5 );	endfunction onDrop( playerid )	_EntRemove(MyIndex);endfunction onRemove()	endfunction Deploy()	-- Show HUD when player switch to this weaponlocal iHealth = _PlayerInfo(Owner,"health"); local mathh = iHealth / 5000;  local mathz = iHealth / 100 * 10;_GModRect_Start( "gmod/white" );	 _GModRect_SetPos( 0.030, 0.720, 0.27, 0.10 );	 _GModRect_SetColor( 0, 0, 0, 180 );	 _GModRect_SetTime( 9999, 0.2, 0.2 );	 _GModRect_SetDelay( 0 );_GModRect_Send( Owner, 1 );_GModRect_Start( "gmod/white" );	 _GModRect_SetPos( 0.090, 0.730, mathh, 0.02 );	 _GModRect_SetColor( 83, 176, 235, 255 );	 _GModRect_SetTime( 9999, 0.2, 0.2 );	 _GModRect_SetDelay( 0 );_GModRect_Send( Owner, 2 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.730 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 9999, 0.2, 0.2 );	 _GModText_SetText( mathz.. "%" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 3 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.2, 0.2 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );if (cfg == 1) then_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.790 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Health : Regeneration ON" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 5 );endif (cfg == 0) then_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.790 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Health : Regeneration OFF" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 5 );	endendfunction Holster()	-- Hide HUD when player leave this weapon_GModRect_Hide( Owner, 1, 0.3 );_GModRect_Hide( Owner, 2, 0.3 );_GModText_Hide( Owner, 3, 0.3 );_GModText_Hide( Owner, 4, 0.3 );_GModText_Hide( Owner, 5, 0.3 );endfunction onInit()	_SWEPSetSound( MyIndex, "single_shot", "Weapon_USP.Single" )endfunction onThink()	-- here is the beginning of the functions !local iArmor = _PlayerInfo(Owner,"armor"); local iHealth = _PlayerInfo(Owner,"health");if (regen == 1) then	-- Make the regenerationif (reghh == 1) theniHealth = iHealth + 100;	_PlayerSetHealth( Owner, iHealth );endif (reghz == 1) theniHealth = iHealth + 10;	_PlayerSetHealth( Owner, iHealth );endif (reghe == 1) theniHealth = iHealth + 1;	_PlayerSetHealth( Owner, iHealth );	endendlocal mathh = iHealth / 5000; local mathz = iHealth / 100 * 10;if (sset == 1) then    if (mathz == 100) then-- Show Regeneration HUD_GModRect_Start( "gmod/white" );	 _GModRect_SetPos( 0.090, 0.730, mathh, 0.02 );	 _GModRect_SetColor( 83, 176, 235, 255 );	 _GModRect_SetTime( 99999, 0.1, 0.0 );	 _GModRect_SetDelay( 0 );_GModRect_Send( Owner, 2 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.730 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.1, 0.0 );	 _GModText_SetText( mathz.. "%" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 3 );sset = 0;	endend	if (barshow == 1) then	_GModRect_Start( "gmod/white" );	 _GModRect_SetPos( 0.090, 0.730, mathh, 0.02 );	 _GModRect_SetColor( 83, 176, 235, 255 );	 _GModRect_SetTime( 1, 0.1, 0.1 );	 _GModRect_SetDelay( 0 );_GModRect_Send( Owner, 2 );_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.730 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 1, 0.1, 0.1 );	 _GModText_SetText( mathz.. "%" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 3 );sset = 1;end	if (iHealth < 980) then	reghz = 1;	reghe = 0;	barshow = 1;		elseif (iHealth < 1000) then	reghz = 0;	reghe = 1;	barshow = 1;		elseif (iHealth > 999) then	reghz = 0;	reghe = 0;	barshow = 0;	endif (regen == 1) then	if (regaz == 1) theniArmor = iArmor + 10;	_PlayerSetArmor( Owner, iArmor );endif (regae == 1) theniArmor = iArmor + 1;	_PlayerSetArmor( Owner, iArmor );end	if (iArmor < 80) then	regaz = 1;	regae = 0;	elseif (iArmor < 100) then	regaz = 0;	regae = 1;			end	if (iArmor == 100) then	regaz = 0;	regae = 0;			end	endendfunction onPrimaryAttack()	-- Make the Forcelocal vPlayerAng = _PlayerGetShootAng( Owner );	local vPlayerVel = vecMul( vPlayerAng, vector3(zz, zz, zz) );		_EntSetVelocity( Owner, vPlayerVel );endfunction onSecondaryAttack()	-- Change the power of Forceif (zz == 500) thenzz = 1500;_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );return false;endif (zz == 1500) thenzz = 3000;_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );return false;endif (zz == 3000) thenzz = 5000;_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );return false;endif (zz == 5000) thenzz = 500;_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.760 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Force : " ..zz );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 4 );return false;	endendfunction onReload()	-- Toggle regeneration ON / OFFif (_CurTime() > tmp) then	if (cfg == 1) then_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.790 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Health : Regeneration ON" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 5 );tmp = _CurTime() + 0.5; cfg = 0;  regen = 1;   barshow = 1;return false;else_GModText_Start( "HudHintTextLarge" );	 _GModText_SetPos( 0.040, 0.790 );	 _GModText_SetColor( 255, 255, 255, 255 );	 _GModText_SetTime( 99999, 0.0, 0.0 );	 _GModText_SetText( "Health : Regeneration OFF" );	 _GModText_SetDelay( 0 );_GModText_Send( Owner, 5 );tmp = _CurTime() + 0.5; cfg = 1;  regen = 0;   barshow = 1;return false;		end	endend-- Some Weapon Options-- ==========================================-- Basic Weapon Display Settings:-- ==========================================function getHUDMaterial()		return "gmod/SWEP/default"; end -- This weapon's picture in the HUD weapons browserfunction getDeathIcon()			return "swep_default"; end 	-- The picture of the gun you killed someone with in upper right hand corner (swep_default is the Pac-Man-like logo for Gmod)function getWeaponSwapHands() 	return true; end 		-- Return true for right-handed in CSS, false for right-handed in HL2.function getWeaponFOV() 		return 55; end 			-- Feild of veiw (a higher number makes the gun appear further away from you)function getWeaponSlot() 		return 1; end 			-- Weapon slot (0-5) 0=crowbar, 1=pistol, 2=smg, 3=shotgun, 4=grenade, 5=pheropod (bugbait)function getWeaponSlotPos() 	return 7; end 				-- Slot position (0-infinity, make sure it won't cover up existing weapons though) 0=crowbar, 1=stunstick, 2=grav gun, 3=physgun, etc.function getViewModel() 		return "models/weapons/v_hands.mdl"; end 	-- The view model (What it looks like when it's in your hands)function getWorldModel()		return "models/weapons/w_knife_ct.mdl"; end 	-- The world model (What it looks like when it is spawned on the ground)function getAnimPrefix()		return "pistol"; end 		-- The animations for the viewmodel (Kind of like how you hold it)  (pistol, smg, ar2, shotgun, rpg, phys, crossbow, melee, slam, grenade)function getPrintName() 		return "ADMIN Gun"; end 		-- What the weapon is called in the HUD weapons browserfunction getClassName() 		return "weapon_admingun"; end 		-- What the weapons is called by the console when it reports a kill-- ==========================================-- Basic Attributes:-- ==========================================function getFiresUnderwater() 	return true; end 	-- Can it shoot underwater?function getReloadsSingly() 	return false; end 	-- Reload after each shot? (like a shotgun)-- ==========================================-- Primary Fire Settings:-- ==========================================function getDamage() 				return 0; end 			-- Primary fire damage, per bulletfunction getPrimaryShotDelay() 		return 0.001; end 		-- Delay between primary fire shots (in seconds)function getPrimaryIsAutomatic() 	return true; end 		-- Is primary fire automatic? (can you hold down the mouse and it will fire repeatedly?)function getNumShotsPrimary()		return 5; end 			-- Number of bullets per shot (The HL2 shotgun uses 7)function getMaxClipPrimary() 		return 30; end 			-- How much primary ammo each clip can hold before you have to reload ( -1 = Infinate)function getDefClipPrimary() 		return 930; end 		-- How much primary ammo is in the gun when it's spawned (Should be more than the clip can hold) ( -1 = Infinate)function getPrimaryAmmoType() 		return "XBowBolt"; end	-- Primary ammo type; NOTE - this only matters when you plan on picking up  more ammo for the gun later! It does not effect the performance of the gun whatsoever. (Pistol, 357, Buckshot, SMG1, smg1_grenade, AR2, AR2AltFire, XBowBolt, rpg_round, grenade, slam)function getPrimaryScriptOverride()	return 3; end 			-- 0 = Don't override (shoot bullets, make sound and flash), 1 = Just make flash/sounds (no bullets), 2 = Just animations, 3 = Do nothing (Still calls onPrimaryAttack)function getTracerFreqPrimary()		return 1; end 			-- How often a primary ammo bullet is a tracer round (0 = no tracers, 1 = every bullet is a tracer, 2 = every other bullet is a tracer, etc.)function getBulletSpread() 			return vector3(0.0, 0.0, 0.0); end 	-- Bullet spread, not view shake (X=down, Y=left, Z=clockwise spin)function getViewKick() 				return vector3(0.0, 0.0, 0.0); end -- Veiw kick for each shot(X=down, Y=left, Z=clockwise spin) (You can use negatives to make it go the opposite direction)function getViewKickRandom() 		return vector3(0.0, 0.0, 0.0); end 	-- Veiw kick random (X=up or down, Y=left or right, Z=clockwise or counterclockwise spin)-- ==========================================-- Secondary Fire Settings:-- ==========================================function getDamageSecondary()			return 0; end 		-- Secondary fire damage, per bulletfunction getSecondaryShotDelay() 		return 0.1; end 		-- Delay between secondary fire shots (in seconds)function getSecondaryIsAutomatic() 		return false; end 	-- Is secondary fire automatic? (Can you hold down the mouse and it will fire repeatedly?)function getNumShotsSecondary()			return 0; end 		-- Number of bullets per shot (the HL2 shotgun's secondary fire uses 14 for secondary fire)function getMaxClipSecondary() 			return 255; end 		-- How much secondary ammo each clip can hold before you have to reload ( -1 = Infinate)function getDefClipSecondary() 			return 255; end 		-- How much secondary ammo is in the gun when it's spawned (Should be more than the clip can hold) ( -1 = Infinate)function getSecondaryAmmoType() 		return "XBowBolt"; end 		-- Secondary ammo type; NOTE - this only matters when you plan on picking up  more ammo for the gun later! It does not effect the performance of the gun whatsoever. (Pistol, 357, Buckshot, SMG1, smg1_grenade, AR2, AR2AltFire, XBowBolt, rpg_round, grenade, slam)function getSecondaryScriptOverride() 	return 3; end 		-- 0 = Don't override (shoot bullets, make sound and flash), 1 = Just make flash/sounds (no bullets), 2 = Just animations, 3 = Do nothing (Still calls onSecondaryAttack)function getTracerFreqSecondary()		return 1; end 		-- How often a secondary ammo bullet is a tracer round (0 = no tracers, 1 = every bullet is a tracer, 2 = every other bullet is a tracer, etc.)function getBulletSpreadSecondary()		return vector3(0.0, 0.0, 0.0); end 	-- Secondary fire bullet spread, not view shake (X=down, Y=left, Z=clockwise spin)function getViewKickSecondary() 		return vector3(0.0, 0.0, 0.0); end 	-- View kick for secondary fire (X=down, Y=left, Z=clockwise spin) (You can use negatives to make it go the opposite direction)function getViewKickRandomSecondary() 	return vector3(0.0, 0.0, 0.0); end 	-- Veiw kick random for secondary fire (X=up or down, Y=left or right, Z=clockwise or counterclockwise spin)-- ////////////// ----  Made by Jan  ---- //////////// --