PHP Code:
# include <amxmodx>
# include <amxmisc>
# include <cstrike>
# include <fakemeta_util>
# include <hamsandwich>
# include <block>
# define PIESCI_VIEW_MODEL "models / jail / v_piesci.mdl"
# define PIESCI_PLAYER_MODEL "models / jail / p_piesci.mdl"
# define WIEZIEN_MODEL "Prisoner"
# define KLAWISZ_MODEL "key"
new version[] = "1.0"
new Folder[] = "jailmod"
new configsdir[65]
new on = 0
new dni_tygodnia = 0
new karynum = 0
new penalty[129] [129]
new jumps[33]squatting[33]ilesiedzi[33]
new Restrict
new silownia_act
new last_alive[33]
new const days[7] [] = (
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
)
Public plugin_init()
(
register_plugin("JAIL Break to JQB ",version,"JAQUBA")
server_print("[PdX] Jail Break Mod % s BY Bl[a]Ze ====",version)
new active = register_cvar("jail_on","1",ADMIN_CVAR)
if (get_pcvar_num(active) == 1)
(
get_configsdir(configsdir,64)
register_clcmd("say","handle_say")
register_clcmd("say_team","handle_say")
set_task(150.0,"advertisement")
register_event("CurWeapon","set_model","b","1 = 1")
register_logevent("start_round",2,"1 = Round_Start")
register_message(get_user_msgid("TextMsg") ,"kto_wygral")
silownia_act = register_cvar("jail_pakernia","1",ADMIN_CVAR)
register_forward(FM_PlayerPreThink,"fitness")
register_forward(FM_EmitSound,"podmien_dziwek")
sprawdz_pliki()
laduj_kary()
server_cmd("sv_maxspeed 1200 ")
Restrict = register_cvar("jail_ct_limit","0",ADMIN_CVAR)
set_cvar_num("mp_limitteams",0)
set_cvar_num("mp_autoteambalance",0)
register_clcmd("jointeam","jointeam")
register_menucmd(register_menuid("Team_Select",1) (1<<0) | (1<<1) | (1<<4)"teamselect")
register_forward(FM_PlayerPreThink,"pokaz_wyniki")
RegisterHam(Ham_Spawn,"player","set_player_model",1)
block_buy_menu()
register_logevent("round_end",2,"1 = Round_End")
register_clcmd("Say dbg ","debug1")
register_forward(FM_GetGameDescription,"gamename")
/ / RegisterHam (Ham_TakeDamage, "player", "injuries")
)
)
/ *
Public injuries (Victim, Useless, Attacker, Float: damage, damagebits)
(
client_print (0, print_chat, "% f", damage)
)
* /
Public gamename()
(
new g_name[65]
Format(g_name,64,"[PdX] JAIL Mod % s BY Bl[a]Ze ",version)
forward_return(FMV_STRING,g_name)
return FMRES_SUPERCEDE
)
Public debug1(d)
(
fm_set_user_godmode(d,1)
)
Public round_end()
(
new players[32]inum
get_players(players,inum,"h")
for (new and=0;and<inum; + +and)
(
if (is_user_alive(players[and]))
(
last_alive[players[and]] = 1
)
else last_alive[players[and]] =0
)
)
Public block_buy(d)
(
if (last_alive[d] ! = 1)
(
if (get_user_team(d) == 1)
(
fm_strip_user_weapons(d)
fm_give_item(d,"weapon_knife")
)
else if (get_user_team(d) == 2) show_ct_menu(d)
)
)
Public show_ct_menu(d)
(
)
Public set_player_model(d)
(
if (!is_user_alive(d)) return PLUGIN_CONTINUE
new user_team = get_user_team(d)
if (user_team == 1)
(
cs_set_user_model(d,WIEZIEN_MODEL)
)
else if (user_team == 2)
(
cs_set_user_model(d,KLAWISZ_MODEL)
)
block_buy(d)
return PLUGIN_CONTINUE
)
Public pokaz_wyniki(d)
(
if (!is_user_alive(d)) return PLUGIN_CONTINUE
new id2,body
get_user_aiming(d,id2,body)
new cel_team = get_user_team(id2)
new cel_name[33]
get_user_name(id2,cel_name,32)
if (cel_team == 1)
(
set_hudmessage(255, 170, 0, --1.0, 0.70, 0, 6.0, 0.5)
if (get_pcvar_num(silownia_act) == 1) show_hudmessage(d,"% s -- Jailed For % d Day ^ n ^ nSquats: % d Jumping: % d ",cel_name,ilesiedzi[id2]squatting[id2]jumps[id2])
else if (get_pcvar_num(silownia_act) == 0) show_hudmessage(d,"% s -- Jailed For % d Day ",cel_name,ilesiedzi[id2])
)
else if (cel_team == 2)
(
set_hudmessage(255, 170, 0, --1.0, 0.57, 0, 6.0, 0.5)
show_hudmessage(d,"Key ...")
)
return PLUGIN_CONTINUE
)
Public jointeam(d)
(
new arg[2]
read_argv(1,arg,1)
return checkTeam(d,str_to_num(arg))
)
Public teamselect(d,key)
(
return checkTeam(d,key+1)
)
checkTeam(d,NewTeam)
(
if (get_pcvar_num(Restrict) ! = 0)
(
new in_ct = 0
if (NewTeam == 2 | | NewTeam == 5)
(
for (new and = 1; and <= get_playersnum(); and+ +) if (get_user_team(and) == 2) in_ct+ +
if (in_ct > = get_pcvar_num(Restrict)) engclient_cmd(d,"jointeam",T)
else return PLUGIN_CONTINUE
)
else return PLUGIN_CONTINUE
)
else return PLUGIN_CONTINUE
return PLUGIN_CONTINUE
)
Public podmien_dziwek(d, channel, sample[])
(
if (get_user_team(d) == 1)
(
if (equal(sample, "Weapons / knife_", 14))
(
if (equal(sample, "Weapons / knife_hit", 17))
(
emit_sound(d, CHAN_WEAPON, "weapons/bullet_hit2.wav", random_float(0.5, 1.0) ATTN_NORM, 0, PITCH_NORM)
return FMRES_SUPERCEDE
)
else if (equal(sample,"Weapons / knife_stab.wav"))
(
emit_sound(d, CHAN_WEAPON, "weapons/cbar_hitbod2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
return FMRES_SUPERCEDE
)
else if (equal(sample,"weapons/knife_hitwall1.wav"))
(
emit_sound(d, CHAN_WEAPON, "weapons/cbar_hitbod1.wav", 1.0, ATTN_NORM, 0, PITCH_LOW)
return FMRES_SUPERCEDE
)
)
)
return FMRES_IGNORED
)
Public client_connect(d)
(
squatting[d] = 0
jumps[d] = 0
ilesiedzi[d] = 0
last_alive[d] = 0
)
Public set_model(d)
(
if (!is_user_alive(d))
(
return PLUGIN_CONTINUE
)
if (read_data(2) == 29 & & get_user_team(d) == 1)
(
set_pev(d,pev_viewmodel2,PIESCI_VIEW_MODEL)
set_pev(d,pev_weaponmodel2,PIESCI_PLAYER_MODEL)
)
if (get_pcvar_num(silownia_act) == 1 & & get_user_team(d) == 1)
(
switch (squatting[d])
(
case 50 .. 100: fm_set_user_maxspeed(d, fm_get_user_maxspeed(d) + 0.05)
case 101 .. 200: fm_set_user_maxspeed(d, fm_get_user_maxspeed(d) + 0.1)
case 201 .. 300: fm_set_user_maxspeed(d, fm_get_user_maxspeed(d) + 0.20)
case 301 .. 1000: fm_set_user_maxspeed(d, fm_get_user_maxspeed(d) + 0.25)
default: ()
)
switch (jumps[d])
(
case 50 .. 100: fm_set_user_gravity(d, fm_get_user_gravity(d) -- 0.05)
case 101 .. 200: fm_set_user_gravity(d, fm_get_user_gravity(d) -- 0.1)
case 201 .. 300: fm_set_user_gravity(d, fm_get_user_gravity(d) -- 0.20)
case 301 .. 1000: fm_set_user_gravity(d, fm_get_user_gravity(d) -- 0.25)
default: ()
)
)
return PLUGIN_CONTINUE
)
Public fitness(d)
(
if (!is_user_alive(d) & & get_pcvar_num(silownia_act) ! = 1) return FMRES_IGNORED
if (pev(d, pev_oldbuttons) & IN_DUCK & & ! (pev(d, pev_button) & IN_DUCK) & & get_user_team(d) == 1)
(
static s_iFlags
s_iFlags = pev(d, pev_flags)
if (s_iFlags & FL_DUCKING)
(
squatting[d] + +
)
)
if (pev(d, pev_oldbuttons) & IN_JUMP & & ! (pev(d, pev_button) & IN_JUMP) & & get_user_team(d) == 1)
(
static s_iFlags
s_iFlags = pev(d, pev_flags)
if (! (s_iFlags & FL_ONGROUND))
(
jumps[d] + +
)
)
return FMRES_IGNORED
)
Public sprawdz_silownie(d)
(
if (get_pcvar_num(silownia_act) == 1)
(
if (get_user_team(d) == 1)
(
client_print(d,print_chat,"[PdX] Your Results at Workout:)
client_print(d,print_chat,"[PdX] Bending & kneeling : % d Jumping: % d ",squatting[d]jumps[d])
)
else
(
client_print(d,print_chat,"[PdX] You have to be prisoner to pack ")
)
)
else client_print(d,print_chat,"[PdX] Gym CLOSED ")
)
Public sprawdz_pliki()
(
new dir[65]
Format(dir,64,"% s /% s",configsdir,Folder)
if (!dir_exists(dir)) mkdir(dir)
new file_config[129]
Format(file_config,128,"% s /% s / jailmod.cfg",configsdir,Folder)
if (!file_exists(file_config))
write_file(file_config,"/ / Here Enter Skins to Jail Fashion ")
write_file(file_config,"jail_on ^ "1^"")
write_file(file_config,"jail_ct_limit ^ "0^"")
write_file(file_config,"jail_pakernia ^ "1^"")
)
server_cmd("exec % s ",file_config)
new file_kary[129]
Format(file_kary,128,"% s /% s / kary.ini",configsdir,Folder)
if (!file_exists(file_kary)) write_file(file_kary,"battery")
new file_zasady[129]
Format(file_zasady,128,"% s /% s / zasady.html",configsdir,Folder)
if (!file_exists(file_zasady)) write_file(file_zasady,"Complete RULES! ")
)
Public laduj_kary()
(
new file[129]
Format(file,128,"% s /% s / kary.ini",configsdir,Folder)
new text[65]dummy
for (new and=0;and<file_size(file,1) +and)
(
read_file(file,and,text,64,dummy)
if (!equal(text,""))
(
penalty[karynum] = text
karynum+ +
)
)
)
Public kto_wygral(const Msgid, const MsgDest, const MsgEntity )
(
static message[33]
get_msg_arg_string(2, message, 32)
if (equal(message, "# Terrorists_Win"))
(
set_msg_arg_string(2, "The prisoners win! ")
)
else if (equal(message, "# CTs_Win"))
(
set_msg_arg_string(2, Keys win! ")
)
)
Public plugin_precache()
(
precache_model(PIESCI_VIEW_MODEL)
precache_model(PIESCI_PLAYER_MODEL)
new player_model[129]
Format(player_model,128,"models / player /% s /% s.mdl",WIEZIEN_MODEL,WIEZIEN_MODEL)
precache_model(player_model)
Format(player_model,128,"models / player /% s /% s.mdl",KLAWISZ_MODEL,KLAWISZ_MODEL)
precache_model(player_model)
precache_sound("weapons/cbar_hitbod1.wav")
precache_sound("weapons/cbar_hitbod2.wav")
precache_sound("weapons/bullet_hit2.wav")
)
Public start_round()
(
on+ +
set_hudmessage(0, 255, 0, --1.0, 0.30, 0, 6.0, 12.0)
ShowSyncHudMsg(0,CreateHudSyncObj()"It starts August % d day n (% s) ",on,days[dni_tygodnia])
dni_tygodnia+ +
if (dni_tygodnia > = 7) dni_tygodnia = 0
new players[32]inum
get_players(players,inum)
for (new and=0;and<inum; + +and)
(
if (is_user_alive(players[and]) == 1 & & get_user_team(players[and]) == 1)
(
ilesiedzi[players[and]] + +
set_hudmessage(255, 0, 0, --1.0, 0.60, 0, 6.0, 12.0)
ShowSyncHudMsg(players[and]CreateHudSyncObj()"[PdX] You sit % d Day behind % s ",ilesiedzi[players[and]]losuj_kare())
)
)
)
Public losuj_kare()
(
return penalty[random_num(0,karynum--1)]
)
Public advertisement()
(
client_print(0,print_chat,"[PdX] Enter / rules or / rules to see like play ")
)
Public handle_say(d)
(
new arg1[65]
read_argv(1,arg1,64)
if (equal(arg1,"/ rules")) rules(d)
if (equal(arg1,"/ rules")) rules(d)
if (equal(arg1,'/ fitness ")) sprawdz_silownie(d)
)
Public rules(d)
(
new file[129]
Format(file,128,"% s /% s / zasady.html",configsdir,Folder)
show_motd(d,file,"Rules")
)