plugins/include/sdktools_functions.inc
author Phong Dang <teame06@gmail.com>
Wed Aug 01 18:22:53 2007 +0000 (2007-08-01)
changeset 1245 bb0611ab4bed
parent 1244 989675c02a03
child 1268 9360f5ea2289
permissions -rw-r--r--
Updated license header.
dvander@954
     1
/**
dvander@954
     2
 * vim: set ts=4 :
dvander@954
     3
 * ===============================================================
dvander@954
     4
 * SourceMod (C)2004-2007 AlliedModders LLC.  All rights reserved.
dvander@954
     5
 * ===============================================================
dvander@954
     6
 *
dvander@954
     7
 *  This file is part of the SourceMod/SourcePawn SDK.  This file may only be used 
dvander@954
     8
 * or modified under the Terms and Conditions of its License Agreement, which is found 
dvander@954
     9
 * in LICENSE.txt.  The Terms and Conditions for making SourceMod extensions/plugins 
dvander@954
    10
 * may change at any time.  To view the latest information, see:
dvander@954
    11
 *   http://www.sourcemod.net/license.php
dvander@954
    12
 *
teame06@1245
    13
 * Version: $Id$ 
dvander@954
    14
 */
dvander@954
    15
dvander@954
    16
#if defined _sdktools_functions_included
dvander@954
    17
  #endinput
dvander@954
    18
#endif
dvander@954
    19
#define _sdktools_functions_included
dvander@954
    20
dvander@954
    21
/**
dvander@954
    22
 * Removes a player's item.
dvander@954
    23
 *
dvander@954
    24
 * @param client		Client index.
dvander@954
    25
 * @param item			CBaseCombatWeapon entity index.
dvander@954
    26
 * @return				True on success, false otherwise.
dvander@954
    27
 * @error				Invalid client or entity, lack of mod support, or client not in 
dvander@954
    28
 *						game.
dvander@954
    29
 */
dvander@954
    30
native bool:RemovePlayerItem(client, item);
dvander@954
    31
dvander@954
    32
/**
dvander@954
    33
 * Gives a named item to a player.
dvander@954
    34
 *
dvander@954
    35
 * @param client		Client index.
dvander@954
    36
 * @param item			Item classname (such as weapon_ak47).
dvander@954
    37
 * @param iSubType		Unknown.
dvander@954
    38
 * @return				Entity index on success, or -1 on failure.
dvander@954
    39
 * @error				Invalid client or client not in game, or lack of mod support.
dvander@954
    40
 */
dvander@954
    41
native GivePlayerItem(client, const String:item[], iSubType=0);
dvander@954
    42
dvander@954
    43
/**
dvander@954
    44
 * Returns the weapon in a player's slot.  
dvander@954
    45
 *
dvander@954
    46
 * @param client		Client index.
dvander@954
    47
 * @param slot			Slot index (mod specific).
dvander@954
    48
 * @return				Entity index on success, -1 if no weapon existed.
dvander@955
    49
 * @error				Invalid client or client not in game, or lack of mod support.
dvander@955
    50
 */
dvander@955
    51
native GetPlayerWeaponSlot(client, slot);
dvander@955
    52
dvander@955
    53
/**
dvander@980
    54
 * Ignites an entity on fire.
dvander@955
    55
 *
dvander@980
    56
 * @param entity		Entity index.
dvander@955
    57
 * @param time			Number of seconds to set on fire.
dvander@955
    58
 * @param npc			True to only affect NPCs.
dvander@955
    59
 * @param size			Unknown.
dvander@955
    60
 * @param level			Unknown.
dvander@955
    61
 * @noreturn
dvander@980
    62
 * @error				Invalid entity or client not in game, or lack of mod support.
dvander@954
    63
 */
dvander@980
    64
native IgniteEntity(entity, Float:time, bool:npc=false, Float:size=0.0, bool:level=false);
dvander@955
    65
dvander@955
    66
/**
dvander@955
    67
 * Extinguishes a player that is on fire.
dvander@955
    68
 *
dvander@980
    69
 * @param entity		Entity index.
dvander@955
    70
 * @noreturn
dvander@980
    71
 * @error				Invalid entity or client not in game, or lack of mod support.
dvander@955
    72
 */
dvander@980
    73
native ExtinguishEntity(client);
dvander@955
    74
dvander@955
    75
/**
dvander@980
    76
 * Teleports an entity.
dvander@955
    77
 *
dvander@980
    78
 * @param entity		Client index.
dvander@955
    79
 * @param origin		New origin, or NULL_VECTOR for no change.
dvander@955
    80
 * @param angles		New angles, or NULL_VECTOR for no change.
dvander@955
    81
 * @param velocity		New velocity, or NULL_VECTOR for no change.
dvander@955
    82
 * @noreturn
dvander@980
    83
 * @error				Invalid entity or client not in game, or lack of mod support.
dvander@980
    84
 */
dvander@980
    85
native TeleportEntity(entity, const Float:origin[3], const Float:angles[3], const Float:velocity[3]);
dvander@980
    86
dvander@980
    87
/**
dvander@1151
    88
 * Forces a player to commit suicide.
dvander@1151
    89
 *
dvander@1151
    90
 * @param client		Client index.
dvander@1151
    91
 * @noreturn
dvander@1169
    92
 * @error				Invalid client or client not in game, or lack of mod support.
dvander@1151
    93
 */
dvander@1151
    94
native ForcePlayerSuicide(client);
dvander@1151
    95
dvander@1151
    96
/**
dvander@1169
    97
 * Slaps a player in a random direction.
dvander@1169
    98
 *
dvander@1169
    99
 * @param client		Client index.
dvander@1169
   100
 * @param health		Health to subtract.
dvander@1169
   101
 * @param sound			False to disable the sound effects.
dvander@1169
   102
 * @noreturn
dvander@1169
   103
 * @error				Invalid client or client not in game, or lack of mod support.
dvander@1169
   104
 */
dvander@1169
   105
native SlapPlayer(client, health=5, bool:sound=true);
dvander@1169
   106
dvander@1169
   107
/**
ds@1240
   108
 * Searches for an entity by classname.
ds@1240
   109
 *
ds@1240
   110
 * @param startEnt		The entity index to begin searching from.
ds@1240
   111
 *						Use -1 to start from the first entity.
ds@1240
   112
 * @param classname		Classname of the entity to find.
ds@1240
   113
 * @return				Entity index >= 0 if found, -1 otherwise.
ds@1240
   114
 * @error				Lack of mod support.
ds@1240
   115
 */
ds@1240
   116
native FindEntityByClassname(startEnt, const String:classname[]);
ds@1240
   117
ds@1240
   118
/**
faluco@1219
   119
 * Returns the client's eye angles.
faluco@1219
   120
 *
faluco@1219
   121
 * @param client		Player's index.
faluco@1219
   122
 * @param ang			Destination vector to store the client's eye angles.
faluco@1219
   123
 * @noreturn
faluco@1219
   124
 * @error				Invalid client index, client not in game, or no mod support.
faluco@1219
   125
 */
faluco@1219
   126
native GetClientEyeAngles(client, Float:ang[3]);
faluco@1219
   127
faluco@1219
   128
/**
teame06@1239
   129
 * Returns if the client is alive or dead.
teame06@1239
   130
 *
teame06@1239
   131
 * @param client		Player's index.
teame06@1244
   132
 * @return			True if the client is alive, false otherwise.
teame06@1239
   133
 * @error				Invalid client index, client not in game, or no mod support.
teame06@1239
   134
 */
teame06@1239
   135
native bool:IsPlayerAlive(client);
teame06@1239
   136
teame06@1239
   137
/**
dvander@980
   138
 * @deprecated
dvander@955
   139
 */
dvander@980
   140
stock IgnitePlayer(client, Float:time, bool:npc=false, Float:size=0.0, bool:level=false)
dvander@980
   141
{
dvander@980
   142
	return IgniteEntity(client, time, npc, size, level);
dvander@980
   143
}
dvander@980
   144
dvander@980
   145
/**
dvander@980
   146
 * @deprecated
dvander@980
   147
 */
dvander@980
   148
stock ExtinguishClient(client)
dvander@980
   149
{
dvander@980
   150
	return ExtinguishEntity(client);
dvander@980
   151
}
dvander@980
   152
dvander@980
   153
/**
dvander@980
   154
 * @deprecated
dvander@980
   155
 */
dvander@980
   156
stock TeleportPlayer(client, const Float:origin[3], const Float:angles[3], const Float:velocity[3])
dvander@980
   157
{
dvander@980
   158
	return TeleportEntity(client, origin, angles, velocity);
dvander@980
   159
}