weapon_physcannon
Class hierarchy |
---|
CWeaponPhysCannon |
weapon_physcannon.cpp
|
weapon_physcannon
is a point entity available in Half-Life 2 series and Portal.
It's the Zero-Point Energy Field Manipulator (AKA Gravity Gun), used to manipulate physics objects in the game world. Before it is picked up, the gravity gun also follows all physics rules as if it were a prop_physics
.
The Zero-Point Energy Field Manipulator was designed for handling hazardous materials, but the people at Eli's lab mainly used it for heavy lifting.
It does not require any ammunition or recharging. Special interactions between a physics prop and the gravity gun are defined by the physgun_interactions in the model's QC file.
Gravity Gun has two attacks: punt and grab. Primary attack emits a charge, making props fly. Secondary attack attracts prop to the gun and grabs it. In this state, primary attack throws the prop, secondary attack releases it.
The effective range of each attack depends largely on the mass of the prop. Some NPCs (antlions and headcrabs) are pushed back by the impact of a punt at close range.
env_global
entity to enable the global state super_phys_gun
. This does not work in Half-Life 2: Deathmatch nor Portal.Contents
Games
[Todo]
Half-Life 2: Deathmatch
Players spawn with a Gravity Gun by default.
KeyValues
- Name
(targetname)
<string> - The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
Flags
Start Constrained : [1]
- Prevents the model from moving. Off by default.
Start without grab functionality. : [2]
Deny player pickup (reserve for NPC) : [2]
(in all games since )
Not puntable by Gravity Gun : [4]
(in all games since )
Inputs
HideWeapon
!FGD- If this weapon is being held, hide the worldmodel and/or viewmodel via
EF_NODRAW
. Weapon will still be useable. The weapon will become visible again if the holder is to switch between weapons in their inventory.
Outputs
Weapon:
OnNPCPickup
- Fires when an NPC picks up this weapon. (
!activator
is the NPC.)
OnPlayerUse
- Fires when the player +uses this weapon. (
!activator
is the player.)
OnPlayerPickup
- Fires when a player picks up this weapon. (
!activator
is the player.)
OnCacheInteraction
- Fires when the player 'proves' they've found this weapon. Fires on: Player Touch, +USE pickup, Physcannon pickup, Physcannon punt.
Dedicated ConVars
Cvar/Command | Parameters or default value | Descriptor | Effect |
---|---|---|---|
g_debug_physcannon | 0 | bool | Enables Gravity Gun debugging, which shows a wireframe outline around objects when picked up |
physcannon_ball_cone | 0.997 | float | The dot product of the search cone when using the charged Gravity Gun; if it detects a Prop combine ball within this cone, it'll prioritize picking it up |
physcannon_chargetime | 2 | float | Todo: Add a description for this variable. |
physcannon_cone | 0.97 | float | Changes how wide the pickup range is, lower numbers are wider. This is a dot product value |
physcannon_dmg_glass | 15 | float | Todo: Add a description for this variable. |
physcannon_maxforce | 1500.0 | float | Todo: Add a description for this variable. |
physcannon_maxmass | 250.0 | float | Sets the maximum mass at which an object can be picked up by the gravity gun |
physcannon_mega_enabled | 0 | bool | Enables Dark Energy Field Manipulator |
physcannon_mega_pullforce | 8000.0 | float | How much force used by Dark Energy Field Manipulator to pull objects to player. |
physcannon_mega_tracelength | 850.0 | float | The distance at which the Dark Energy Field Manipulator will be able to pull an object |
physcannon_minforce | 700.0 | float | Todo: Add a description for this variable. |
physcannon_pullforce | 4000.0 | float | How much force to be used when pulling objects to the player |
physcannon_punt_cone | 0.997 | float | Todo: Add a description for this variable. |
physcannon_right_turrets | 0 | float | Todo: Add a description for this variable. |
physcannon_tracelength | 250.0 | float | How far an object can be pulled from |
Console commands
Cvar/Command | Parameters or default value | Descriptor | Effect |
---|---|---|---|
phys_swap |
| Swaps between gravity gun and the most recently-used weapon. Bound to 'g' by default. |