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
 

Wklejka 131756307413249 dodana przez speedkill, 02.10.2011 14:44
Typ:


131756307413249
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.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
static const COLOR[] = "^x04" //green
static const CONTACT[] = ""
new maxplayers
new gmsgSayText
new mpd, mkb, mhb
new g_MsgSync
new health_add
new health_hs_add
new health_max
new nKiller
new nVictim
new nKiller_hp
new nHp_add
new nHp_max
new g_vip_active
new g_menu_active
new g_menu
new g_model_vip
new vip_jaka_flaga
new ile_razy_bronvip
new uzylem[33];
new bool:HasC4[33]
new m4a1cost
new ak47cost
new awpcost
#define ADMIN_FLAG_X (1<<23)
#define DAMAGE_RECIEVED
new round;
 
public plugin_init()
{
	register_plugin("VIP", "3.1", "KariiO")
	mpd = register_cvar("money_per_damage","0")
	mkb = register_cvar("money_kill_bonus","3500")
	mhb = register_cvar("money_hs_bonus","400")
	health_add = register_cvar("amx_vip_hp", "0")
	health_hs_add = register_cvar("amx_vip_hp_hs", "0")
	health_max = register_cvar("amx_vip_max_hp", "100")
	g_vip_active = register_cvar("vip_active", "0")
	g_menu_active = register_cvar("menu_active", "1")
	g_model_vip = register_cvar("model_active", "0")
	g_menu = register_cvar("menu_bronvip", "1")
	vip_jaka_flaga = register_cvar("vip_flaga", "ADMIN_FLAG_H")
	ile_razy_bronvip = register_cvar("vip_iloscuzyc_bronvip", "0")
	m4a1cost = register_cvar("amx_vip_m4a1price", "3100")
	ak47cost = register_cvar("amx_vip_ak47price", "2800")
	awpcost = register_cvar("amx_vip_ak47price", "5500")
 
	register_event("Damage","Damage","b")
	register_event("DeathMsg","death_msg","a")
	register_logevent("Round_Start", 2, "1=Round_Start")
	register_logevent("Round_Reset", 2, "1=Game_Commencing")
	register_event("TextMsg", "Round_Reset", "a", "2&Game_will_restart_in")
	register_event("DeathMsg", "hook_death", "a", "1>0")
 
	maxplayers = get_maxplayers()
 
	register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
 
	g_MsgSync = CreateHudSyncObj()
 
 
	register_event("CurWeapon", "CurWeapon_Bron_VIPowska", "be", "1=1")
	register_clcmd("say /vip","ShowMotd")
	gmsgSayText = get_user_msgid("SayText")
	register_clcmd("say", "handle_say")
	register_cvar("sv_contact", CONTACT, FCVAR_SERVER)
}
 
public plugin_precache() 
{
	if(get_pcvar_num(g_model_vip)>0) precache_model("models/player/vip/vip.mdl")
}
 
public on_damage(id)
{
	new attacker = get_user_attacker(id)
 
	#if defined DAMAGE_RECIEVED
	if ( is_user_connected(id) && is_user_connected(attacker) )
		if (get_user_flags(attacker) & get_pcvar_num(vip_jaka_flaga))
	{
		new damage = read_data(2)
 
		#else
		if ( is_user_connected(attacker) && if (get_user_flags(attacker) & get_pcvar_num(vip_flaga)) )
		{
			new damage = read_data(2)
			#endif
			set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
			ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage)
		}
	}
	public Damage(id)
	{
		new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
		if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
			if (get_user_flags(attacker) & get_pcvar_num(vip_jaka_flaga)) 
		{
			new money = read_data(2) * get_pcvar_num(mpd)
			if(hitpoint==1) money += get_pcvar_num(mhb)
			cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
		}
	}
 
	public death_msg()
	{
		if(read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
	}
 
	public Round_Start()
	{
		round++;
		new players[32], player, pnum;
		get_players(players, pnum, "a");
		for(new i = 0; i < pnum; i++)
		{
			player = players[i];
			if(get_user_flags(player) & get_pcvar_num(vip_jaka_flaga))
			{
				uzylem[player] = 0;
 
				if(get_pcvar_num(g_model_vip)>0) cs_set_user_model(player,"vip")
				if(!get_pcvar_num(g_menu_active))
					return PLUGIN_CONTINUE
				if(!is_user_hltv(player) && !is_user_bot(player))
				{
					give_item(player, "weapon_hegrenade");
					give_item(player, "weapon_flashbang");
					give_item(player, "weapon_flashbang");
					give_item(player, "weapon_smokegrenade");
					give_item(player, "item_assaultsuit");
					give_item(player, "item_thighpack");
				}
				if(round > 2) vipmenu(player)
			}
		}
		return PLUGIN_HANDLED
	}
 
	public Round_Reset()
	{
		round = 0;
	}
 
	public client_connect(id)
	{
		uzylem[id] = 0;
	}
 
	public hook_death()
	{
		// Killer id
		nKiller = read_data(1)
		nVictim = read_data(2)
 
		if(nKiller == nVictim)
 
		if ( (read_data(3) == 1) && (read_data(5) == 0) )
		{
			nHp_add = get_pcvar_num (health_hs_add)
		}
		else
			nHp_add = get_pcvar_num (health_add)
		nHp_max = get_pcvar_num (health_max)
		// Updating Killer HP
		if(!(get_user_flags(nKiller) & get_pcvar_num(vip_jaka_flaga)))
			return;
 
		nKiller_hp = get_user_health(nKiller)
		nKiller_hp += nHp_add
		// Maximum HP check
		if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
		if(nKiller != nVictim)
		{
			set_user_health(nKiller, nKiller_hp)
			// Hud message "Healed +15/+30 hp"
			set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
			show_hudmessage(nKiller, "Dostales +%d HP [VIP]", nHp_add)
			// Screen fading
		}
		message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
		write_short(1<<10)
		write_short(1<<10)
		write_short(0x0000)
		write_byte(0)
		write_byte(0)
		write_byte(200)
		write_byte(75)
		message_end()
 
	}
	public vipmenu(id)
	{
		new menu = menu_create("\rVIP Menu", "KlasyHandle");
 
		menu_additem(menu, "\wWez \yM4A1+Deagle\d(Granaty+Armor)");
		menu_additem(menu, "\wWez \yAK47+Deagle\d(Granaty+Armor)");
		menu_additem(menu, "\wWez \yAWP+Deagle\d(Granaty+Armor)");
 
		menu_setprop(menu, MPROP_EXITNAME,"Wyjdz");
		menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
		menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
 
		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
 
		menu_display(id, menu, 0);
		return PLUGIN_HANDLED;
	}
 
 
	public KlasyHandle(id, menu, item)
	{
		new money = cs_get_user_money(id);
		new cost1 = get_pcvar_num(m4a1cost)
		new cost2 = get_pcvar_num(ak47cost)
		new cost3 = get_pcvar_num(awpcost)
		switch(item)
		{
			case 0: { 
				if(money < cost1)
				{
					client_print(id, print_chat,"[AMXX] Nie masz tyle kasy zeby kupic M4.")
				}
				else
				{
					Czy_ma_pake(id)
 
					strip_user_weapons(id)
					cs_set_user_money(id, money - cost1)
					give_item(id,"weapon_knfe")
					give_item(id,"weapon_m4a1")
					give_item(id,"weapon_deagle")
					give_item(id, "item_assaultsuit");
					give_item(id, "item_thighpack");
					cs_set_user_bpammo(id, CSW_M4A1, 90)
					cs_set_user_bpammo(id, CSW_DEAGLE, 35)
					cs_set_user_bpammo(id, CSW_HEGRENADE, 1)
					cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
					cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1)
					client_print(id, print_center, "Otrzymales M4A1, Deagle, HE, Smoke i 2x Flesh!")
 
					Mial_pake(id)
				}
			}
			case 1: 
 
		{ 
			if(money < cost1)
			{
				client_print(id, print_chat,"[AMXX] Nie masz tyle kasy zeby kupic M4.")
			}
			else
			{
				Czy_ma_pake(id)
 
				strip_user_weapons(id)
				cs_set_user_money(id, money - cost2)
				give_item(id,"weapon_knfe")
				give_item(id,"weapon_ak47")
				give_item(id,"weapon_deagle")
				give_item(id, "item_assaultsuit");
				give_item(id, "item_thighpack");
				cs_set_user_bpammo(id, CSW_AK47, 90)
				cs_set_user_bpammo(id, CSW_DEAGLE, 35)
				cs_set_user_bpammo(id, CSW_HEGRENADE, 1)
				cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
				cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1)
				client_print(id, print_center, "Otrzymales AK47, Deagle, HE, Smoke i 2x Flesh!")
 
				Mial_pake(id)
			}
		}
 
		case 2: { 
			if(money < cost1)
			{
				client_print(id, print_chat,"[AMXX] Nie masz tyle kasy zeby kupic M4.")
			}
			else
			{
				Czy_ma_pake(id)
 
				strip_user_weapons(id)
				cs_set_user_money(id, money - cost3)
				give_item(id,"weapon_knfe")          
				give_item(id,"weapon_awp")
				give_item(id,"weapon_deagle")
				give_item(id, "item_assaultsuit");
				give_item(id, "item_thighpack");
				cs_set_user_bpammo(id, CSW_AWP, 30)
				cs_set_user_bpammo(id, CSW_DEAGLE, 35)
				cs_set_user_bpammo(id, CSW_HEGRENADE, 1)
				cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
				cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1)
				client_print(id, print_center, "Otrzymales AWP, Deagle, HE, Smoke i 2x Flesh!")
 
				Mial_pake(id)
			}
		}
 
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}
 
public Czy_ma_pake(id)
{
	if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
		HasC4[id] = true;
		else
			HasC4[id] = false;
	}
 
	public Mial_pake(id)
	{
		if (HasC4[id])
		{
			give_item(id, "weapon_c4");
			cs_set_user_plant( id );
		}
	}
 
	public CurWeapon_Bron_VIPowska(id)
	{
		new bron=get_user_weapon(id)
 
		if (!get_pcvar_num(g_vip_active))
			return PLUGIN_CONTINUE
 
		if((bron == CSW_G3SG1) || (bron == CSW_SG550) || (bron == CSW_SG550) || (bron == CSW_M249) || (bron == CSW_AWP))
		{
			if(!(get_user_flags(id) & get_pcvar_num(vip_jaka_flaga)))
			{
				client_print(id, print_center, "Bron '%s' tylko dla VIPow!",bron)
				client_cmd(id, "drop")
			}
		}
		return PLUGIN_HANDLED
	}
 
	public ShowMotd(id) show_motd(id, "vip.txt")
 
	public handle_say(id) {
		new said[192]
		read_args(said,192)
		if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
			set_task(0.1,"print_adminlist",id)
		return PLUGIN_CONTINUE
	}
 
	public print_adminlist(user) 
	{
		new adminnames[33][32]
		new message[256]
		new contactinfo[256], contact[112]
		new id, count, x, len
 
		for(id = 1 ; id <= maxplayers ; id++)
			if(is_user_connected(id))
			if(get_user_flags(id) & get_pcvar_num(vip_jaka_flaga))
			get_user_name(id, adminnames[count++], 31)
 
		len = format(message, 255, "%s VIP'y ONLINE: ",COLOR)
		if(count > 0) 
		{
			for(x = 0 ; x < count ; x++) 
			{
				len += format(message[len], 255-len, "%s%s%s ", COLOR, adminnames[x], x < (count-1) ? "^x01, ":"")
				if(len > 96 ) {
					print_message(user, message)
					len = format(message, 255, "%s ",COLOR)
				}
			}
			print_message(user, message)
		}
		else {
			len += format(message[len], 255-len, "Brak Vip'ow Online")
			print_message(user, message)
		}
 
		get_cvar_string("amx_contactinfo", contact, 63)
		if(contact[0])  {
			format(contactinfo, 111, "%s Kontakt z Adminem -- %s", COLOR, contact)
			print_message(user, contactinfo)
		}
		return PLUGIN_HANDLED;
	}
 
	print_message(id, msg[]) {
		message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
		write_byte(id)
		write_string(msg)
		message_end()
	}