Prop interactions

From Valve Developer Community
Revision as of 21:24, 10 May 2017 by Blixibon (talk | contribs) (Accounted for ragdolls, added lose_energy, made other minor edits)
Jump to navigation Jump to search

The physgun_interactions KeyValues block affects how a prop or ragdoll is handled by and responds to the Gravity Gun. It is embedded in a model with the $keyvalues QC command.

Example

$keyvalues
{
	physgun_interactions
	{
	 	preferred_carryangles 	"0 0 0"
	 	onworldimpact 		stick
	 	onfirstimpact 		break
	 	onfirstimpact 		paintsplat
	 	onlaunch 		spin_zaxis
	 	onbreak 		explode_fire
	 	damage 			none
	}
}

Options

preferred_carryangles <angles>
Sets the angles, relative to the player's orientation, at which the prop will be held when carried.
This is used with the sawblades and propellers in Ravenholm, as well as the turret NPCs in Nova Prospekt.
onworldimpact <choices>
When hitting something after being thrown by the gravity gun... (entities too, not just the world)
stick
Cling to / embed in the surface.
bloodsplat
Create a blood decal
Todo: Is this onfirstimpact and/or exclusive to ragdolls?
onfirstimpact <choices>
When we first hit something after being thrown...
break
Break on colliding with anything after being launched.
paintsplat
Applies paint decals to the first thing it hits after being launched.
impale
Impales whatever it first collides with after being launched.
lose_energy
Apparently non-functional.
Todo: Verify
onlaunch <choices>
When flung by the gravity gun...
Default
Physgun applies random angular velocity to the prop as it launches.
spin_none
Prop does not spin when launched.
spin_zaxis
Prop should spin around the Z axis when launched by the physcannon. (e.g. Ravenholm propellers.)
onbreak <choices>
When breaking because of being flung...
explode_fire
Ignite nearby enemies (that are flammable)
damage none
Prop does not move when 'attacked' with the physgun. It may still take damage, but it won't move due to the impact.
allow_overhead yes
Physgun can carry prop directly above wielder.
Note.pngNote:Some entities don't need this to allow the prop to be carried overhead. See CGrabController::IsObjectAllowedOverhead().
onpickup <choices>
When picked up by the gravity gun...
onpickup create_flare
Emit a flare from the "fuse" attachment when picked up by the gravity gun.
Note.pngNote:HL2_EPISODIC DLLs only; see CBreakableProp::OnPhysGunPickup().
onpickup boogie
Ragdolls only. Begins ragdoll boogie, providing random electrical effects to the ragdoll.

See Also