Witam, na kilku serwerach nie raz widzę taki plugin że po zabiciu gracza albo graczów w tym miejscu w których ich się zabiło pokazują się takie informacje jak:
Combo X (Gdzie X to jest numer np 1, 2, 3, 4, 5 itp)
Pozdrawiam i z góry dziękuje
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Najlepsza odpowiedź Wielkie Jol, 15.07.2014 06:43
Dosłownie minuta szukania: http://amxx.pl/topic...effects-killer/
przerobione na tylko i wyłącznie kille:
#include <amxmodx>
#include <fakemeta>
#include <xs>
new g_kills[33];
new g_maxplayers;
new g_player_hud[33];
#define NORMAL_KILLS_NUM 8
#define OTHER_KILLS_NUM 7
new const normal_kill[8][] =
{
"sprites/kill_1.spr",
"sprites/kill_2.spr",
"sprites/kill_3.spr",
"sprites/kill_4.spr",
"sprites/kill_5.spr",
"sprites/kill_6.spr",
"sprites/kill_7.spr",
"sprites/kill_8.spr"
}
public plugin_init()
{
register_plugin("Effects Killer","1.0","NST")
register_logevent("RoundStart", 2, "1=Round_Start")
register_forward(FM_AddToFullPack, "AddToFullPack", 1)
register_event("DeathMsg", "DeathMsg", "a")
g_maxplayers = get_maxplayers()
}
public plugin_precache()
{
new i;
for(i = 0 ; i < NORMAL_KILLS_NUM ; i++)
{
precache_model(normal_kill[i])
}
}
public RoundStart()
{
for(new i = 1; i <= g_maxplayers; i++)
{
g_kills[i] = 0
}
}
public DeathMsg()
{
new killer, victim, weapon[12];
killer = read_data(1)
victim = read_data(2)
read_data(4, weapon, charsmax(weapon))
if(is_user_bot(killer) || killer == victim)
return
g_kills[killer]++
new players_t[32], players_ct[32], t_count, ct_count;
get_players(players_t, t_count, "ae", "TERRORIST")
get_players(players_ct, ct_count, "ae", "CT")
if(g_kills[killer] < 8)
{
ShowSprite(killer, normal_kill[g_kills[killer] - 1])
return
}
}
public AddToFullPack(es, e, ent, host, host_flags, player, p_set)
{
if(!is_user_connected(host) || !pev_valid(host) || !pev_valid(ent))
return FMRES_IGNORED
if (ent == g_player_hud[host])
{
static Float:origin[3], Float:forvec[3], Float:voffsets[3]
pev(host, pev_origin, origin)
pev(host, pev_view_ofs, voffsets)
xs_vec_add(origin, voffsets, origin)
velocity_by_aim(host, 12, forvec)
xs_vec_add(origin, forvec, origin)
engfunc(EngFunc_SetOrigin, ent, origin)
set_es(es, ES_Origin, origin)
set_es(es, ES_RenderMode, kRenderTransAdd)
set_es(es, ES_RenderAmt, 255)
}
return FMRES_IGNORED
}
public ShowSprite(id, const sprite[])
{
if(!is_user_connected(id))
return
remove_task(id)
if(!pev_valid(g_player_hud[id]))
g_player_hud[id] = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_sprite"))
set_pev(g_player_hud[id], pev_takedamage, 0.0)
set_pev(g_player_hud[id], pev_solid, SOLID_NOT)
set_pev(g_player_hud[id], pev_movetype, MOVETYPE_NONE)
engfunc(EngFunc_SetModel, g_player_hud[id], sprite)
set_pev(g_player_hud[id], pev_rendermode, kRenderTransAdd)
set_pev(g_player_hud[id], pev_renderamt, 0.0)
set_pev(g_player_hud[id], pev_scale, 0.03)
set_pev(g_player_hud[id], pev_animtime, get_gametime())
set_pev(g_player_hud[id], pev_framerate, 0.0)
set_pev(g_player_hud[id], pev_spawnflags, SF_SPRITE_STARTON)
dllfunc(DLLFunc_Spawn, g_player_hud[id])
set_task(2.0, "RemoveSprite", id)
}
public RemoveSprite(id)
{
if(pev_valid(g_player_hud[id]))
{
engfunc(EngFunc_RemoveEntity, g_player_hud[id])
g_player_hud[id] = 0
remove_task(id)
}
else
{
g_player_hud[id] = 0
remove_task(id)
}
}
Przejdź do postu
Napisano 05.07.2014 23:38
Witam, na kilku serwerach nie raz widzę taki plugin że po zabiciu gracza albo graczów w tym miejscu w których ich się zabiło pokazują się takie informacje jak:
Combo X (Gdzie X to jest numer np 1, 2, 3, 4, 5 itp)
Pozdrawiam i z góry dziękuje
LoL, 500 postów ;D
Napisano 14.07.2014 23:12
Przepraszam ale nie mogę edytować tematu.
Znalazłem screena w necie więc podrzucam:

Użytkownik e-Skill edytował ten post 14.07.2014 23:14
LoL, 500 postów ;D
Napisano 15.07.2014 06:43 Najlepsza odpowiedź
Dosłownie minuta szukania: http://amxx.pl/topic...effects-killer/
przerobione na tylko i wyłącznie kille:
#include <amxmodx>
#include <fakemeta>
#include <xs>
new g_kills[33];
new g_maxplayers;
new g_player_hud[33];
#define NORMAL_KILLS_NUM 8
#define OTHER_KILLS_NUM 7
new const normal_kill[8][] =
{
"sprites/kill_1.spr",
"sprites/kill_2.spr",
"sprites/kill_3.spr",
"sprites/kill_4.spr",
"sprites/kill_5.spr",
"sprites/kill_6.spr",
"sprites/kill_7.spr",
"sprites/kill_8.spr"
}
public plugin_init()
{
register_plugin("Effects Killer","1.0","NST")
register_logevent("RoundStart", 2, "1=Round_Start")
register_forward(FM_AddToFullPack, "AddToFullPack", 1)
register_event("DeathMsg", "DeathMsg", "a")
g_maxplayers = get_maxplayers()
}
public plugin_precache()
{
new i;
for(i = 0 ; i < NORMAL_KILLS_NUM ; i++)
{
precache_model(normal_kill[i])
}
}
public RoundStart()
{
for(new i = 1; i <= g_maxplayers; i++)
{
g_kills[i] = 0
}
}
public DeathMsg()
{
new killer, victim, weapon[12];
killer = read_data(1)
victim = read_data(2)
read_data(4, weapon, charsmax(weapon))
if(is_user_bot(killer) || killer == victim)
return
g_kills[killer]++
new players_t[32], players_ct[32], t_count, ct_count;
get_players(players_t, t_count, "ae", "TERRORIST")
get_players(players_ct, ct_count, "ae", "CT")
if(g_kills[killer] < 8)
{
ShowSprite(killer, normal_kill[g_kills[killer] - 1])
return
}
}
public AddToFullPack(es, e, ent, host, host_flags, player, p_set)
{
if(!is_user_connected(host) || !pev_valid(host) || !pev_valid(ent))
return FMRES_IGNORED
if (ent == g_player_hud[host])
{
static Float:origin[3], Float:forvec[3], Float:voffsets[3]
pev(host, pev_origin, origin)
pev(host, pev_view_ofs, voffsets)
xs_vec_add(origin, voffsets, origin)
velocity_by_aim(host, 12, forvec)
xs_vec_add(origin, forvec, origin)
engfunc(EngFunc_SetOrigin, ent, origin)
set_es(es, ES_Origin, origin)
set_es(es, ES_RenderMode, kRenderTransAdd)
set_es(es, ES_RenderAmt, 255)
}
return FMRES_IGNORED
}
public ShowSprite(id, const sprite[])
{
if(!is_user_connected(id))
return
remove_task(id)
if(!pev_valid(g_player_hud[id]))
g_player_hud[id] = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_sprite"))
set_pev(g_player_hud[id], pev_takedamage, 0.0)
set_pev(g_player_hud[id], pev_solid, SOLID_NOT)
set_pev(g_player_hud[id], pev_movetype, MOVETYPE_NONE)
engfunc(EngFunc_SetModel, g_player_hud[id], sprite)
set_pev(g_player_hud[id], pev_rendermode, kRenderTransAdd)
set_pev(g_player_hud[id], pev_renderamt, 0.0)
set_pev(g_player_hud[id], pev_scale, 0.03)
set_pev(g_player_hud[id], pev_animtime, get_gametime())
set_pev(g_player_hud[id], pev_framerate, 0.0)
set_pev(g_player_hud[id], pev_spawnflags, SF_SPRITE_STARTON)
dllfunc(DLLFunc_Spawn, g_player_hud[id])
set_task(2.0, "RemoveSprite", id)
}
public RemoveSprite(id)
{
if(pev_valid(g_player_hud[id]))
{
engfunc(EngFunc_RemoveEntity, g_player_hud[id])
g_player_hud[id] = 0
remove_task(id)
}
else
{
g_player_hud[id] = 0
remove_task(id)
}
}
"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.
0 użytkowników, 0 gości, 0 anonimowych