no message

This commit is contained in:
Felix Geyer
2004-02-15 02:29:51 +00:00
parent 6eb236f8b7
commit 21d870c57a
15 changed files with 997 additions and 245 deletions

View File

@ -1,7 +1,7 @@
/* AMX Mod X functions
*
* (c) 2002-2004, OLO
* modified by BAILOPAN, Manip, PM, SniperBeamer
* modified by the AMX Mod X Development Team
*
* This file is provided as is (no warranties).
*/
@ -14,11 +14,11 @@
#include <vault>
/* Function is called just after server activation.
* Good place for configuration loading, commands and cvars registration. */
* Good place for configuration loading, commands and cvars registration. */
forward plugin_init();
/* Function is called when all plugin_init from plugins
* were called, so all commmands and cvars should be already registered. */
* were called, so all commmands and cvars should be already registered. */
forward plugin_cfg();
/* Function called before plugin unloading (server deactivation) */
@ -37,7 +37,7 @@ forward client_infochanged(id);
forward client_connect(id);
/* Called when client gets valid STEAM id (usually
* between client_connect() and client_putinserver()). */
* between client_connect() and client_putinserver()). */
forward client_authorized(id);
/* Called when client is disconnecting from server. */
@ -53,7 +53,7 @@ forward client_putinserver(id);
native register_plugin(const plugin_name[],const version[],const author[]);
/* Gets info about plugin by given index.
* Function returns -1 if plugin doesn't exist with given index. */
* Function returns -1 if plugin doesn't exist with given index. */
native get_plugin(index,filename[],len1,name[],len2,version[],len3,author[],len4,status[],len5);
/* Returns number of all loaded plugins. */
@ -78,8 +78,8 @@ native set_localinfo(const info[],const value[]);
native get_localinfo(const info[],output[],len);
/* Shows text in MOTD window. When there is no header, the MOTD title
* will be the name of server. If message is filename, then a contents
* of this file will be displayed as MOTD. */
* will be the name of server. If message is filename, then a contents
* of this file will be displayed as MOTD. */
native show_motd(player,const message[],const header[]="");
/* Sends message to player. Set index to 0 to send text globaly. */
@ -95,28 +95,27 @@ native console_print(id,const message[],{Float,_}:...);
native console_cmd(id,const cmd[],{Float,_}:...);
/* Registers event on which a given function will be called
* Flags:
* "a" - global event.
* "b" - specified.
* "c" - send only once when repeated to other players.
* "d" - call if is send to dead player.
* "e" - to alive.
* Examples for conditions:
* "2=c4" - 2nd parameter of message must be sting "c4".
* "3>10" - 3rd parameter must be greater then 10.
* "3!4" - 3rd must be different from 4.
* "2&Buy" - 2nd parameter of message must contain "Buy" substring.
* "2!Buy" - 2nd parameter of message can't contain "Buy" substring. */
* Flags:
* "a" - global event.
* "b" - specified.
* "c" - send only once when repeated to other players.
* "d" - call if is send to dead player.
* "e" - to alive.
* Examples for conditions:
* "2=c4" - 2nd parameter of message must be sting "c4".
* "3>10" - 3rd parameter must be greater then 10.
* "3!4" - 3rd must be different from 4.
* "2&Buy" - 2nd parameter of message must contain "Buy" substring.
* "2!Buy" - 2nd parameter of message can't contain "Buy" substring. */
native register_event(const event[],const function[],const flags[],cond[]="", ... );
/* Registers log event on which the given function will be called
* Examples for conditions:
* "0=World triggered" "1=Game_Commencing"
* "1=say"
* "3=Terrorists_Win"
* "1=entered the game"
* "0=Server cvar"
*/
* Examples for conditions:
* "0=World triggered" "1=Game_Commencing"
* "1=say"
* "3=Terrorists_Win"
* "1=entered the game"
* "0=Server cvar" */
native register_logevent(const function[], argsnum, ... );
/* Sets format for hudmessage. */
@ -129,9 +128,9 @@ native show_hudmessage(index,const message[],{Float,_}:...);
native show_menu(index,keys,const menu[], time = -1);
/* Gets value from client messages.
* When you are asking for string the array and length is needed (read_data(2,name,len)).
* Integer is returned by function (new me = read_data(3)).
* Float is set in second parameter (read_data(3,value)). */
* When you are asking for string the array and length is needed (read_data(2,name,len)).
* Integer is returned by function (new me = read_data(3)).
* Float is set in second parameter (read_data(3,value)). */
native read_data(value, {Float,_}:... );
/* Returns number of values in client message. */
@ -141,18 +140,18 @@ native read_datanum();
native read_logdata(output[],len);
/* Returns number of log arguments.
* Can be called only in plugin_log() forward function. */
* Can be called only in plugin_log() forward function. */
native read_logargc();
/* Gets log argument indexed from 0.
* Can be called only in plugin_log() forward function. */
* Can be called only in plugin_log() forward function. */
native read_logargv(id,output[],len);
/* Parse log data about user ( "Butcher<5><BOT><TERRORIST>" etc. ). */
native parse_loguser(const text[], name[], nlen, &userid = -2, authid[] = "", alen = 0, team[]="", tlen=0);
/* Prints message to server console.
* You may use text formating (f.e. server_print("%-32s %.2f!","hello",7.345)) */
* You may use text formating (f.e. server_print("%-32s %.2f!","hello",7.345)) */
native server_print(const message[], {Float,_}:...);
/* Returns 1 or 0. */
@ -180,13 +179,13 @@ native is_dedicated_server();
native is_linux_server();
/* If player is not attacked function returns 0, in other
* case returns index of attacking player. On second and third
* parameter you may get info about weapon and body hit place. */
* case returns index of attacking player. On second and third
* parameter you may get info about weapon and body hit place. */
native get_user_attacker(index,...);
/* If player doesn't hit at anything function returns 0.0,
* in other case the distance between hit point and player is returned.
* If player is aiming at another player then the id and part of body are set. */
* in other case the distance between hit point and player is returned.
* If player is aiming at another player then the id and part of body are set. */
native Float:get_user_aiming(index,&id,&body,dist=9999);
/* Returns player frags. */
@ -208,7 +207,7 @@ native get_user_index(const name[]);
native get_user_ip(index,ip[],len, without_port = 0);
/* Returns id of currently carried weapon. Gets also
* ammount of ammo in clip and backpack. */
* ammount of ammo in clip and backpack. */
native get_user_weapon(index,&clip,&ammo);
/* Gets ammo and clip from current weapon. */
@ -218,27 +217,27 @@ native get_user_ammo(index,weapon,&clip,&ammo);
native num_to_word(num,output[],len);
/* Returns team id. When length is greater then 0
* then a name of team is set. */
* then a name of team is set. */
native get_user_team(index, team[]="", len = 0);
/* Returns player playing time in seconds.
* If flag is set then result is without connection time. */
* If flag is set then result is without connection time. */
native get_user_time(index, flag = 0);
/* Gets ping and loss at current time. */
native get_user_ping(index, &ping, &loss);
/* Gets origin from player.
* Modes:
* 0 - current position.
* 1 - position from eyes (weapon aiming).
* 2 - end position from player position.
* 3 - end position from eyes (hit point for weapon).
* 4 - position of last bullet hit (only CS). */
* Modes:
* 0 - current position.
* 1 - position from eyes (weapon aiming).
* 2 - end position from player position.
* 3 - end position from eyes (hit point for weapon).
* 4 - position of last bullet hit (only CS). */
native get_user_origin(index, origin[3], mode = 0);
/* Returns all carried weapons as bit sum. Gets
* also theirs indexes. */
* also theirs indexes. */
native get_user_weapons(index,weapons[32],&num);
/* Returns weapon name. */
@ -269,19 +268,19 @@ native log_message(const message[],{Float,_}:...);
native log_to_file(const file[],const message[],{Float,_}:...);
/* Returns number of players put in server.
* If flag is set then also connecting are counted. */
* If flag is set then also connecting are counted. */
native get_playersnum(flag=0);
/* Sets indexes of players.
* Flags:
* "a" - don't collect dead players.
* "b" - don't collect alive players.
* "c" - skip bots.
* "d" - skip real players.
* "e" - match with team.
* "f" - match with part of name.
* "g" - ignore case sensitivity.
* Example: Get all alive CTs: get_players(players,num,"ae","CT") */
* Flags:
* "a" - don't collect dead players.
* "b" - don't collect alive players.
* "c" - skip bots.
* "d" - skip real players.
* "e" - match with team.
* "f" - match with part of name.
* "g" - ignore case sensitivity.
* Example: Get all alive CTs: get_players(players,num,"ae","CT") */
native get_players(players[32], &num ,const flags[]="", const team[]="");
/* Gets argument from command. */
@ -294,27 +293,27 @@ native read_args(output[],len);
native read_argc();
/* Converts string to sum of bits.
* Example: "abcd" is a sum of 1, 2, 4 and 8. */
* Example: "abcd" is a sum of 1, 2, 4 and 8. */
native read_flags(const flags[]);
/* Converts sum of bits to string.
* Example: 3 will return "ab". */
* Example: 3 will return "ab". */
native get_flags(flags,output[],len);
/* Find player.
* Flags:
* "a" - with given name.
* "b" - with given part of name.
* "c" - with given authid.
* "d" - with given ip.
* "e" - with given team name.
* "f" - don't look in dead players.
* "g" - don't look in alive players.
* "h" - skip bots.
* "i" - skip real players.
* "j" - return index of last found player.
* "k" - with given userid.
* "l" - ignore case sensitivity. */
* Flags:
* "a" - with given name.
* "b" - with given part of name.
* "c" - with given authid.
* "d" - with given ip.
* "e" - with given team name.
* "f" - don't look in dead players.
* "g" - don't look in alive players.
* "h" - skip bots.
* "i" - skip real players.
* "j" - return index of last found player.
* "k" - with given userid.
* "l" - ignore case sensitivity. */
native find_player(const flags[], ... );
/* Removes quotes from sentence. */
@ -324,9 +323,9 @@ native remove_quotes(text[]);
native client_cmd(index,const command[],{Float,_}:...);
/* This is an emulation of a client command (commands aren't send to client!).
* It allows to execute some commands on players and bots.
* Function is excellent for forcing to do an action related to a game (not settings!).
* The command must stand alone but in arguments you can use spaces. */
* It allows to execute some commands on players and bots.
* Function is excellent for forcing to do an action related to a game (not settings!).
* The command must stand alone but in arguments you can use spaces. */
native engclient_cmd(index,const command[],arg1[]="",arg2[]="");
/* Executes command on a server console. */
@ -339,11 +338,11 @@ native set_cvar_string(const cvar[],const value[]);
native cvar_exists(const cvar[]);
/* Removes a cvar flags (not allowed for amx_version,
* fun_version and sv_cheats cvars). */
* fun_version and sv_cheats cvars). */
native remove_cvar_flags(const cvar[],flags = -1);
/* Sets a cvar flags (not allowed for amx_version,
* fun_version and sv_cheats cvars). */
* fun_version and sv_cheats cvars). */
native set_cvar_flags(const cvar[],flags);
/* Returns a cvar flags. */
@ -383,39 +382,39 @@ native get_modname(name[],len);
native get_time(const format[],output[],len);
/* Returns time in given format. The most popular is: "%m/%d/%Y - %H:%M:%S".
* Last parameter sets time to format. */
* Last parameter sets time to format. */
native format_time(output[],len, const format[],time = -1);
/* Returns system time in seconds elapsed since 00:00:00 on January 1, 1970.
* Offset is given in seconds.*/
* Offset is given in seconds.*/
native get_systime(offset = 0);
/* Returns time in input and additionaly fills missing information
* with current time and date. If time is different than -1 then parsed
* time is added to given time.
* Example:
* parset_time( "10:32:54 04/02/2003", "%H:%M:%S %m:%d:%Y" )
* For more information see strptime(...) function from C libraries. */
* with current time and date. If time is different than -1 then parsed
* time is added to given time.
* Example:
* parset_time( "10:32:54 04/02/2003", "%H:%M:%S %m:%d:%Y" )
* For more information see strptime(...) function from C libraries. */
native parse_time(const input[],const format[], time = -1);
/* Calls function on specified time.
* Flags:
* "a" - repeat.
* "b" - loop task.
* "c" - do task on time after a map timeleft.
* "d" - do task on time before a map timelimit. */
* Flags:
* "a" - repeat.
* "b" - loop task.
* "c" - do task on time after a map timeleft.
* "d" - do task on time before a map timelimit. */
native set_task(Float:time,const function[],id = 0,parameter[]="",len = 0,flags[]="", repeat = 0);
/* Removes all tasks with given id. If outside var is
* set then a task can be removed also when
* was set in another plugin. */
* set then a task can be removed also when
* was set in another plugin. */
native remove_task(id = 0, outside = 0);
/* Returns 1 if task under given id exists. */
native task_exists(id = 0, outside = 0);
/* Sets flags for player. Set flags to -1 if you want to clear all flags.
* You can use different settings by changing the id, which is from range 0 - 31. */
* You can use different settings by changing the id, which is from range 0 - 31. */
native set_user_flags(index,flags=-1,id=0);
/* Gets flags from player. Set index to 0 if you want to read flags from server. */
@ -446,27 +445,27 @@ native get_srvcmd(index,server_cmd[],len1,&flags, info[],len2, flag);
native get_srvcmdsnum(flag);
/* Gets info about console command. If id is set to 0,
then function returns only server cmds, if positive then
returns only client cmds. in other case returns all console commands. */
* then function returns only server cmds, if positive then
* returns only client cmds. in other case returns all console commands. */
native get_concmd(index,cmd[],len1,&flags, info[],len2, flag, id = -1);
/* Returns number of registered console commands. */
native get_concmdsnum(flag,id = -1);
/* Gets unique id of menu. Outside set to 1 allows
* to catch menus outside a plugin where register_menuid is called. */
* to catch menus outside a plugin where register_menuid is called. */
native register_menuid(const menu[], outside=0 );
/* Calls function when player uses specified menu and proper keys. */
native register_menucmd(menuid,keys, const function[] );
/* Gets what menu the player is watching and what keys for menu he have.
* When there is no menu the index is 0. If the id is negative then the menu
* is VGUI in other case the id is from register_menuid() function. */
* When there is no menu the index is 0. If the id is negative then the menu
* is VGUI in other case the id is from register_menuid() function. */
native get_user_menu(index,&id,&keys);
/* Forces server to execute sent server command at current time.
* Very useful for map changes, setting cvars and other activities. */
* Very useful for map changes, setting cvars and other activities. */
native server_exec();
/* Emits sound. Sample must be precached. */
@ -485,34 +484,34 @@ native Float:random_float(Float:a,Float:b);
native random_num(a,b);
/* Pauses function or plugin so it won't be executed.
* In most cases param1 is name of function and
* param2 name of plugin (all depends on flags).
* Flags:
* "a" - pause whole plugin.
* "b" - pause function.
* "c" - look outside the plugin (by given plugin name).
* "d" - set "stopped" status when pausing whole plugin.
* "e" - set "locked" status when pausing whole plugin.
* In this status plugin is unpauseable.
* Example: pause("ac","myplugin.amx")
* pause("bc","myfunc","myplugin.amx") */
* In most cases param1 is name of function and
* param2 name of plugin (all depends on flags).
* Flags:
* "a" - pause whole plugin.
* "b" - pause function.
* "c" - look outside the plugin (by given plugin name).
* "d" - set "stopped" status when pausing whole plugin.
* "e" - set "locked" status when pausing whole plugin.
* In this status plugin is unpauseable.
* Example: pause("ac","myplugin.amx")
* pause("bc","myfunc","myplugin.amx") */
native pause(flag[], const param1[]="",const param2[]="");
/* Unpauses function or plugin.
* Flags:
* "a" - unpause whole plugin.
* "b" - unpause function.
* "c" - look outside the plugin (by given plugin name). */
* Flags:
* "a" - unpause whole plugin.
* "b" - unpause function.
* "c" - look outside the plugin (by given plugin name). */
native unpause(flag[], const param1[]="",const param2[]="");
/* Returns id of client message.
* Example: get_user_msgid("TextMsg"). */
* Example: get_user_msgid("TextMsg"). */
native get_user_msgid(const name[]);
/* These functinos are used to generate client messages.
* You may generate menu, smoke, shockwaves, thunderlights,
* intermission and many many others messages.
* See HL SDK for more examples. */
* You may generate menu, smoke, shockwaves, thunderlights,
* intermission and many many others messages.
* See HL SDK for more examples. */
native message_begin( dest, msg_type, origin[3]={0,0,0},player=0);
native message_end();
native write_byte( x );
@ -525,32 +524,32 @@ native write_coord( x );
native write_string( x[] );
/* Called on inconsistent file. You can put any text
* into reason to change an original message. */
* into reason to change an original message. */
forward inconsistent_file(id,const filename[], reason[64] );
/* Forces the client and server to be running with the same
* version of the specified file ( e.g., a player model ). */
* version of the specified file ( e.g., a player model ). */
native force_unmodified(force_type, mins[3] , maxs[3], const filename[]);
/* Checks if public variable with given name exists in loaded plugins. */
native xvar_exists( const name[] );
/* Returns an unique id for public variable specified by name. If such
* variable doesn't exist then returned value is -1. */
* variable doesn't exist then returned value is -1. */
native get_xvar_id( const name[] );
/* Returns an integer value of a public variable. Id is a value
* returned by get_xvar_id(...) native. */
* returned by get_xvar_id(...) native. */
native get_xvar_num( id );
/* Returns a float value of a public variable. Id is a value
* returned by get_xvar_id(...) native. */
* returned by get_xvar_id(...) native. */
native Float:get_xvar_float( id );
/* Sets a value of a public variable. Id is a value
* returned by get_xvar_id(...) native. */
* returned by get_xvar_id(...) native. */
native set_xvar_num( id, value = 0 );
/* Sets a float value of a public variable. Id is a value
* returned by get_xvar_id(...) native. */
native set_xvar_float( id, Float:value = 0.0 );
* returned by get_xvar_id(...) native. */
native set_xvar_float( id, Float:value = 0.0 );