Also added FindEntityByClassname native to start this off --HG-- extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401246
		
			
				
	
	
		
			160 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			SourcePawn
		
	
	
	
	
	
			
		
		
	
	
			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);
 | |
| }
 |