sm-plugins/SetCollisionGroup/scripting/include/SetCollisionGroup.inc

63 lines
2.1 KiB
PHP
Raw Normal View History

2020-10-02 06:48:02 +02:00
#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