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 jympwa7uz404 dodana przez winekpl, 21.04.2013 16:55
Typ:



codclass_predator
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.
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#include <fun>
 
#define DMG_BULLET (1<<1)
 
new const nazwa[]   = "Predator[SuperPremium]";
new const opis[]    = "Ma 5 rakiet zmniejszona widocznosc, zmniejszona grawitacja i 5dmg z 1 int z m4";
new const bronie    = (1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FIVESEVEN)|(1<<CSW_M4A1)|(1<<CSW_FLASHBANG)|(1<<CSW_DEAGLE)|(1<<CSW_AK47);
new const zdrowie   = 250;
new const kondycja  = 100;
new const inteligencja = 300;
new const wytrzymalosc = 200;
 
new sprite_blast;
new ilosc_rakiet_gracza[33];
new poprzednia_rakieta_gracza[33];
 
new ostatnio_prawym[33];
 
new ma_klase[33];
 
public plugin_init(){
	register_plugin(nazwa, "1.0", "amxx.pl");
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	register_event("Damage", "eventDamage_Niewidzialnosc", "b", "2!=0")
	RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
	register_touch("rocket", "*" , "DotykRakiety");
	RegisterHam(Ham_Spawn, "player", "fwSpawn_Rakiety", 1);
	register_forward(FM_PlayerPreThink, "fwPrethink_AutoBH");
	RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");
	RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");
	RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");
}
 
public plugin_precache(){
 
	sprite_blast = precache_model("sprites/dexplo.spr");
	precache_model("models/rpgrocket.mdl");
 
}
 
public client_disconnect(id){
	new entRakiety = find_ent_by_class(0, "rocket");
	while(entRakiety > 0){
		if(entity_get_edict(entRakiety, EV_ENT_owner) == id)
			remove_entity(entRakiety);
 
		entRakiety = find_ent_by_class(entRakiety, "rocket");
	}
 
}
 
public cod_class_enabled(id){
	set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 100);
 
	entity_set_float(id, EV_FL_gravity, 600.0/800.0);
 
	ilosc_rakiet_gracza[id] = 5;
	give_item(id, "weapon_hegrenade");
	give_item(id, "weapon_flashbang");
	give_item(id, "weapon_flashbang");
	give_item(id, "weapon_smokegrenade");
	cs_set_user_nvg(id, 1);
	cs_set_user_defuse(id, 1);
	ma_klase[id] = true;
 
	return COD_CONTINUE;
}
 
public cod_class_disabled(id){
	set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	entity_set_float(id, EV_FL_gravity, 1.0);
	ma_klase[id] = false;
}
public cod_class_skill_used(id){
	if(!ilosc_rakiet_gracza[id]){
		client_print(id, print_center, "Wykorzystales juz wszystkie rakiety!");
	}else{
		if(is_user_alive(id)){
			poprzednia_rakieta_gracza[id] = floatround(get_gametime());
			ilosc_rakiet_gracza[id]--;
 
			new Float: Origin[3], Float: vAngle[3], Float: Velocity[3];
 
			entity_get_vector(id, EV_VEC_v_angle, vAngle);
			entity_get_vector(id, EV_VEC_origin , Origin);
 
			new Ent = create_entity("info_target");
 
			entity_set_string(Ent, EV_SZ_classname, "rocket");
			entity_set_model(Ent, "models/rpgrocket.mdl");
 
			vAngle[0] *= -1.0;
 
			entity_set_origin(Ent, Origin);
			entity_set_vector(Ent, EV_VEC_angles, vAngle);
 
			entity_set_int(Ent, EV_INT_effects, 2);
			entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
			entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY);
			entity_set_edict(Ent, EV_ENT_owner, id);
 
			VelocityByAim(id, 1000 , Velocity);
			entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
		}
	}
}
public eventDamage_Niewidzialnosc(id){
	if(!ma_klase[id])
		return;
 
	set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}
public fwSpawn_Grawitacja(id)
	if(ma_klase[id])
		entity_set_float(id, EV_FL_gravity, 250.0/800.0);
 
public fwSpawn_Rakiety(id)
	if(is_user_alive(id))
		ilosc_rakiet_gracza[id] = 5;
 
public DotykRakiety(ent){
	if(!is_valid_ent(ent))
		return;
 
	new attacker = entity_get_edict(ent, EV_ENT_owner);
	new Float:fOrigin[3];
	entity_get_vector(ent, EV_VEC_origin, fOrigin);
 
	new iOrigin[3];
	for(new i=0;i<3;i++)
		iOrigin[i] = floatround(fOrigin[i]);
 
	message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
	write_byte(TE_EXPLOSION);
	write_coord(iOrigin[0]);
	write_coord(iOrigin[1]);
	write_coord(iOrigin[2]);
	write_short(sprite_blast);
	write_byte(32);
	write_byte(20);
	write_byte(0);
	message_end();
 
	new entlist[33];
	new numfound = find_sphere_class(ent, "player", 190.0, entlist, 32);
 
	for (new i=0; i < numfound; i++){
		new pid = entlist[i];
 
		if(!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid))
			continue;
 
		cod_inflict_damage(attacker, pid, 55.0, 0.9, ent, (1<<24));
	}
	remove_entity(ent);
}
 
public fwPrethink_AutoBH(id){
	if(!ma_klase[id])
		return PLUGIN_CONTINUE
 
	if(pev(id, pev_button) & IN_JUMP) {
		new flags = pev(id, pev_flags)
 
		if (flags & FL_WATERJUMP)
			return FMRES_IGNORED;
 
		if(pev(id, pev_waterlevel) >= 2 )
			return FMRES_IGNORED;
 
		if(!(flags & FL_ONGROUND) )
			return FMRES_IGNORED;
 
		new Float:velocity[3];
		pev(id, pev_velocity, velocity);
		velocity[2] += 250.0;
		set_pev(id, pev_velocity, velocity);
 
		set_pev(id, pev_gaitsequence, 6);
	}
	return FMRES_IGNORED;
}
public fwTakeDamage_JedenCios(id, ent, attacker){
	if(is_user_alive(attacker) && ma_klase[attacker] && get_user_weapon(attacker) == CSW_KNIFE && ostatnio_prawym[id]){
		cs_set_user_armor(id, 0, CS_ARMOR_NONE);
		SetHamParamFloat(4, float(get_user_health(id) + 1));
 
		return HAM_HANDLED;
	}
	return HAM_IGNORED;
}
public fwPrimaryAttack_JedenCios(ent){
	new id = pev(ent, pev_owner);
	ostatnio_prawym[id] = 1;
}
 
public fwSecondaryAttack_JedenCios(ent){
	new id = pev(ent, pev_owner);
	ostatnio_prawym[id] = 0;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits){
	if(!is_user_connected(idattacker))
		return HAM_IGNORED;
 
	if(!ma_klase[idattacker])
		return HAM_IGNORED;
 
	if(get_user_weapon(idattacker) == CSW_M4A1 && damagebits & DMG_BULLET)
		cod_inflict_damage(idattacker, this, 5.0, 10, idinflictor, damagebits);
 
	return HAM_IGNORED;
}

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