Mam problem, nie odtwarza sie dzwiek przy pojedynku na m4,ak itd. Help me
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <colorchat>
#include <jailbreak>
#define PLUGIN "Jail Zyczenia"
#define VERSION "1.0.6"
#define AUTHOR "Cypis"
/////////// Pojedynek ///////////
new bronie_pojedynek, pojedynek[2];
new HamHook:fHamKill, HamHook:fHamDamage, HamHook:fHamTrace, HamHook:fHamWeapon[31];
/////////// Pojedynek ///////////
new const maxAmmo[31] = {0,52,0,90,1,31,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,31,90,120,90,2,35,90,90,0,100};
new id_bezruch, id_freeday, id_duszek, id_rambomod, id_pojedynek;
new id_kill, id_glocker
///////////// ogien ////////////
new g_fire[ 33 ]
new maxplayers;
new id_podpalenie
new g_mflash
new g_smoke
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
id_bezruch = jail_register_wish("Bezruch");
id_freeday = jail_register_wish("FreeDay");
id_duszek = jail_register_wish("Duszek");
id_rambomod = jail_register_wish("RamboMod");
id_pojedynek = jail_register_wish("Pojedynki");
id_kill = jail_register_wish("CT Kill w konsoli");
id_glocker = jail_register_wish("Gruby Glocker");
id_podpalenie = jail_register_wish("Podpal Klawiszy");
}
public plugin_precache()
{
precache_sound("jb_cypis/rambomode.wav");
precache_sound("jb_cypis/pojedynek.wav");
precache_sound( "ambience/flameburst1.wav" )
precache_sound( "scientist/scream07.wav" )
g_mflash = precache_model( "sprites/muzzleflash.spr" )
g_smoke = precache_model( "sprites/steam1.spr" )
precache_sound( "scientist/scream21.wav" )
}
public OnRemoveData(day)
{
/////////// Pojedynek ///////////
if(pojedynek[0] || pojedynek[1])
{
pojedynek[0] = 0;
pojedynek[1] = 0;
RegisterHams(false);
}
bronie_pojedynek = 0;
/////////// Pojedynek ///////////
}
public OnLastPrisonerTakeWish(id, zyczenie)
{
if(zyczenie == id_bezruch)
{
strip_user_weapons(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, maxAmmo[CSW_DEAGLE]);
jail_set_ct_hit_tt(true);
for(new i=1; i<=32; i++)
{
if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;
strip_user_weapons(i);
give_item(i, "weapon_knife");
jail_set_user_speed(i, 0.1);
}
}
else if(zyczenie == id_freeday)
{
if(jail_get_days() == CZWARTEK || jail_get_days() == SOBOTA) //w tych dniach nie mozna wziść fd
return JAIL_HANDLED;
user_kill(id);
jail_set_prisoner_free(id);
}
else if(zyczenie == id_duszek)
{
if(jail_get_days() == CZWARTEK || jail_get_days() == SOBOTA) //w tych dniach nie mozna wziść duszka
return JAIL_HANDLED;
user_kill(id);
jail_set_prisoner_ghost(id);
}
else if(zyczenie == id_rambomod)
{
client_cmd(0, "spk jb_cypis/rambomode.wav");
set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0);
show_hudmessage(0, "RamboMod aktywny!");
set_user_health(id, 1500);
strip_user_weapons(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_m249");
cs_set_user_bpammo(id, CSW_M249, maxAmmo[CSW_M249]);
}
else if(zyczenie == id_pojedynek)
{
MenuPojedynkow(id)
}
else if(zyczenie == id_podpalenie){
for(new i=1; i<=32; i++){
if(is_user_alive(i) && get_user_team(i) == 2){
exec_punishmentfire()
}
}
set_user_health(id, 3000); // odpowiada za to, czy damy naszemu ostatniemu więźniowi 3000 hp czy też nie, by nie został zabity w trakcie palenia się klawiszy
}
else if(zyczenie == id_glocker)
{
strip_user_weapons(id)
set_user_health(id, 2000)
give_item( id, "weapon_glock18")
give_item(id, "weapon_knife")
cs_set_user_bpammo(id,CSW_GLOCK18,200)
set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderTransAlpha, 255)
set_hudmessage(random_num(1,255), random_num(1,255), random_num(1,255), -1.0, -1.0, 0, 6.0, 12.0)
show_hudmessage(0, "= Gruby Glocker powrocil =")
}
else if(zyczenie == id_kill)
{
set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0);
show_hudmessage(0, "CT zabilo sie z niewiadomo jakiego powodu...!");
for(new i=1; i<=32; i++){
if(is_user_alive(i) && get_user_team(i) == 2){
user_kill(i)
}
}
}
return JAIL_CONTINUE;
}
/////////// Pojedynek ///////////
public MenuPojedynek(id)
{
new menu = menu_create("Pojedynek Z:", "Handel_Pojedynek");
for(new i=1; i<=32; i++)
{
if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;
new name[64];
get_user_name(i, name, 63);
menu_additem(menu, name);
}
menu_setprop(menu, MPROP_EXITNAME, "\dWyjdz");
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_display(id, menu);
}
public MenuPojedynkow(id)
{
new menu = menu_create("MyMenu", "h_Pojedynki");
for(new i=1; i<=32; i++)
{
if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;
menu_additem(menu,"Deagle","1",0)
menu_additem(menu,"Scout","2",0)
menu_additem(menu,"AWP","3",0)
menu_additem(menu,"AK47","4",0)
menu_additem(menu,"Pompa","5",0)
menu_additem(menu,"P90","6",0)
menu_additem(menu,"Glocki","7",0)
menu_additem(menu,"Granaty","8",0)
menu_additem(menu,"M4A1","9",0)
menu_additem(menu,"Krowa","10",0)
menu_additem(menu,"Aug","11",0)
menu_additem(menu,"MP5","12",0)
menu_additem(menu,"Galil","13",0)
menu_additem(menu,"Famas","14",0)
}
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_NOCOLORS, 1);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public h_Pojedynki(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_cancel(id);
return PLUGIN_HANDLED;
}
new command[6], name[64], access, callback;
menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
switch(item)
{
case 0:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_DEAGLE;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Deagle");
MenuPojedynek(id);
}
case 1:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_SCOUT;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Scouty");
MenuPojedynek(id);
}
case 2:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_AWP;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na AWP");
MenuPojedynek(id);
}
case 3:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_AK47;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na AK47");
MenuPojedynek(id);
}
case 4:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_M3;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Pompy");
MenuPojedynek(id);
}
case 5:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_P90;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na P90");
MenuPojedynek(id);
}
case 6:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_GLOCK18;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Glocki");
MenuPojedynek(id);
}
case 7:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_HEGRENADE;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Granaty");
MenuPojedynek(id);
}
case 8:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_M4A1;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na M4A1");
MenuPojedynek(id);
}
case 9:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_M249;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Krowe");
MenuPojedynek(id);
}
case 10:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_AUG;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na AUG");
MenuPojedynek(id);
}
case 11:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_MP5NAVY;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na MP5");
MenuPojedynek(id);
}
case 12:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_GALI;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Galil");
MenuPojedynek(id);
}
case 13:
{
pojedynek[0] = id;
bronie_pojedynek = CSW_FAMAS;
client_print(0, print_chat, "[Cs-Wysypisko] Pojedynek na Famas");
MenuPojedynek(id);
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public Handel_Pojedynek(id, menu, item)
{
if(pojedynek[0] != id || pojedynek[1] || !is_user_alive(id))
return;
if(item == MENU_EXIT)
{
menu_display(id, menu);
return;
}
new acces, callback, data[3], szName2[64];
menu_item_getinfo(menu, item, acces, data, 2, szName2, 63, callback);
pojedynek[1] = get_user_index(szName2);
if(!is_user_alive(pojedynek[1]) || !is_user_connected(pojedynek[1]))
{
pojedynek[1] = 0;
MenuPojedynek(id);
return;
}
new szName[32];
get_user_name(id, szName, 31);
ColorChat(0, TEAM_COLOR, "^x04[Cs-Wysypisko.pl]^x03 %s^x01 walczy z^x03 %s", szName, szName2);
client_cmd(0, "spk jb_cypis/pojedynek.wav");
RegisterHams(true);
set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 10);
set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);
jail_set_user_block(pojedynek[0], true)
jail_set_user_block(pojedynek[1], true);
set_user_health(id, 100);
set_user_health(pojedynek[1], 100);
strip_user_weapons(id);
strip_user_weapons(pojedynek[1]);
new weapon_name[24];
get_weaponname(bronie_pojedynek, weapon_name, 23);
new ent = give_item(id, weapon_name);
new ent2 = give_item(pojedynek[1], weapon_name);
cs_set_weapon_ammo(ent, 1);
cs_set_weapon_ammo(ent2, 1);
}
public TakeDamage(id, ent, attacker, Float:damage, damagebits)
return vTracerAttack(id, attacker);
public TraceAttack(id, attacker, Float:damage, Float:direction[3], tracehandle, damagebits)
return vTracerAttack(id, attacker);
vTracerAttack(id, attacker)
{
if(!pojedynek[0] || !is_user_connected(id) || !is_user_connected(attacker) || id == attacker)
return HAM_IGNORED;
if(pojedynek[0] == id && pojedynek[1] != attacker)
return HAM_SUPERCEDE;
if(pojedynek[0] == attacker && pojedynek[1] != id)
return HAM_SUPERCEDE;
return HAM_IGNORED;
}
public SmiercGraczaPost(id, attacker, shouldgib)
{
if(!is_user_connected(id) || id != pojedynek[1])
return HAM_IGNORED;
jail_set_user_block(id, false);
SzukajPrzeciwnika();
return HAM_IGNORED;
}
public WeaponAttack(ent)
{
new id = get_pdata_cbase(ent, 41, 4);
if(pojedynek[0] == id || pojedynek[1] == id)
{
cs_set_user_bpammo(id, bronie_pojedynek, 1);
}
}
public client_disconnect(id)
{
if(pojedynek[1] == id)
SzukajPrzeciwnika();
}
public SzukajPrzeciwnika()
{
pojedynek[1] = RandomPlayer(2);
if(!pojedynek[1])
return;
if(is_user_alive(pojedynek[0]))
set_user_health(pojedynek[0], 100);
set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);
jail_set_user_block(pojedynek[1], true);
set_user_health(pojedynek[1], 100);
strip_user_weapons(pojedynek[1]);
new weapon_name[24]
get_weaponname(bronie_pojedynek, weapon_name, 23);
new ent = give_item(pojedynek[1], weapon_name);
cs_set_weapon_ammo(ent, 1);
}
public RegisterHams(bool:wartosc)
{
if(wartosc)
{
if(fHamKill)
EnableHamForward(fHamKill);
else
fHamKill = RegisterHam(Ham_Killed, "player", "SmiercGraczaPost", 1);
if(fHamDamage)
EnableHamForward(fHamDamage);
else
fHamDamage = RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
if(fHamTrace)
EnableHamForward(fHamTrace);
else
fHamTrace = RegisterHam(Ham_TraceAttack, "player", "TraceAttack");
if(fHamWeapon[bronie_pojedynek])
EnableHamForward(fHamWeapon[bronie_pojedynek]);
else
{
new WeaponName[24];
get_weaponname(bronie_pojedynek, WeaponName, 23);
fHamWeapon[bronie_pojedynek] = RegisterHam(Ham_Weapon_PrimaryAttack, WeaponName, "WeaponAttack", 1);
}
}
else
{
if(fHamKill)
DisableHamForward(fHamKill);
if(fHamDamage)
DisableHamForward(fHamDamage);
if(fHamTrace)
DisableHamForward(fHamTrace);
if(fHamWeapon[bronie_pojedynek])
DisableHamForward(fHamWeapon[bronie_pojedynek]);
}
}
/////////// Pojedynek ///////////
/////////// Ogien ///////////
exec_punishmentfire( ){
for(new i=1; i<=32; i++){
if(is_user_alive(i) && get_user_team(i) == 2){
if ( !g_fire[ i ] ){
g_fire[ i ] = 1
fire_effects( i )
fire_damage( i )
}
}
}
}
public fire_effects( id ){
if ( is_user_alive( id ) && g_fire[ id ] ){
new origin[ 3 ]
get_user_origin( id, origin )
draw_fire( origin )
set_task( 0.2, "fire_effects", id )
}
}
public fire_damage( id ){
if ( is_user_alive( id ) && g_fire[ id ] ){
new health = get_user_health( id )
set_pev( id, pev_dmg_inflictor, 0 )
if ( health - 20 <= 0 )
user_kill( id, 1 )
else
{
set_pev( id, pev_health, float( health ) - 20.0 )
emit_sound( id, CHAN_ITEM, "ambience/flameburst1.wav", 0.6, ATTN_NORM, 0, PITCH_NORM )
set_task( 1.0, "fire_damage", id )
}
}
}
public Touch( ptr, ptd ){
if ( ptr < 1 || ptr > maxplayers || ptd < 1 || ptd > maxplayers )
return FMRES_IGNORED
if ( is_user_alive( ptr ) && !g_fire[ ptr ] && is_user_alive( ptd ) && g_fire[ ptd ] ){
emit_sound( ptr, CHAN_WEAPON, "scientist/scream07.wav", 1.0, ATTN_NORM, 0, PITCH_HIGH )
}
return FMRES_IGNORED
}
draw_fire( origin[ 3 ] ){
message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
write_byte( TE_SPRITE )
write_coord( origin[ 0 ] )
write_coord( origin[ 1 ] )
write_coord( origin[ 2 ] )
write_short( g_mflash )
write_byte( 20 )
write_byte( 200 )
message_end()
smoke_effect( origin, 20 ) // Smoke
}
smoke_effect( origin[ 3 ], amount ){
message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
write_byte( TE_SMOKE )
write_coord( origin[ 0 ] )
write_coord( origin[ 1 ] )
write_coord( origin[ 2 ] )
write_short( g_smoke )
write_byte( amount )
write_byte( 10 )
message_end()
}