Witamy w Nieoficjalnym polskim support'cie AMX Mod X
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.
|
Guest Message by DevFuse
"Problem z kompilacją"error
Temat rozp. Denax, 10.10.2018 16:00
- Nie możesz napisać tematu
- Zaloguj się, aby dodać odpowiedź
5 odpowiedzi w tym temacie
#2 DarkGL
Napisano 10.10.2018 16:18
Spoiler
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <hamsandwich> #include <fakemeta> #include <colorchat> #include <jailbreak> #include <engine> #define PLUGIN "Jail Menu" #define VERSION "1.0.6" #define AUTHOR "Cypis" #define TAG "JailBreak" new bool:menu_mikro, bool:menu_walka; new w_trakcie[33]; new bool:zyczenie=false new gracz_id[33],wybrany; new autobh = 0; new muza = 0; #if!defined KILLDAY_DAY #define KILLDAY_DAY PIATEK #endif public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("Damage", "Damage", "b", "2!=0"); register_event("ResetHUD", "SpawnPlayer", "be") register_clcmd("+revision", "wlacz_rewizje"); register_clcmd("-revision", "wylacz_rewizje"); register_clcmd("say /menu", "MenuGraczy"); register_clcmd("jail_amenu", "MenuAdmina", ADMIN_BAN); register_clcmd("say /a", "MenuAdmina", ADMIN_BAN); register_clcmd("say /dajdeagla", "menu") } public plugin_precache() { precache_sound("weapons/c4_disarm.wav"); precache_sound("weapons/c4_disarmed.wav"); precache_sound("JailBreak[k]/dzwonek.wav"); precache_sound("misc/jb_anonymuss/walka.mp3"); } public SpawnPlayer(id) { w_trakcie[id] = 0; remove_task(5000+id); } public MenuGraczy(id) { if(!is_user_alive(id)) { MenuGraczaNieZywego(id); return PLUGIN_HANDLED; } switch(get_user_team(id)) { case 1: MenuGraczaTT(id); case 2: MenuGraczaCT(id); } return PLUGIN_HANDLED; } public MenuGraczaTT(id) { new menu = menu_create("\dMenu Wieznia:", "Handel_Menu"); new cb = menu_makecallback("Menu_Callback"); menu_additem(menu, "\d| \r[\dCzapki\r] \y- Wybierz czapke \d|", "3"); menu_additem(menu, "\d| \r[\dKolory\r] \y- Dopasuj kolor czapki \d|^n~ Sklepy:", "24"); menu_additem(menu, "\d| \r[\ySklep za $$$\r] \y- Sklep za $$$ \d|", "19"); menu_additem(menu, "\d| \r[\ySklep za Szlugi\r] \y- Sklep za Szlugi \d|^n", "190"); menu_additem(menu, "\d| \r[\dUkradnij bron\r] \y- Kradziez broni CT \d|", "4"); menu_additem(menu, "\d| \r[\dRuletka\r] \y- Wylosuj bonus \d|", "20"); menu_additem(menu, "\d| \r[\dZyczenie\r] \y- Dla ostatniego wieznia \d|", "18", 4, cb); menu_additem(menu, "\d| \r[\dMute\r] \y- Wycisz GRACZA \d|", "72"); menu_additem(menu, "\d| \r[\dRegulamin\r] \y- Regulamin Serwera!\d|^n~ Opis VIPow:", "65"); menu_additem(menu, "\d| \r[\yVip\r] \y- Informacje \d|", "62"); menu_additem(menu, "\d| \r[\ySvip\r] \y- Informacje \d|^n", "63"); menu_additem(menu, "\d| \r[\dKontakt\r] \y- Kontakt do Administracji \d|^n~ Pozostale opcje za szlugi:", "66"); menu_additem(menu, "\d| \r[\dKantor\r] \y- Wymiana walut serwerowych \d|", "69"); menu_additem(menu, "\d| \r[\dTransfer\r] \y- Przekazywanie szlugow innym \d|", "155"); menu_additem(menu, "\d| \r[\dTopka\r] \y- Najlepsi na Serwerze!\d|", "64"); menu_additem(menu, "\d| \r[\dSkiny\r] \y- Skiny do broni VIP \d|", "67"); menu_additem(menu, "\d| \r[\dBind\r] \y- Menu bindow serwera \d|", "380"); menu_additem(menu, "\d| \r[\dGang\r] \y- Opcje twojego gangu \d|", "85"); menu_additem(menu, "\d| \r[\dMisje\r] \y- Opis zadan do wykonania \d|", "68"); menu_additem(menu, "\d| \r[\dRadio TT\r] \y- Legalne przeklinanie na serwerze! \d|", "79"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d| "); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_setprop(menu, MPROP_PERPAGE, 7); menu_display(id, menu); } public MenuAdmina(id) { if(!(get_user_flags(id) & ADMIN_BAN)) { ColorChat(id, GREEN, "**JailBreak** ^x01To menu dostepne jest tylko dla^x03 Admina!"); return PLUGIN_HANDLED; } new menu = menu_create("\dMenu Admina:", "Handel_Menu"); menu_additem(menu, "\d| \yPRZENIES GRACZA \d|", "13"); menu_additem(menu, "\d| \yOZYW GRACZA \d|", "15"); menu_additem(menu, "\d| \yOTWORZ CELE \d|", "7"); menu_additem(menu, "\d| \wMIKRO DLA \dTT |", "9"); menu_additem(menu, "\d| \wWALKA DLA \dTT |", "8"); menu_additem(menu, "\d| \yPILKA \d|^n~ Uzywaj tylko w ostatecznosci:", "60"); menu_additem(menu, "\d| \rBAN NA \dCT |", "73"); menu_additem(menu, "\d| \yGLOSOWANIE NA \dMAPY |", "84"); menu_additem(menu, "\d| \yIP GRACZY \d|", "75"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); return PLUGIN_CONTINUE } public MenuGraczaCT(id) { new menu = menu_create("\dMenu Straznika:", "Handel_Menu"); new cb = menu_makecallback("Menu_Callback"); menu_additem(menu, "\d| \r[\dWez prowadzenie\r] \y- Zostan krolem CT... \d|", "6", 1, cb); menu_additem(menu, "\d| \r[\dPrzeszukaj Wieznia\r] \y- Sprawdz czy ma bron! \d|","5"); menu_additem(menu, "\d| \r[\dOtworz Cele\r] \y- Daj odpoczac wkoncu wiezniowi... \d|^n", "7"); menu_additem(menu, "\d| \r[\yWalka wiezniow: \rON/OFF] \d|", "8", 6, cb); menu_additem(menu, "\d| \r[\yMikrofon dla Wiezniow: \rON/OFF] \d|^n", "9"); menu_additem(menu, "\d| \r[\dZabawy\r] \y- Wlacz zabawe \d|", "10", 3, cb); menu_additem(menu, "\d| \r[\dWlacz Gong\r] \y- Sygnal gongu \d|","17", 6, cb); menu_additem(menu, "\d| \r[\dRuletka\r] \y- Wylosuj bonus \d|", "20"); menu_additem(menu, "\d| \r[\dMute\r] \y- Wycisz GRACZA \d|", "72"); menu_additem(menu, "\d| \r[\dOznacz wieznia kolorem\r] \y- Pozwol wiezniowi byc unikalny \d|", "43", 6, cb); menu_additem(menu, "\d| \r[\dWylosuj wieznia\r] \y- Moze cos go czeka milego... \d|^n", "44", 6, cb); menu_additem(menu, "\d| \r[\yDaj\r]: \yFreeDay'a lub Duszka \d|","11", 6, cb); menu_additem(menu, "\d| \r[\yDaj\r]: \yDeagle'a Wiezniowi \d|^n","21", 6, cb); menu_additem(menu, "\d| \r[\dPodziel Wiezniow\r] \y- Podziel ich na druzyny \d|","22", 6, cb); menu_additem(menu, "\d| \r[\dRegulamin\r] \y- Regulamin Serwera! \d|","65"); menu_additem(menu, "\d| \r[\dMarker\r] \y- Wybor kolorow markera \d|", "169"); menu_additem(menu, "\d| \r[\dBind\r] \y- Menu bindow serwera \d|", "380"); menu_additem(menu, "\d| \r[\dSkiny\r] \y- Skiny do broni VIP \d|", "67"); menu_additem(menu, "\d| \r[\dMecz\r] \y- Gwizdek & Odliczanie meczu \d|", "86"); menu_additem(menu, "\d| \r[\dRadio CT\r] \y- Legalne przeklinanie na serwerze! \d|", "80"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); } public MenuGraczaNieZywego(id) { new menu = menu_create("\dMenu Widza:", "Handel_Menu"); menu_additem(menu, "\d| \r[\dCzapki\r] \y- Wybierz czapke \d|", "3"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_additem(menu, "\d| \r[\dKontakt\r] \y- Kontakt do Administracji \d|^n~ Opis VIPow:", "66"); menu_additem(menu, "\d| \r[\yVip\r] \y- Informacje \d|", "62"); menu_additem(menu, "\d| \r[\ySvip\r] \y- Informacje \d|^n", "63"); menu_additem(menu, "\d| \r[\dBind\r] \y- Menu bindow serwera \d|", "380"); menu_additem(menu, "\d| \r[\dGang\r] \y- Opcje twojego gangu \d|", "85"); menu_additem(menu, "\d| \r[\dSkiny\r] \y- Skiny do broni VIP \d|", "67"); menu_additem(menu, "\d| \r[\dRegulamin\r] \y- Regulamin Serwera!\d|", "65"); menu_display(id, menu); } public Menu_Callback(id, menu, item) { static num[10], acces, callback; menu_item_getinfo(menu, item, acces, num, 9, _, _, callback); switch(acces) { case 1:{ if(jail_get_prowadzacy() || !jail_get_days()) { return ITEM_DISABLED; } } case 2:{ if(id != jail_get_prowadzacy() && jail_get_days()) { return ITEM_DISABLED; } } case 3:{ if(id != jail_get_prowadzacy()) { return ITEM_DISABLED; } } case 4:{ if(id != jail_get_prisoner_last()) { return ITEM_DISABLED; } } case 5:{ if(!is_user_admin(id)) { return ITEM_DISABLED; } } case 6: { if(jail_get_play_game_id() > 7 || id != jail_get_prowadzacy()) return ITEM_DISABLED; } } return ITEM_ENABLED; } public Handel_Menu(id, menu, item) { if(item == MENU_EXIT) return; new num[10], acces, callback; menu_item_getinfo(menu, item, acces, num, 9, _, _, callback); switch(str_to_num(num)) { case 0: client_cmd(id, "say /vip"); case 1: client_cmd(id, "say /svip"); case 2: client_cmd(id, "say /regulamin"); case 3: client_cmd(id, "say /czapki"); case 4: { if(jail_get_prisoner_free(id) || jail_get_user_block(id)) return; if(zyczenie) return; if(jail_get_play_game_id() > 7 || jail_get_days() == KILLDAY_DAY) { ColorChat(id, GREEN, "**JailBreak**^x03 Podczas zabawy nie mozesz krasc broni!"); return; } if(!is_user_alive(id)) { ColorChat(id, GREEN, "**JailBreak**^x03 Musisz zyc aby ukrasc bron!"); return; } new body, target; get_user_aiming(id, target, body, 50); if(target && get_user_team(target) == 1) { ColorChat(id, GREEN, "**JailBreak**^x03 Aby zabrac bron musisz byc blisko straznika!"); return; } if(!is_user_alive(target)) return; new weapons = Jaki_Pistolet(target); if(!weapons) { ColorChat(id, GREEN, "**JailBreak**^x03 Straznik nie ma pistoletu!"); return; } new weaponname[24]; get_weaponname(weapons, weaponname, 23); ham_strip_weapon(target, weapons, weaponname); give_item(id, weaponname); ColorChat(id, GREEN, "**JailBreak**^x03 Gratulacje - Ukradles pistolet"); } case 5: { if(zyczenie) return; if(jail_get_play_game_id() > 7 || jail_get_days() == KILLDAY_DAY) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak**^x03 Podczas zabawy nie mozna przeszukiwac!"); return; } w_trakcie[id]? wylacz_rewizje(id): wlacz_rewizje(id); } case 6:{ if(!jail_get_prowadzacy()) jail_set_prowadzacy(id); } case 7: jail_open_cele(); case 8: { jail_set_prisoners_fight((menu_walka = !menu_walka), !menu_walka); if(muza==0){ client_cmd(0, "mp3 play sound/misc/jb_anonymuss/walka.mp3"); muza = 1; } else if(muza==1){ client_cmd(0, "mp3 stop") muza = 0; } } case 9: jail_set_prisoners_micro((menu_mikro = !menu_mikro)); case 10: client_cmd(id, "say /zabawy"); case 11: MenuFreeday(id); case 12: client_cmd(id, "jail_menuban", "Ban na CT"); case 13: client_cmd(id, "amx_teammenu", "Przenies TT/CT/SPEC"); case 14: client_cmd(id, "jail_amenu"); case 15: client_cmd(id, "say /ozyw"); case 16: client_cmd(id, "amx_gag"); case 17: client_cmd(0, "spk sound/JailBreak[k]/dzwonek.wav"); case 18: client_cmd(id, "say /lr"); case 19: client_cmd(id, "say /sklep"); case 190: client_cmd(id, "say /szlugi"); case 169: client_cmd(id, "say /marker"); case 20: client_cmd(id, "say /ruletka"); case 21: client_cmd(id, "say /dajdeagla"); case 22: client_cmd(id, "say /podziel"); case 24: client_cmd(id, "say /kolory"); case 155: client_cmd(id, "say /dajszlugi"); case 65: client_cmd(id, "say /regulamin"); case 66: client_cmd(id, "say /kontakt"); case 69: client_cmd(id, "say /kantor"); case 62: client_cmd(id, "say /vip"); case 63: client_cmd(id, "say /svip"); case 380: client_cmd(id, "say /bindy"); case 111: client_cmd(id, "say /topg"); case 43: client_cmd(id, "say /oznacz"); case 44: client_cmd(id, "say /losuj"); case 112: client_cmd(id, "say /rankg"); case 60: client_cmd(id, "say /ball"); case 86: client_cmd(id, "say /mecz"); case 64: MenuTopka(id); case 67: client_cmd(id, "say /skiny"); case 68: client_cmd(id, "say /misje"); case 72: client_cmd(id, "say /mute"); case 79: client_cmd(id, "say /radiott"); case 84: client_cmd(id, "say /startvote"); case 85: client_cmd(id, "say /gang"); case 80: client_cmd(id, "say /radioct"); case 75:{ client_cmd(id, "amx_ip"); ColorChat(id, GREEN, "**JailBreak** ^x01Lista IP graczy zostala wydrukowana w ^x03konsoli"); } case 161: client_cmd(id, "say /kosy"); case 162: client_cmd(id, "say /skiny"); case 163: client_cmd(id, "say /topg"); case 164: client_cmd(id, "say /rankg"); case 73: client_cmd(id, "jail_menuban", "Ban na CT"); case 23: { ColorChat(id, TEAM_COLOR, "^x04[%s]^x03 AutoBH dla wiezniow - %s", autobh?"Wl":"Wyl"); if(autobh == 0) autobh = 1; else autobh = 0; } } } public MenuTopka(id) { new menut = menu_create("\dTop 15 & Twoj rank:", "Handel_Menu"); menu_additem(menut, "\wTop 15 najlepszych graczy", "163"); menu_additem(menut, "\wTwoj ranking na serwerze", "164"); menu_setprop(menut, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_display(id, menut); } public MenuFreeday(id) { new menu2 = menu_create("\dManager FD i Duszek:", "Handel_ManagerFreeday"); menu_additem(menu2, "\d| \r[\dDaj Freeday\r] \d|"); menu_additem(menu2, "\d| \r[\dDaj Duszka\r] \d|^n"); menu_additem(menu2, "\d| \r[\dZabierz Freeday\r] \d|"); menu_additem(menu2, "\d| \r[\dZabierz Duszka\r] \d|"); menu_setprop(menu2, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_display(id, menu2); } public Handel_ManagerFreeday(id, menu, item) { if(item == MENU_EXIT) return; new acces, callback, data[3], iname[32]; menu_item_getinfo(menu, item, acces, data, 2, iname, 31, callback); replace(iname, 31, "^n", ""); new menu2 = menu_create(iname, (!item || item == 2)? "Handel_Menu_Freeday": "Handel_Menu_Duszek"); for(new i=1; i<=32; i++) { if(!is_user_alive(i) || cs_get_user_team(i) != CS_TEAM_T) continue; switch(item) { case 0,1:{ if(jail_get_prisoner_free(i) || jail_get_prisoner_ghost(i)) continue; } case 2:{ if(!jail_get_prisoner_free(i)) continue; } case 3:{ if(!jail_get_prisoner_ghost(i)) continue; } } new name[32]; get_user_name(i, name, 31); menu_additem(menu2, name, (!item || item == 1)? "1": "0"); } menu_setprop(menu2, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_display(id, menu2); } public Handel_Menu_Freeday(id, menu, item) { if(item == MENU_EXIT) return; new id2, callback, data[3], name[32]; menu_item_getinfo(menu, item, id2, data, 2, name, 31, callback); callback = data[0]-'0'; id2 = get_user_index(name); jail_set_prisoner_free(id2, bool:callback, false); new szName[2][32]; get_user_name(id, szName[0], 31); get_user_name(id2, szName[1], 31); ColorChat(0, TEAM_COLOR,"^x04[%s] ^x03%s ^x01%s freedaya ^x03%s",TAG,szName[0], callback? "dal": "zabral",szName[1]); } public Handel_Menu_Duszek(id, menu, item) { if(item == MENU_EXIT) return; new id2, callback, data[3], name[32]; menu_item_getinfo(menu, item, id2, data, 2, name, 31, callback); callback = data[0]-'0'; id2 = get_user_index(name); jail_set_prisoner_ghost(id2, bool:callback, false); new szName[2][32]; get_user_name(id, szName[0], 31); get_user_name(id2, szName[1], 31); ColorChat(0, TEAM_COLOR,"^x04[%s] ^x03%s ^x01%s duszka ^x03%s",TAG,szName[0], callback? "dal": "zabral",szName[1]); } public OnRemoveData(day) { menu_mikro = false; menu_walka = false; autobh = 0; } public Handel_Menu_Widza(id, menu, item) { if(item == MENU_EXIT) return; switch(item) { case 0: show_motd(id, "faq.txt", "FAQ Serwera"); case 1: client_cmd(id, "say /zasady"); case 2: show_motd(id, "komendy.txt", "Komendy"); } } public wlacz_rewizje(id) { if(get_user_team(id) != 2 || !is_user_alive(id)) return PLUGIN_HANDLED; if(zyczenie)return PLUGIN_HANDLED; if(jail_get_play_game_id() > 7 || jail_get_days() == KILLDAY_DAY) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak**^x03 Podczas zabawy nie mozna przeszukiwac!"); return PLUGIN_HANDLED; } new body, target; get_user_aiming(id, target, body, 50); if(target && get_user_team(target) == 2) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak**^x03 Nie nacelowales na wieznia"); return PLUGIN_HANDLED; } if(!is_user_alive(target)) return PLUGIN_HANDLED; if(jail_get_user_block(target) || jail_get_prisoner_free(target) || jail_get_prisoner_ghost(target)) return PLUGIN_HANDLED; jail_set_user_speed(id, 0.1); set_bartime(id, 5); set_bartime(target, 5); jail_set_user_speed(target, 0.1); w_trakcie[id] = target; w_trakcie[target] = id; set_task(5.0, "wylacz_rewizje", 5000+id); emit_sound(id, CHAN_WEAPON, "weapons/c4_disarm.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); return PLUGIN_HANDLED; } public wylacz_rewizje(taskid) { new id = taskid; if(taskid > 32) id -= 5000; if(get_user_team(id) != 2 || !w_trakcie[id]) return PLUGIN_HANDLED; remove_task(id+5000); jail_set_user_speed(id, 250.0); set_bartime(id, 0); if(is_user_alive(w_trakcie[id])) { jail_set_user_speed(w_trakcie[id], 250.0); set_bartime(w_trakcie[id], 0); } if(taskid > 32) Pokaz_bronie(id); w_trakcie[w_trakcie[id]] = 0; w_trakcie[id] = 0; return PLUGIN_HANDLED; } public Pokaz_bronie(id) { if(!is_user_alive(id) || !is_user_alive(w_trakcie[id])) return; new weapons[32], numweapons, weaponname[32]; get_user_weapons(w_trakcie[id], weapons, numweapons); ColorChat(id, GREEN, "Znalazles:"); for(new i=0; i<numweapons; i++) { get_weaponname(weapons[i], weaponname, 31); replace(weaponname, 32, "weapon_", ""); replace(weaponname, 32, "knife", "piesci"); ColorChat(id, BLUE, weaponname); } emit_sound(id, CHAN_WEAPON, "weapons/c4_disarmed.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); } public Damage(id) { if(is_user_alive(id) && w_trakcie[id]) { wylacz_rewizje(id); } } stock Jaki_Pistolet(id) { if(!is_user_connected(id)) return 0; new weapons[32], numweapons; get_user_weapons(id, weapons, numweapons); for(new i=0; i<numweapons; i++) if((1<<weapons[i]) & 0x4030402) return weapons[i]; return 0; } stock ham_strip_weapon(id, wid, szname[]) { if(!wid) return 0; new ent; while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", szname)) && pev(ent, pev_owner) != id) {} if(!ent) return 0; if(get_user_weapon(id) == wid) ExecuteHam(Ham_Weapon_RetireWeapon, ent); if(ExecuteHam(Ham_RemovePlayerItem, id, ent)) { ExecuteHam(Ham_Item_Kill, ent); set_pev(id, pev_weapons, pev(id, pev_weapons) & ~(1<<wid)); } return 1; } stock set_bartime(id, czas) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("BarTime"), _, id); write_short(czas); message_end(); } public menu(id, level, cid) { new menu = menu_create("\dWybierz Gracza:\w","menu_broni"); for(new i=0, n=0; i<=32; i++) { if(!is_user_connected(i) || !is_user_alive(i) || cs_get_user_team(i) != CS_TEAM_T) continue; gracz_id[n++] = i; new nazwa_gracza[64]; get_user_name(i, nazwa_gracza, 63) menu_additem(menu, nazwa_gracza, "0", 0); } menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjscie \d|"); menu_display(id, menu); return PLUGIN_HANDLED; } public menu_broni(id, menu, item) { if(zyczenie)return PLUGIN_HANDLED; if (get_user_team(id) == 2) { wybrany = gracz_id[item]; new menu = menu_create("\dMenu Broni:", "wybieranie") menu_additem(menu, "\d| \r[\dDeagle bez naboi\r] \d|", "1", 0) menu_additem(menu, "\d| \r[\dDeagle z 1 nabojem\r] \d|", "2", 0) menu_additem(menu, "\d| \r[\dDeagle z 3 nabojami\r] \d|", "3", 0) menu_additem(menu, "\d| \r[\dDeagle z pelnym magazynkiem\r] \d|", "4", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } else { client_print(id, print_chat, "Nie jestes w CT!") return PLUGIN_HANDLED } return PLUGIN_HANDLED; } public wybieranie(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new acces, callback menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1:{ give_item(wybrany, "weapon_deagle"); new dgl_id = find_ent_by_owner(-1, "weapon_deagle", wybrany) if(dgl_id){ cs_set_weapon_ammo(dgl_id, 0); } client_print(id, print_chat, "%s dostal pustego deagla",wybrany) menu_destroy(menu) return PLUGIN_HANDLED } case 2:{ give_item(wybrany, "weapon_deagle"); new dgl_id = find_ent_by_owner(-1, "weapon_deagle", wybrany) if(dgl_id){ cs_set_weapon_ammo(dgl_id, 1); } client_print(id, print_chat, "%s dostal deagla z 1 nabojem",wybrany) menu_destroy(menu) return PLUGIN_HANDLED } case 3:{ give_item(wybrany, "weapon_deagle"); new dgl_id = find_ent_by_owner(-1, "weapon_deagle", wybrany) if(dgl_id){ cs_set_weapon_ammo(dgl_id, 3); } client_print(id, print_chat, "%s dostal deagla z 3 nabojami",wybrany) menu_destroy(menu) return PLUGIN_HANDLED } case 4:{ give_item(wybrany, "weapon_deagle"); new dgl_id = find_ent_by_owner(-1, "weapon_deagle", wybrany) if(dgl_id){ cs_set_weapon_ammo(dgl_id, 35); } client_print(id, print_chat, "%s dostal deagla z pelnym magazynkiem",wybrany) menu_destroy(menu) return PLUGIN_HANDLED } } menu_destroy(menu) return PLUGIN_HANDLED }
#3 Denax
Napisano 10.10.2018 16:31
okej wszystko ok dzięki , jeszcze mam problem z tym plikiem https://www54.zippys...ssIaJ/file.html
screen: https://i.imgur.com/mnlLd54.jpg?fb
#4 DarkGL
Napisano 10.10.2018 16:52
Spoiler
#include <amxmodx> #include <amxmisc> #include <fakemeta_util> #include <hamsandwich> #include <fun> #include <cstrike> #include <colorchat> #include <engine> //tylko uzyte do zablokowania latarki #include <jailbreak> //do blokowania /guns na zabawach #define PLUGIN "Jail Mod" #define VERSION "1.0.6a" #define AUTHOR "Cypis" //#define DEBUG 1 #if!defined KILLDAY_DAY #define KILLDAY_DAY PIATEK #endif #define MAX 32 #define strip_user_weapons2(%0) strip_user_weapons(%0), set_pdata_int(%0, 116, 0) native cs_set_player_model(id, newmodel[]); //wymaga cs_player_models_api.amxx enum { ID_DZWIEK_POSZ = 7000, ID_LOS_PROWADZACY, ID_CZAS, ID_FREZZ, ID_SPEED_FZ, } #define WSZYSCY 0 #define ZYWI 1 new ilosc_graczy[2]; new array_graczy[2][MAX+1]; 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 const dni_tygodnia[][] = {"Niedziela", "Poniedzialek", "Wtorek", "Sroda", "Czwartek", "Piatek", "Sobota"}; new SyncHudObj1, SyncHudObj3, SyncHudObj4, jail_day;//SyncHudObj2 new bool:usuwanie_ustawien, bool:end_usun, bool:pokaz_raz, bool:czas_bronie, bool:pojedynek[MAX+1], bool:free_day[MAX+1]; new bool:obsluga_dala, bool:ustaw_freeday[MAX+1], bool:ustaw_duszka[MAX+1]; new AdminVoice, prowadzacy, ostatni_wiezien; new szPoszukiwani[512], nazwa_gracza[MAX+1][64], gTeam[MAX+1]; new g_msgid[MAX+1]; new bool:user_duszek[MAX+1]; new bool:g_bPlayerZaglosowal[MAX+1]; new szInfo[257], szInfoPosz[513], dane_dnia[11], gTimeStart, id_zabawa; new fLastPrisonerShowWish, fLastPrisonerTakeWish, fRemoveData, fDayStartPre, fDayStartPost, fJoinTeam; new ProwadzacyMenu; new pCvarMikro; new Float:user_speed[MAX+1]; new g_RoundTime, g_FreezeTime; new g_Buttons[10]; public plugin_init() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "plugin_init pre"); #endif register_plugin(PLUGIN, VERSION, AUTHOR); RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1); RegisterHam(Ham_TakeDamage, "player", "TakeDamage"); RegisterHam(Ham_TraceAttack, "player", "TraceAttack"); RegisterHam(Ham_Killed, "player", "SmiercGraczaPost", 1); RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponKnife", 1); RegisterHam(Ham_TraceAttack, "func_button", "ButtonTraceAttack"); RegisterHam(Ham_Touch, "armoury_entity", "DotykBroni"); RegisterHam(Ham_Touch, "weapon_shield", "DotykBroni"); RegisterHam(Ham_Touch, "weaponbox", "DotykBroni"); RegisterHam(Ham_Use, "game_player_equip", "BlokowanieUse"); RegisterHam(Ham_Use, "player_weaponstrip", "BlokowanieUse"); RegisterHam(Ham_Use, "func_button", "BlokowanieUse2"); RegisterHam(Ham_Use, "func_healthcharger", "BlokowanieLeczenie"); RegisterHam(Ham_Item_AddToPlayer, "weapon_knife", "OnAddToPlayerKnife", 1); register_forward(FM_EmitSound, "EmitSound"); register_forward(FM_Voice_SetClientListening, "Voice_SetClientListening"); register_event("StatusValue", "StatusShow", "be", "1=2", "2!0"); register_event("StatusValue", "StatusHide", "be", "1=1", "2=0"); register_event("TextMsg", "RoundRestart", "a", "2&#Game_w"); register_event("HLTV", "PreRoundStart", "a", "1=0", "2=0"); register_event("CurWeapon", "CurWeapon", "be", "1=1"); register_logevent("RoundEnd", 2, "1=Round_End"); register_logevent("RoundRestart", 2, "0=World triggered", "1=Game_Commencing"); register_logevent("PostRoundStart", 2, "0=World triggered", "1=Round_Start"); set_msg_block(106, BLOCK_SET); //block info player set_msg_block(145, BLOCK_SET); //block dhud set_msg_block(122, BLOCK_SET); //block clcorpse set_msg_block(get_user_msgid("MOTD"), BLOCK_SET); register_clcmd("radio1", "BlokujKomende"); register_clcmd("radio2", "BlokujKomende"); register_clcmd("radio3", "BlokujKomende"); register_clcmd("jointeam 2", "BlokujKomende"); register_clcmd("vote", "BlokujKomende"); register_clcmd("drop", "BlockDrop"); register_clcmd("weapon_piesci", "ClientCommand_SelectKnife"); register_clcmd("weapon_palka", "ClientCommand_SelectKnife"); register_clcmd("chooseteam", "cmdChooseTeam"); register_clcmd("jail_cele", "MenuUstwianiaCel"); register_clcmd("+adminvoice", "AdminVoiceOn"); register_clcmd("-adminvoice", "AdminVoiceOff"); register_clcmd("say /oddaj", "OddajProwadzenie"); register_clcmd("say /obsluga", "ObslugaZyczen"); register_clcmd("say /guns", "BlokadaGuns"); register_clcmd("say /zabawy", "MenuZabaw"); register_clcmd("say /lr", "MenuZyczen"); register_clcmd("say /cele", "MenuVoteCele"); register_clcmd("say /mute", "MenuMutowania"); register_message(77 ,"msg_TextMsg"); register_message(96, "msg_show_menu"); //register_impulse(100, "msg_FlashLight"); register_message(107, "msg_StatusIcon"); register_message(114, "msg_vgui_menu"); register_menucmd(register_menuid("mainmenu"), 0x223, "_menu_chooseteam"); pCvarMikro = register_cvar("jail_tt_mikro", "0"); g_FreezeTime = get_pcvar_num(get_cvar_pointer("mp_freezetime")); g_RoundTime = floatround(get_cvar_float("mp_roundtime")*60.0); SyncHudObj1 = CreateHudSyncObj(); //SyncHudObj2 = CreateHudSyncObj(); SyncHudObj3 = CreateHudSyncObj(); SyncHudObj4 = CreateHudSyncObj(); fJoinTeam = CreateMultiForward("OnJoinTeam", ET_CONTINUE, FP_CELL, FP_CELL, FP_CELL, FP_CELL); fDayStartPre = CreateMultiForward("OnDayStartPre", ET_CONTINUE, FP_CELL, FP_ARRAY, FP_ARRAY, FP_ARRAY, FP_CELL); fDayStartPost = CreateMultiForward("OnDayStartPost", ET_CONTINUE, FP_CELL); fLastPrisonerShowWish = CreateMultiForward("OnLastPrisonerShowWish", ET_CONTINUE, FP_CELL); fLastPrisonerTakeWish = CreateMultiForward("OnLastPrisonerTakeWish", ET_CONTINUE, FP_CELL, FP_CELL); fRemoveData = CreateMultiForward("OnRemoveData", ET_CONTINUE, FP_CELL); ProwadzacyMenu = menu_create("\dPozwol wiezniowi wybrac zyczenie:", "Handel_Obsluga_Zyczen"); menu_additem(ProwadzacyMenu, "Tak"); menu_additem(ProwadzacyMenu, "Nie"); WczytajCele(); set_task(1.0, "task_server", _, _, _, "b"); set_task(5.0, "task_cfg"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "plugin_init post"); #endif } public task_cfg() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_cfg pre"); #endif server_cmd("exec addons/amxmodx/configs/jailbreak.cfg"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_cfg post"); #endif } public CurWeapon(id) { if(!is_user_alive(id)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "CurWeapon pre"); #endif if(!end_usun) set_user_maxspeed(id, user_speed[id]? user_speed[id]: 250.0); if(user_duszek[id]) { new weapon = read_data(2); if(weapon != CSW_KNIFE && weapon != CSW_FLASHBANG && weapon != CSW_SMOKEGRENADE) { user_duszek[id] = false; set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); AddArray(id, WSZYSCY); AddArray(id, ZYWI); } } if(dane_dnia[7]) { if(dane_dnia[7] != 3) { if(gTeam[id] != dane_dnia[7]) return; } new weapon = read_data(2); if(weapon == CSW_KNIFE || weapon == CSW_HEGRENADE || weapon == CSW_FLASHBANG || weapon == CSW_SMOKEGRENADE) return; cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "CurWeapon post"); #endif } enum { MIKRO = 0, WALKA, FF_TT, TT_GOD, CT_GOD, CT_NIE_MOZE_TT, TT_NIE_MOZE_CT } new bool:mode_gracza[7]; enum { V_PALKA = 0, P_PALKA, V_PIESCI, P_PIESCI, V_REKAWICE, P_REKAWICE } new SzModels[6][128]; public plugin_precache() { SzModels[V_PALKA] = "models/jb_anonymuss/v_palka.mdl"; SzModels[P_PALKA] = "models/jb_anonymuss/p_palka.mdl"; SzModels[V_PIESCI] = "models/jb_anonymuss/v_piesci.mdl"; SzModels[P_PIESCI] = "models/jb_anonymuss/p_piesci.mdl"; SzModels[V_REKAWICE] = "models/jb_anonymuss/v_rekawice.mdl"; SzModels[P_REKAWICE] = "models/jb_anonymuss/p_rekawice2.mdl"; precache_model(SzModels[V_PALKA]); precache_model(SzModels[P_PALKA]); precache_model(SzModels[V_PIESCI]); precache_model(SzModels[P_PIESCI]); precache_model(SzModels[V_REKAWICE]); precache_model(SzModels[P_REKAWICE]); precache_model("models/player/jbe_prisoner2/jbe_prisoner2.mdl"); precache_model("models/player/CT_Psiak/CT_Psiak.mdl"); precache_sound("weapons/prawy_przycisk.wav"); precache_sound("weapons/uderzenie_mur_ultra.wav"); precache_sound("weapons/hit_ultra1.wav"); precache_sound("weapons/hit_ultra2.wav"); precache_sound("weapons/machanie_ultra.wav"); precache_sound("jb_anonymuss/buntownik.wav"); precache_generic("sprites/weapon_piesci.txt"); precache_generic("sprites/weapon_palka.txt"); precache_generic("sprites/640hud41.spr"); } /********** - Native - ************/ new Array:gZabawyName; new Array:gZyczeniaName; public plugin_natives() { gZabawyName = ArrayCreate(32); gZyczeniaName = ArrayCreate(32); register_native("jail_register_game", "ZarejstrujZabawe", 1); register_native("jail_register_wish", "ZarejstrujZyczenie", 1); register_native("jail_set_game_hud", "jail_set_game_hud_p", 0); register_native("jail_get_prisoners_micro", "PobierzMikrofon", 1); register_native("jail_get_prisoners_fight", "PobierzWalke", 1); register_native("jail_get_prisoner_free", "PobierzFreeday", 1); register_native("jail_get_prisoner_ghost", "PobierzDuszka", 1); register_native("jail_get_prisoner_last", "PobierzOstatniego", 1); register_native("jail_get_prowadzacy", "PobierProwadzacego", 1); register_native("jail_get_poszukiwany", "PobierzPoszukiwany", 1); register_native("jail_get_user_block", "PobierzPojedynek", 1); register_native("jail_get_play_game_id", "PobierzIdZabawy", 1); register_native("jail_get_days", "PobierzDni", 1); register_native("jail_set_prisoners_micro", "UstawMikrofon", 1); register_native("jail_set_prisoners_fight", "UstawWalke", 1); register_native("jail_set_prisoner_free", "UstawFreeday", 1); register_native("jail_set_prisoner_ghost", "UstawDuszka", 1); register_native("jail_set_prowadzacy", "UstawProwadzacego", 1); register_native("jail_set_god_tt", "UstawTTGod", 1); register_native("jail_set_god_ct", "UstawCTGod", 1); register_native("jail_set_ct_hit_tt", "UstawCTHitTT", 1); register_native("jail_set_tt_hit_ct", "UstawTTHitCT", 1); register_native("jail_set_user_block", "UstawBlokade", 1); register_native("jail_set_play_game", "UstawZabawe", 1); register_native("jail_set_user_menuweapons", "UstawMenuWeapon", 1); register_native("jail_set_user_speed", "UstawPredkosc", 1); register_native("jail_open_cele", "OtworzCele", 1); } public ZarejstrujZyczenie(nazwa_zyczenia[]) { param_convert(1); ArrayPushString(gZyczeniaName, nazwa_zyczenia); static ilosc; ilosc++; return ilosc; } new bool:zyczenie_wybrane; public OnLastPrisonerShowWish(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OnLastPrisonerShowWish pre"); #endif MenuZyczen(id); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OnLastPrisonerShowWish post"); #endif } public MenuZyczen(id) { if(gTeam[id] != 1 || ostatni_wiezien != id || zyczenie_wybrane || !obsluga_dala) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZyczen pre"); #endif if(!ArraySize(gZyczeniaName)) { ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Nie ma zadnych zyczen na serwerze!"); return PLUGIN_HANDLED; } new szZyczenia[32], szID[32], menu = menu_create("\dWybierz Zyczenie:", "Handel_Zyczenie"); for(new i=0; i<ArraySize(gZyczeniaName); i++) { ArrayGetString(gZyczeniaName, i, szZyczenia, 31); num_to_str(i+1, szID, 31); menu_additem(menu, szZyczenia, szID); } menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZyczen post"); #endif return PLUGIN_HANDLED; } public Handel_Zyczenie(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || ostatni_wiezien != id) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Zyczenie pre"); #endif new acces, szZyczenie[32], szID[32]; menu_item_getinfo(menu, item, acces, szID, 31, szZyczenie, 31, acces); new iRet; ExecuteForward(fLastPrisonerTakeWish, iRet, id, str_to_num(szID)) if(iRet == -1) { menu_display(id, menu); ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Nie mozesz wybrac tego zyczenia!"); return; } ColorChat(0, TEAM_COLOR,"^x04**JailBreak** ^x03%s ^x01wybral^x03 %s", nazwa_gracza[id], szZyczenie); zyczenie_wybrane = true; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Zyczenie post"); #endif } //////////////////// public ZarejstrujZabawe(nazwa_zabawy[]) { param_convert(1); ArrayPushString(gZabawyName, nazwa_zabawy); static ilosc = 8; ilosc++; return ilosc; } new bool:zabawa_wybrana; public MenuZabaw(id) { if(gTeam[id] != 2 || prowadzacy != id) return PLUGIN_CONTINUE; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZabaw pre"); #endif if(!ArraySize(gZabawyName)) { ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Nie ma zadnych zabaw na serwerze!"); return PLUGIN_CONTINUE; } if(zabawa_wybrana) { ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Juz wybrales dzisiaj zabawe"); return PLUGIN_CONTINUE; } new szZabawa[32], szID[32], menu = menu_create("\dMenu Zabaw:", "Handel_Menu_Zabaw"); for(new i=0; i<ArraySize(gZabawyName); i++) { ArrayGetString(gZabawyName, i, szZabawa, 31); num_to_str(i+9, szID, 31); menu_additem(menu, szZabawa, szID); } menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZabaw post"); #endif return PLUGIN_HANDLED; } public Handel_Menu_Zabaw(id, menu, item) { if(item == MENU_EXIT || zabawa_wybrana || prowadzacy != id) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Menu_Zabaw pre"); #endif new acces, szZabawa[32], szID[32]; menu_item_getinfo(menu, item, acces, szID, 31, szZabawa, 31, acces); ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01%s%s", UstawZabawe(str_to_num(szID), false)? "wlaczyles ": "juz jest za pozno, aby wlaczyc ", szZabawa); zabawa_wybrana = true; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Menu_Zabaw post"); #endif } public UstawPredkosc(id, Float:speed) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawPredkosc pre"); #endif user_speed[id] = speed; if(end_usun) { new data[1]; data[0] = id; set_task(g_FreezeTime-(get_systime()-gTimeStart)+0.1, "taskUstawPredkosc", ID_SPEED_FZ, data, 1); } else set_user_maxspeed(id, speed); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawPredkosc post"); #endif } public taskUstawPredkosc(data[1]) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "taskUstawPredkosc pre"); #endif set_user_maxspeed(data[0], user_speed[data[0]]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "taskUstawPredkosc post"); #endif } public PobierzIdZabawy() { return id_zabawa; } public bool:PobierzPojedynek(id) { return pojedynek[id]; } public bool:PobierzPoszukiwany(id) { return (contain(szPoszukiwani, nazwa_gracza[id]) != -1)? true: false; } public bool:PobierzMikrofon() { return bool:mode_gracza[MIKRO]; } public bool:PobierzWalke() { return bool:mode_gracza[WALKA]; } public bool:PobierzFreeday(id) { return free_day[id]; } public bool:PobierzDuszka(id) { return user_duszek[id]; } public PobierzOstatniego() { return ostatni_wiezien; } public PobierProwadzacego() { return prowadzacy; } public PobierzDni() { return jail_day%7; } public UstawMikrofon(bool:wartosc, bool:info) { if(ostatni_wiezien || dane_dnia[1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawMikrofon pre"); #endif mode_gracza[MIKRO] = wartosc; if(info) ColorChat(0, TEAM_COLOR, "^x04**JailBreak** ^x01Mikrofon dla wiezniow zostal: ^x03%s!", mode_gracza[MIKRO]? "wlaczony": "wylaczony"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawMikrofon post"); #endif } public UstawWalke(bool:wartosc, bool:modele, bool:info) { if(ostatni_wiezien || (dane_dnia[1] && modele)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawWalke pre"); #endif mode_gracza[WALKA] = modele; mode_gracza[FF_TT] = wartosc; for(new i=1; i<=MAX; i++) { if(!is_user_alive(i) || !is_user_connected(i) || gTeam[i] != 1 || get_user_weapon(i) != CSW_KNIFE || free_day[i] || user_duszek[i]) continue; set_user_health(i, 100); set_pev(i, pev_viewmodel2, modele? SzModels[V_REKAWICE]: SzModels[V_PIESCI]); set_pev(i, pev_weaponmodel2, modele? SzModels[P_REKAWICE]: SzModels[P_PIESCI]); } if(info) ColorChat(0, TEAM_COLOR,"^x04**JailBreak** ^x01Tryb Walki dla wiezniow zostal ^x04%s!", mode_gracza[WALKA]? "wlaczony": "wylaczony"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawWalke post"); #endif } public UstawFreeday(id, bool:wartosc, bool:nextround) { if(!id || (dane_dnia[1] && !nextround)) return 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawFreeday pre"); #endif if(!nextround && wartosc) { new podlicz = 0; for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && gTeam[i] == 1 && !free_day[i] && !user_duszek[i]) podlicz++; } if(podlicz == 1) return 0; } if(wartosc) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } free_day[id] = wartosc; ustaw_freeday[id] = nextround; if(!wartosc) { AddArray(id, WSZYSCY); AddArray(id, ZYWI); } set_pev(id, pev_skin, 5); // set_pev(id, pev_skin, random(3)); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawFreeday post"); #endif return 1; } public UstawDuszka(id, bool:wartosc, bool:nextround) { if(!id || (dane_dnia[1] && !nextround)) return 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawDuszka pre"); #endif if(!nextround && wartosc) { new podlicz = 0; for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && gTeam[i] == 1 && !free_day[i] && !user_duszek[i]) podlicz++; } if(podlicz == 1) return 0; } if(wartosc) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } user_duszek[id] = wartosc; ustaw_duszka[id] = nextround; if(!wartosc) { AddArray(id, WSZYSCY); AddArray(id, ZYWI); } set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, wartosc? 0: 255); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawDuszka post"); #endif return 1; } public UstawTTGod(bool:wartosc) { mode_gracza[TT_GOD] = wartosc; } public UstawCTGod(bool:wartosc) { mode_gracza[CT_GOD] = wartosc; } public UstawCTHitTT(bool:wartosc) { mode_gracza[CT_NIE_MOZE_TT] = wartosc; } public UstawTTHitCT(bool:wartosc) { mode_gracza[TT_NIE_MOZE_CT] = wartosc; } public UstawBlokade(id, bool:wartosc) { pojedynek[id] = wartosc; } public UstawProwadzacego(id) { if(!dane_dnia[1]) { if(prowadzacy != id && prowadzacy) set_pev(prowadzacy, pev_body, 0); prowadzacy = id; if(id) { if(task_exists(ID_LOS_PROWADZACY)) remove_task(ID_LOS_PROWADZACY); set_pev(id, pev_body, 1); set_user_rendering(prowadzacy, kRenderFxGlowShell, 255, 255, 0, kRenderNormal, 15); } } } public UstawZabawe(zabawa, bool:fast) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawZabawe pre"); #endif if(!fast) { if(czas_bronie || ilosc_graczy[WSZYSCY] != ilosc_graczy[ZYWI]) return 0; if(mode_gracza[WALKA] || mode_gracza[FF_TT]) UstawWalke(false, false, false); } ForwardDayStartPre(zabawa); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawZabawe post"); #endif return 1; } public MenuBroni(id) { if(!is_user_alive(id) || gTeam[id] != 2 || czas_bronie) return PLUGIN_HANDLED; UstawMenuWeapon(id, true, true, 0, 0); return PLUGIN_HANDLED; } new bool:bronie_menu[MAX+1][2]; new bronie_bitsum[MAX+1][2]; new bronie_gracza[MAX+1][2]; public UstawMenuWeapon(id, bool:bronie, bool:pistolety, bitsum_bronie, bitsum_pistolety) { if(!bronie && !pistolety) return; bronie_menu[id][0] = bronie; bronie_menu[id][1] = pistolety; bronie_bitsum[id][0] = bitsum_bronie; bronie_bitsum[id][1] = bitsum_pistolety; MenuBronie(id); } public BlokadaGuns(id) { if(jail_get_play_game_id() > 7 || jail_get_days() == KILLDAY_DAY) { ColorChat(id, GREEN, "**JailBreak** ^x03Podczas zabawy nie mozna uzyc ^x04/guns!"); return; } MenuBroni(id) } public MenuBronie(id) { if(!bronie_menu[id][0] && bronie_menu[id][1]) { MenuPistolety(id); return; } if(!bronie_menu[id][0]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuBronie pre"); #endif new menu = menu_create("\dWybierz Bronie:", "Handel_Bronie"); if(!(bronie_bitsum[id][0] & (1<<CSW_M4A1))) menu_additem(menu, "\d[\yM4A1\d]", "22"); if(!(bronie_bitsum[id][0] & (1<<CSW_AK47))) menu_additem(menu, "\d[\yAK47\d]", "28"); if(!(bronie_bitsum[id][0] & (1<<CSW_AWP))) menu_additem(menu, "\d[\yAWP\d]", "18"); if(!(bronie_bitsum[id][0] & (1<<CSW_SCOUT))) menu_additem(menu, "\d[\yScout\d]", "3"); if(!(bronie_bitsum[id][0] & (1<<CSW_AUG))) menu_additem(menu, "\d[\yAUG\d]", "8"); if(!(bronie_bitsum[id][0] & (1<<CSW_SG550))) menu_additem(menu, "\d[\yKrieg 550\d]", "13"); if(!(bronie_bitsum[id][0] & (1<<CSW_M249))) menu_additem(menu, "\d[\yM249\d]", "20"); if(!(bronie_bitsum[id][0] & (1<<CSW_MP5NAVY))) menu_additem(menu, "\d[\yMP5\d]", "19"); if(!(bronie_bitsum[id][0] & (1<<CSW_UMP45))) menu_additem(menu, "\d[\yUMP45\d]", "12"); if(!(bronie_bitsum[id][0] & (1<<CSW_FAMAS))) menu_additem(menu, "\d[\yFamas\d]", "15"); if(!(bronie_bitsum[id][0] & (1<<CSW_GALIL))) menu_additem(menu, "\d[\yGalil\d]", "14"); if(!(bronie_bitsum[id][0] & (1<<CSW_M3))) menu_additem(menu, "\d[\yM3\d]", "21"); if(!(bronie_bitsum[id][0] & (1<<CSW_XM1014))) menu_additem(menu, "\d[\yXM1014\d]", "5"); if(!(bronie_bitsum[id][0] & (1<<CSW_MAC10))) menu_additem(menu, "\d[\yMac10\d]", "7"); if(!(bronie_bitsum[id][0] & (1<<CSW_TMP))) menu_additem(menu, "\d[\yTMP\d]", "23"); if(!(bronie_bitsum[id][0] & (1<<CSW_P90))) menu_additem(menu, "\d[\yP90\d]", "30"); if(!(bronie_bitsum[id][0] & (1<<CSW_G3SG1))) menu_additem(menu, "\d[\yG3SG1 (autokampa)\d]", "24"); if(!(bronie_bitsum[id][0] & (1<<CSW_SG552))) menu_additem(menu, "\d[\yKrieg 552 (autokampa)\d]", "27"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuBronie post"); #endif } public Handel_Bronie(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) == 1 || !bronie_menu[id][0]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Bronie pre"); #endif new weaponname[24], data[3], weapon, callback; menu_item_getinfo(menu, item, weapon, data, 2, _, _, callback); if((callback = Jaki_Pistolet(id)) > 0) ham_strip_weapon(id, callback); weapon = str_to_num(data); get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); bronie_gracza[id][0] = weapon; if(bronie_menu[id][1]) MenuPistolety(id); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Bronie post"); #endif } public MenuPistolety(id) { if(!bronie_menu[id][1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuPistolety pre"); #endif new menu = menu_create("\dWybierz Pistolet:", "Handel_Pistolety"); if(!(bronie_bitsum[id][1] & (1<<CSW_USP))) menu_additem(menu, "\d[\yUSP\d]", "16"); if(!(bronie_bitsum[id][1] & (1<<CSW_GLOCK18))) menu_additem(menu, "\d[\yGlock\d]", "17"); if(!(bronie_bitsum[id][1] & (1<<CSW_DEAGLE))) menu_additem(menu, "\d[\yDeagle\d]", "26"); if(!(bronie_bitsum[id][1] & (1<<CSW_P228))) menu_additem(menu, "\d[\yP228\d]", "1"); if(!(bronie_bitsum[id][1] & (1<<CSW_FIVESEVEN))) menu_additem(menu, "\d[\yFiveSeven\d]", "11"); if(!(bronie_bitsum[id][1] & (1<<CSW_ELITE))) menu_additem(menu, "\d[\yDual\d]", "10"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuPistolety post"); #endif } public Handel_Pistolety(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) == 1 || !bronie_menu[id][1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Pistolety pre"); #endif new weaponname[24], data[3], weapon, callback; menu_item_getinfo(menu, item, weapon, data, 2, _, _, callback); weapon = str_to_num(data); get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); bronie_gracza[id][1] = weapon; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Pistolety post"); #endif } /********** - Koniec Native - ************/ public ButtonTraceAttack(ent, id, Float:damage, Float:direction[3], tracehandle, damagebits) { if(pev_valid(ent) && prowadzacy == id) { ExecuteHam(Ham_Use, ent, id, 0, 2, 1.0); set_pev(ent, pev_frame, 0.0); } return HAM_IGNORED; } public TakeDamage(id, ent, attacker, Float:damage, damagebits) return vAttackDamagePlayer(id, attacker, damage, damagebits, true); public TraceAttack(id, attacker, Float:damage, Float:direction[3], tracehandle, damagebits) return vAttackDamagePlayer(id, attacker); vAttackDamagePlayer(id, attacker, Float:damage=0.0, damagebits=0, bool:dmg=false) { if(!is_user_connected(id)) return HAM_IGNORED; if(gTeam[id] == 1 && mode_gracza[TT_GOD]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && mode_gracza[CT_GOD]) return HAM_SUPERCEDE; if(is_user_connected(attacker)) { if(gTeam[id] == 1 && gTeam[attacker] == 1 && !mode_gracza[FF_TT]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && gTeam[attacker] == 2) return HAM_SUPERCEDE; if(gTeam[id] == 1 && gTeam[attacker] == 2 && mode_gracza[CT_NIE_MOZE_TT]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && gTeam[attacker] == 1 && mode_gracza[TT_NIE_MOZE_CT]) return HAM_SUPERCEDE; if(free_day[attacker] || gTeam[attacker] == 1 && free_day[id]) return HAM_SUPERCEDE; if(user_duszek[id] && gTeam[attacker] == 1) return HAM_SUPERCEDE; if(user_duszek[attacker] && gTeam[id] == 2) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "vAttackDamagePlayer pre"); #endif user_duszek[attacker] = false; set_user_rendering(attacker, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); AddArray(attacker, WSZYSCY); AddArray(attacker, ZYWI); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "vAttackDamagePlayer post"); #endif return HAM_IGNORED; } if(dmg) { if(get_user_weapon(attacker) == CSW_KNIFE && damagebits & DMG_BULLET) SetHamParamFloat(4, damage*0.4); } } return HAM_IGNORED; } public Odrodzenie(id) { if(!is_user_alive(id) || !is_user_connected(id)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Odrodzenie pre"); #endif set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 0); strip_user_weapons2(id); switch(cs_get_user_team(id)) { case CS_TEAM_T: { gTeam[id] = 1; if(get_user_flags(id) & ADMIN_LEVEL_B){ cs_set_player_model(id, "jbe_prisoner2"); set_pev(id, pev_skin, 11) }else{ cs_set_player_model(id, "jbe_prisoner2"); set_pev(id, pev_skin, random(4)); } AddArray(id, WSZYSCY); AddArray(id, ZYWI); } case CS_TEAM_CT: { gTeam[id] = 2; cs_set_player_model(id, "CT_Psiak"); if(dane_dnia[4] < 2) { if(bronie_gracza[id][0] && bronie_gracza[id][1]) { for(new i=0; i<2; i++) { new weaponname[24]; get_weaponname(bronie_gracza[id][i], weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, bronie_gracza[id][i], maxAmmo[bronie_gracza[id][i]]); } } else if(!czas_bronie) { UstawMenuWeapon(id, true, true, 0, 0); } } } } give_item(id, "weapon_knife"); if(free_day[id]) set_pev(id, pev_skin, 5); if(user_duszek[id]) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Odrodzenie post"); #endif } public OddajProwadzenie(id) { if(prowadzacy != id) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OddajProwadzenie pre"); #endif new menu = menu_create("\dOddaj Prowadzenie:", "Handel_Oddaj"); for(new i=1; i<=MAX; i++) { if(!is_user_alive(i) || !is_user_connected(i) || gTeam[i] != 2 || prowadzacy == i) continue; new num[3]; num_to_str(i, num, 2); menu_additem(menu, nazwa_gracza[i], num); } menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OddajProwadzenie post"); #endif return PLUGIN_HANDLED; } public Handel_Oddaj(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || prowadzacy != id) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Oddaj pre"); #endif new data[3], acces, callback; menu_item_getinfo(menu, item, acces, data, 2, _, _, callback); prowadzacy = str_to_num(data); ColorChat(0, GREEN, "**JailBreak** ^x01 Zmienil sie Prowadzacy - wszystkie dotychczasowe polecenia odwolane!"); set_pev(id, pev_body, 0); set_pev(prowadzacy, pev_body, 1); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Oddaj post"); #endif } public WeaponKnife(ent) { new id = get_pdata_cbase(ent, 41, 4); if(!is_user_alive(id)) return; if(cs_get_user_shield(id)) return; if(gTeam[id] == 1 && !mode_gracza[WALKA]) { set_pev(id, pev_viewmodel2, SzModels[V_PIESCI]); set_pev(id, pev_weaponmodel2, SzModels[P_PIESCI]); } else if(gTeam[id] == 1 && mode_gracza[WALKA]) { set_pev(id, pev_viewmodel2, SzModels[V_REKAWICE]); set_pev(id, pev_weaponmodel2, SzModels[P_REKAWICE]); } else if(gTeam[id] == 2) { set_pev(id, pev_viewmodel2, SzModels[V_PALKA]); set_pev(id, pev_weaponmodel2, SzModels[P_PALKA]); } } public EmitSound(id, channel, sample[]) { if(!is_user_alive(id) || !is_user_connected(id)) return FMRES_IGNORED; if(equal(sample, "weapons/knife_", 14)) { switch(sample[17]) { case ('b'): emit_sound(id, CHAN_WEAPON, "weapons/prawy_przycisk.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); case ('w'): emit_sound(id, CHAN_WEAPON, "weapons/uderzenie_mur_ultra.wav", 1.0, ATTN_NORM, 0, PITCH_LOW); case ('s'): emit_sound(id, CHAN_WEAPON, "weapons/machanie_ultra.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); case ('1'): emit_sound(id, CHAN_WEAPON, "weapons/hit_ultra1.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM); case ('2'): emit_sound(id, CHAN_WEAPON, "weapons/hit_ultra2.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM); } return FMRES_SUPERCEDE; } if(equal(sample, "common/wpn_denyselect.wav")) return FMRES_SUPERCEDE; return FMRES_IGNORED; } public AdminVoiceOn(id) { if(!(get_user_flags(id) & ADMIN_KICK)) return PLUGIN_HANDLED; if(AdminVoice) return PLUGIN_HANDLED; AdminVoice = id; ColorChat(0,GREEN,"**JailBreak** ^x01 Cisza! Admin ^x03%s ^x01przemawia. Kazdy TT zostal zmutowany.", nazwa_gracza[id]); client_cmd(id, "+voicerecord"); return PLUGIN_HANDLED; } public AdminVoiceOff(id) { if(!(get_user_flags(id) & ADMIN_KICK)) return PLUGIN_HANDLED; if(AdminVoice != id) { client_cmd(id, "-voicerecord"); return PLUGIN_HANDLED; } client_cmd(id, "-voicerecord"); AdminVoice = 0; return PLUGIN_HANDLED; } new bool:g_Muted[MAX+1][MAX+1]; public MenuMutowania(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuMutowania pre"); #endif new menu = menu_create("\dMenu mutowania:", "Handel_Mute"); for(new i=1; i<=MAX; i++) { if(!is_user_connected(i) || is_user_hltv(i)) continue; new num[3], szName[64]; num_to_str(i, num, 2); szName = nazwa_gracza[i]; if(g_Muted[id][i]) add(szName, 63, " \d[\yZmutowany\d]"); menu_additem(menu, szName, num); } menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_setprop(menu, MPROP_BACKNAME, "\d| \y<<< \d|"); menu_setprop(menu, MPROP_NEXTNAME, "\d| \y>>> \d|"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuMutowania post"); #endif } public Handel_Mute(id, menu, item) { if(item == MENU_EXIT ) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Mute pre"); #endif new data[3], acces, id2; menu_item_getinfo(menu, item, acces, data, 2, _, _, id2); id2 = str_to_num(data); g_Muted[id][id2] = !g_Muted[id][id2]; ColorChat(id, GREEN,"**JailBreak** ^x01%s gracza ^x03%s", g_Muted[id][id2]? "Zmutowales": "Odmutowales", nazwa_gracza[id2]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Mute post"); #endif } public Voice_SetClientListening(odbiorca, nadawca, listen) { if(odbiorca == nadawca) return FMRES_IGNORED; if(g_Muted[odbiorca][nadawca]) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } if(AdminVoice) { if(AdminVoice == nadawca) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true); return FMRES_SUPERCEDE; } else if(gTeam[nadawca] == 1) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } } if(gTeam[nadawca] == 1 && !mode_gracza[MIKRO]) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } if(is_user_alive(odbiorca)) { if(is_user_alive(nadawca)) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true); return FMRES_SUPERCEDE; } engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } return FMRES_IGNORED; } public BlokowanieUse(ent, id, activator, iType, Float:fValue) { if(!is_user_connected(id) || id == activator) return HAM_IGNORED; if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id] || free_day[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public BlokowanieLeczenie(ent, id, activator, iType, Float:fValue) { if(!is_user_connected(id)) return HAM_IGNORED; if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public DotykBroni(weapon, id) { if(!is_user_connected(id)) return HAM_IGNORED; if(free_day[id] || dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public BlockDrop(id) { if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return PLUGIN_HANDLED; return PLUGIN_CONTINUE; } public SmiercGraczaPost(id, attacker, shouldgib) { if(!is_user_connected(id)) return HAM_IGNORED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "SmiercGraczaPost pre"); #endif if(gTeam[id] == 1) { if(is_user_connected(attacker) && gTeam[attacker] == 1) set_user_frags(attacker, get_user_frags(attacker)+2); if(ostatni_wiezien == id) { for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && (free_day[i] || user_duszek[i])) { user_kill(i); free_day[i] = false; user_duszek[i] = false; } } } DelPoszukiwany(id); DelArray(id, ZYWI); } else if(gTeam[id] == 2) { if(is_user_connected(attacker) && gTeam[attacker] == 1 && !obsluga_dala && !dane_dnia[2]) { AddPoszukiwany(attacker); } if(prowadzacy == id) { prowadzacy = 0; if(!obsluga_dala && !dane_dnia[2]) set_task(1.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "SmiercGraczaPost post"); #endif return HAM_IGNORED; } public StatusShow(id) { new pid = read_data(2), team = gTeam[pid]; set_hudmessage(team == 1? 255: 0, 50, team == 1? 0: 255, -1.0, 0.9, 0, 0.01, 6.0); ShowSyncHudMsg(id, SyncHudObj1, "%s: %s [%i]", team == 1? "Wiezien": "Straznik", nazwa_gracza[pid], get_user_health(pid)); } public StatusHide(id) ClearSyncHud(id, SyncHudObj1); public msg_FlashLight(id) { if(gTeam[id] == 1) return PLUGIN_HANDLED; return PLUGIN_CONTINUE; } public msg_TextMsg() { new message[32]; get_msg_arg_string(2, message, 31); if(equal(message, "#Game_teammate_attack") || equal(message, "#Killed_Teammate")) return PLUGIN_HANDLED; if(equal(message, "#Terrorists_Win")) { set_msg_arg_string(2, "Wiezniowie wygrali!"); return PLUGIN_CONTINUE; } else if(equal(message, "#CTs_Win")) { set_msg_arg_string(2, "Straznicy wygrali!"); return PLUGIN_CONTINUE; } else if(equal(message, "#Round_Draw")) { set_msg_arg_string(2, "Runda remisowa!") return PLUGIN_CONTINUE; } else if(equal(message, "#Only_1_Team_Change")) { set_msg_arg_string(2, "Dozwolona tylko 1 zmiana druzyny!") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_SemiAuto")) { set_msg_arg_string(2, "Zmieniono na tryb pol-automatyczny") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_BurstFire")) { set_msg_arg_string(2, "Zmieniono na tryb serii") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_FullAuto")) { set_msg_arg_string(2, "Zmieniono na tryb automatyczny") return PLUGIN_CONTINUE; } else if(equal(message, "#Game_Commencing")) { set_msg_arg_string(2, "Rozpoczecie Gry!"); return PLUGIN_CONTINUE; } else if(equal(message, "#Cannot_Be_Spectator")) { set_msg_arg_string(2, "Nie mozesz byc obserwatorem"); return PLUGIN_CONTINUE; } return PLUGIN_HANDLED; } public msg_StatusIcon(msgid, dest, id) { new szIcon[8]; get_msg_arg_string(2, szIcon, 7); if(equal(szIcon, "buyzone") && get_msg_arg_int(1)) { set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0)); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; } public client_authorized(id) { set_user_info(id, "_vgui_menus", "0"); get_user_name(id, nazwa_gracza[id], 63); } public client_disconnected(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "client_disconnect pre"); #endif if(AdminVoice == id) AdminVoice = 0; if(prowadzacy == id) { prowadzacy = 0; set_task(1.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } if(ostatni_wiezien == id) ostatni_wiezien = 0; user_speed[id] = 0.0; bronie_gracza[id][0] = 0; bronie_gracza[id][1] = 0; pojedynek[id] = false; free_day[id] = false; user_duszek[id] = false; ustaw_freeday[id] = false; ustaw_duszka[id] = false; for(new i=1; i<=MAX; i++) g_Muted[i][id] = false; DelPoszukiwany(id); if(gTeam[id] == 1) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } gTeam[id] = 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "client_disconnect post"); #endif } public client_infochanged(id) { get_user_info(id, "name", nazwa_gracza[id], 63); } public RoundRestart() { usuwanie_ustawien = true; end_usun = true; UsuwanieWydarzen(); } public RoundEnd() { end_usun = true; czas_bronie = false; UsuwanieWydarzen(); } public PreRoundStart() { end_usun = true; szInfo = ""; szInfoPosz = ""; szPoszukiwani = ""; ostatni_wiezien = 0; prowadzacy = 0; obsluga_dala = false; pokaz_raz = false; czas_bronie = false; zabawa_wybrana = false; zyczenie_wybrane = false; mode_gracza[WALKA] = false; mode_gracza[MIKRO] = bool:get_pcvar_num(pCvarMikro); mode_gracza[FF_TT] = false; mode_gracza[TT_GOD] = false; mode_gracza[CT_GOD] = false; mode_gracza[CT_NIE_MOZE_TT] = false; mode_gracza[TT_NIE_MOZE_CT] = false if(task_exists(ID_DZWIEK_POSZ)) remove_task(ID_DZWIEK_POSZ); if(task_exists(ID_LOS_PROWADZACY)) remove_task(ID_LOS_PROWADZACY); if(task_exists(ID_CZAS)) remove_task(ID_CZAS); if(task_exists(ID_FREZZ)) remove_task(ID_FREZZ); if(task_exists(ID_SPEED_FZ)) remove_task(ID_SPEED_FZ); if(task_exists(2761234, 1)) remove_task(2761234, 1); for(new i=0; i<=10; i++) dane_dnia[i] = 0; if(usuwanie_ustawien) { jail_day = 0; usuwanie_ustawien = false; } else jail_day++; if(jail_day) { gTimeStart = get_systime(); ForwardDayStartPre(jail_day%7); } } UsuwanieWydarzen() { for(new i=1; i<=MAX; i++) { g_bPlayerZaglosowal[i] = false; pojedynek[i] = false; user_speed[i] = 0.0; array_graczy[WSZYSCY][i] = 0; array_graczy[ZYWI][i] = 0; pojedynek[i] = false; bronie_menu[i][0] = false; bronie_menu[i][1] = false; if(ustaw_freeday[i]) { ustaw_freeday[i] = false; free_day[i] = true; } else free_day[i] = false; if(ustaw_duszka[i]) { ustaw_duszka[i] = false; user_duszek[i] = true; } else user_duszek[i] = false; } ilosc_graczy[WSZYSCY] = 0; ilosc_graczy[ZYWI] = 0; new Return_F if(fRemoveData) ExecuteForward(fRemoveData, Return_F, id_zabawa); } public PostRoundStart() { end_usun = false; set_task(60.0, "koniec_czasu", ID_CZAS); if(!jail_day) { gTimeStart = get_systime()-g_FreezeTime; ForwardDayStartPre(jail_day%7); } if(!prowadzacy && !dane_dnia[1]) set_task(15.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } ForwardDayStartPre(zabawa) { new iRet new is_frezz = g_FreezeTime-(get_systime()-gTimeStart); new czas = g_RoundTime+min(is_frezz, 0); ExecuteForward(fDayStartPre, iRet, zabawa, PrepareArray(szInfo, 256, 1), PrepareArray(szInfoPosz, 512, 1), PrepareArray(dane_dnia, 10, 1), czas); id_zabawa = zabawa; new dane[1] dane[0] = zabawa; if(is_frezz) set_task(is_frezz+0.1, "ForwardDayStartPost", ID_FREZZ, dane, 1); else ForwardDayStartPost(dane); } public ForwardDayStartPost(zabawa[1]) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ForwardDayStartPost pre"); #endif new iRet; ExecuteForward(fDayStartPost, iRet, zabawa[0]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ForwardDayStartPost post"); #endif } public koniec_czasu() { czas_bronie = true; } public LosujProwadzacego() { if(!prowadzacy) { if(((prowadzacy = RandomCT()) > 0)) { set_pev(prowadzacy, pev_body, 1); } } } stock RandomCT() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "RandomCT pre"); #endif new CT_Player[MAX+2], ile=0; for(new i=1; i<=MAX; i++) { if(!is_user_connected(i) || !is_user_alive(i) || gTeam[i] != 2) continue; CT_Player[++ile] = i; } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "RandomCT post"); #endif return CT_Player[(ile? random_num(1, ile): 0)]; } new TimeAfk[MAX+1], LastPosition[MAX+1][3]; public task_server() { if(end_usun) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_server pre"); #endif for(new id=1; id<=MAX; id++) { if(!is_user_alive(id) || !is_user_connected(id)) continue; if(gTeam[id] == 1) { if(dane_dnia[6]) { new PlayerPos[3]; get_user_origin(id, PlayerPos); if(PlayerPos[0] == LastPosition[id][0] && PlayerPos[1] == LastPosition[id][1]) { TimeAfk[id]++; if(TimeAfk[id] == 15) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak** ^x01Przestan Kampic! ^x03Kara:^x04 5HP"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 5.0, (1<<14)); } else if(TimeAfk[id] == 18) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak** ^x01Przestan Kampic! ^x03Kara:^x04 10HP"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 10.0, (1<<14)); } else if(TimeAfk[id] >= 20) { ColorChat(id, TEAM_COLOR, "^x04**JailBreak** ^x01Przestan Kampic! ^x03Kara:^x04 20HP"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 20.0, (1<<14)); } } else TimeAfk[id] = 0; LastPosition[id][0] = PlayerPos[0]; LastPosition[id][1] = PlayerPos[1]; } if(czas_bronie && dane_dnia[0] == 1 && ostatni_wiezien == id && !pokaz_raz) { new iRet; usun_ustawienia_dzien(); ExecuteForward(fLastPrisonerShowWish, iRet, id); obsluga_dala = true; pokaz_raz = true; } } else if(gTeam[id] == 2) { PokazStatusText(id, "Wiezniowie: %i zywi | %i Wszyscy", ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); if(czas_bronie && !dane_dnia[0] && ostatni_wiezien && prowadzacy == id && !pokaz_raz) { menu_display(id, ProwadzacyMenu); usun_ustawienia_dzien(); pokaz_raz = true; } } } //set_hudmessage(0, 255, 0, 0.6, 0.1, 0, 0.01, 1.0); //ShowSyncHudMsg(0, SyncHudObj2, "Dzien %i - %s", jail_day, dni_tygodnia[jail_day%7]); static szDay[256]; if(!prowadzacy && !szInfo[0]) { formatex(szDay, 90, "Dzien %i - %s | Prowadzacy: Brak^nTyp dnia: Normalny | Wiezniow: %i/%i", jail_day, dni_tygodnia[jail_day%7], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); set_hudmessage(0, 150, 255, 0.18, 0.01, 2, 0.1, 3.0, 0.01, 2.0); } if(prowadzacy && !szInfo[0]) { set_hudmessage(0, 150, 255, 0.18, 0.01, 2, 0.1, 3.0, 0.01, 2.0); formatex(szDay, 200, "Dzien %i - %s | Prowadzacy: %s^nTyp dnia: Normalny | Wiezniow: %i/%i", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); } else if(szInfo[0]) { set_hudmessage(0, 150, 255, 0.18, 0.01, 2, 0.1, 3.0, 0.01, 2.0); formatex(szDay, 200, "Dzien %i - %s | Typ dnia: %s^nWiezniow: %i/%i", jail_day, dni_tygodnia[jail_day%7], szInfo, ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); } if(prowadzacy && !szInfo[0] && ostatni_wiezien) { new nick[33]; get_user_name(ostatni_wiezien, nick, 31); set_hudmessage(0, 150, 255, 0.18, 0.01, 2, 0.1, 3.0, 0.01, 2.0); formatex(szDay, 200, "Dzien %i - %s | Prowadzacy: %s^nTyp dnia: Normalny | Ostatni wiezien: %s", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], nick); } else if(szInfo[0] && ostatni_wiezien) { new nick[33]; get_user_name(ostatni_wiezien, nick, 31); set_hudmessage(0, 150, 255, 0.18, 0.01, 2, 0.1, 3.0, 0.01, 2.0); formatex(szDay, 200, "Dzien %i - %s | Prowadzacy: Brak^nTyp dnia: %s | Ostatni wiezien: %s", jail_day, dni_tygodnia[jail_day%7], szInfo, nick); } ShowSyncHudMsg(0, SyncHudObj3, szDay); if(szPoszukiwani[0] && !szInfoPosz[0]) { set_hudmessage(255, 85, 85, 0.01, 0.4, 0, 0.01, 1.0); ShowSyncHudMsg(0, SyncHudObj4, "Poszukiwani:%s", szPoszukiwani); } else if(szInfoPosz[0]) { set_hudmessage(0, 255, 0, 0.01, 0.22, 0, 0.01, 1.0); ShowSyncHudMsg(0, SyncHudObj4, szInfoPosz); } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_server post"); #endif } PokazStatusText(id, szText[], any:...) { new szTemp[192]; vformat(szTemp, 191, szText, 3); message_begin(MSG_ONE_UNRELIABLE, 106, {0,0,0}, id); write_byte(0); write_string(szTemp); message_end(); } usun_ustawienia_dzien() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "usun_ustawienia_dzien pre"); #endif if(mode_gracza[WALKA]) { mode_gracza[WALKA] = false; if(get_user_weapon(ostatni_wiezien) == CSW_KNIFE) { set_pev(ostatni_wiezien, pev_viewmodel2, SzModels[V_PIESCI]); set_pev(ostatni_wiezien, pev_weaponmodel2, SzModels[P_PIESCI]); } } mode_gracza[MIKRO] = true; mode_gracza[FF_TT] = false; mode_gracza[TT_GOD] = false; mode_gracza[CT_GOD] = false; mode_gracza[CT_NIE_MOZE_TT] = false; mode_gracza[TT_NIE_MOZE_CT] = false; dane_dnia[4] = 0; dane_dnia[7] = 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "usun_ustawienia_dzien post"); #endif } public ObslugaZyczen(id) { if(prowadzacy != id || obsluga_dala || !ostatni_wiezien || !czas_bronie) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ObslugaZyczen pre"); #endif menu_display(id, ProwadzacyMenu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ObslugaZyczen post"); #endif return PLUGIN_HANDLED; } public Handel_Obsluga_Zyczen(id, menu, item) { if(prowadzacy != id || !ostatni_wiezien || !is_user_alive(id)) return; if(item == MENU_EXIT) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Obsluga_Zyczen pre"); #endif switch(item) { case 0: { ColorChat(0, TEAM_COLOR, "^x04**JailBreak** ^x01 Obsluga wiezienia pozwolila wybrac zyczenie!"); obsluga_dala = true; new iRet; ExecuteForward(fLastPrisonerShowWish, iRet, ostatni_wiezien); } case 1: { ColorChat(0, TEAM_COLOR, "^x04**JailBreak** ^x01 Obsluga wiezienia zadecydowala ze wiezien nie ma zyczenia!"); } } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Obsluga_Zyczen post"); #endif } public ClientCommand_SelectKnife(id) { engclient_cmd(id, "weapon_knife"); } public OnAddToPlayerKnife(const item, const player) { if(pev_valid(item) && is_user_alive(player)) { message_begin(MSG_ONE, 78, .player = player);//WeaponList = 78 { write_string(cs_get_user_team(player) == CS_TEAM_T? "weapon_piesci": "weapon_palka"); // WeaponName write_byte(-1); // PrimaryAmmoID write_byte(-1); // PrimaryAmmoMaxAmount write_byte(-1); // SecondaryAmmoID write_byte(-1); // SecondaryAmmoMaxAmount write_byte(2); // SlotID (0...N) write_byte(1); // NumberInSlot (1...N) write_byte(CSW_KNIFE); // WeaponID write_byte(0); // Flags } message_end(); } } public cmdChooseTeam(id) { menu_chooseteam(id) return PLUGIN_HANDLED; } public msg_vgui_menu(msgid, dest, id) { if(get_msg_arg_int(1) != 2) return PLUGIN_CONTINUE; g_msgid[id] = msgid; menu_chooseteam(id); return PLUGIN_HANDLED; } public msg_show_menu(msgid, dest, id) { static team_select[] = "#Team_Select"; static menu_text_code[sizeof team_select]; get_msg_arg_string(4, menu_text_code, charsmax(menu_text_code)); if(!equal(menu_text_code, team_select)) return PLUGIN_CONTINUE; g_msgid[id] = msgid; menu_chooseteam(id); return PLUGIN_HANDLED; } public menu_chooseteam(id) { if(!is_user_connected(id)) return PLUGIN_HANDLED; new text[512], len; len += format(text[len], 511 - len, "\yAutor JailBreak'a - \rAnonymuss \d- \rGG: 52605603^n\wBilans: 1 CT = 6 TT^n^n"); len += format(text[len], 511 - len, "\dWybierz druzyne:^n"); len += format(text[len], 511 - len, "\y[\w1\y] \d| \r[\dTT\r] \yWiezniowie \d| : \r%i^n", playersInTeam(CS_TEAM_T)); len += format(text[len], 511 - len, "\y[\w2\y] \d| \r[\dCT\r] \yStraznicy \d| : \r%i^n^n", playersInTeam(CS_TEAM_CT)); len += format(text[len], 511 - len, "\y[\w6\y] \d| \r[\dSpect | AFK\r] \yWidzowie \d| : \r%i^n^n", playersInTeam(CS_TEAM_SPECTATOR)); if(gTeam[id]) len += format(text[len], 511 - len, "\y[\w0\y] \d| \rWyjdz \d|"); show_menu(id, gTeam[id]? 0x223: 0x23, text, -1, "mainmenu"); return PLUGIN_HANDLED; } stock playersInTeam(CsTeams:team) { new iIle = 0, i; for(i = 1 ; i <= get_maxplayers() ; i++) { if(!is_user_connected(i)) continue; if(cs_get_user_team(i) == team) iIle++; } return iIle; } public _menu_chooseteam(id, key) { switch(key) { case 0, 1, 5: GdzieDojsc(id, key+1); case 9: return; } } GdzieDojsc(id, team) { set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8)); if(team == 6) { if(!is_user_alive(id)) { gTeam[id] = 0; engclient_cmd(id, "jointeam", "6"); } else client_print(id, print_center, "Nie mozesz byc obserwatorem"); return; } if(gTeam[id] == team) return; new ile_graczy[2]; for(new i=1; i<=32; i++) { if(!is_user_connected(i)) continue; switch(cs_get_user_team(i)) { case 1: ile_graczy[0]++; case 2: ile_graczy[1]++; } } if(czas_bronie && jail_day%7 && !gTeam[id] && ((team == 1 && ile_graczy[0]) || (team == 2 && ile_graczy[1]))) { ColorChat(id, GREEN, "**JailBreak**^x01 Mozesz dolaczyc dopiero jak sie skonczy runda!"); GdzieDojsc(id, 6); return; } new iRet; ExecuteForward(fJoinTeam, iRet, id, team, ile_graczy[0], ile_graczy[1]); switch(iRet) { case -1: return; case 1,2: team = iRet; } if(gTeam[id] == team) return; new msg_blocke = get_msg_block(g_msgid[id]); set_msg_block(g_msgid[id], BLOCK_SET); engclient_cmd(id, "jointeam", team==2? "2": "1"); //set_msg_block(g_msgid[id], msg_blocke); //set_msg_block(g_msgid[id], BLOCK_SET); engclient_cmd(id, "joinclass", "1"); set_msg_block(g_msgid[id], msg_blocke); gTeam[id] = team; } public BlokujKomende() { return PLUGIN_HANDLED; } //cele menu public WczytajCele() { new szMap[32], szFile[128]; get_mapname(szMap, 31); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); if(file_exists(szFile)) { new dane_tablicy[4][32], tablica[256], txtlen; for(new i=0; i<file_size(szFile, 1); i++) { if(i > 1) break; read_file(szFile, i, tablica, 255, txtlen); parse(tablica, dane_tablicy[0], 31, dane_tablicy[1], 31, dane_tablicy[2], 31, dane_tablicy[3], 31); new Float:origin[3]; origin[0] = str_to_float(dane_tablicy[0]); origin[1] = str_to_float(dane_tablicy[1]); origin[2] = str_to_float(dane_tablicy[2]); new Float:fDistance = 9999.0, Float:fDistance2, ent; while((ent = find_ent_by_class(ent, dane_tablicy[3]))) { new Float:gOrigin[3]; get_brush_entity_origin(ent, gOrigin); fDistance2 = vector_distance(gOrigin, origin); if(fDistance2 < fDistance) { fDistance = fDistance2; g_Buttons[i] = ent; } } } } else setup_buttons(); AddMenuItem("Dodanie Cel", "jail_cele", ADMIN_RCON, "Jail"); } public MenuUstwianiaCel(id) { if(!(get_user_flags(id) & ADMIN_RCON)) return PLUGIN_HANDLED; new menu = menu_create("\dUstaw przycisk do cel:", "Handel_Cele"); menu_additem(menu, "Przycisk 1^n\d~ Jesli sa dwa przyciski do cel, uzyj Przycisk 2"); menu_additem(menu, "Przycisk 2"); menu_additem(menu, "\rUsun Przyciski"); menu_setprop(menu, MPROP_EXITNAME, "\d| \rWyjdz \d|"); menu_display(id, menu); return PLUGIN_HANDLED; } public Handel_Cele(id, menu, item) { if(item == MENU_EXIT) { return PLUGIN_CONTINUE; } switch(item) { case 0: ZapiszIdCel(id, 0); case 1: ZapiszIdCel(id, 1); case 2:{ if(g_Buttons[0]) { new szMap[32], szFile[128]; get_mapname(szMap, 31); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); delete_file(szFile); g_Buttons[0] = 0; client_print(id, 3, "[Cele] Usunieto przyciski"); } if(g_Buttons[1]) g_Buttons[1] = 0; } } menu_display(id, menu); return PLUGIN_CONTINUE; } ZapiszIdCel(id, linia) { new ent, body; get_user_aiming(id, ent, body); if(!pev_valid(ent)) return; g_Buttons[linia] = ent; new Float:origin[3], name[32]; get_brush_entity_origin(ent, origin); pev(ent, pev_classname, name, 31); new szMap[32], szFile[128], szTemp[128]; get_mapname(szMap, 31); formatex(szTemp, 127, "%f %f %f %s", origin[0], origin[1], origin[2], name); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); write_file(szFile, szTemp, linia); client_print(id, 3, "[Cele] Dodano przycisk %i", linia+1); } //cele auto public setup_buttons() { new ent[3], class[32], i, Float:origin[3]; while((i <= sizeof(g_Buttons)) && (ent[0] = engfunc(EngFunc_FindEntityByString, ent[0], "classname", "info_player_deathmatch"))) { pev(ent[0], pev_origin, origin) while((ent[1] = engfunc(EngFunc_FindEntityInSphere, ent[1], origin, 300.0))) { if(!pev_valid(ent[1])) continue; pev(ent[1], pev_classname, class, 31); if(!equal(class, "func_door")) continue; pev(ent[1], pev_targetname, class, 31) ent[2] = engfunc(EngFunc_FindEntityByString, 0, "target", class); if(pev_valid(ent[2]) && (in_array(ent[2], g_Buttons, sizeof(g_Buttons)) < 0)) { g_Buttons[i++] = ent[2]; ent[1] = 0; ent[2] = 0; break; } } } } stock in_array(needle, data[], size) { for(new i = 0; i < size; i++) { if(data[i] == needle) return i; } return -1; } public OtworzCele() { for(new i=0; i<sizeof(g_Buttons); i++) { if(!pev_valid(g_Buttons[i]) || !g_Buttons[i]) continue; ExecuteHam(Ham_Use, g_Buttons[i], 0, 0, 2, 1.0); } } AddArray(id, ktore) { if(free_day[id] || user_duszek[id]) return; if(array_graczy[ktore][id]) return; ostatni_wiezien = (ilosc_graczy[ktore]? 0: id); array_graczy[ktore][id] = id; ilosc_graczy[ktore]++; } DelArray(id, ktore) { if(free_day[id] || user_duszek[id]) return; if(!array_graczy[ktore][id]) return; array_graczy[ktore][id] = 0; ilosc_graczy[ktore]--; if(jail_day%7 && ktore == ZYWI) { switch(ilosc_graczy[ktore]) { case 1:{ for(new i=1; i<=MAX; i++) { if(array_graczy[ktore][i]) { ostatni_wiezien = array_graczy[ktore][i]; break; } } } default: ostatni_wiezien = 0; } } } AddPoszukiwany(attacker) { if(contain(szPoszukiwani, nazwa_gracza[attacker]) == -1) { new szTemp[512]; formatex(szTemp, charsmax(szTemp), "^n %s%s", nazwa_gracza[attacker], szPoszukiwani); copy(szPoszukiwani, charsmax(szPoszukiwani), szTemp); set_pev(attacker, pev_skin, 6); } if(task_exists(ID_DZWIEK_POSZ)) remove_task(ID_DZWIEK_POSZ); dzwiek_poszukiwany(); set_task(1.0, "dzwiek_poszukiwany", ID_DZWIEK_POSZ, .flags="a", .repeat=1); } public dzwiek_poszukiwany() client_cmd(0, "spk jb_anonymuss/buntownik.wav"); DelPoszukiwany(id) { if(contain(szPoszukiwani, nazwa_gracza[id]) != -1) { new szTemp[512]; formatex(szTemp, charsmax(szTemp), "^n %s", nazwa_gracza[id]); replace_all(szPoszukiwani, charsmax(szPoszukiwani), szTemp, ""); } } stock ham_strip_weapon(id, wid) { if(!wid) return 0; new szName[24]; get_weaponname(wid, szName, 23); new ent; while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", szName)) && pev(ent, pev_owner) != id) {} if(!ent) return 0; if(get_user_weapon(id) == wid) ExecuteHam(Ham_Weapon_RetireWeapon, ent); if(ExecuteHam(Ham_RemovePlayerItem, id, ent)) { ExecuteHam(Ham_Item_Kill, ent); set_pev(id, pev_weapons, pev(id, pev_weapons) & ~(1<<wid)); } return 1; } stock Jaki_Pistolet(id) { if(!is_user_alive(id)) return 0; new weapons[32], numweapons; get_user_weapons(id, weapons, numweapons); for(new i=0; i<numweapons; i++) if((1<<weapons[i]) & 0x50FCF1A8) return weapons[i]; return 0; } new Float:fWaitButton[33]; public BlokowanieUse2(ent, id, activator, iType, Float:fValue) { if(!is_user_alive(id) || id != activator) return HAM_IGNORED; if((get_gametime()-fWaitButton[id]) <= 1.0) { ColorChat(id, GREEN, "**JailBreak** ^x01 Nie spamuj guzikami!"); return HAM_SUPERCEDE; } fWaitButton[id] = get_gametime(); if(dane_dnia[4] != 3 && dane_dnia[4] != gTeam[id] && !pojedynek[id] && !free_day[id]) return HAM_IGNORED; new szClass[2][32]; pev(ent, pev_target, szClass[0], 31) ent = -1; while((ent = fm_find_ent_by_tname(ent, szClass[0]))) { pev(ent, pev_classname, szClass[1], 31); if(!equal(szClass[1], "game_player_equip") && !equal(szClass[1], "player_weaponstrip") && !equal(szClass[1], "multi_manager")) continue; return HAM_SUPERCEDE; } return HAM_IGNORED; } public MenuVoteCele(id) { if(!is_user_alive(id) || gTeam[id] != 1 || g_bPlayerZaglosowal[id]) return PLUGIN_HANDLED; if(!czas_bronie) { ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Za wczesnie aby zaglosowac na otwarcie cel!"); return PLUGIN_HANDLED; } if(zabawa_wybrana) { ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Nie mozesz glosowac na zabawie!"); return PLUGIN_HANDLED; } g_bPlayerZaglosowal[id] = true; new glosy[2]; for(new i=1; i<=MAX; i++) { if(!is_user_alive(i) || gTeam[i] != 1) continue; glosy[0]++; if(!g_bPlayerZaglosowal[i]) continue; glosy[1]++; } if(glosy[1] >= glosy[0]) { for(new i=1; i<=MAX;i++) g_bPlayerZaglosowal[i] = false; OtworzCele(); ColorChat(0, TEAM_COLOR,"^x04**JailBreak** ^x01Wiezniowie sie zbuntowali i otworzyli sobie cele!"); return PLUGIN_HANDLED; } ColorChat(id, TEAM_COLOR,"^x04**JailBreak** ^x01Zaglosowales na otworzenie cel. Glosow %d/%d!", glosy[1], glosy[0]); return PLUGIN_HANDLED; } new CzasHudOdliczanie = 0, szMessage_JB_CYPIS[64]; #define TASK_ID_HUD 2761234 new hud_data[6]; public jail_set_game_hud_p(plugin, params) { CzasHudOdliczanie = get_param(1); get_string(2, szMessage_JB_CYPIS, 63); hud_data[0] = clamp(get_param(3), 0, 255); hud_data[1] = clamp(get_param(4), 0, 255); hud_data[2] = clamp(get_param(5), 0, 255); hud_data[3] = floatround(get_param_f(6)*100) hud_data[4] = floatround(get_param_f(7)*100) hud_data[5] = plugin; if(!hud_data[0] && !hud_data[1] && !hud_data[2]) { hud_data[0] = 0; hud_data[1] = 127; hud_data[2] = 255; } if(!hud_data[3] && !hud_data[4]) { hud_data[3] = 50; hud_data[4] = 70; } remove_task(TASK_ID_HUD, 1); TimesHudWrap(); } public TimesHudWrap() { new iRet; if(--CzasHudOdliczanie > 0) { new szTime[32], iFwdHandle = CreateOneForward(hud_data[5], "OnGameHudTick", FP_CELL, FP_CELL); ExecuteForward(iFwdHandle, iRet, id_zabawa, CzasHudOdliczanie); DestroyForward(iFwdHandle); format_time(szTime, 31, "%M:%S", CzasHudOdliczanie); set_hudmessage(hud_data[0], hud_data[1], hud_data[2], hud_data[3]/100.0, hud_data[4]/100.0, 0, 0.01, 1.0); show_hudmessage(0, "%s [%s]", szMessage_JB_CYPIS, szTime); if(CzasHudOdliczanie <= 10) { new word[6]; num_to_word(CzasHudOdliczanie, word, 5); client_cmd(0, "spk ^"%s^"", word); } set_task(1.0, "TimesHudWrap", TASK_ID_HUD); } else { new iFwdHandle = CreateOneForward(hud_data[5], "OnGameHudEnd", FP_CELL); ExecuteForward(iFwdHandle, iRet, id_zabawa); DestroyForward(iFwdHandle); } }
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych
Odpowiedz na cytowane posty Wyczyść