Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Modyfikacja

Jak zmienic obecny hud w jb cypis na taki na ss

modyfikacja

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
3 odpowiedzi w tym temacie

#1 Ps^chol ?!

    Zaawansowany

  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:119
  • GG:
  • Imię:Kamil
  • Lokalizacja:Amxx.pl
Offline

Napisano 01.03.2016 15:11

Witam,tak jak w temacie jak zmienic hud by wygladał jak na tym ss? Teraz wyglada na domyślny w pacze jb cypis a chcilabym taki jak na ss.

 

Dam kod to moze komus sie uda 

#include <amxmodx>
#include <amxmisc>
#include <fakemeta_util>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#include colorchat
 
#include <engine> //tylko uzyte do zablokowania latarki
 
#define PLUGIN "Jail Mod"
#define VERSION "1.0.7p"
#define AUTHOR "Cypis"
// SUPPORT "HubertTM"
 
//#define DEBUG 1
 
#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(get_user_msgid("HudTextArgs"), BLOCK_SET); //block dhud
set_msg_block(get_user_msgid("HudTextPro"), BLOCK_SET); // bloc dhud Pro
set_msg_block(get_user_msgid("StatusText"), BLOCK_SET); //block info player
set_msg_block(get_user_msgid("ClCorpse"), 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("drop", "BlockDrop");
 
register_clcmd("weapon_piesci", "ClientCommand_SelectKnife");
register_clcmd("weapon_palka", "ClientCommand_SelectKnife"); 
register_clcmd("jointeam", "cmdChooseTeam");
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", "MenuBroni");
register_clcmd("say /zabawy", "MenuZabaw");
register_clcmd("say /zyczenie", "MenuZyczen");
register_clcmd("say /cele", "MenuVoteCele");
register_clcmd("say /mute", "MenuMutowania");
 
register_message(get_user_msgid("TextMsg") ,"msg_TextMsg");
register_message(get_user_msgid("ShowMenu"), "msg_show_menu");
register_message(get_user_msgid("StatusIcon"), "msg_StatusIcon");
register_message(get_user_msgid("VGUIMenu"), "msg_vgui_menu");
register_impulse(100, "msg_FlashLight");
 
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();
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("\d[\r*\yCssfera.pl - JailBreak\r*\d]^n\wMENU OBSLUGI", "Handel_Obsluga_Zyczen"); 
menu_additem(ProwadzacyMenu, "\rWybierz: \wTak");
menu_additem(ProwadzacyMenu, "\rWybierz: \wNie");
 
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/jailbreak_models/v_palka.mdl";
SzModels[P_PALKA] = "models/jailbreak_models/p_palka.mdl";
SzModels[V_PIESCI] = "models/jailbreak_models/v_piesci.mdl";
SzModels[P_PIESCI] = "models/jailbreak_models/p_piesci.mdl";
SzModels[V_REKAWICE] = "models/jailbreak_models/v_rekawice.mdl";
SzModels[P_REKAWICE] = "models/jailbreak_models/p_rekawice.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/new_wiezien/new_wiezien.mdl");
precache_model("models/player/new_klawisz/new_klawisz.mdl");
 
precache_sound("weapons/prawy_przycisk.wav");
precache_sound("weapons/uderzenie_mur.wav");
precache_sound("weapons/hit1.wav");
precache_sound("weapons/hit2.wav");
precache_sound("weapons/machanie.wav");
 
precache_sound("jb_cypis/uciekinier.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, RED,"[Zyczenie] ^x01Upss... Opiekun nie wgral zadnych zyczen!!");
return PLUGIN_HANDLED;
}
 
new szZyczenia[32], szID[32], menu = menu_create("\d[\r*\yCssfera.pl - JailBreak\d]^n\wMENU ZYCZEN\y", "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, "Wyjdz");
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 == 9999)
{
menu_display(id, menu);
ColorChat(id, RED,"[Zyczenie] ^x01Sorry... Ale tego zyczenia wybrac nie mozesz!");
return;
}
 
ColorChat(0, RED,"[Zyczenie] ^x01[^x04%s^x01] ^x01wybral ^x01[^x04%s^x01]", 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(0, RED,"[Zabawa] ^x01 Upss... Opiekun nie wgral zadnych zabaw!");
return PLUGIN_CONTINUE;
}
 
if(zabawa_wybrana)
{
ColorChat(0, RED,"[Zabawa] ^x01 Zabawa na dzis zostala wybrana!");
return PLUGIN_CONTINUE;
}
 
new szZabawa[32], szID[32], menu = menu_create("\d[\r*\yCssfera.pl - JailBreak\d]^n\wMENU ZABAW\y", "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, "Wyjdz");
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(czas_bronie || ilosc_graczy[WSZYSCY] != ilosc_graczy[ZYWI])
{
ColorChat(0, RED,"[INFO] ^x01 Upss. Ktos z umarl, i nie mozna wybrac zabawy!");
return;
}
 
if(end_usun)
{
ColorChat(0, RED,"[INFO] ^x01 Poczekaj az runda sie rozpocznie!");
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(0, RED,"[INFO] ^x01%s ^x01[^x04%s^x01]", UstawZabawe(str_to_num(szID), false)? "Zabawa na dzis to: ": "Sorry... Ale jest za pozno na ta zabawe.", 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, RED,"[INFO]^x01 Mikrofon dla wiezniow: ^x01[^x04%s^x01]!", mode_gracza[MIKRO]? "ON": "OFF");
 
#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 || free_day[i] || user_duszek[i])
continue;
 
set_user_health(i, 100);
 
if(get_user_weapon(i) == CSW_KNIFE)
{ 
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, RED,"[INFO]^x01 Walka dla wiezniow: ^x01[^x04%s^x01]!", mode_gracza[WALKA]? "ON": "OFF");
 
#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_body, wartosc? 3: 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
 
new bool:ma=user_duszek[id]
 
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);
}
 
if(ma || wartosc)
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);
}
}
}
 
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)
{
new weapon = bronie_gracza[id][0], weaponname[24];
if(weapon > 0)
{
get_weaponname(weapon, weaponname, 23);
give_item(id, weaponname);
cs_set_user_bpammo(id, weapon, maxAmmo[weapon]);
}
 
weapon = bronie_gracza[id][1];
if(weapon > 0)
{
get_weaponname(weapon, weaponname, 23);
give_item(id, weaponname);
cs_set_user_bpammo(id, weapon, maxAmmo[weapon]);
}
return;
}
 
bronie_gracza[id][0] = 0;
bronie_gracza[id][1] = 0;
 
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 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("\d[\r*\yCssfera.pl - JailBreak\r*\d]^n\wMENU BRONI\y", "Handel_Bronie");
if(!(bronie_bitsum[id][0] & (1<<CSW_M4A1)))
menu_additem(menu, "\rWybierz: \wM4A1", "22");
if(!(bronie_bitsum[id][0] & (1<<CSW_AK47)))
menu_additem(menu, "\rWybierz: \wAK47", "28");
if(!(bronie_bitsum[id][0] & (1<<CSW_AWP)))
menu_additem(menu, "\rWybierz: \wAWP", "18");
if(!(bronie_bitsum[id][0] & (1<<CSW_SCOUT)))
menu_additem(menu, "\rWybierz: \wScout", "3");
if(!(bronie_bitsum[id][0] & (1<<CSW_M249)))
menu_additem(menu, "\rWybierz: \wM249", "20");
if(!(bronie_bitsum[id][0] & (1<<CSW_MP5NAVY)))
menu_additem(menu, "\rWybierz: \wMP5", "19");
if(!(bronie_bitsum[id][0] & (1<<CSW_M3)))
menu_additem(menu, "\rWybierz: \wM3", "21");
if(!(bronie_bitsum[id][0] & (1<<CSW_XM1014)))
menu_additem(menu, "\rWybierz: \wXM1014", "5");
if(!(bronie_bitsum[id][0] & (1<<CSW_P90)))
menu_additem(menu, "\rWybierz: \wP90", "30");
if(!(bronie_bitsum[id][0] & (1<<CSW_G3SG1)))
menu_additem(menu, "\rWybierz: \wG3SG1 [autokampa]", "24");
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
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) || !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("\d[\r*\yCssfera.pl - JailBreak\r*\d]^n\wMENU BRONI KROTKIEJ\y", "Handel_Pistolety");
if(!(bronie_bitsum[id][1] & (1<<CSW_USP)))
menu_additem(menu, "\rWybierz: \wUSP", "16");
if(!(bronie_bitsum[id][1] & (1<<CSW_GLOCK18)))
menu_additem(menu, "\rWybierz: \wGlock",  "17");
if(!(bronie_bitsum[id][1] & (1<<CSW_DEAGLE)))
menu_additem(menu, "\rWybierz: \wDeagle",  "26");
if(!(bronie_bitsum[id][1] & (1<<CSW_FIVESEVEN)))
menu_additem(menu, "\rWybierz: \wFiveSeven", "11");
if(!(bronie_bitsum[id][1] & (1<<CSW_ELITE)))
menu_additem(menu, "\rWybierz: \wDual",  "10");
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
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) || !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;
 
cs_set_player_model(id, "new_wiezien");
set_pev(id, pev_body, random(3));
 
AddArray(id, WSZYSCY);
AddArray(id, ZYWI);
}
case CS_TEAM_CT:
{
gTeam[id] = 2;
 
cs_set_player_model(id, "new_klawisz");
 
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_body, 3);
 
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("\d[\r*\yCssfera.pl - JailBreak]^n\wMENU ODDANIA PROWADZENIA\y", "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, "Wyjdz");
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, RED, "[INFO]^x01 Uwaga! Zmienil sie prowadzacy, teraz sluchajcie!");
 
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.wav", 1.0, ATTN_NORM, 0, PITCH_LOW);
case ('s'): emit_sound(id, CHAN_WEAPON, "weapons/machanie.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
case ('1'): emit_sound(id, CHAN_WEAPON, "weapons/hit1.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM);
case ('2'): emit_sound(id, CHAN_WEAPON, "weapons/hit2.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,RED,"[INFO]^x01 Cisza! Admin: ^x01[^x04%s^x01] ^x01przemawia, wszyscy mowiacy zostali zmutowani.", 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("\d[\r*\yCssfera.pl - JailBreak]^n\wMENU MUTOWANIA\y", "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[\rMUTE\d]");
 
menu_additem(menu, szName, num);
}
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
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, RED,"[INFO] ^x01[^x04%s^x01] gracza ^x01[^x04%s^x01]", g_Muted[id][id2]? "Zmutowales": "Sciagles mute z", 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: 112, 50, team == 1? 0: 255, -1.0, 0.9, 0, 0.01, 6.0);
ShowSyncHudMsg(id, SyncHudObj1, "%s: %s [%i]", team == 1? "Wiezien": "Klawisz", 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, "##- Klawisze 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, "##- Mozliwa zmiana 1 druzyny na 1 runde! -##")
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_disconnect(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, RED, "[UWAGA] ^x01Nie stoj w miejscu bo Cie zabije!");
ExecuteHam(Ham_TakeDamage, id, 0, 0, 5.0, (1<<14));
} 
else if(TimeAfk[id] == 18) 
{
ColorChat(id, RED, "[UWAGA!] ^x01Nie stoj w miejscu bo Cie zabije!");
ExecuteHam(Ham_TakeDamage, id, 0, 0, 10.0, (1<<14));
}
else if(TimeAfk[id] >= 20)
{
ColorChat(id, RED, "[UWAGA!!] ^x01Nie stoj w miejscu bo Cie zabije!");
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(255, 212, 0, 0.14, 0.14, 0, 0.01, 1.0);
//ShowSyncHudMsg(0, SyncHudObj2, "Dzien %i, %s^n", jail_day, dni_tygodnia[jail_day%7]);
 
static szDay[256];
 
    if(!prowadzacy && !szInfo[0])
 
    {
 
        formatex(szDay, 90, "Dzien %i - %s^nProwadzacy: Brak^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i", jail_day, dni_tygodnia[jail_day%7], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]);
 
        set_hudmessage(0, 255, 255, 0.10, 0.05, 0, 0.01, 1.0);
 
    }
 
    if(prowadzacy && !szInfo[0])
 
    {    
 
        set_hudmessage(0, 255, 255, 0.10, 0.05, 0, 0.01, 1.0);
 
        formatex(szDay, 200, "Dzien %i - %s^nProwadzacy: %s^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i^nWiezniowie musza sie sluchac Prowadzacego", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]);
 
    }
 
    else if(szInfo[0])
 
    {
 
        set_hudmessage(0, 255, 255, 0.10, 0.05, 0, 0.01, 1.0);
 
        formatex(szDay, 200, "Dzien %i - %s^nProwadzacy: Brak^n^n^nTyp 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, 255, 255, 0.10, 0.05, 0, 0.01, 1.0);
 
        formatex(szDay, 200, "Dzien %i - %s^nProwadzacy: %s^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i^nOstatni wiezien: %s ^nWiezniowie musza sie sluchac Prowadzacego", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY], nick);
 
    }
 
    else if(szInfo[0] && ostatni_wiezien)
 
    {
 
        new nick[33];
 
        get_user_name(ostatni_wiezien, nick, 31);
 
        set_hudmessage(0, 255, 255, 0.10, 0.05, 0, 0.01, 1.0);
 
        formatex(szDay, 200, "Dzien %i - %s^nProwadzacy: Brak^n^n^nTyp dnia: %s^nWiezniow: %i|%i^nOstatni wiezien: %s ^n", jail_day, dni_tygodnia[jail_day%7], szInfo, ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY], nick);
 
    }
ShowSyncHudMsg(0, SyncHudObj3, szDay);
 
if(szPoszukiwani[0] && !szInfoPosz[0])
{
set_hudmessage(255, 212, 0, 0.01, 0.4, 0, 0.01, 1.0);
ShowSyncHudMsg(0, SyncHudObj4, "Buntownicy: %s", szPoszukiwani);
}
else if(szInfoPosz[0])
{
set_hudmessage(255, 212, 0, 0.14, 0.14, 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, RED, "[INFO]^x01 Wiezien moze wybrac zyczenie, poniewaz obsluga mu na to pozwolila.");
obsluga_dala = true;
 
new iRet;
ExecuteForward(fLastPrisonerShowWish, iRet, ostatni_wiezien);
}
case 1:
{ 
ColorChat(0, RED, "[INFO]^x01 Wiezien nie moze wybrac zyczenia, poniewaz obsluga mu na to nie pozwolila.");
}
}
#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, "\d[\r*\d] \rJailBreak  \yCssfera.pl^n\d[\r*\d] \yMAFIOZO \yod \y11,07 \d[\rSMS\d]^n\d[\r*\d] \yGANGSTER \yod \y7,38 \d[\rSMS\d]^n\d[\r*\d] \yWybierz Team^n^n");
len += format(text[len], 511 - len, "\r1. \yW\wiezniowie \d[\r%i\d]^n", ilosc_graczy[WSZYSCY]);
len += format(text[len], 511 - len, "\r2. \rS\wtraznicy^n^n");
len += format(text[len], 511 - len, "\r6. \dW\widzowie^n^n");
 
if(gTeam[id])
len += format(text[len], 511 - len, "^n\r0. \wWyjdz^n");
 
show_menu(id, gTeam[id]? 0x223: 0x23, text, -1, "mainmenu");
return PLUGIN_HANDLED;
}
 
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, RED, "[Cssfera.pl]^x01 Dolacz dopiero wtedy, jak skonczy sie runda.");
GdzieDojsc(id, 6);
return;
}
 
new iRet;
ExecuteForward(fJoinTeam, iRet, id, team, ile_graczy[0], ile_graczy[1]);
 
switch(iRet)
{
case 9999: 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, PLUGIN);
}
 
public MenuUstwianiaCel(id)
{
if(!(get_user_flags(id) & ADMIN_RCON))
return PLUGIN_HANDLED;
 
new menu = menu_create("\d[\r*\yCssfera.pl - JailBreak\d]", "Handel_Cele");
 
menu_additem(menu, "\rWybierz: \wPrzycisk 1");
menu_additem(menu, "\rWybierz: \wPrzycisk 2 [jak sa 2 przyciski do cel]");
menu_additem(menu, "\rWybierz: \wUsun Przyciski");
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
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_body, 4);
}
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=9); 
}
 
public dzwiek_poszukiwany()
client_cmd(0, "spk jb_cypis/uciekinier.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, RED, "[UWAGA]^x01 Halo, halo! Czemuz to spamujesz 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, RED,"[UWAGA] ^x01Upss. Jest za wczesnie!");
return PLUGIN_HANDLED;
}
 
if(zabawa_wybrana)
{
ColorChat(id, RED,"[INFO] ^x01Sorry... Ale teraz jest czas na zabawe!");
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, RED,"[UWAGA] ^x01Wiezniowie sie zbudyniowali! Straznicy do dziela!");
return PLUGIN_HANDLED;
}
 
ColorChat(id, RED,"[INFO] ^x01Zaglosowales na otworzenie cel. Glosow ^x01[^x04%d/%d^x01]!", 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);
TimesHud();
}
 
public TimesHud()
{
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, "TimesHud", TASK_ID_HUD);
}
else 
{
new iFwdHandle = CreateOneForward(hud_data[5], "OnGameHudEnd", FP_CELL);
ExecuteForward(iFwdHandle, iRet, id_zabawa);
DestroyForward(iFwdHandle);
}
}

Załączone miniatury

  • hud.png

  • +
  • -
  • 0

Zachostuje komus serwery TS3. 51012506.

 

 

 

Pomogłem? Daj Lubie to ! Ciebie to nic nie kosztuje a mnie motywuje do dalszej pomocy


#2 Ps^chol ?!

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:119
  • GG:
  • Imię:Kamil
  • Lokalizacja:Amxx.pl
Offline

Napisano 03.03.2016 11:48

halllo


  • +
  • -
  • 0

Zachostuje komus serwery TS3. 51012506.

 

 

 

Pomogłem? Daj Lubie to ! Ciebie to nic nie kosztuje a mnie motywuje do dalszej pomocy


#3 K3rashh

    Pomocny

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:46
Offline

Napisano 03.03.2016 15:58

Jak zalezy ci na czasie to napisz do kogos kto ogarnia to i za pare zł ci zrobi takiego HUDa :P
  • +
  • -
  • 0

#4 Ps^chol ?!

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:119
  • GG:
  • Imię:Kamil
  • Lokalizacja:Amxx.pl
Offline

Napisano 03.03.2016 16:10

Jak zalezy ci na czasie to napisz do kogos kto ogarnia to i za pare zł ci zrobi takiego HUDa :P

Po co piszesz bezsensowne posty?


  • +
  • -
  • 0

Zachostuje komus serwery TS3. 51012506.

 

 

 

Pomogłem? Daj Lubie to ! Ciebie to nic nie kosztuje a mnie motywuje do dalszej pomocy






Również z jednym lub większą ilością słów kluczowych: modyfikacja

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych