tanımlamalar yanlış tanıtılmış benlik bir sorun yok "CSW" kaynaklarını değiştiren her kimse ondan kaynaklı bir sorun.
Kod: Tümünü seç
#pragma semicolon 1
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
new silahsesler[][][]={
{CSW_AK47,"sound/tsw_weapons/ak47-1.wav",4},
{CSW_AK47,"sound/tsw_weapons/ak47-2.wav",4},
{CSW_AUG,"sound/tsw_weapons/aug-1.wav",4},
{CSW_AWP,"sound/tsw_weapons/awp1.wav",2},
{CSW_FAMAS,"sound/tsw_weapons/famas-1.wav",4},
{CSW_FAMAS,"sound/tsw_weapons/famas-2.wav",4},
{CSW_FAMAS,"sound/tsw_weapons/famas-burst.wav",4},
{CSW_SG552,"sound/tsw_weapons/sg552-1.wav",4},
{CSW_SG552,"sound/tsw_weapons/sg552-2.wav",4},
{CSW_SG550,"sound/tsw_weapons/sg550-1.wav",4},
{CSW_SCOUT,"sound/tsw_weapons/scout_fire-1.wav",4},
{CSW_P90,"sound/tsw_weapons/p90-1.wav",4},
{CSW_P90,"sound/tsw_weapons/p90-boltpull.wav",4},
{CSW_P90,"sound/tsw_weapons/p90-clipin.wav",4},
{CSW_P90,"sound/tsw_weapons/p90-clipout.wav",4},
{CSW_P90,"sound/tsw_weapons/p90-cliprelease.wav",4},
{CSW_MP5NAVY,"sound/tsw_weapons/mp5-2.wav",4},
{CSW_MAC10,"sound/tsw_weapons/mac10-1.wav",4},
{CSW_M249,"sound/tsw_weapons/m249-1.wav",2},
{CSW_M249,"sound/tsw_weapons/m249-2.wav",2},
{CSW_GLOCK18,"sound/tsw_weapons/glock18-1.wav",4},
{CSW_GLOCK18,"sound/tsw_weapons/glock18-2.wav",4},
{CSW_HEGRENADE,"sound/tsw_weapons/hegrenade-1.wav",4},
{CSW_HEGRENADE,"sound/tsw_weapons/hegrenade-2.wav",4},
{CSW_HEGRENADE,"sound/tsw_weapons/grenade_hit2.wav",4},
{CSW_HEGRENADE,"sound/tsw_weapons/grenade_hit1.wav",4},
{CSW_GALIL,"sound/tsw_weapons/galil-2.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_deploy1.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_hit1.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_hit2.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_hit3.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_hit4.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_hitwall1.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_slash1.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_slash2.wav",4},
{CSW_KNIFE,"sound/tsw_weapons/knife_stab.wav",4},
{CSW_DEAGLE,"sound/tsw_weapons/deagle_-1.wav",2},
{CSW_DEAGLE,"sound/tsw_weapons/deagle_-2.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_clipout.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_deploy.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_fire.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_leftclipin.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_reloadstart.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_rightclipin.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_sliderelease.wav",2},
{CSW_ELITE,"sound/tsw_weapons/elite_twirl.wav",2},
{CSW_FIVESEVEN,"sound/tsw_weapons/fiveseven-1.wav",2},
{CSW_FLASHBANG,"sound/tsw_weapons/flashbang-1.wav",2},
{CSW_FLASHBANG,"sound/tsw_weapons/flashbang-2.wav",2},
{CSW_G3SG1,"sound/tsw_weapons/g3sg1-1.wav",2},
{CSW_GALIL,"sound/tsw_weapons/galil-1.wav",2},
{CSW_G3SG1,"sound/tsw_weapons/g3sg1-1.wav",2},
{CSW_SCOUT,"sound/tsw_weapons/scout-2.wav",2},
{CSW_UMP45,"sound/tsw_weapons/ump45-2.wav",4},
{CSW_M3,"sound/tsw_weapons/m3-1.wav",2},
{CSW_M3,"sound/tsw_weapons/m3_pump.wav",2},
{CSW_M3,"sound/tsw_weapons/m3_insertshell.wav",2},
{CSW_M4A1,"sound/tsw_weapons/m4a1_unsil-2.wav",2},
{CSW_M4A1,"sound/tsw_weapons/m4a1_unsil-1.wav",2},
{CSW_M4A1,"sound/tsw_weapons/m4a1-1wav",2},
{CSW_P228,"sound/tsw_weapons/scout-2.wav",2},
{CSW_MP5NAVY,"sound/tsw_weapons/mp5-1.wav",2},
{CSW_MP5NAVY,"sound/tsw_weapons/mp5-2.wav",2},
{CSW_TMP,"sound/tsw_weapons/tmp-1.wav",2},
{CSW_TMP,"sound/tsw_weapons/tmp-2.wav",2},
{CSW_USP,"sound/tsw_weapons/usp1.wav",2},
{CSW_USP,"sound/tsw_weapons/usp2.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_clippin.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_silencer_off.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_silencer_on.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_slideback.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_sliderelease.wav",2},
{CSW_USP,"sound/tsw_weapons/usp_unsil-1.wav",2},
{CSW_P228,"sound/tsw_weapons/p228-1.wav",2},
{CSW_XM1014,"sound/tsw_weapons/xm1014-1.wav",2}
};
public plugin_precache() for(new i;i<sizeof(silahsesler);i++) precache_sound(silahsesler[i][1]);
public plugin_init(){
RegisterHam(Ham_TraceAttack, "worldspawn", "fw_TraceAttack");
RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack");
register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post", 1);
register_forward(FM_PlaybackEvent, "fw_PlaybackEvent");
}
public fw_UpdateClientData_Post(id, sendweapons, cd_handle){
if(!is_user_alive(id) || !is_user_connected(id)) return FMRES_IGNORED;
for(new i;i<sizeof(silahsesler);i++) if(get_user_weapon(id) == silahsesler[i][0][0]) set_cd(cd_handle, CD_flNextAttack, get_gametime() + 0.001);
return FMRES_HANDLED;
}
public fw_PlaybackEvent(flags, invoker, eventid, Float:delay, Float:origin[3], Float:angles[3], Float:fparam1, Float:fparam2, iParam1, iParam2, bParam1, bParam2){
if (!is_user_connected(invoker)) return FMRES_IGNORED;
engfunc(EngFunc_PlaybackEvent, flags | FEV_HOSTONLY, invoker, eventid, delay, origin, angles, fparam1, fparam2, iParam1, iParam2, bParam1, bParam2);
for(new i;i<sizeof(silahsesler);i++){
if(get_user_weapon(invoker) == silahsesler[i][0][0]){
UTIL_PlayWeaponAnimation(invoker, silahsesler[i][2][0]);
emit_sound(invoker, CHAN_WEAPON, silahsesler[i][1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
}
}
return FMRES_SUPERCEDE;
}
stock UTIL_PlayWeaponAnimation(const Player, const Sequence){
set_pev(Player, pev_weaponanim, Sequence);
message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, .player = Player);
write_byte(Sequence);
write_byte(pev(Player, pev_body));
message_end();
}
public fw_TraceAttack(Victim, Attacker, Float:Damage, Float:Direction[3], Ptr, DamageBits){
static Float:flEnd[3], Float:vecPlane[3];
get_tr2(Ptr, TR_vecEndPos, flEnd);
get_tr2(Ptr, TR_vecPlaneNormal, vecPlane);
if(!is_user_alive(Victim)) Make_BulletHole(Attacker, flEnd, Damage);
return HAM_IGNORED;
}
stock Make_BulletHole(id, Float:Origin[3], Float:Damage){
static LoopTime,Decal; Decal = random_num(41, 45);
if(Damage > 100.0) LoopTime = 2; else LoopTime = 1;
for(new i = 0; i < LoopTime; i++){
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_WORLDDECAL);
engfunc(EngFunc_WriteCoord, Origin[0]);
engfunc(EngFunc_WriteCoord, Origin[1]);
engfunc(EngFunc_WriteCoord, Origin[2]);
write_byte(Decal);
message_end();
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_GUNSHOTDECAL);
engfunc(EngFunc_WriteCoord, Origin[0]);
engfunc(EngFunc_WriteCoord, Origin[1]);
engfunc(EngFunc_WriteCoord, Origin[2]);
write_short(id);
write_byte(Decal);
message_end();
}
}