sourcemod/plugins/include/sdktools_functions.inc
Scott Ehlert bcc798e165 Implemented amb584 - CGlobalEntityList support in SDKTools
Also added FindEntityByClassname native to start this off

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401246
2007-08-01 07:18:58 +00:00

160 lines
4.7 KiB
SourcePawn

/**
* vim: set ts=4 :
* ===============================================================
* SourceMod (C)2004-2007 AlliedModders LLC. All rights reserved.
* ===============================================================
*
* This file is part of the SourceMod/SourcePawn SDK. This file may only be used
* or modified under the Terms and Conditions of its License Agreement, which is found
* in LICENSE.txt. The Terms and Conditions for making SourceMod extensions/plugins
* may change at any time. To view the latest information, see:
* http://www.sourcemod.net/license.php
*
* Version: $Id$
*/
#if defined _sdktools_functions_included
#endinput
#endif
#define _sdktools_functions_included
/**
* Removes a player's item.
*
* @param client Client index.
* @param item CBaseCombatWeapon entity index.
* @return True on success, false otherwise.
* @error Invalid client or entity, lack of mod support, or client not in
* game.
*/
native bool:RemovePlayerItem(client, item);
/**
* Gives a named item to a player.
*
* @param client Client index.
* @param item Item classname (such as weapon_ak47).
* @param iSubType Unknown.
* @return Entity index on success, or -1 on failure.
* @error Invalid client or client not in game, or lack of mod support.
*/
native GivePlayerItem(client, const String:item[], iSubType=0);
/**
* Returns the weapon in a player's slot.
*
* @param client Client index.
* @param slot Slot index (mod specific).
* @return Entity index on success, -1 if no weapon existed.
* @error Invalid client or client not in game, or lack of mod support.
*/
native GetPlayerWeaponSlot(client, slot);
/**
* Ignites an entity on fire.
*
* @param entity Entity index.
* @param time Number of seconds to set on fire.
* @param npc True to only affect NPCs.
* @param size Unknown.
* @param level Unknown.
* @noreturn
* @error Invalid entity or client not in game, or lack of mod support.
*/
native IgniteEntity(entity, Float:time, bool:npc=false, Float:size=0.0, bool:level=false);
/**
* Extinguishes a player that is on fire.
*
* @param entity Entity index.
* @noreturn
* @error Invalid entity or client not in game, or lack of mod support.
*/
native ExtinguishEntity(client);
/**
* Teleports an entity.
*
* @param entity Client index.
* @param origin New origin, or NULL_VECTOR for no change.
* @param angles New angles, or NULL_VECTOR for no change.
* @param velocity New velocity, or NULL_VECTOR for no change.
* @noreturn
* @error Invalid entity or client not in game, or lack of mod support.
*/
native TeleportEntity(entity, const Float:origin[3], const Float:angles[3], const Float:velocity[3]);
/**
* Forces a player to commit suicide.
*
* @param client Client index.
* @noreturn
* @error Invalid client or client not in game, or lack of mod support.
*/
native ForcePlayerSuicide(client);
/**
* Slaps a player in a random direction.
*
* @param client Client index.
* @param health Health to subtract.
* @param sound False to disable the sound effects.
* @noreturn
* @error Invalid client or client not in game, or lack of mod support.
*/
native SlapPlayer(client, health=5, bool:sound=true);
/**
* Searches for an entity by classname.
*
* @param startEnt The entity index to begin searching from.
* Use -1 to start from the first entity.
* @param classname Classname of the entity to find.
* @return Entity index >= 0 if found, -1 otherwise.
* @error Lack of mod support.
*/
native FindEntityByClassname(startEnt, const String:classname[]);
/**
* Returns the client's eye angles.
*
* @param client Player's index.
* @param ang Destination vector to store the client's eye angles.
* @noreturn
* @error Invalid client index, client not in game, or no mod support.
*/
native GetClientEyeAngles(client, Float:ang[3]);
/**
* Returns if the client is alive or dead.
*
* @param client Player's index.
* @return True if the client is dead, false otherwise.
* @error Invalid client index, client not in game, or no mod support.
*/
native bool:IsPlayerAlive(client);
/**
* @deprecated
*/
stock IgnitePlayer(client, Float:time, bool:npc=false, Float:size=0.0, bool:level=false)
{
return IgniteEntity(client, time, npc, size, level);
}
/**
* @deprecated
*/
stock ExtinguishClient(client)
{
return ExtinguishEntity(client);
}
/**
* @deprecated
*/
stock TeleportPlayer(client, const Float:origin[3], const Float:angles[3], const Float:velocity[3])
{
return TeleportEntity(client, origin, angles, velocity);
}