1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343. | #include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <colorchat>
#include <jailbreak>
#define PLUGIN "Jail Zyczenia"
#define VERSION "v1.1"
#define AUTHOR "Cypis"
/////////// Pojedynek ///////////
new bronie_pojedynek, pojedynek[2];
new HamHook:fHamKill, HamHook:fHamDamage, HamHook:fHamTrace, HamHook:fHamWeapon[31];
/////////// Pojedynek ///////////
new const maxAmmo[31] = {0,52,0,90,1,31,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,31,90,120,90,2,35,90,90,0,100};
new id_bezruch, id_freeday, id_duszek, id_rambomod, id_scouty, id_deagle, id_awp, id_m3, id_mp5, id_knife, id_m4a1;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
id_bezruch = jail_register_wish("Bezruch");
id_freeday = jail_register_wish("FreeDay");
id_duszek = jail_register_wish("Duszek");
id_rambomod = jail_register_wish("RamboMod");
id_scouty = jail_register_wish("Pojedynek na Scouty");
id_deagle = jail_register_wish("Pojedynek na Deagle");
id_awp = jail_register_wish("Pojedynek na AWP");
id_m3 = jail_register_wish("Pojedynek na m3");
id_mp5 = jail_register_wish("Pojedynek na mp5");
id_knife = jail_register_wish("Pojedynek na knife");
id_m4a1 = jail_register_wish("Pojedynek na M4A1");
}
public plugin_precache()
{
precache_sound("jb_cypis/rambomode.wav");
precache_sound("jb_cypis/pojedynek.wav");
}
public OnRemoveData()
{
/////////// Pojedynek ///////////
if(pojedynek[0] || pojedynek[1])
{
pojedynek[0] = 0;
pojedynek[1] = 0;
RegisterHams(false);
}
bronie_pojedynek = 0;
/////////// Pojedynek ///////////
}
public OnLastPrisonerTakeWish(id, zyczenie)
{
if(zyczenie == id_bezruch)
{
strip_user_weapons(id);
give_item(id, "weapon_knife");
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, maxAmmo[CSW_DEAGLE]);
jail_set_ct_hit_tt(true);
for(new i=1; i<=32; i++)
{
if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;
give_item(i, "weapon_deagle");
jail_set_user_speed(i, 0.1);
}
}
else if(zyczenie == id_freeday)
{
if(jail_get_days() == CZWARTEK || jail_get_days() == SOBOTA) //w tych dniach nie mozna wziac fd
return JAIL_HANDLED;
user_kill(id);
jail_set_prisoner_free(id);
}
else if(zyczenie == id_duszek)
{
if(jail_get_days() == CZWARTEK || jail_get_days() == SOBOTA) //w tych dniach nie mozna wziac duszka
return JAIL_HANDLED;
user_kill(id);
jail_set_prisoner_ghost(id);
}
else if(zyczenie == id_rambomod)
{
client_cmd(0, "spk jb_cypis/rambomode.wav");
set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 4.0);
show_hudmessage(0, "RamboMod aktywny!");
set_user_health(id, 500);
strip_user_weapons(id);
give_item(id, "weapon_awp");
give_item(id, "weapon_m249");
cs_set_user_bpammo(id, CSW_M249, maxAmmo[CSW_M249]);
cs_set_user_bpammo(id, CSW_AWP, maxAmmo[CSW_AWP]);
}
else if(zyczenie == id_scouty)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_SCOUT;
MenuPojedynek(id);
}
else if(zyczenie == id_deagle)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_DEAGLE;
MenuPojedynek(id);
}
else if(zyczenie == id_awp)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_AWP;
MenuPojedynek(id);
}
else if(zyczenie == id_m3)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_M3;
MenuPojedynek(id);
MenuPojedynek(id);
}
else if(zyczenie == id_knife)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_KNIFE;
MenuPojedynek(id);
}
else if(zyczenie == id_mp5)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_MP5NAVY;
MenuPojedynek(id);
MenuPojedynek(id);
}
else if(zyczenie == id_m4a1)
{
pojedynek[0] = id;
bronie_pojedynek = CSW_M4A1;
MenuPojedynek(id);
}
return JAIL_CONTINUE;
}
/////////// Pojedynek ///////////
public MenuPojedynek(id)
{
new menu = menu_create("Pojedynek Z:", "Handel_Pojedynek");
for(new i=1; i<=32; i++)
{
if(!is_user_alive(i) || !is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;
new name[64];
get_user_name(i, name, 63);
menu_additem(menu, name);
}
menu_setprop(menu, MPROP_EXITNAME, "\dWyjdz");
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_display(id, menu);
}
public Handel_Pojedynek(id, menu, item)
{
if(pojedynek[0] != id || pojedynek[1] || !is_user_alive(id))
return;
if(item == MENU_EXIT)
{
menu_display(id, menu);
return;
}
new acces, callback, data[3], szName2[64];
menu_item_getinfo(menu, item, acces, data, 2, szName2, 63, callback);
pojedynek[1] = get_user_index(szName2);
if(!is_user_alive(pojedynek[1]) || !is_user_connected(pojedynek[1]))
{
pojedynek[1] = 0;
MenuPojedynek(id);
return;
}
new szName[32];
get_user_name(id, szName, 31);
ColorChat(0, TEAM_COLOR, "^x04[PrisonBreak]^x03 %s^x01 walczy z^x03 %s", szName, szName2);
client_cmd(0, "spk jb_cypis/pojedynek.wav");
RegisterHams(true);
set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 10);
set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);
jail_set_user_block(pojedynek[0], true)
jail_set_user_block(pojedynek[1], true);
set_user_health(id, 100);
set_user_health(pojedynek[1], 100);
strip_user_weapons(id);
strip_user_weapons(pojedynek[1]);
new weapon_name[24];
get_weaponname(bronie_pojedynek, weapon_name, 23);
new ent = give_item(id, weapon_name);
new ent2 = give_item(pojedynek[1], weapon_name);
cs_set_weapon_ammo(ent, 1);
cs_set_weapon_ammo(ent2, 1);
}
public TakeDamage(id, ent, attacker, Float:damage, damagebits)
return vTracerAttack(id, attacker);
public TraceAttack(id, attacker, Float:damage, Float:direction[3], tracehandle, damagebits)
return vTracerAttack(id, attacker);
vTracerAttack(id, attacker)
{
if(!pojedynek[0] || !is_user_connected(id) || !is_user_connected(attacker) || id == attacker)
return HAM_IGNORED;
if(pojedynek[0] == id && pojedynek[1] != attacker)
return HAM_SUPERCEDE;
if(pojedynek[0] == attacker && pojedynek[1] != id)
return HAM_SUPERCEDE;
return HAM_IGNORED;
}
public SmiercGraczaPost(id, attacker, shouldgib)
{
if(!is_user_connected(id) || id != pojedynek[1])
return HAM_IGNORED;
jail_set_user_block(id, false);
SzukajPrzeciwnika();
return HAM_IGNORED;
}
public WeaponAttack(ent)
{
new id = get_pdata_cbase(ent, 41, 4);
if(pojedynek[0] == id || pojedynek[1] == id)
{
cs_set_user_bpammo(id, bronie_pojedynek, 1);
}
}
public client_disconnect(id)
{
if(pojedynek[1] == id)
SzukajPrzeciwnika();
}
public SzukajPrzeciwnika()
{
pojedynek[1] = RandomPlayer(2);
if(!pojedynek[1])
return;
if(is_user_alive(pojedynek[0]))
set_user_health(pojedynek[0], 100);
set_user_rendering(pojedynek[1], kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 10);
jail_set_user_block(pojedynek[1], true);
set_user_health(pojedynek[1], 100);
strip_user_weapons(pojedynek[1]);
new weapon_name[24]
get_weaponname(bronie_pojedynek, weapon_name, 23);
new ent = give_item(pojedynek[1], weapon_name);
cs_set_weapon_ammo(ent, 1);
}
public RegisterHams(bool:wartosc)
{
if(wartosc)
{
if(fHamKill)
EnableHamForward(fHamKill);
else
fHamKill = RegisterHam(Ham_Killed, "player", "SmiercGraczaPost", 1);
if(fHamDamage)
EnableHamForward(fHamDamage);
else
fHamDamage = RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
if(fHamTrace)
EnableHamForward(fHamTrace);
else
fHamTrace = RegisterHam(Ham_TraceAttack, "player", "TraceAttack");
if(fHamWeapon[bronie_pojedynek])
EnableHamForward(fHamWeapon[bronie_pojedynek]);
else
{
new WeaponName[24];
get_weaponname(bronie_pojedynek, WeaponName, 23);
fHamWeapon[bronie_pojedynek] = RegisterHam(Ham_Weapon_PrimaryAttack, WeaponName, "WeaponAttack", 1);
}
}
else
{
if(fHamKill)
DisableHamForward(fHamKill);
if(fHamDamage)
DisableHamForward(fHamDamage);
if(fHamTrace)
DisableHamForward(fHamTrace);
if(fHamWeapon[bronie_pojedynek])
DisableHamForward(fHamWeapon[bronie_pojedynek]);
}
}
/////////// Pojedynek ///////////
|