All pastes #556165 Raw Edit

gmod9 healgun

public lua v1 · immutable
·published 2007-06-10 13:20 UTC
rendered paste body
_OpenScript( "includes/defines.lua" );_OpenScript( "includes/vector3.lua" );_OpenScript( "includes/misc.lua" );_OpenScript( "includes/backcompat.lua" );-- These variables are passed by the engine-- Don't re-define them in your SWEP.MyIndex			=	0; -- Weapon's entity index.Owner			= 	0; -- The player that owns this weaponCurrentTime		=	0; -- The current game timelayerid			=	0; -- layeridselfheal		=	0;set			=	2;function onPickup( playerid )		-- When the player picks this weapon up...-- What you want to do when the player picks this weapon up goes hereendfunction onDrop( playerid )			-- When the player drops this weapon... (when he dies with this weapon out)-- What you want to do when the player drops this weapon goes hereendfunction onRemove()					-- When this weapon is deleted from the ground...-- What you want to do when this weapon is deleted from the ground goes hereendfunction Deploy()					-- When the player swaps to this weapon...-- What you want to do when this weapon is swapped to goes hereendfunction Holster()					-- When the player swaps away from this weapon...-- What you want to do when this weapon is swapped away from goes hereendfunction onInit()					-- When this script is loaded... (If your gun will shoot objects, precache the model this gun will shoot here)--_SWEPSetSound( MyIndex, "single_shot", "Weapon_USP.Single" )	-- Sets the sound-- What you want to do when this SWEP is loaded (spawned) goes hereendfunction onThink()					-- Called every frame (Constantly)-- What you want to do every frame (Constantly) goes hereendfunction onPrimaryAttack()			-- When the player hits primary fire...-- What you want to do when the player hits primary fire (Besides shoot) goes hereif (selfheal == 0) then_TraceLine(_PlayerGetShootPos(Owner),_PlayerGetShootAng(Owner),1024,Owner);local spielor = _TraceGetEnt();if (_EntGetType(spielor) == "player") thenlocal iHealth = _PlayerInfo(spielor,"health");iHealth = iHealth + 1;if (iHealth > 300) thenreturnend_PlayerSetHealth( spielor, iHealth );_EffectInit()_EffectSetEnt(Owner)_EffectSetOrigin(_TraceEndPos())_EffectSetStart(_PlayerGetShootPos(Owner))_EffectSetScale(15)_EffectSetMagnitude(1)_EffectDispatch("FadingLineTeam")endelseif (selfheal == 1) thenlocal oHealth = _PlayerInfo(Owner,"health");oHealth = oHealth + 1;if (oHealth > 300) thenreturn end_PlayerSetHealth( Owner, oHealth );endendfunction onSecondaryAttack()		-- When the player hits secondary fire...	-- What you want to do when the player hits secondary fire (Besides shoot) goes hereif (set == 1) thenselfheal = 0_PrintMessage(Owner,HUD_PRINTCENTER,"Selfheal=Off!")set = 2elseif (set == 2) thenselfheal = 1_PrintMessage(Owner,HUD_PRINTCENTER,"Selfheal=On!")set = 1endendfunction onReload()					-- When the player hits reload... (Keep the return true, or change to false to not allow the player to reload)return true-- What you want to do when the player reloads this weapon goes here (Other than reload the clip) goes hereend-- ==========================================-- 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 74; end 			-- Feild of veiw (a higher number makes the gun appear further away from you)function getWeaponSlot() 	return 3; 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_rif_famas.mdl"; end 	-- The view model (What it looks like when it's in your hands)function getWorldModel()	return "models/weapons/w_rif_famas.mdl"; end 	-- The world model (What it looks like when it is spawned on the ground)function getAnimPrefix()	return "ar2"; 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 "DrogenViechs\nHealGun"; end 		-- What the weapon is called in the HUD weapons browserfunction getClassName() 	return "weapon_drogenviech_healgun"; 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.0; 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 1; end 			-- Number of bullets per shot (The HL2 shotgun uses 7)function getMaxClipPrimary() 		return 255; end 			-- How much primary ammo each clip can hold before you have to reload ( -1 = Infinate)function getDefClipPrimary() 		return 255; 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 1; 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)