mirror of
https://github.com/alliedmodders/amxmodx.git
synced 2025-01-26 13:48:03 +03:00
no message
This commit is contained in:
parent
6eb236f8b7
commit
21d870c57a
96
plugins/include/Vexd_Utilities.inc
Executable file
96
plugins/include/Vexd_Utilities.inc
Executable file
@ -0,0 +1,96 @@
|
|||||||
|
/* Vexd Utility backwards compatibility
|
||||||
|
*
|
||||||
|
* (c) 2004, the AMX Mod X Development Team
|
||||||
|
*
|
||||||
|
* This file is provided as is (no warranties).
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <engine>
|
||||||
|
|
||||||
|
stock Entvars_Get_Int(iIndex, iVariable)
|
||||||
|
return entity_get_int(iIndex, iVariable)
|
||||||
|
|
||||||
|
stock Entvars_Set_Int(iIndex, iVariable, iNewValue)
|
||||||
|
return entity_set_int(iIndex, iVariable, iNewValue)
|
||||||
|
|
||||||
|
stock Float:Entvars_Get_Float(iIndex, iVariable)
|
||||||
|
return entity_get_float(iIndex, iVariable)
|
||||||
|
|
||||||
|
stock Entvars_Set_Float(iIndex, iVariable, Float:fNewValue)
|
||||||
|
return entity_set_float(iIndex, iVariable, fNewValue)
|
||||||
|
|
||||||
|
stock Entvars_Get_Vector(iIndex, iVariable, Float:vRetVector[3])
|
||||||
|
return entity_get_vector(iIndex, iVariable, vRetVector)
|
||||||
|
|
||||||
|
stock Entvars_Set_Vector(iIndex, iVariable, Float:vNewVector[3])
|
||||||
|
return entity_set_vector(iIndex, iVariable, vNewVector)
|
||||||
|
|
||||||
|
stock Entvars_Get_Edict(iIndex, iVariable)
|
||||||
|
return entity_get_edict(iIndex, iVariable)
|
||||||
|
|
||||||
|
stock Entvars_Set_Edict(iIndex, iVariable, iNewIndex)
|
||||||
|
return entity_set_edict(iIndex, iVariable, iNewIndex)
|
||||||
|
|
||||||
|
stock Entvars_Get_String(iIndex, iVariable, szReturnValue[], iReturnLen)
|
||||||
|
return entity_get_string(iIndex, iVariable, szReturnValue, iReturnLen)
|
||||||
|
|
||||||
|
stock Entvars_Set_String(iIndex, iVariable, szNewValue[])
|
||||||
|
return entity_set_string(iIndex, iVariable, szNewValue)
|
||||||
|
|
||||||
|
stock Entvars_Get_Byte(iIndex, iVariable)
|
||||||
|
return entity_get_byte(iIndex, iVariable)
|
||||||
|
|
||||||
|
stock Entvars_Set_Byte(iIndex, iVariable, iNewValue)
|
||||||
|
return entity_set_byte(iIndex, iVariable, iNewValue)
|
||||||
|
|
||||||
|
stock CreateEntity(szClassname[])
|
||||||
|
return create_entity(szClassname[])
|
||||||
|
|
||||||
|
stock ENT_SetModel(iIndex, szModel[])
|
||||||
|
return entity_set_model(iIndex, szModel)
|
||||||
|
|
||||||
|
stock ENT_SetOrigin(iIndex, Float:fNewOrigin[3])
|
||||||
|
return entity_set_origin(iIndex, fNewOrigin)
|
||||||
|
|
||||||
|
stock FindEntity(iIndex, szValue[])
|
||||||
|
return find_entity(iIndex, szValue)
|
||||||
|
|
||||||
|
stock RemoveEntity(iIndex)
|
||||||
|
return remove_entity(iIndex)
|
||||||
|
|
||||||
|
stock TraceLn(iIgnoreEnt, Float:fStart[3], Float:fEnd[3], Float:vReturn[3])
|
||||||
|
return trace_line(iIgnoreEnt, fStart, fEnd, vReturn)
|
||||||
|
|
||||||
|
stock TraceNormal(iIgnoreEnt, Float:fStart[3], Float:fEnd[3], Float:vReturn[3])
|
||||||
|
return trace_normal(iIgnoreEnt, fStart, fEnd, vReturn)
|
||||||
|
|
||||||
|
stock VecToAngles(Float:fVector[3], Float:vReturn[3])
|
||||||
|
return vector_to_angle(fVector, vReturn)
|
||||||
|
|
||||||
|
stock Float:VecLength(Float:vVector[3])
|
||||||
|
return vector_length(vVector)
|
||||||
|
|
||||||
|
stock Float:VecDist(Float:vVector[3], Float:vVector2[3])
|
||||||
|
return vector_distance(vVector, vVector2)
|
||||||
|
|
||||||
|
stock MessageBlock(iMessage, iMessageFlags)
|
||||||
|
return set_msg_block(iMessage, iMessageFlags)
|
||||||
|
|
||||||
|
stock GetMessageBlock(iMessage)
|
||||||
|
return get_msg_block(iMessage)
|
||||||
|
|
||||||
|
stock Float:HLTime()
|
||||||
|
return halflife_time()
|
||||||
|
|
||||||
|
stock FakeTouch(iToucher, iTouched)
|
||||||
|
return fake_touch(iToucher, iTouched)
|
||||||
|
|
||||||
|
stock AttachView(iIndex, iTargetIndex)
|
||||||
|
return attach_view(iIndex, iTargetIndex)
|
||||||
|
|
||||||
|
stock SetView(iIndex, ViewType)
|
||||||
|
return set_view(iIndex, ViewType)
|
||||||
|
|
||||||
|
forward vexd_pfntouch(pToucher, pTouched)
|
||||||
|
|
||||||
|
forward ServerFrame()
|
@ -1,12 +1,12 @@
|
|||||||
/* AMX Mod X
|
/* AMX Mod X
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Uncomment if you are not using Steam
|
/* Uncomment if you are not using Steam */
|
||||||
//#define NO_STEAM
|
//#define NO_STEAM
|
||||||
|
|
||||||
#define ADMIN_IMMUNITY (1<<0) /* flag "a" */
|
#define ADMIN_IMMUNITY (1<<0) /* flag "a" */
|
||||||
@ -161,7 +161,7 @@ enum {
|
|||||||
|
|
||||||
/* Render for set_user_rendering() */
|
/* Render for set_user_rendering() */
|
||||||
enum {
|
enum {
|
||||||
kRenderNormal, /* src */
|
kRenderNormal = 0, /* src */
|
||||||
kRenderTransColor, /* c*a+dest*(1-a) */
|
kRenderTransColor, /* c*a+dest*(1-a) */
|
||||||
kRenderTransTexture, /* src*a+dest*(1-a) */
|
kRenderTransTexture, /* src*a+dest*(1-a) */
|
||||||
kRenderGlow, /* src*a+dest -- No Z buffer checks */
|
kRenderGlow, /* src*a+dest -- No Z buffer checks */
|
||||||
@ -194,6 +194,7 @@ enum {
|
|||||||
kRenderFxClampMinScale, /* Keep this sprite from getting very small (SPRITES only!) */
|
kRenderFxClampMinScale, /* Keep this sprite from getting very small (SPRITES only!) */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Type for force_unmodified() */
|
||||||
enum {
|
enum {
|
||||||
force_exactfile = 0, /* File on client must exactly match server's file */
|
force_exactfile = 0, /* File on client must exactly match server's file */
|
||||||
force_model_samebounds, /* For model files only, the geometry must fit in the same bbox */
|
force_model_samebounds, /* For model files only, the geometry must fit in the same bbox */
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
/* AMX Mod X misc.
|
/* AMX Mod X misc.
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
stock bool:cmd_access(id,level,cid,num) {
|
stock cmd_access(id,level,cid,num) {
|
||||||
if ( ((get_user_flags(id)&level)!=level) && (id!=(is_dedicated_server()?0:1)) ) {
|
if ( ((get_user_flags(id)&level)!=level) && (id!=(is_dedicated_server()?0:1)) ) {
|
||||||
console_print(id,"You have no access to that command")
|
console_print(id,"You have no access to that command")
|
||||||
return false
|
return 0
|
||||||
}
|
}
|
||||||
if (read_argc() < num) {
|
if (read_argc() < num) {
|
||||||
new hcmd[32], hinfo[128], hflag
|
new hcmd[32], hinfo[128], hflag
|
||||||
get_concmd(cid,hcmd,31,hflag,hinfo,127,level)
|
get_concmd(cid,hcmd,31,hflag,hinfo,127,level)
|
||||||
console_print(id,"Usage: %s %s",hcmd,hinfo)
|
console_print(id,"Usage: %s %s",hcmd,hinfo)
|
||||||
return false
|
return 0
|
||||||
}
|
}
|
||||||
return true
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
stock access(id,level)
|
stock access(id,level)
|
||||||
@ -27,8 +27,7 @@ stock access(id,level)
|
|||||||
* 1 - obey immunity
|
* 1 - obey immunity
|
||||||
* 2 - allow yourself
|
* 2 - allow yourself
|
||||||
* 4 - must be alive
|
* 4 - must be alive
|
||||||
* 8 - can't be bot
|
* 8 - can't be bot */
|
||||||
*/
|
|
||||||
stock cmd_target(id,const arg[],flags = 1) {
|
stock cmd_target(id,const arg[],flags = 1) {
|
||||||
new player = find_player("bl",arg)
|
new player = find_player("bl",arg)
|
||||||
if (player) {
|
if (player) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* AMX Mod X functions
|
/* AMX Mod X functions
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
@ -115,8 +115,7 @@ native register_event(const event[],const function[],const flags[],cond[]="", ..
|
|||||||
* "1=say"
|
* "1=say"
|
||||||
* "3=Terrorists_Win"
|
* "3=Terrorists_Win"
|
||||||
* "1=entered the game"
|
* "1=entered the game"
|
||||||
* "0=Server cvar"
|
* "0=Server cvar" */
|
||||||
*/
|
|
||||||
native register_logevent(const function[], argsnum, ... );
|
native register_logevent(const function[], argsnum, ... );
|
||||||
|
|
||||||
/* Sets format for hudmessage. */
|
/* Sets format for hudmessage. */
|
||||||
@ -446,8 +445,8 @@ native get_srvcmd(index,server_cmd[],len1,&flags, info[],len2, flag);
|
|||||||
native get_srvcmdsnum(flag);
|
native get_srvcmdsnum(flag);
|
||||||
|
|
||||||
/* Gets info about console command. If id is set to 0,
|
/* Gets info about console command. If id is set to 0,
|
||||||
then function returns only server cmds, if positive then
|
* then function returns only server cmds, if positive then
|
||||||
returns only client cmds. in other case returns all console commands. */
|
* returns only client cmds. in other case returns all console commands. */
|
||||||
native get_concmd(index,cmd[],len1,&flags, info[],len2, flag, id = -1);
|
native get_concmd(index,cmd[],len1,&flags, info[],len2, flag, id = -1);
|
||||||
|
|
||||||
/* Returns number of registered console commands. */
|
/* Returns number of registered console commands. */
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* CS Stats functions
|
/* CS Stats functions
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
163
plugins/include/engine.inc
Executable file
163
plugins/include/engine.inc
Executable file
@ -0,0 +1,163 @@
|
|||||||
|
/* Engine
|
||||||
|
*
|
||||||
|
* (c) 2004, the AMX Mod X Development Team
|
||||||
|
* thanks to Vexd
|
||||||
|
*
|
||||||
|
* This file is provided as is (no warranties).
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <engine_const>
|
||||||
|
#include <engine_stocks>
|
||||||
|
|
||||||
|
/* This is a highly experimental command that will directly hook a message in the engine!
|
||||||
|
* You can overwrite the message before anything happens and either let the message continue
|
||||||
|
* or fully block it. Here is how it works:
|
||||||
|
* If you hook a message, the message is stored but not sent. You have the opportunity to
|
||||||
|
* not only execute code, but to get/set the contents of the message, before you choose to
|
||||||
|
* either block it or let it go on its way. The hooked function will be passed a msg_id. */
|
||||||
|
native register_message(iMsgId, szFunction[]);
|
||||||
|
|
||||||
|
/* The get/set _msg commands will utterly fail if used outside a hooked message scope.
|
||||||
|
* They should never, NEVER, EVER be used unless inside a registered message function.
|
||||||
|
* There are eight different ways of sending a message, five are ints, two are floats, and one is string.
|
||||||
|
* These are denoted by iArgType. msg_tid is the message you are hooking. argn is the number
|
||||||
|
* of the argument. Exceeding the bounds of 1 to get_msg_args() is a bad idea. */
|
||||||
|
|
||||||
|
/* Gets number of arguments that were passed to this message */
|
||||||
|
native get_msg_args(msg_id);
|
||||||
|
|
||||||
|
/* Gets the argument type of argument argn */
|
||||||
|
native get_msg_argtype(msg_id, argn);
|
||||||
|
|
||||||
|
/* Gets the value of argn. */
|
||||||
|
native get_msg_arg_int(msg_id, argn);
|
||||||
|
native Float:get_msg_arg_float(msg_id, argn);
|
||||||
|
native get_msg_arg_string(msg_id, argn, szReturn[], iLength);
|
||||||
|
|
||||||
|
/* sets the value of argn. */
|
||||||
|
native set_msg_arg_int(msg_id, argn, argtype, iValue);
|
||||||
|
native set_msg_arg_float(msg_id, argn, argtype, Float:fValue);
|
||||||
|
native set_msg_arg_string(msg_id, argn, szString[]);
|
||||||
|
|
||||||
|
/* Note, the offsets are passed as linux values, not windows values.
|
||||||
|
* Although the engine module will automatically calculate the difference,
|
||||||
|
* you must pass with the +5 linux offset (e.g. if 230 on windows, pass 235 no matter what) */
|
||||||
|
|
||||||
|
/* Gets pvPrivateData offset. */
|
||||||
|
native get_offset(id, offset);
|
||||||
|
native Float:get_offset_float(id, offset);
|
||||||
|
native get_offset_short(id, offset);
|
||||||
|
|
||||||
|
/* sets pvPrivateData offset. */
|
||||||
|
native set_offset(id, offset, value);
|
||||||
|
native set_offset_float(id, offset, Float:value);
|
||||||
|
native set_offset_short(id, offset);
|
||||||
|
|
||||||
|
/* Precaches any file. */
|
||||||
|
native precache_generic(szFile[]);
|
||||||
|
|
||||||
|
/* Sets/gets things in an entities Entvars Struct. */
|
||||||
|
native entity_get_int(iIndex, iKey);
|
||||||
|
native entity_set_int(iIndex, iKey, iVal);
|
||||||
|
native Float:entity_get_float(iIndex, iKey);
|
||||||
|
native entity_set_float(iIndex, iKey, Float:iVal);
|
||||||
|
native entity_get_vector(iIndex, iKey, Float:vRetVector[3]);
|
||||||
|
native entity_set_vector(iIndex, iKey, Float:vNewVector[3]);
|
||||||
|
native entity_get_edict(iIndex, iKey);
|
||||||
|
native entity_set_edict(iIndex, iKey, iNewIndex);
|
||||||
|
native entity_get_string(iIndex, iKey, szReturn[], iRetLen);
|
||||||
|
native entity_set_string(iIndex, iKey, szNewVal[]);
|
||||||
|
native entity_get_byte(iIndex, iKey);
|
||||||
|
native entity_set_byte(iIndex, iKey, iVal);
|
||||||
|
|
||||||
|
/* Creates an entity, will return the index of the created entity. ClassName must be valid. */
|
||||||
|
native create_entity(szClassname[]);
|
||||||
|
|
||||||
|
/* Finds an entity in the world, will return -1 if nothing is found */
|
||||||
|
native find_entity(iIndex, szClass[]);
|
||||||
|
native find_ent_by_owner(iIndex, szClass[], iOwner);
|
||||||
|
native find_ent_by_target(iIndex, szClass[]);
|
||||||
|
native find_ent_by_tname(iIndex, szClass[]);
|
||||||
|
native find_ent_by_model(iIndex, szClass[], szModel[]);
|
||||||
|
|
||||||
|
/* Is entity valid? */
|
||||||
|
native is_valid_ent(iIndex);
|
||||||
|
|
||||||
|
/* Proper origin setting, keeps updated with Half-Life engine. */
|
||||||
|
native entity_set_origin(iIndex, Float:fNewOrigin[3]);
|
||||||
|
|
||||||
|
/* Sets the model of an Entity. */
|
||||||
|
native entity_set_model(iIndex, szModel[]);
|
||||||
|
|
||||||
|
/* Remove an entity from the world. */
|
||||||
|
native remove_entity(iIndex);
|
||||||
|
|
||||||
|
/* Return current number of entities in the map */
|
||||||
|
native entity_count();
|
||||||
|
|
||||||
|
/* Simulate two entities colliding/touching. */
|
||||||
|
native fake_touch(iToucher, iTouched);
|
||||||
|
|
||||||
|
/* Dispatch a KeyValuePair, used for initalizing entities when a map spawns them. */
|
||||||
|
native DispatchKeyValue(iIndex, szKey[], szValue[]);
|
||||||
|
|
||||||
|
/* Runs the GameDLL's DispatchSpawn for an entity, I think it's used with DispatchKeyValue. */
|
||||||
|
native DispatchSpawn(iIndex);
|
||||||
|
|
||||||
|
/* Hurts/Kills players in a sphere, like an explosion, Multiplier determines damage. */
|
||||||
|
native RadiusDamage(Float:fExplodeAt[3], iDamageMultiplier, iRadiusMultiplier);
|
||||||
|
|
||||||
|
/* Gives you a velocity in the direction a player is looking, iVelocity is the multiplier. */
|
||||||
|
native VelocityByAim(iIndex, iVelocity, Float:vRetValue[3]);
|
||||||
|
|
||||||
|
/* Will return the contents of a point (inside map? in sky? outside map? etc.). */
|
||||||
|
native PointContents(Float:fCheckAt[3]);
|
||||||
|
|
||||||
|
/* Trace a line from Start(X, Y, Z) to End(X, Y, Z), will return the point hit in vReturn[3]
|
||||||
|
* and an entity index if an entity is hit. */
|
||||||
|
native trace_line(iIgnoreEnt, Float:fStart[3], Float:fEnd[3], Float:vReturn[3]);
|
||||||
|
|
||||||
|
/* Traces a line, and returns the normal to the plane hit in vReturn.
|
||||||
|
* Returns 0 if theres no normal. */
|
||||||
|
native trace_normal(iIgnoreEnt, Float:fStart[3], Float:fEnd[3], Float:vReturn[3]);
|
||||||
|
|
||||||
|
/* Changes a Vector to an Angle vector. */
|
||||||
|
native vector_to_angle(Float:fVector[3], Float:vReturn[3]);
|
||||||
|
|
||||||
|
/* Gets the length of a vector (float[3]). */
|
||||||
|
native Float:vector_length(Float:vVector[3]);
|
||||||
|
|
||||||
|
/* Gets the distance between 2 vectors (float[3]). */
|
||||||
|
native Float:vector_distance(Float:vVector[3], Float:vVector2[3]);
|
||||||
|
|
||||||
|
/* Gets the ID of a grenade. */
|
||||||
|
native get_grenade_id(id, model[], len, grenadeid = 0);
|
||||||
|
|
||||||
|
/* Gets gpGlobals->time from Half-Life */
|
||||||
|
native Float:halflife_time();
|
||||||
|
|
||||||
|
/* Sets map lighting, #OFF to disable. */
|
||||||
|
native set_lights(const Lighting[]);
|
||||||
|
|
||||||
|
// Sets/Gets what engine messages are blocked. */
|
||||||
|
native set_msg_block(iMessage, iMessageFlags);
|
||||||
|
native get_msg_block(iMessage);
|
||||||
|
|
||||||
|
/* Sets Player's View to entity iTargetIndex. */
|
||||||
|
native attach_view(iIndex, iTargetIndex);
|
||||||
|
|
||||||
|
/* Sets Player's View Mode. */
|
||||||
|
native set_view(iIndex, ViewType);
|
||||||
|
|
||||||
|
/* Called when 2 entities touch. */
|
||||||
|
forward pfn_touch(ptr, ptd);
|
||||||
|
|
||||||
|
/* Called once every server frame. May cause lag. */
|
||||||
|
forward server_frame();
|
||||||
|
|
||||||
|
/* Called when a client types kill in console. */
|
||||||
|
forward client_kill(id);
|
||||||
|
|
||||||
|
/* Forward for PreThink()/PostThink() on a player. */
|
||||||
|
forward client_PreThink(id);
|
||||||
|
forward client_PostThink(id);
|
305
plugins/include/engine_const.inc
Executable file
305
plugins/include/engine_const.inc
Executable file
@ -0,0 +1,305 @@
|
|||||||
|
/* Engine Constants
|
||||||
|
*
|
||||||
|
* (c) 2004, by the AMX Mod X Development Team
|
||||||
|
*
|
||||||
|
* This file is provided as is (no warranties).
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define SPEAK_NORMAL 0
|
||||||
|
#define SPEAK_MUTED 1
|
||||||
|
#define SPEAK_ALL 2
|
||||||
|
#define SPEAK_LISTENALL 4
|
||||||
|
|
||||||
|
#define CAMERA_NONE 0
|
||||||
|
#define CAMERA_3RDPERSON 1
|
||||||
|
#define CAMERA_UPLEFT 2
|
||||||
|
#define CAMERA_TOPDOWN 3
|
||||||
|
|
||||||
|
#define BLOCK_NOT 0
|
||||||
|
#define BLOCK_ONCE 1
|
||||||
|
#define BLOCK_SET 2
|
||||||
|
|
||||||
|
enum {
|
||||||
|
ARG_BYTE = 1, /* int */
|
||||||
|
ARG_CHAR, /* int */
|
||||||
|
ARG_SHORT, /* int */
|
||||||
|
ARG_LONG, /* int */
|
||||||
|
ARG_ANGLE, /* float */
|
||||||
|
ARG_COORD, /* float */
|
||||||
|
ARG_STRING, /* string */
|
||||||
|
ARG_ENTITY, /* int */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Int */
|
||||||
|
enum {
|
||||||
|
EV_INT_gamestate = 0,
|
||||||
|
EV_INT_oldbuttons,
|
||||||
|
EV_INT_groupinfo,
|
||||||
|
EV_INT_iuser1,
|
||||||
|
EV_INT_iuser2,
|
||||||
|
EV_INT_iuser3,
|
||||||
|
EV_INT_iuser4,
|
||||||
|
EV_INT_weaponanim,
|
||||||
|
EV_INT_pushmsec,
|
||||||
|
EV_INT_bInDuck,
|
||||||
|
EV_INT_flTimeStepSound,
|
||||||
|
EV_INT_flSwimTime,
|
||||||
|
EV_INT_flDuckTime,
|
||||||
|
EV_INT_iStepLeft,
|
||||||
|
EV_INT_movetype,
|
||||||
|
EV_INT_solid,
|
||||||
|
EV_INT_skin,
|
||||||
|
EV_INT_body,
|
||||||
|
EV_INT_effects,
|
||||||
|
EV_INT_light_level,
|
||||||
|
EV_INT_sequence,
|
||||||
|
EV_INT_gaitsequence,
|
||||||
|
EV_INT_modelindex,
|
||||||
|
EV_INT_playerclass,
|
||||||
|
EV_INT_waterlevel,
|
||||||
|
EV_INT_watertype,
|
||||||
|
EV_INT_spawnflags,
|
||||||
|
EV_INT_flags,
|
||||||
|
EV_INT_colormap,
|
||||||
|
EV_INT_team,
|
||||||
|
EV_INT_fixangle,
|
||||||
|
EV_INT_weapons,
|
||||||
|
EV_INT_rendermode,
|
||||||
|
EV_INT_renderfx,
|
||||||
|
EV_INT_button,
|
||||||
|
EV_INT_impulse,
|
||||||
|
EV_INT_deadflag,
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Float */
|
||||||
|
enum {
|
||||||
|
EV_FL_impacttime = 0,
|
||||||
|
EV_FL_starttime,
|
||||||
|
EV_FL_idealpitch,
|
||||||
|
EV_FL_pitch_speed,
|
||||||
|
EV_FL_ideal_yaw,
|
||||||
|
EV_FL_yaw_speed,
|
||||||
|
EV_FL_ltime,
|
||||||
|
EV_FL_nextthink,
|
||||||
|
EV_FL_gravity,
|
||||||
|
EV_FL_friction,
|
||||||
|
EV_FL_frame,
|
||||||
|
EV_FL_animtime,
|
||||||
|
EV_FL_framerate,
|
||||||
|
EV_FL_health,
|
||||||
|
EV_FL_frags,
|
||||||
|
EV_FL_takedamage,
|
||||||
|
EV_FL_max_health,
|
||||||
|
EV_FL_teleport_time,
|
||||||
|
EV_FL_armortype,
|
||||||
|
EV_FL_armorvalue,
|
||||||
|
EV_FL_dmg_take,
|
||||||
|
EV_FL_dmg_save,
|
||||||
|
EV_FL_dmg,
|
||||||
|
EV_FL_dmgtime,
|
||||||
|
EV_FL_speed,
|
||||||
|
EV_FL_air_finished,
|
||||||
|
EV_FL_pain_finished,
|
||||||
|
EV_FL_radsuit_finished,
|
||||||
|
EV_FL_scale,
|
||||||
|
EV_FL_renderamt,
|
||||||
|
EV_FL_maxspeed,
|
||||||
|
EV_FL_fov,
|
||||||
|
EV_FL_flFallVelocity,
|
||||||
|
EV_FL_fuser1,
|
||||||
|
EV_FL_fuser2,
|
||||||
|
EV_FL_fuser3,
|
||||||
|
EV_FL_fuser4,
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Vector */
|
||||||
|
enum {
|
||||||
|
EV_VEC_origin = 0,
|
||||||
|
EV_VEC_oldorigin,
|
||||||
|
EV_VEC_velocity,
|
||||||
|
EV_VEC_basevelocity,
|
||||||
|
EV_VEC_clbasevelocity,
|
||||||
|
EV_VEC_movedir,
|
||||||
|
EV_VEC_angles,
|
||||||
|
EV_VEC_avelocity,
|
||||||
|
EV_VEC_punchangle,
|
||||||
|
EV_VEC_v_angle,
|
||||||
|
EV_VEC_endpos,
|
||||||
|
EV_VEC_startpos,
|
||||||
|
EV_VEC_absmin,
|
||||||
|
EV_VEC_absmax,
|
||||||
|
EV_VEC_mins,
|
||||||
|
EV_VEC_maxs,
|
||||||
|
EV_VEC_size,
|
||||||
|
EV_VEC_rendercolor,
|
||||||
|
EV_VEC_view_ofs,
|
||||||
|
EV_VEC_vuser1,
|
||||||
|
EV_VEC_vuser2,
|
||||||
|
EV_VEC_vuser3,
|
||||||
|
EV_VEC_vuser4,
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Edict */
|
||||||
|
enum {
|
||||||
|
EV_ENT_chain = 0,
|
||||||
|
EV_ENT_dmg_inflictor,
|
||||||
|
EV_ENT_enemy,
|
||||||
|
EV_ENT_aiment,
|
||||||
|
EV_ENT_owner,
|
||||||
|
EV_ENT_groundentity,
|
||||||
|
EV_ENT_pContainingEntity,
|
||||||
|
EV_ENT_euser1,
|
||||||
|
EV_ENT_euser2,
|
||||||
|
EV_ENT_euser3,
|
||||||
|
EV_ENT_euser4,
|
||||||
|
}
|
||||||
|
|
||||||
|
/* String */
|
||||||
|
enum {
|
||||||
|
EV_SZ_classname = 0,
|
||||||
|
EV_SZ_globalname,
|
||||||
|
EV_SZ_model,
|
||||||
|
EV_SZ_target,
|
||||||
|
EV_SZ_targetname,
|
||||||
|
EV_SZ_netname,
|
||||||
|
EV_SZ_message,
|
||||||
|
EV_SZ_noise,
|
||||||
|
EV_SZ_noise1,
|
||||||
|
EV_SZ_noise2,
|
||||||
|
EV_SZ_noise3,
|
||||||
|
EV_SZ_viewmodel,
|
||||||
|
EV_SZ_weaponmodel,
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Byte */
|
||||||
|
enum {
|
||||||
|
EV_BYTE_controller1 = 0,
|
||||||
|
EV_BYTE_controller2,
|
||||||
|
EV_BYTE_controller3,
|
||||||
|
EV_BYTE_controller4,
|
||||||
|
EV_BYTE_blending1,
|
||||||
|
EV_BYTE_blending2,
|
||||||
|
}
|
||||||
|
|
||||||
|
#define IN_ATTACK (1<<0)
|
||||||
|
#define IN_JUMP (1<<1)
|
||||||
|
#define IN_DUCK (1<<2)
|
||||||
|
#define IN_FORWARD (1<<3)
|
||||||
|
#define IN_BACK (1<<4)
|
||||||
|
#define IN_USE (1<<5)
|
||||||
|
#define IN_CANCEL (1<<6)
|
||||||
|
#define IN_LEFT (1<<7)
|
||||||
|
#define IN_RIGHT (1<<8)
|
||||||
|
#define IN_MOVELEFT (1<<9)
|
||||||
|
#define IN_MOVERIGHT (1<<10)
|
||||||
|
#define IN_ATTACK2 (1<<11)
|
||||||
|
#define IN_RUN (1<<12)
|
||||||
|
#define IN_RELOAD (1<<13)
|
||||||
|
#define IN_ALT1 (1<<14)
|
||||||
|
#define IN_SCORE (1<<15)
|
||||||
|
|
||||||
|
#define FL_FLY (1<<0) /* Changes the SV_Movestep() behavior to not need to be on ground */
|
||||||
|
#define FL_SWIM (1<<1) /* Changes the SV_Movestep() behavior to not need to be on ground (but stay in water) */
|
||||||
|
#define FL_CONVEYOR (1<<2)
|
||||||
|
#define FL_CLIENT (1<<3)
|
||||||
|
#define FL_INWATER (1<<4)
|
||||||
|
#define FL_MONSTER (1<<5)
|
||||||
|
#define FL_GODMODE (1<<6)
|
||||||
|
#define FL_NOTARGET (1<<7)
|
||||||
|
#define FL_SKIPLOCALHOST (1<<8) /* Don't send entity to local host, it's predicting this entity itself */
|
||||||
|
#define FL_ONGROUND (1<<9) /* At rest / on the ground */
|
||||||
|
#define FL_PARTIALGROUND (1<<10) /* not all corners are valid */
|
||||||
|
#define FL_WATERJUMP (1<<11) /* player jumping out of water */
|
||||||
|
#define FL_FROZEN (1<<12) /* Player is frozen for 3rd person camera */
|
||||||
|
#define FL_FAKECLIENT (1<<13) /* JAC: fake client, simulated server side; don't send network messages to them */
|
||||||
|
#define FL_DUCKING (1<<14) /* Player flag -- Player is fully crouched */
|
||||||
|
#define FL_FLOAT (1<<15) /* Apply floating force to this entity when in water */
|
||||||
|
#define FL_GRAPHED (1<<16) /* worldgraph has this ent listed as something that blocks a connection */
|
||||||
|
#define FL_IMMUNE_WATER (1<<17)
|
||||||
|
#define FL_IMMUNE_SLIME (1<<18)
|
||||||
|
#define FL_IMMUNE_LAVA (1<<19)
|
||||||
|
#define FL_PROXY (1<<20) /* This is a spectator proxy */
|
||||||
|
#define FL_ALWAYSTHINK (1<<21) /* Brush model flag -- call think every frame regardless of nextthink - ltime (for constantly changing velocity/path) */
|
||||||
|
#define FL_BASEVELOCITY (1<<22) /* Base velocity has been applied this frame (used to convert base velocity into momentum) */
|
||||||
|
#define FL_MONSTERCLIP (1<<23) /* Only collide in with monsters who have FL_MONSTERCLIP set */
|
||||||
|
#define FL_ONTRAIN (1<<24) /* Player is _controlling_ a train, so movement commands should be ignored on client during prediction. */
|
||||||
|
#define FL_WORLDBRUSH (1<<25) /* Not moveable/removeable brush entity (really part of the world, but represented as an entity for transparency or something) */
|
||||||
|
#define FL_SPECTATOR (1<<26) /* This client is a spectator, don't run touch functions, etc. */
|
||||||
|
#define FL_CUSTOMENTITY (1<<29) /* This is a custom entity */
|
||||||
|
#define FL_KILLME (1<<30) /* This entity is marked for death -- This allows the engine to kill ents at the appropriate time */
|
||||||
|
#define FL_DORMANT (1<<31) /* Entity is dormant, no updates to client */
|
||||||
|
|
||||||
|
#define SOLID_NOT 0 /* no interaction with other objects */
|
||||||
|
#define SOLID_TRIGGER 1 /* touch on edge, but not blocking */
|
||||||
|
#define SOLID_BBOX 2 /* touch on edge, block */
|
||||||
|
#define SOLID_SLIDEBOX 3 /* touch on edge, but not an onground */
|
||||||
|
#define SOLID_BSP 4 /* bsp clip, touch on edge, block */
|
||||||
|
|
||||||
|
#define MOVETYPE_NONE 0 /* never moves */
|
||||||
|
#define MOVETYPE_ANGLENOCLIP 1
|
||||||
|
#define MOVETYPE_ANGLECLIP 2
|
||||||
|
#define MOVETYPE_WALK 3 /* Player only - moving on the ground */
|
||||||
|
#define MOVETYPE_STEP 4 /* gravity, special edge handling -- monsters use this */
|
||||||
|
#define MOVETYPE_FLY 5 /* No gravity, but still collides with stuff */
|
||||||
|
#define MOVETYPE_TOSS 6 /* gravity/collisions */
|
||||||
|
#define MOVETYPE_PUSH 7 /* no clip to world, push and crush */
|
||||||
|
#define MOVETYPE_NOCLIP 8 /* No gravity, no collisions, still do velocity/avelocity */
|
||||||
|
#define MOVETYPE_FLYMISSILE 9 /* extra size to monsters */
|
||||||
|
#define MOVETYPE_BOUNCE 10 /* Just like Toss, but reflect velocity when contacting surfaces */
|
||||||
|
#define MOVETYPE_BOUNCEMISSILE 11 /* bounce w/o gravity */
|
||||||
|
#define MOVETYPE_FOLLOW 12 /* track movement of aiment */
|
||||||
|
#define MOVETYPE_PUSHSTEP 13 /* BSP model that needs physics/world collisions (uses nearest hull for world collision) */
|
||||||
|
|
||||||
|
#define CONTENTS_EMPTY -1
|
||||||
|
#define CONTENTS_SOLID -2
|
||||||
|
#define CONTENTS_WATER -3
|
||||||
|
#define CONTENTS_SLIME -4
|
||||||
|
#define CONTENTS_LAVA -5
|
||||||
|
#define CONTENTS_SKY -6
|
||||||
|
#define CONTENTS_ORIGIN -7 /* removed at csg time */
|
||||||
|
#define CONTENTS_CLIP -8 /* changed to contents_solid */
|
||||||
|
#define CONTENTS_CURRENT_0 -9
|
||||||
|
#define CONTENTS_CURRENT_90 -10
|
||||||
|
#define CONTENTS_CURRENT_180 -11
|
||||||
|
#define CONTENTS_CURRENT_270 -12
|
||||||
|
#define CONTENTS_CURRENT_UP -13
|
||||||
|
#define CONTENTS_CURRENT_DOWN -14
|
||||||
|
#define CONTENTS_TRANSLUCENT -15
|
||||||
|
#define CONTENTS_LADDER -16
|
||||||
|
|
||||||
|
#define DMG_GENERIC 0 /* generic damage was done */
|
||||||
|
#define DMG_CRUSH (1<<0) /* crushed by falling or moving object */
|
||||||
|
#define DMG_BULLET (1<<1) /* shot */
|
||||||
|
#define DMG_SLASH (1<<2) /* cut, clawed, stabbed */
|
||||||
|
#define DMG_BURN (1<<3) /* heat burned */
|
||||||
|
#define DMG_FREEZE (1<<4) /* frozen */
|
||||||
|
#define DMG_FALL (1<<5) /* fell too far */
|
||||||
|
#define DMG_BLAST (1<<6) /* explosive blast damage */
|
||||||
|
#define DMG_CLUB (1<<7) /* crowbar, punch, headbutt */
|
||||||
|
#define DMG_SHOCK (1<<8) /* electric shock */
|
||||||
|
#define DMG_SONIC (1<<9) /* sound pulse shockwave */
|
||||||
|
#define DMG_ENERGYBEAM (1<<10) /* laser or other high energy beam */
|
||||||
|
#define DMG_NEVERGIB (1<<12) /* with this bit OR'd in, no damage type will be able to gib victims upon death */
|
||||||
|
#define DMG_ALWAYSGIB (1<<13) /* with this bit OR'd in, any damage type can be made to gib victims upon death */
|
||||||
|
#define DMG_DROWN (1<<14) /* Drowning */
|
||||||
|
/* time-based damage */
|
||||||
|
#define DMG_TIMEBASED (~(0x3fff)) /* mask for time-based damage */
|
||||||
|
/* TF Additions */
|
||||||
|
#define DMG_PARALYZE (1<<15) /* slows affected creature down */
|
||||||
|
#define DMG_NERVEGAS (1<<16) /* nerve toxins, very bad */
|
||||||
|
#define DMG_POISON (1<<17) /* blood poisioning */
|
||||||
|
#define DMG_RADIATION (1<<18) /* radiation exposure */
|
||||||
|
#define DMG_DROWNRECOVER (1<<19) /* drowning recovery */
|
||||||
|
#define DMG_ACID (1<<20) /* toxic chemicals or acid burns */
|
||||||
|
#define DMG_SLOWBURN (1<<21) /* in an oven */
|
||||||
|
#define DMG_SLOWFREEZE (1<<22) /* in a subzero freezer */
|
||||||
|
#define DMG_MORTAR (1<<23) /* Hit by air raid (done to distinguish grenade from mortar) */
|
||||||
|
|
||||||
|
#define EF_BRIGHTFIELD 1 /* swirling cloud of particles */
|
||||||
|
#define EF_MUZZLEFLASH 2 /* single frame ELIGHT on entity attachment 0 */
|
||||||
|
#define EF_BRIGHTLIGHT 4 /* DLIGHT centered at entity origin */
|
||||||
|
#define EF_DIMLIGHT 8 /* player flashlight */
|
||||||
|
#define EF_INVLIGHT 16 /* get lighting from ceiling */
|
||||||
|
#define EF_NOINTERP 32 /* don't interpolate the next frame */
|
||||||
|
#define EF_LIGHT 64 /* rocket flare glow sprite */
|
||||||
|
#define EF_NODRAW 128 /* don't draw entity */
|
182
plugins/include/engine_stocks.inc
Executable file
182
plugins/include/engine_stocks.inc
Executable file
@ -0,0 +1,182 @@
|
|||||||
|
/* Engine Stocks
|
||||||
|
*
|
||||||
|
* (c) 2004, AssKicR, Freecode & T(+)rget
|
||||||
|
* modified by the AMX Mod X Development Team
|
||||||
|
*
|
||||||
|
* This file is provided as is (no warranties).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Changes an integer vec to a floating vec */
|
||||||
|
stock IVecFVec(IVec[3], Float:FVec[3])
|
||||||
|
{
|
||||||
|
FVec[0] = float(IVec[0])
|
||||||
|
FVec[1] = float(IVec[1])
|
||||||
|
FVec[2] = float(IVec[2])
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Changes a float vec to an integer vec */
|
||||||
|
stock FVecIVec(Float:FVec[3], IVec[3])
|
||||||
|
{
|
||||||
|
IVec[0] = floatround(FVec[0])
|
||||||
|
IVec[1] = floatround(FVec[1])
|
||||||
|
IVec[2] = floatround(FVec[2])
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Get the Button(s) user is pressing */
|
||||||
|
stock get_user_button(id)
|
||||||
|
return entity_get_int(id, EV_INT_button)
|
||||||
|
|
||||||
|
stock get_user_oldbutton(id)
|
||||||
|
return entity_get_int(id, EV_INT_oldbuttons)
|
||||||
|
|
||||||
|
/* Get flags an entity is flagged with */
|
||||||
|
stock get_entity_flags(ent)
|
||||||
|
return entity_get_int(ent, EV_INT_flags)
|
||||||
|
|
||||||
|
/* Get the distance between two entities */
|
||||||
|
stock get_entity_distance(ent1, ent2)
|
||||||
|
{
|
||||||
|
new Float:orig1[3], Float:orig2[3], origin1[3], origin2[3]
|
||||||
|
entity_get_vector(ent1, EV_VEC_origin, orig1)
|
||||||
|
for(new a = 0; a < 3; a++)
|
||||||
|
origin1[a] = floatround(orig1[a])
|
||||||
|
|
||||||
|
entity_get_vector(ent2, EV_VEC_origin, orig2)
|
||||||
|
for(new b = 0; b < 3; b++)
|
||||||
|
origin2[b] = floatround(orig2[b])
|
||||||
|
|
||||||
|
return get_distance(origin1, origin2)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Get grenade thrown by this user */
|
||||||
|
stock get_grenade(id)
|
||||||
|
{
|
||||||
|
new iGrenade = find_entity(-1, "grenade")
|
||||||
|
while(iGrenade > 0)
|
||||||
|
{
|
||||||
|
if(entity_get_edict(iGrenade, EV_ENT_owner) == id)
|
||||||
|
return iGrenade
|
||||||
|
|
||||||
|
iGrenade = find_entity(iGrenade, "grenade")
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Get origin of a brush entity */
|
||||||
|
stock get_brush_entity_origin(ent, Float:orig[3])
|
||||||
|
{
|
||||||
|
new Float:Min[3], Float:Max[3]
|
||||||
|
entity_get_vector(ent, EV_VEC_mins, Min)
|
||||||
|
entity_get_vector(ent, EV_VEC_maxs, Max)
|
||||||
|
for(new a = 0; a < 3; a++)
|
||||||
|
orig[a] = (Min[a] + Max[a]) / 2
|
||||||
|
|
||||||
|
return orig[0] && orig[1] && orig[2]
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Remove entity by name */
|
||||||
|
stock remove_entity_name(eName[])
|
||||||
|
{
|
||||||
|
new iEntity = FindEntity(-1, eName)
|
||||||
|
while (iEntity > 0)
|
||||||
|
{
|
||||||
|
remove_entity(iEntity)
|
||||||
|
iEntity = find_entity(-1, eName)
|
||||||
|
}
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Get the contents of the point a user is aiming at */
|
||||||
|
stock ViewContents(id)
|
||||||
|
{
|
||||||
|
new origin[3],Float:Orig[3]
|
||||||
|
get_user_origin( id, origin, 3 )
|
||||||
|
for(new a = 0; a < 3; a++)
|
||||||
|
Orig[a] = float(origin[a])
|
||||||
|
|
||||||
|
return PointContents( Orig )
|
||||||
|
}
|
||||||
|
|
||||||
|
stock get_speed(ent)
|
||||||
|
{
|
||||||
|
new Float:Vel[3], rVel[3]
|
||||||
|
entity_get_vector(ent, EV_VEC_velocity, Vel)
|
||||||
|
for(new i = 0; i < 3; i++)
|
||||||
|
rVel[i] = floatround(Vel[i])
|
||||||
|
|
||||||
|
return sqroot(rVel[0] * rVel[0] + rVel[1] * rVel[1] + rVel[2] * rVel[2])
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Creates a death message. */
|
||||||
|
stock make_deathmsg(killer,victim,headshot,weapon[])
|
||||||
|
{
|
||||||
|
message_begin(MSG_ALL,get_user_msgid("DeathMsg"),{0,0,0},0)
|
||||||
|
write_byte( killer )
|
||||||
|
write_byte( victim )
|
||||||
|
write_byte( headshot )
|
||||||
|
write_string( weapon[] )
|
||||||
|
message_end()
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Kills a user without a message. */
|
||||||
|
stock user_silentkill(index)
|
||||||
|
{
|
||||||
|
set_msg_block(get_user_msgid("DeathMsg"),BLOCK_ONCE)
|
||||||
|
user_kill(index,1)
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set endering of an entity */
|
||||||
|
stock set_rendering(index,fx=kRenderFxNone, r=255,g=255,b=255, render=kRenderNormal,amount=16)
|
||||||
|
{
|
||||||
|
Entvars_Set_Int(index,EV_INT_renderfx,fx)
|
||||||
|
new Float:RenderColor[3]
|
||||||
|
RenderColor[0] = float(r)
|
||||||
|
RenderColor[1] = float(g)
|
||||||
|
RenderColor[2] = float(b)
|
||||||
|
Entvars_Set_Vector(index,EV_VEC_rendercolor,RenderColor)
|
||||||
|
Entvars_Set_Int(index,EV_INT_rendermode,render)
|
||||||
|
Entvars_Set_Float(index,EV_FL_renderamt,float(amount))
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set flags on an entity */
|
||||||
|
stock set_entity_flags(ent,flag,onoff)
|
||||||
|
{
|
||||||
|
if ((Entvars_Get_Int(ent,EV_INT_flags)&flag) > 0)
|
||||||
|
{
|
||||||
|
if (onoff == 1)
|
||||||
|
{
|
||||||
|
return 2
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Entvars_Set_Int(ent,EV_INT_flags,Entvars_Get_Int(ent,EV_INT_flags)-flag)
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (onoff == 0)
|
||||||
|
{
|
||||||
|
return 2
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Entvars_Set_Int(ent,EV_INT_flags,Entvars_Get_Int(ent,EV_INT_flags)+flag)
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
/* Files functions
|
/* Files functions
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
@ -24,7 +24,7 @@ native delete_file(const file[]);
|
|||||||
native file_exists(const file[]);
|
native file_exists(const file[]);
|
||||||
|
|
||||||
/* Returns a file size in bytes if flag is set to 0.
|
/* Returns a file size in bytes if flag is set to 0.
|
||||||
When flag is set to 1 returns number of lines in the file,
|
* When flag is set to 1 returns number of lines in the file,
|
||||||
and when flags is 2, function returns 1 if the file ends
|
* and when flags is 2, function returns 1 if the file ends
|
||||||
with line feed. If file doesn't exist returns -1.*/
|
* with line feed. If file doesn't exist returns -1. */
|
||||||
native file_size(const file[], flag=0);
|
native file_size(const file[], flag=0);
|
@ -1,31 +1,23 @@
|
|||||||
/* Fun functions
|
/* Fun functions
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (c) 2004, the AMX Mod X Development Team
|
||||||
* modified by BAILOPAN, Manip, PM, SniperBeamer
|
|
||||||
*
|
*
|
||||||
* This file is provided as is (no warranties).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Sets who can listen who. Function returns 0
|
/* (untested) Returns 1 if receiver hears sender via voice communication. */
|
||||||
* if for some reasons this setting can't be done. */
|
native get_client_listen(receiver, sender);
|
||||||
native set_user_listening(receiver,sender,listen);
|
|
||||||
|
|
||||||
/* Returns 1 if receiver hears sender via voice communication. */
|
/* (untested) Sets who can listen who. Function returns 0 if for some reasons this setting can't be done. */
|
||||||
native get_user_listening(receiver,sender);
|
native set_client_listen(receiver, sender, listen);
|
||||||
|
|
||||||
/* Sets player godmode. If you want to disable godmode set only first parameter. */
|
/* Sets player godmode. If you want to disable godmode set only first parameter. */
|
||||||
native set_user_godmode(index, godmode = 0);
|
native set_user_godmode(index, godmode = 0);
|
||||||
|
|
||||||
/* Returns 1 if godmode is set. */
|
/* (untested) Returns 1 if godmode is set. */
|
||||||
native get_user_godmode(index);
|
native get_user_godmode(index);
|
||||||
|
|
||||||
/* Sets player noclip. If you want to disable noclip set only first parameter. */
|
/* Sets player frags. Doesn't autoupdate scoreboard, as Olo's version didn't. Fix? */
|
||||||
native set_user_noclip(index,noclip = 0);
|
|
||||||
|
|
||||||
/* Returns 1 if noclip is set. */
|
|
||||||
native get_user_noclip(index);
|
|
||||||
|
|
||||||
/* Sets player frags. */
|
|
||||||
native set_user_frags(index, frags);
|
native set_user_frags(index, frags);
|
||||||
|
|
||||||
/* Sets player armor. */
|
/* Sets player armor. */
|
||||||
@ -45,7 +37,8 @@ native set_user_rendering(index,fx = kRenderFxNone, r=255,g=255,b=255, render =
|
|||||||
* is announced with proper message to all players. */
|
* is announced with proper message to all players. */
|
||||||
native give_item(index, const item[]);
|
native give_item(index, const item[]);
|
||||||
|
|
||||||
/* Sets hit zones for player. This event is announced
|
/* (not yet implemented, don't know how to use native)
|
||||||
|
* Sets hit zones for player. This event is announced
|
||||||
* with proper message to all players.
|
* with proper message to all players.
|
||||||
* Parts of body are as bits:
|
* Parts of body are as bits:
|
||||||
* 2 - head
|
* 2 - head
|
||||||
@ -55,14 +48,18 @@ native give_item(index,const item[]);
|
|||||||
* 32 - right arm
|
* 32 - right arm
|
||||||
* 64 - left leg
|
* 64 - left leg
|
||||||
* 128 - right leg */
|
* 128 - right leg */
|
||||||
native set_user_hitzones(index=0,target=0,body=255);
|
native set_hitzones(body = 255);
|
||||||
|
|
||||||
/* Returns hit zones for player. */
|
/* backwards compatibility */
|
||||||
native get_user_hitzones(index,target);
|
stock set_user_hitzones(index=0,target=0,body=255)
|
||||||
|
return set_hitzones(body)
|
||||||
|
|
||||||
/* Makes that player spawns. This event is announced
|
/* Get current hitzones. */
|
||||||
* with proper message to all players. */
|
native get_hitzones();
|
||||||
native user_spawn(index);
|
|
||||||
|
/* backwards compatibility */
|
||||||
|
stock get_user_hitzones(index,target)
|
||||||
|
return get_hitzones()
|
||||||
|
|
||||||
/* Sets users max. speed. */
|
/* Sets users max. speed. */
|
||||||
native set_user_maxspeed(index, Float:speed = -1.0);
|
native set_user_maxspeed(index, Float:speed = -1.0);
|
||||||
@ -74,10 +71,20 @@ native Float:get_user_maxspeed(index);
|
|||||||
native set_user_gravity(index, Float:gravity = 1.0);
|
native set_user_gravity(index, Float:gravity = 1.0);
|
||||||
|
|
||||||
/* Returns users gravity. */
|
/* Returns users gravity. */
|
||||||
native Float:get_user_gravity(index);
|
native get_user_gravity(index);
|
||||||
|
|
||||||
/* Gives money to user. */
|
/* Gives money to user. */
|
||||||
native set_user_money(index, money, flash = 1);
|
native set_user_money(index, money, flash = 1);
|
||||||
|
|
||||||
/* Returns users money. */
|
/* Returns users money. */
|
||||||
native get_user_money(index);
|
native get_user_money(index);
|
||||||
|
|
||||||
|
/* Spawns entity. */
|
||||||
|
native spawn(index);
|
||||||
|
|
||||||
|
/* backwards compatibility */
|
||||||
|
stock user_spawn(index)
|
||||||
|
return spawn(index)
|
||||||
|
|
||||||
|
/* CS: Set deaths(should be removed to CS module later) (doesn't update info right away? fix later?) */
|
||||||
|
native set_user_deaths_cs(index, newdeaths);
|
@ -1,7 +1,7 @@
|
|||||||
/* MySQL functions
|
/* MySQL functions
|
||||||
*
|
*
|
||||||
* (c) Copyright 2002-2004, dJeyL
|
* (c) Copyright 2002-2004, dJeyL
|
||||||
* modified by BAILOPAN, Manip, PM, SniperBeamer
|
* modified by the AMX Mod X Development Team
|
||||||
*
|
*
|
||||||
* This file is provided as is (no warranties).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* Strings manipulation
|
/* Strings manipulation
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* Vault
|
/* Vault
|
||||||
*
|
*
|
||||||
* (c) 2002-2004, OLO
|
* (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).
|
* This file is provided as is (no warranties).
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user