z góry dziękuje i daje +
#include <amxmodx>
#include <fakemeta>
#pragma semicolon 1
#define MAX_PLAYERS 32
new const CHUCKY_KNIFE_WOB[] = "models/v_knife_r.mdl";
new const CHUCKY_KNIFE[] = "models/chucky_knife.mdl";
new const CHUCKY_SOUND[] = "misc/chucky.wav";
new bool:g_bloody[MAX_PLAYERS+1];
new g_max_clients;
new g_bk_enabled, g_bk_rndreset;
public plugin_precache() {
engfunc(EngFunc_PrecacheModel, CHUCKY_KNIFE);
engfunc(EngFunc_PrecacheModel, CHUCKY_KNIFE_WOB);
engfunc(EngFunc_PrecacheSound, CHUCKY_SOUND);
}
public plugin_init() {
register_plugin("Bloody Knife", "1.0", "Dontask-jello/connor");
g_bk_enabled = register_cvar("bk_enabled", "1");
g_bk_rndreset = register_cvar("bk_rndreset", "0");
register_forward(FM_EmitSound, "fwEmitSound");
register_event("HLTV", "eNewRound", "a", "1=0", "2=0");
register_event("CurWeapon", "eCurWeapon", "be", "1=1", "2=29");
register_event("DeathMsg", "eDeathMsg", "a");
}
public plugin_cfg() {
g_max_clients = global_get(glb_maxClients);
}
public client_putinserver(id) {
g_bloody[id] = false;
}
public eCurWeapon(id) {
if(!get_pcvar_num(g_bk_enabled))
return;
if(!g_bloody[id])
set_pev(id, pev_viewmodel2, CHUCKY_KNIFE_WOB);
else
set_pev(id, pev_viewmodel2, CHUCKY_KNIFE);
}
public fwEmitSound(id, channel, sample[], float:volume, float:attenuation, fFlags, pitch) {
if(!(1 <= id <= g_max_clients))
return FMRES_IGNORED;
if(!get_pcvar_num(g_bk_enabled))
return FMRES_IGNORED;
if(g_bloody[id])
return FMRES_IGNORED;
if( sample[0] == 'w' && sample[8] == 'k' && ( sample[17] == 'b' || (sample[14] == 'h' && sample[17] != 'w') ) )
{
g_bloody[id] = true;
eCurWeapon(id);
engfunc(EngFunc_EmitSound, id, channel, CHUCKY_SOUND, volume, attenuation, fFlags, pitch);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED;
}
public eDeathMsg() {
new victim = read_data(2);
if(g_bloody[victim])
g_bloody[victim] = false;
}
public eNewRound() {
if(!get_pcvar_num(g_bk_enabled))
return;
if(!get_pcvar_num(g_bk_rndreset))
return;
new players[MAX_PLAYERS], inum;
get_players(players, inum, "h");
for(new i; i<inum; ++i)
{
if(g_bloody[players[i]])
g_bloody[players[i]] = false;
}
}


Dodatki SourceMod



Temat jest zamknięty










