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 3l0so1enhg4k dodana przez Seerq., 01.04.2013 14:21
Typ:



Podwójny skok
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.
#include <amxmodx>
#include <colorchat>
#include <cstrike>
#include <engine>
#include <fun>
#include <xs>
#include <fakemeta>
#include <hamsandwich>
#define RELOAD_RATIO 0.3 // im mniejsza wartosc tym szybciej przeladuje
#define IsPlayer(%1)  ( 1 <= %1 <= g_maxplayers )
const NOCLIP_WPN_BS = ((1<<2)|(1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4))
const SHOTGUNS_BS = ((1<<CSW_M3)|(1<<CSW_XM1014))
const m_pPlayer	  = 41
const m_iId	 = 43
const m_flTimeWeaponIdle  = 48
const m_fInReload   = 54
const m_flNextAttack = 83
const m_flPrimaryAttack = 46;
new bool:przeladownie[33];
stock const Float:g_fDelay[CSW_P90+1] = {
	0.00, 2.70, 0.00, 2.00, 0.00, 0.55,   0.00, 3.15, 3.30, 0.00, 4.50,
	2.70, 3.50, 3.35, 2.45, 3.30,   2.70, 2.20, 2.50, 2.63, 4.70,
	0.55, 3.05, 2.12, 3.50, 0.00,   2.20, 3.00, 2.45, 0.00, 3.40
}
forward amxbans_admin_connect(id);
new Array:g_Array, bool:g_Vip[33], menu, menu_callback_handler, weapon_id;
new const clips[]={0, 13, -0, 10, 1, 7, 0, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20, 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, 0, 50};
new const g_Langcmd[][]={"say /vips","say_team /vips","say /vipy","say_team /vipy"};
public plugin_init(){
	register_plugin("VIP Ultimate", "10.0.0.2", "benio101 & speedkill");
	RegisterHam(Ham_Spawn, "player", "SpawnedEventPre", 1);
	register_message(get_user_msgid("ScoreAttrib"), "VipStatus");
	g_Array=ArrayCreate(64,32);
	for(new i;i<sizeof g_Langcmd;i++){
		register_clcmd(g_Langcmd[i], "ShowVips");
	}
	register_clcmd("say /vip", "ShowMotd");
	new szWeapon[17]
	for(new i=1; i<=CSW_P90; i++)
	{
		if( !(NOCLIP_WPN_BS & (1<<i)) && get_weaponname(i, szWeapon, charsmax(szWeapon)) )
		{
			if( !(SHOTGUNS_BS & (1<<i)) )
			{
				RegisterHam(Ham_Weapon_Reload, szWeapon, "Weapon_Reload_Post", 1)
			}
		}
	}
}
public client_authorized(id){
	if(get_user_flags(id) & 524288 == 524288){
		client_authorized_vip(id);
	}
}
public client_authorized_vip(id){
	g_Vip[id]=true;
	przeladownie[id]=false;
	new g_Name[64];
	get_user_name(id,g_Name,charsmax(g_Name));
 
	new g_Size = ArraySize(g_Array);
	new szName[64];
 
	for(new i = 0; i < g_Size; i++){
		ArrayGetString(g_Array, i, szName, charsmax(szName));
 
		if(equal(g_Name, szName)){
			return 0;
		}
	}
	ArrayPushString(g_Array,g_Name);
 
	return PLUGIN_CONTINUE;
}
public client_disconnect(id){
	if(g_Vip[id]){
		client_disconnect_vip(id);
	}
}
public client_disconnect_vip(id){
	g_Vip[id]=false;
	przeladownie[id]=false;
	new Name[64];
	get_user_name(id,Name,charsmax(Name));
 
	new g_Size = ArraySize(g_Array);
	new g_Name[64];
 
	for(new i = 0; i < g_Size; i++){
		ArrayGetString(g_Array, i, g_Name, charsmax(g_Name));
 
		if(equal(g_Name,Name)){
			ArrayDeleteItem(g_Array,i);
			break;
		}
	}
}
public SpawnedEventPre(id){
	if(g_Vip[id]){
		if(is_user_alive(id)){
			set_user_footsteps(id,0);
			SpawnedEventPreVip(id);
		}
	}
}
public SpawnedEventPreVip(id){
	show_vip_menu(id);
	przeladownie[id]=false;
}
public show_vip_menu(id){
	menu=menu_create("r[VIP] Wybierz bron","menu_handler");
	menu_callback_handler=menu_makecallback("menu_callback");
	new bool:active=false, num=-1;
	menu_additem(menu,"ySzybsze ladowanie","",0,menu_callback_handler);
	if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
		active=true;
	}
	menu_additem(menu,"yCiche chodzenie","",0,menu_callback_handler);
	if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
		active=true;
	}
	menu_additem(menu,"yGrawitacja i 2 skoki","",0,menu_callback_handler);
	if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
		active=true;
	}
	if(active){
		menu_setprop(menu,MPROP_EXITNAME,"Wyjscie");
		menu_setprop(menu,MPROP_TITLE,"r[VIP] yWybierz Bron:");
		menu_setprop(menu,MPROP_NUMBER_COLOR,"r");
		menu_display(id, menu);
		} else {
		menu_destroy(menu);
	}
}
public recharge(id){
	new wid=get_user_weapon(id);
	if(wid){
		new weaponname[32], weid;
		get_weaponname(wid, weaponname, 31);
		weid=find_ent_by_owner(-1, weaponname, id);
		if(weid){
			cs_set_weapon_ammo(weid, clips[wid]);
		}
	}
}
public menu_callback(id, menu, item){
	if(is_user_alive(id)){
		if(item==0){
			return ITEM_ENABLED;
		}
		if(item==1){
			return ITEM_ENABLED;
		}
		if(item==2){
			return ITEM_ENABLED;
		}
	}
	return ITEM_DISABLED;
}
public menu_handler(id, menu, item){
	if(is_user_alive(id)){
		if(item==0){
			give_item(id, "weapon_mp5navy");
			give_item(id,"ammo_9mm");
			weapon_id=find_ent_by_owner(-1, "weapon_mp5navy", id);
			if(weapon_id)cs_set_weapon_ammo(weapon_id, 50);
			cs_set_user_bpammo(id, CSW_MP5NAVY, 250);
			recharge(id);
			give_item(id, "weapon_hegrenade");
			przeladownie[id]=true;
			client_print(id,print_chat,"[VIP] Wybrales SuperMarker i Granat wybuchowy")
		}
		if(item==1){
			recharge(id);
                           set_user_footsteps(id,1);
			give_item(id, "weapon_hegrenade");
			przeladownie[id]=false;
			client_print(id,print_chat,"[VIP] Wybrales Snajperke i Granat wybuchowy")
		}
		if(item==2){
			set_user_gravity(id, 650.0/800.0);
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_smokegrenade");
			przeladownie[id]=false;
			client_print(id,print_chat,"[VIP] Wybrales Cichy bieg, mniejsza grawitacje, granat wybuchowy i dymny")
		}
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}
public VipStatus(){
	new id=get_msg_arg_int(1);
	if(is_user_alive(id) && g_Vip[id]){
		set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2)|4);
	}
}
public ShowVips(id){
	new g_Name[64],g_Message[192];
 
	new g_Size=ArraySize(g_Array);
 
	for(new i = 0; i < g_Size; i++){
		ArrayGetString(g_Array, i, g_Name, charsmax(g_Name));
 
		add(g_Message, charsmax(g_Message), g_Name);
 
		if(i == g_Size - 1){
			add(g_Message, charsmax(g_Message), ".");
		}
		else{
			add(g_Message, charsmax(g_Message), ", ");
		}
	}
	ColorChat(id,GREEN,"^x04Vipy ^x04na ^x04serwerze: ^x03%s", g_Message);
	return PLUGIN_CONTINUE;
}
public client_infochanged(id){
	if(g_Vip[id]){
		new szName[64];
		get_user_info(id,"name",szName,charsmax(szName));
 
		new Name[64];
		get_user_name(id,Name,charsmax(Name));
 
		if(!equal(szName,Name)){
			ArrayPushString(g_Array,szName);
 
			new g_Size=ArraySize(g_Array);
			new g_Name[64];
			for(new i = 0; i < g_Size; i++){
				ArrayGetString(g_Array, i, g_Name, charsmax(g_Name));
 
				if(equal(g_Name,Name)){
					ArrayDeleteItem(g_Array,i);
					break;
				}
			}
		}
	}
}
public plugin_end(){
	ArrayDestroy(g_Array);
}
public ShowMotd(id){
	show_motd(id, "vip.txt", "Informacje o vipie");
}
public amxbans_admin_connect(id){
	client_authorized(id);
}
public Weapon_Reload_Post(iEnt)
{  
	new id = get_pdata_cbase(iEnt, m_pPlayer, 4)
	if( get_pdata_int(iEnt, m_fInReload, 4) && przeladownie[id] && (get_user_weapon(id) == CSW_MP5NAVY))
	{  
		new Float:fDelay = g_fDelay[get_pdata_int(iEnt, m_iId, 4)] * RELOAD_RATIO
		set_pdata_float(id, m_flNextAttack, fDelay, 5)
		set_pdata_float(iEnt, m_flTimeWeaponIdle, fDelay + 0.5, 4)
	}
}

Dodanych wklejek: 4031
Powered By (Pav32) Pastebin © 2011