dHUD.inc
new, empty object
VIP Сървъри
Всички сървъри
/**
* Dynamic HUD
* v1.02
*/
#if defined _dHUD_included
#endinput
#endif
#define _dHUD_included
/**
* Create new Dynamic HUD object
*
* @param dhud Build object as copy of given
* -1 creates brand new object
* @return dhud handle
*
* Example:
* new dhud1 = DHUD_create();//new, empty object
* //do sth with dhud1
* ...
*
* new dhud2 = DHUD_create(dhud1); //dhud2 has the same configuration like dhud1
*/
native DHUD_create(dhud = -1);
/**
* Get total number of frames
*
* @param dhud dhud handle
* @return number of frames
*/
native DHUD_getFrames(dhud);
/**
* Set configuration of choosen frame
*
* @param dhud dhud handle
* @param frame id of frame, starts from 0, if frame > DHUD_getFrames(dhud) leak will be filled by empty frames
* @param iColor Color of message in frame
* @param x Position on x axis
* @param y Position on y axis
* @param iLen Duration of frame, iLen = 2 mean frame hold 2 times longer than frame with iLen = 1
* set iLen = 0 to remove frame
*
* @return 1 on success, 0 on failure
*/
native DHUD_setFrame(dhud, frame, iColor[3]={0,0,0}, Float:x=0.0, Float:y=0.0, iLen = 1);
/**
* Get configuration of choosen frame
*
* @param dhud dhud handle
* @param frame id of frame, starts from 0, frame > DHUD_getFrames(dhud) cause log error
* @param iColor Color of message in frame
* @param x Position on x axis
* @param y Position on y axis
* @param iLen Duration of frame, iLen = 2 mean frame hold 2 times longer than frame with iLen = 1
*
* @return 1 on success, 0 on failure
*/
native DHUD_getFrame(dhud, frame, iColor[3], &Float:x, &Float:y, &iLen);
/**
* Display Dynamic HUD message
*
* @param id Index of player or 0 for all
* @param dhud dhud handle
* @param fInterval Period of updating frames
* @param channel Channel od HUD, from 1 to 4
* @param szMessage[] Message to show
*
* @return 1 on success, 0 on failure
*/
native DHUD_display(id, dhud, Float:fInterval = 0.1, channel = 4, const szMessage[], any:...);
/**
* Clear Dynamic HUD message from screen
*
* @param id Index of player or 0 for all
* @param dhud dhud handle
*
* @return 1 on success, 0 on failure
*/
native DHUD_clear(id, dhud);
/**
* Add new filter to DHUD interface
*
* @param szName Name for applying
* @param szCallback Public function which realize filter
* @param szDescription Description of filter and arguments
*
* Basic form is:
* public filterCallback(dhud, frame, startFrame, endFrame, Float:x, Float:y){}
*
* It is when filter do not use custom parameters.
*
* Every additional parameter is argument type from amxconst.inc
* FP_CELL,
* FP_FLOAT,
* FP_ARRAY (only array[3]),
* FP_STRING (buffer for 128 chars)
*
* When filter need Float:a and Float:b multipliers should use pair:
* DHUD_registerFilter("MyFilter", "cbMyFilter", "<Float:a> <Float:b> - Do something", FP_FLOAT, FP_FLOAT);
* public cbMyFilter(dhud, frame, startFrame, endFrame, Float:x, Float:y, Float:a, Float:b){}
*
* Now applying filter will require 2 additional Floats
*/
native DHUD_registerFilter(const szName[], const szCallback[], const szDescription[], ...);
/**
* dx, dy values, but you can put custom ones, example: 0.04
*/
#define D_ZERO 0.0
#define D_SHORT 0.01
#define D_LONG 0.1
/**
* startFrame endFrame help constants
*/
#define FRAME_FIRST 0
#define FRAME_LAST -1
/**
* Apply filter on choosen frames
*
* @param dhud dhud handle
* @param szFilter Filter name
* @param startFrame First frame for apply
* @param endFrame Last frame for apply
* @param dx Increasing x
* @param dy Increasing y
*
* @param ... If filter has additional parameters this is place to put them
*
* @return 1 on success, 0 on failure
*/
native DHUD_applyFilter(dhud, const szFilter[], startFrame, endFrame, Float:dx=D_LONG, Float:dy=D_ZERO, any:...);
/**
* Called when message animation is stoped
*
* @param id Target, player index or 0 for all
* @param dhud dhud handle
* @param finished true when every frame was displayed, false when message cleared or replaced
*/
forward fwStopAnimation(id, dhud, bool:finished);
/**
* Remove chosen frames
* @param dhud dhud handle
* @param startFrame First removed frame
* @param count Number of frames to delete
*/
stock DHUD_removeFrames(dhud, startFrame, count){
for(new i=0;i<count;i++)
DHUD_setFrame(dhud, startFrame, _,_,_, 0);
}
/**
* Remove all frames from dhud object
* @param dhud dhud handle
*/
stock DHUD_removeAllFrames(dhud){
DHUD_removeFrames(dhud, 0, DHUD_getFrames(dhud));
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
КАК ДА ИЗПОЛЗВАМ
Добави в началото на .sma файла:
#include <dHUD>
1. Изтегли
Свали файла от бутона по-горе
2. Копирай
Постави в
scripting/include/3. Включи
Добави #include директивата
4. Компилирай
Използвай amxxpc или scripting/compile.exe