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
 

Zdjęcie
CoD Nowy

Grawitacjia na 1 runde

CoD Nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 Badbuls

    Pomocny

  • Użytkownik

Reputacja: -2
Nowy

  • Postów:41
  • Imię:Patryk
  • Lokalizacja:Zelów
Offline

Napisano 24.10.2011 15:12

Wiecie może co zrobiłem źle ?? chodzi mi o to że jak to wrzucam na serva to gravitacjia jest ale tylko na 1 runde :/ potem już nie ma

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <engine>

new const nazwa[] = "Replicant (Premium)";
new const opis[] = "Moze stawiac swoje repliki, ktore odbijaja obrazenia";
new const bronie = (1<<CSW_HEGRENADE)|(1<<CSW_MP5NAVY);
new const zdrowie = 0;
new const kondycja = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new skoki[33];
new ma_klase[33];
new pcvar_ilosc_replik, pcvar_hp_replik;
new ilosc_kukiel[33];
new sprite_blast;
#define DMG_BULLET (1<<1)
new Float:grawitacja_gracza[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

register_forward(FM_CmdStart, "fwCmdStart_MultiJump");

RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");
RegisterHam(Ham_Spawn, "player", "Spawn", 1);

register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");

pcvar_ilosc_replik = register_cvar("ilosc_replik", "15");
pcvar_hp_replik = register_cvar("hp_replik", "1000");
}
public plugin_precache()
sprite_blast = precache_model("sprites/dexplo.spr");
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_C))
{
client_print(id, print_chat, "[replicant] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
give_item(id, "weapon_hegrenade");
ma_klase[id] = true;
grawitacja_gracza[id] = get_user_gravity(id);
set_user_gravity(id, grawitacja_gracza[id]*0.5);

return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
set_user_gravity(id, grawitacja_gracza[id]);
}
public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 1;
return FMRES_IGNORED;
}
public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 5) != 1 )
return HAM_IGNORED;
cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));
return HAM_HANDLED;
}
public cod_class_skill_used(id)
{
if(ilosc_kukiel[id] < 1)
{
client_print(id, print_center, "Wykorzystales wszystkie repliki!");
return;
}

new Float:OriginGracza[3], Float:OriginKukly[3], Float:VBA[3];
entity_get_vector(id, EV_VEC_origin, OriginGracza);
VelocityByAim(id, 50, VBA);

VBA[2] = 0.0;

for(new i=0; i < 3; i++)
OriginKukly[i] = OriginGracza[i]+VBA[i];

if(get_distance_f(OriginKukly, OriginGracza) < 10.0)
{
client_print(id, print_center, "Muszisz postawic replike dalej!");
return;
}

new model[55], Float:AngleKukly[3],

SekwencjaKukly = entity_get_int(id, EV_INT_gaitsequence);
SekwencjaKukly = SekwencjaKukly == 3 || SekwencjaKukly == 4? 1: SekwencjaKukly;

entity_get_string(id, EV_SZ_model, model, 54);
entity_get_vector(id, EV_VEC_angles, AngleKukly);

AngleKukly[0] = 0.0;

new ent = create_entity("info_target");

entity_set_string(ent, EV_SZ_classname, "Kukla");
entity_set_model(ent, model);
entity_set_vector(ent, EV_VEC_origin, OriginKukly);
entity_set_vector(ent, EV_VEC_angles, AngleKukly);
entity_set_vector(ent, EV_VEC_v_angle, AngleKukly);
entity_set_int(ent, EV_INT_sequence, SekwencjaKukly);
entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
entity_set_float(ent, EV_FL_health, get_pcvar_float(pcvar_hp_replik));
entity_set_float(ent, EV_FL_takedamage, DAMAGE_YES);
entity_set_size(ent, Float:{-16.0,-16.0, -36.0}, Float:{16.0,16.0, 40.0});
entity_set_int(ent, EV_INT_iuser1, id);

ilosc_kukiel[id]--;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_alive(idattacker))
return HAM_IGNORED;

new classname[33];
entity_get_string(this, EV_SZ_classname, classname, 32);

if(!equal(classname, "Kukla"))
return HAM_IGNORED;

new owner = entity_get_int(this, EV_INT_iuser1);

if(get_user_team(owner) == get_user_team(idattacker))
return HAM_SUPERCEDE;

new bool:bez_obrazen = get_user_weapon(idattacker) == CSW_KNIFE && damagebits & DMG_BULLET

if(!bez_obrazen)
cod_inflict_damage(owner, idattacker, damage, 0.3, this, damagebits);

new Float:fOrigin[3], iOrigin[3];

entity_get_vector(this, EV_VEC_origin, fOrigin);

FVecIVec(fOrigin, iOrigin);

if(damage > entity_get_float(this, EV_FL_health))
{
if(!bez_obrazen)
{
new entlist[33];
new numfound = find_sphere_class(this, "player", 190.0, entlist, 32);

for (new i=0; i < numfound; i++)
{
new pid = entlist[i];

if (!is_user_alive(pid) || get_user_team(owner) == get_user_team(pid))
continue;
cod_inflict_damage(owner, pid, 70.0, 0.3, this, (1<<24));
}
}

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();
}

return HAM_IGNORED;
}
public Spawn(id)
ilosc_kukiel[id] = get_pcvar_num(pcvar_ilosc_replik);
public NowaRunda()
remove_entity_name("Kukla")
public ResetHUD(id)
{
set_user_gravity(id, grawitacja_gracza[id]*0.5);
}

  • +
  • -
  • 0

#2 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 24.10.2011 15:20


#include <amxmodx>

#include <amxmisc>

#include <codmod>

#include <fakemeta>

#include <hamsandwich>

#include <cstrike>

#include <fun>

#include <engine>

          

new const nazwa[]   = "Replicant (Premium)";

new const opis[]        = "Moze stawiac swoje repliki, ktore odbijaja obrazenia";

new const bronie        = (1<<CSW_HEGRENADE)|(1<<CSW_MP5NAVY);

new const zdrowie   = 0;

new const kondycja  = 0;

new const inteligencja = 0;

new const wytrzymalosc = 0;

  

new skoki[33];

new ma_klase[33];

new pcvar_ilosc_replik, pcvar_hp_replik;

new ilosc_kukiel[33];

new sprite_blast;

#define DMG_BULLET (1<<1)

new Float:grawitacja_gracza[33];

public plugin_init()

{

register_plugin(nazwa, "1.0", "amxx.pl");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

  

register_forward(FM_CmdStart, "fwCmdStart_MultiJump");

  

RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");

RegisterHam(Ham_Spawn, "player", "Spawn", 1);



register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");



pcvar_ilosc_replik = register_cvar("ilosc_replik", "15");

pcvar_hp_replik = register_cvar("hp_replik", "1000");

}

public plugin_precache()

sprite_blast = precache_model("sprites/dexplo.spr");

public cod_class_enabled(id)

{

if(!(get_user_flags(id) & ADMIN_LEVEL_C))

{

  client_print(id, print_chat, "[replicant] Nie masz uprawnien, aby uzywac tej klasy.")

  return COD_STOP;

}

give_item(id, "weapon_hegrenade");

ma_klase[id] = true;

                grawitacja_gracza[id] = get_user_gravity(id);

                set_user_gravity(id, grawitacja_gracza[id]*0.5);

  

return COD_CONTINUE;

}

public cod_class_disabled(id)

{

ma_klase[id] = false;

                set_user_gravity(id, grawitacja_gracza[id]);

}

public fwCmdStart_MultiJump(id, uc_handle)

{

if(!is_user_alive(id) || !ma_klase[id])

  return FMRES_IGNORED;

new flags = pev(id, pev_flags);

if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])

{

  skoki[id]--;

  new Float:velocity[3];

  pev(id, pev_velocity,velocity);

  velocity[2] = random_float(265.0,285.0);

  set_pev(id, pev_velocity,velocity);

}

else if(flags & FL_ONGROUND)

  skoki[id] = 1;

return FMRES_IGNORED;

}

public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){

if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 5) != 1 )

  return HAM_IGNORED;

cs_set_user_armor(this, 0, CS_ARMOR_NONE);

SetHamParamFloat(4, float(get_user_health(this) + 1));

return HAM_HANDLED;

}

public cod_class_skill_used(id)

{

if(ilosc_kukiel[id] < 1)

{

  client_print(id, print_center, "Wykorzystales wszystkie repliki!");

  return;

}



new Float:OriginGracza[3], Float:OriginKukly[3], Float:VBA[3];

entity_get_vector(id, EV_VEC_origin, OriginGracza);

VelocityByAim(id, 50, VBA);



VBA[2] = 0.0;



for(new i=0; i < 3; i++)

  OriginKukly[i] = OriginGracza[i]+VBA[i];



if(get_distance_f(OriginKukly, OriginGracza) < 10.0)

{

  client_print(id, print_center, "Muszisz postawic replike dalej!");

  return;

}



new model[55], Float:AngleKukly[3],



SekwencjaKukly = entity_get_int(id, EV_INT_gaitsequence);

SekwencjaKukly = SekwencjaKukly == 3 || SekwencjaKukly == 4? 1: SekwencjaKukly;



entity_get_string(id, EV_SZ_model, model, 54);

entity_get_vector(id, EV_VEC_angles, AngleKukly);



AngleKukly[0] = 0.0;



new ent = create_entity("info_target");



entity_set_string(ent, EV_SZ_classname, "Kukla");

entity_set_model(ent, model);

entity_set_vector(ent, EV_VEC_origin, OriginKukly);

entity_set_vector(ent, EV_VEC_angles, AngleKukly);

entity_set_vector(ent, EV_VEC_v_angle, AngleKukly);

entity_set_int(ent, EV_INT_sequence, SekwencjaKukly);

entity_set_int(ent, EV_INT_solid, SOLID_BBOX);

entity_set_float(ent, EV_FL_health, get_pcvar_float(pcvar_hp_replik));

entity_set_float(ent, EV_FL_takedamage, DAMAGE_YES);

entity_set_size(ent, Float:{-16.0,-16.0, -36.0}, Float:{16.0,16.0, 40.0});

entity_set_int(ent, EV_INT_iuser1, id);



ilosc_kukiel[id]--;

}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)

{

if(!is_user_alive(idattacker))

  return HAM_IGNORED;



new classname[33];

entity_get_string(this, EV_SZ_classname, classname, 32);



if(!equal(classname, "Kukla"))

  return HAM_IGNORED;



new owner = entity_get_int(this, EV_INT_iuser1);



if(get_user_team(owner) == get_user_team(idattacker))

  return HAM_SUPERCEDE;



new bool:bez_obrazen = get_user_weapon(idattacker) == CSW_KNIFE && damagebits & DMG_BULLET



if(!bez_obrazen)

  cod_inflict_damage(owner, idattacker, damage, 0.3, this, damagebits);



new Float:fOrigin[3], iOrigin[3];



entity_get_vector(this, EV_VEC_origin, fOrigin);



FVecIVec(fOrigin, iOrigin);



if(damage > entity_get_float(this, EV_FL_health))

{

  if(!bez_obrazen)

  {

   new entlist[33];

   new numfound = find_sphere_class(this, "player", 190.0, entlist, 32);

  

   for (new i=0; i < numfound; i++)

   {

        new pid = entlist[i];

  

        if (!is_user_alive(pid) || get_user_team(owner) == get_user_team(pid))

         continue;

        cod_inflict_damage(owner, pid, 70.0, 0.3, this, (1<<24));

   }

  }



  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();

}



return HAM_IGNORED;

}

public Spawn(id)

ilosc_kukiel[id] = get_pcvar_num(pcvar_ilosc_replik);

public NowaRunda()

remove_entity_name("Kukla")

public ResetHUD(id)

{

                if(ma_klase[id])     

                          set_user_gravity(id, grawitacja_gracza[id]*0.5);

}


  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !






Również z jednym lub większą ilością słów kluczowych: CoD Nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych