#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <colorchat>
new const perk_name[] = "Predator";
new const perk_desc[] = "Dostajesz predatora na runde";
new bool:ma_perk[33], user_controllsem[33], bool:predator[33], sprite_blast, cache_trail;
public plugin_init() {
cod_register_perk(perk_name, perk_desc);
register_forward(FM_PlayerPreThink, "PreThink");
register_touch("predator_ent", "*", "touchedpredator");
register_event("ResetHUD", "ResetHUD", "abe");
}
public plugin_precache()
{
sprite_blast = precache_model("sprites/dexplo.spr");
cache_trail = precache_model("sprites/smoke.spr");
precache_model("models/cod_predator.mdl");
}
public cod_perk_enabled(id)
{
predator[id] = true;
ma_perk[id] = true;
}
public cod_perk_disabled(id)
ma_perk[id] = false;
public ResetHUD(id)
{
if(ma_perk[id])
{
set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 127);
predator[id] = true;
}
}
public cod_class_skill_used(id)
{
if(!is_user_alive(id) || !predator[id])
return PLUGIN_CONTINUE;
new Float:Origin[3], Float:Angle[3], Float:Velocity[3];
velocity_by_aim(id, 700, Velocity);
entity_get_vector(id, EV_VEC_origin, Origin);
entity_get_vector(id, EV_VEC_v_angle, Angle);
Angle[0] *= -1.0;
new ent = create_entity("info_target");
entity_set_string(ent, EV_SZ_classname, "predator_ent");
entity_set_model(ent, "models/cod_predator.mdl");
entity_set_int(ent, EV_INT_solid, 2);
entity_set_int(ent, EV_INT_movetype, 5);
entity_set_edict(ent, EV_ENT_owner, id);
entity_set_origin(ent, Origin);
entity_set_vector(ent, EV_VEC_velocity, Velocity);
entity_set_vector(ent, EV_VEC_angles, Angle);
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_BEAMFOLLOW);
write_short(ent);
write_short(cache_trail);
write_byte(10);
write_byte(5);
write_byte(205);
write_byte(237);
write_byte(163);
write_byte(200);
message_end();
predator[id] = false;
attach_view(id, ent);
user_controllsem[id] = ent;
return PLUGIN_CONTINUE;
}
public PreThink(id)
{
if(!is_user_alive(id))
return FMRES_IGNORED;
if(user_controllsem[id])
{
new ent = user_controllsem[id];
if(is_valid_ent(ent))
{
new Float:Velocity[3], Float:Angle[3];
velocity_by_aim(id, 500, Velocity);
entity_get_vector(id, EV_VEC_v_angle, Angle);
entity_set_vector(ent, EV_VEC_velocity, Velocity);
entity_set_vector(ent, EV_VEC_angles, Angle);
}
else
attach_view(id, id);
}
return FMRES_IGNORED;
}
public touchedpredator(ent, id)
{
if(!is_valid_ent(ent))
return PLUGIN_CONTINUE;
new owner = entity_get_edict(ent, EV_ENT_owner);
bombs_explode(ent, 220.0, 400.0);
attach_view(owner, owner);
user_controllsem[owner] = 0;
return PLUGIN_CONTINUE;
}
bombs_explode(ent, Float:zadaje, Float:promien)
{
if(!is_valid_ent(ent))
return;
new attacker = entity_get_edict(ent, EV_ENT_owner);
new Float:entOrigin[3], Float:fDamage, Float:Origin[3];
entity_get_vector(ent, EV_VEC_origin, entOrigin);
entOrigin[2] += 1.0;
new entlist[33];
new numfound = find_sphere_class(ent, "player", promien, entlist, 32);
for(new i=0; i < numfound; i++)
{
new victim = entlist[i];
if(!is_user_alive(victim) || get_user_team(attacker) == get_user_team(victim))
continue;
entity_get_vector(victim, EV_VEC_origin, Origin);
fDamage = zadaje - floatmul(zadaje, floatdiv(get_distance_f(Origin, entOrigin), promien));
fDamage *= estimate_take_hurt(entOrigin, victim);
if(fDamage>0.0)
ExecuteHam(Ham_TakeDamage, victim, ent, attacker, fDamage, DMG_BULLET);
}
message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
write_byte(TE_EXPLOSION);
write_coord(floatround(entOrigin[0]));
write_coord(floatround(entOrigin[1]));
write_coord(floatround(entOrigin[2]));
write_short(sprite_blast);
write_byte(32);
write_byte(20);
write_byte(0);
message_end();
remove_entity(ent);
}
stock Float:estimate_take_hurt(Float:fPoint[3], ent)
{
new Float:fOrigin[3]
new tr
new Float:fFraction
entity_get_vector(ent, EV_VEC_origin, fOrigin);
engfunc(EngFunc_TraceLine, fPoint, fOrigin, DONT_IGNORE_MONSTERS, 0, tr)
get_tr2(tr, TR_flFraction, fFraction)
if(fFraction == 1.0 || get_tr2(tr, TR_pHit) == ent)
return 1.0
return 0.6
}
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.
|
Guest Message by DevFuse
6 odpowiedzi w tym temacie
#1
Napisano 28.12.2011 20:29
Dałem perk predator nie działa tzn jak nacisne klawisze to nie wylatuje pocisk
#3
Napisano 28.12.2011 20:59
nadal to samo
#4
Napisano 28.12.2011 21:37
logi?
#5
Napisano 29.12.2011 10:34
wlasnie czysto naciskam e i d*pa nic nie leci
pomoze ktos
?
dobra poradzilem sobie mozna zamknac
pomoze ktos
dobra poradzilem sobie mozna zamknac
#6
Napisano 17.03.2012 08:42
Mógłbyś napisać jak sobie z tym problemem poradziłeś?
#7
Napisano 26.04.2013 11:11
niepotrzebne
#include <colorchat>
i zmieniamy:
public cod_class_skill_used(id)
na:
public cod_perk_used(id)
i wszystko powinno dzialac (:
Również z jednym lub większą ilością słów kluczowych: cod nowy
Paczka perkow.perki Napisany przez NAVIK, 24.03.2025 |
|
|
|||
CoD Nowy
Plugin na małe mapy.Napisany przez NAVIK, 16.02.2025 |
|
|
|||
CoD Nowy
Dodatkowe, osobne trzy linie opisu klasNapisany przez Rafii, 27.01.2025 |
|
|
|||
CoD Nowy
problem z kompilacjaNapisany przez Anonimowy09, 21.01.2025 |
|
|
|||
CoD Nowy
problem z HUDNapisany przez Anonimowy09, 10.01.2025 |
|
|
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych


Dodatki SourceMod












