- Код: Выделить всё
stock any:RandomVar(any:var1, any:var2) {return random_num(0,1)?var1:var2;}
Блин, не заметил что Smoke уже это написал.
evgeniy777 писал(а): Здравствуйте,вы можете написать плагин для ксс что бы можно было игроку не хорошему который играет и говорит не хорошие вещи про родных сломать хоят бы кс ?
Модераторы: Subb98, liFe iS GoOD
stock any:RandomVar(any:var1, any:var2) {return random_num(0,1)?var1:var2;}
#include <amxmodx>
#define PLUGIN "DHUD Position"
#define VERSION "START"
#define AUTHOR "BROWN"
#define START_POS 0.46
#define LAST_POS 0.58
#define INTERVAL 0.03
new Float: g_fPos[33] = {START_POS, ...};
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
}
public plugin_natives()
{
register_native("get_dhud_pos", "native_get_dhud_pos", 1);
}
public Float: native_get_dhud_pos(id, lines)
{
g_fPos[id] += INTERVAL;
if(lines > 1)
{
new Float: fPos = g_fPos[id];
g_fPos[id] += INTERVAL * (lines - 1);
return fPos;
}
if(g_fPos[id] > LAST_POS)
{
g_fPos[id] = START_POS;
}
return g_fPos[id];
}
set_dhudmessage( 0, 255, 100, 0.02, get_dhud_pos(id), 2, 0.5, 6.0, 0.01, 0.1);
show_dhudmessage(id, "IN NEW LINE")[/pawn]
Также можно учитывать количество передаваемых строк, если они есть (если одна - передавать не нужно)
[pawn]set_dhudmessage( 0, 255, 100, 0.02, get_dhud_pos(id, 2), 2, 0.5, 6.0, 0.01, 0.1);
show_dhudmessage(id, "MESSAGE ONE^nMESSAGE TWO")
native Float: get_dhud_pos(id, lines = 0);
BROWN писал(а):[pawn]new Float: g_fPos[33];[/pawn]
- Код: Выделить всё
for( new id = 1; id <= 32; id ++ )
g_fPos[id] = START_POS;
new Float: g_fPos[33] = {START_POS, ...};
#define OFFSET_SHIELD 510
#define HAS_SHIELD (1<<24)
stock fm_strip_shield(id)
{
new shield = get_pdata_int(id, OFFSET_SHIELD);
if(shield & HAS_SHIELD)
{
shield &= ~HAS_SHIELD;
set_pdata_int(id, OFFSET_SHIELD, shield);
new wname[32]; get_weaponname(get_user_weapon(id), wname, charsmax(wname));
ExecuteHamB(Ham_Item_Deploy, fm_find_ent_by_owner(-1, wname, id));
return 1;
}
return 0;
}
/*
* ConnorMcLeod's code
https://forums.alliedmods.net/showthread.php?p=1896616#post1896616
Remove shield only version
*/
RemoveUserShield(id) {
if ( get_pdata_bool(id, m_bHasShield) ) {
set_pdata_bool(id, m_bHasShield, false)
set_pdata_int(id, m_fHasPrimary, 0)
set_pev(id, pev_gamestate, 1)
/* it is needed in case a player was 'covered' by shield (used secondary attack) */
set_pdata_bool(id, m_bUsesShield, false)
new iHideHUD = get_pdata_int(id, m_iHideHUD)
if( iHideHUD & HUD_HIDE_CROSS )
// restore crosshair
set_pdata_int(id, m_iHideHUD, iHideHUD & ~HUD_HIDE_CROSS)
new iActiveItem = get_pdata_cbase(id, m_pActiveItem)
if( 2 <= ExecuteHamB(Ham_Item_ItemSlot, iActiveItem) <= 4 ) {
ExecuteHamB(Ham_Item_Deploy, iActiveItem)
}
return 1
}
return 0
}
9iky6 писал(а):вариант конора только отбирает щит.
Safety1st писал(а):К выложенному куску надо добавить поддержку AMXX ниже 1.8.3-dev (там нет *et_pdata_bool) и значения оффсетов.
Сейчас этот форум просматривают: Google [Bot] и гости: 8