63 lines
2.1 KiB
SourcePawn
63 lines
2.1 KiB
SourcePawn
#if defined _SetCollisionGroup_included
|
|
#endinput
|
|
#endif
|
|
|
|
#define _SetCollisionGroup_included
|
|
|
|
//https://github.com/ValveSoftware/source-sdk-2013/blob/master/mp/src/public/const.h#L397
|
|
/*enum COLLISION_GROUP
|
|
{
|
|
COLLISION_GROUP_NONE = 0,
|
|
COLLISION_GROUP_DEBRIS, // Collides with nothing but world and static stuff
|
|
COLLISION_GROUP_DEBRIS_TRIGGER, // Same as debris, but hits triggers
|
|
COLLISION_GROUP_INTERACTIVE_DEBRIS, // Collides with everything except other interactive debris or debris
|
|
COLLISION_GROUP_INTERACTIVE, // Collides with everything except interactive debris or debris
|
|
COLLISION_GROUP_PLAYER,
|
|
COLLISION_GROUP_BREAKABLE_GLASS,
|
|
COLLISION_GROUP_VEHICLE,
|
|
COLLISION_GROUP_PLAYER_MOVEMENT, // For HL2, same as Collision_Group_Player, for
|
|
// TF2, this filters out other players and CBaseObjects
|
|
COLLISION_GROUP_NPC, // Generic NPC group
|
|
COLLISION_GROUP_IN_VEHICLE, // for any entity inside a vehicle
|
|
COLLISION_GROUP_WEAPON, // for any weapons that need collision detection
|
|
COLLISION_GROUP_VEHICLE_CLIP, // vehicle clip brush to restrict vehicle movement
|
|
COLLISION_GROUP_PROJECTILE, // Projectiles!
|
|
COLLISION_GROUP_DOOR_BLOCKER, // Blocks entities not permitted to get near moving doors
|
|
COLLISION_GROUP_PASSABLE_DOOR, // Doors that the player shouldn't collide with
|
|
COLLISION_GROUP_DISSOLVING, // Things that are dissolving are in this group
|
|
COLLISION_GROUP_PUSHAWAY, // Nonsolid on client and server, pushaway in player code
|
|
|
|
COLLISION_GROUP_NPC_ACTOR, // Used so NPCs in scripts ignore the player.
|
|
COLLISION_GROUP_NPC_SCRIPTED, // USed for NPCs in scripts that should not collide with each other
|
|
}*/
|
|
|
|
/**
|
|
* Sets a entity collision group
|
|
*
|
|
* @param entity The entity index.
|
|
* @param group The group index.
|
|
*
|
|
* no return
|
|
*/
|
|
native void SetCollisionGroup(int entity, int group);
|
|
|
|
|
|
public SharedPlugin __pl_PlayerManager =
|
|
{
|
|
name = "SetCollisionGroup",
|
|
file = "SetCollisionGroup.smx",
|
|
|
|
#if defined REQUIRE_PLUGIN
|
|
required = 1
|
|
#else
|
|
required = 0
|
|
#endif
|
|
};
|
|
|
|
#if !defined REQUIRE_PLUGIN
|
|
public void __pl_PlayerManager_SetNTVOptional()
|
|
{
|
|
MarkNativeAsOptional("SetCollisionGroup");
|
|
}
|
|
#endif
|