Prosiłbym aby dodać do chowanego muzykę. Ścieżka muzyczki: sound/jb_cypis/chowany.mp3
Kod pluginu chowany.
Spoiler
#include <amxmodx> #include <amxmisc> #include <fun> #include <fakemeta> #include <engine> #include <colorchat> #include <jailbreak> #define PLUGIN "[JB] Chowany" #define VERSION "1.0.6" #define AUTHOR "Cypis" new bool:g_ChoosenColor[MAX+1], fPlayerPreThink, fCmdStart, bool:usun; new const g_FlashlightColors[][3] = { {255,0,0},//czerwony {0,255,0},//zielony {0,0,255},//niebieski {255,69,0},//pomaranczowy {0,255,255},//aqua {255,255,0},//zolty {255,0,255},//rozowy {255,255,255}//bialy }; new const g_FlashlightColorNames[][] = { "Czerwonym", "Zielonym", "Niebieskim", "Pomaranczowym", "Aqua", "Zoltym", "Rozowym", "Bialy ratuje!" }; new bool:g_HasFlashOn[MAX+1], g_FlashColor[MAX+1]; new id_zabawa; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) id_zabawa = jail_register_game("Chowany"); } public OnLastPrisonerShowWish(id) { if(fCmdStart && fPlayerPreThink) { OnRemoveData(id_zabawa); set_user_maxspeed(id, 250.0); } } public OnRemoveData(day) { if(day == id_zabawa) { RegisterChowany(false); set_lights("#OFF"); usun = false; } } public OnDayStartPre(day, szInfo[256], szInfo2[512], setting[10], gTimeRound) { static szTime[12]; if(day == id_zabawa) { format_time(szTime, 11, "%M:%S", gTimeRound-60); formatex(szInfo2, 511, "Zasady:^n%s - Wiezniowie maja czas na schowanie sie^n%s - Straznicy zaczynaja szukac^nOstatni wiezien ma zyczenie", szTime, szTime); szInfo = "Dzisiaj jest Chowany"; jail_set_prisoners_micro(true, true); jail_set_ct_hit_tt(true); jail_set_god_ct(true); setting[0] = 1; setting[1] = 1; setting[2] = 1; setting[4] = 1; setting[7] = 2; } } public OnDayStartPost(day) { if(day == id_zabawa) { jail_open_cele(); jail_set_game_hud(60, "Rozpoczecie zabawy za"); RegisterChowany(true); } } public OnGameHudEnd(day) { if(day == id_zabawa) { if(!usun) { set_lights("a"); jail_set_ct_hit_tt(false); jail_set_game_hud(300, "Zakonczenie zabawy za"); } else { jail_set_play_game(USUWANIE_DANYCH, true); set_lights("#OFF"); RegisterChowany(false); for(new i=1; i<=32; i++) { g_ChoosenColor[i] = false; if(is_user_alive(i) && is_user_connected(i)) set_user_maxspeed(i, 250.0); } } usun = !usun; } } // RegisterChowany(bool:wartosc) { if(wartosc) { if(!fPlayerPreThink) fPlayerPreThink = register_forward(FM_PlayerPreThink, "PreThink"); if(!fCmdStart) fCmdStart = register_forward(FM_CmdStart, "fwCmdStart"); } else { if(fPlayerPreThink) { unregister_forward(FM_PlayerPreThink, fPlayerPreThink); fPlayerPreThink = 0; } if(fCmdStart) { unregister_forward(FM_CmdStart, fCmdStart); fCmdStart = 0; } } } public showColorMenu(id) { new menu = menu_create("\yZostales znaleziony! Wybierz nastepny kolor latarki!^nMasz\w 5\y sekund", "Handel_Kolor"); menu_additem(menu, "Czerwony"); menu_additem(menu, "Zielony"); menu_additem(menu, "Niebieski"); menu_additem(menu, "Pomaranczowy"); menu_additem(menu, "Aqua"); menu_additem(menu, "Zolty"); menu_additem(menu, "Rozowy"); menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER); menu_display(id, menu); } public Handel_Kolor(id, menu, item) { if(item == MENU_EXIT || get_user_team(id) != 1 || !is_user_alive(id)) return; new szColor[32], szName[32], acces, callback, data[2]; get_user_name(id, szName, 31); menu_item_getinfo(menu, item, acces, data, 1, szColor, 31, callback); set_user_rendering(id, kRenderFxGlowShell, g_FlashlightColors[item][0], g_FlashlightColors[item][1], g_FlashlightColors[item][2], kRenderNormal, 1); ColorChat(0, TEAM_COLOR, "^x04[Chowany]^x03 %s^x01 wybral kolor^x03 %s", szName, szColor); SprwaczCzyOstatni(); } SprwaczCzyOstatni() { new bool:koniec = false; for(new i=1; i<=MAX; i++) { if(!is_user_connected(i) || !is_user_alive(i) || get_user_team(i) != 1) continue; koniec = true; if(!g_ChoosenColor[i]) { koniec = false; break; } } if(koniec) { jail_remove_game_hud(); jail_set_play_game(USUWANIE_DANYCH, true); set_lights("#OFF"); RegisterChowany(false); for(new i=1; i<=MAX; i++) { g_ChoosenColor[i] = false; if(is_user_alive(i) && is_user_connected(i)) set_user_maxspeed(i, 250.0); } } } public fwCmdStart(id, uc) { if(!is_user_alive(id) || get_user_team(id) != 2) return FMRES_HANDLED; if(get_uc(uc, UC_Buttons) & IN_USE && !(pev(id, pev_oldbuttons) & IN_USE)) { new id2, body; get_user_aiming(id, id2, body); if(is_user_connected(id2) && is_user_alive(id2) && get_user_team(id2) == 1) { if(!g_ChoosenColor[id2]) { new szName[2][32]; get_user_name(id, szName[0], 31); get_user_name(id2, szName[1], 31); client_cmd(id, "spk fvox/blip"); client_cmd(id2, "spk fvox/blip"); showColorMenu(id2); set_user_rendering(id2, kRenderFxPulseFastWide, 0, 0, 0, kRenderTransAdd, 128); ColorChat(0, TEAM_COLOR, "^x04[Chowany]^x03 %s^x01 znalazl^x03 %s^x01 !", szName[0], szName[1]); g_ChoosenColor[id2] = true; } else { ColorChat(id, TEAM_COLOR, "^x04[Chowany]^x03 Ten gracz juz wybral kolor!"); } } } if(get_uc(uc, UC_Impulse) == 100) { g_FlashColor[id] = random(sizeof(g_FlashlightColors)); g_HasFlashOn[id] = !g_HasFlashOn[id]; set_uc(uc, UC_Impulse, 0); return FMRES_HANDLED; } return FMRES_IGNORED; } public PreThink(id) { if(!is_user_alive(id)) return FMRES_IGNORED; set_pev(id, pev_flTimeStepSound, 999); set_pev(id, pev_fuser2, 0.0); switch(get_user_team(id)) { case 1:{ if(!usun) { set_pev(id, pev_maxspeed, 550.0); set_pev(id, pev_gravity, 0.36); } else { set_pev(id, pev_maxspeed, -1.0); set_pev(id, pev_velocity, Float:{0.0, 0.0, 0.0}); } } case 2:{ if(!usun) { set_pev(id, pev_maxspeed, -1.0); set_pev(id, pev_velocity, Float:{0.0, 0.0, 0.0}); } else { set_pev(id, pev_maxspeed, 550.0); set_pev(id, pev_gravity, 0.36); } if(g_HasFlashOn[id]) Make_FlashLight(id, g_FlashColor[id]); } } return FMRES_IGNORED; } Make_FlashLight(id, color) { new Origin[3]; get_user_origin(id, Origin, 3); message_begin(MSG_BROADCAST, SVC_TEMPENTITY, .player=id); write_byte(TE_DLIGHT); write_coord(Origin[0]); write_coord(Origin[1]); write_coord(Origin[2]); write_byte(17); write_byte(g_FlashlightColors[color][0]); write_byte(g_FlashlightColors[color][1]); write_byte(g_FlashlightColors[color][2]); write_byte(1); write_byte(60); message_end(); set_hudmessage(g_FlashlightColors[color][0], g_FlashlightColors[color][1], g_FlashlightColors[color][2], 0.05, 0.65, 0, 0.25, 0.25, 0.5, 0.5, 3); show_hudmessage(id, "swiecisz kolorem %s", g_FlashlightColorNames[color]); }
Proszę także o dodanie pojedynków na ak47,awp, krowy,shoty oraz pięści do jail życzenie.
Kod pluginu:
Spoiler
#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_scouty, id_deagle; 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_scouty = jail_register_wish("Pojedynek na Scouty"); id_deagle = jail_register_wish("Pojedynek na Deagle"); } public plugin_precache() { precache_sound("jb_cypis/rambomode.wav"); precache_sound("jb_cypis/pojedynek.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_scouty) { pojedynek[0] = id; bronie_pojedynek = CSW_SCOUT; MenuPojedynek(id); } else if(zyczenie == id_deagle) { pojedynek[0] = id; bronie_pojedynek = CSW_DEAGLE; MenuPojedynek(id); } 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 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[PrisonBreak]^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 ///////////
Daję plusy za każdą pomoc ;D