Prop interactions: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(more KVs gleaned from the source code)
(Filled section on "allow_overhead")
Line 51: Line 51:
: Prop does not move when 'attacked' with the physgun. It may still take damage, but it won't move due to the impact.
: Prop does not move when 'attacked' with the physgun. It may still take damage, but it won't move due to the impact.
; <code>allow_overhead yes</code>
; <code>allow_overhead yes</code>
: {{todo}}
: Physgun can carry the prop directly above the player. {{note|Some entities don't need this to allow the prop to be carried above the player. See <code>CGrabController::IsObjectAllowedOverhead()</code>.}}
; <code>onpickup create_flare</code>
; <code>onpickup create_flare</code>
: Emit a flare from the "fuse" attachment when picked up by the gravity gun. {{note|<code>HL2_EPISODIC</code> DLLs only; see <code>CBreakableProp::OnPhysGunPickup()</code>.}}
: Emit a flare from the "fuse" attachment when picked up by the gravity gun. {{note|<code>HL2_EPISODIC</code> DLLs only; see <code>CBreakableProp::OnPhysGunPickup()</code>.}}

Revision as of 10:38, 23 April 2017

The physgun_interactions KeyValues block affects how a prop 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
onfirstimpact <choices>
When you 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.
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 the prop directly above the player.
Note.pngNote:Some entities don't need this to allow the prop to be carried above the player. See CGrabController::IsObjectAllowedOverhead().
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().

See Also