←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
[ROZWIĄZANE] Wytrzymalosc

Zablokowany

shoote - zdjęcie shoote 06.08.2012

Witam, mam taki problem, mam na serwerze klase "Nozownik" który ma 1/1 kosa, ale jak ktoś ma np. 500 wytrzymalosci to bije się z kosy po 19 dmg, da rade jakąs zrobić, że może mieć ktoś nawet 2k wytrzymalosci, a będzie sie zabijalo 1/1?
Odpowiedz

shoote - zdjęcie shoote 09.08.2012

ref
Odpowiedz

shoote - zdjęcie shoote 10.08.2012

ref
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 10.08.2012

Pokaż kod nożowika.
Odpowiedz

shoote - zdjęcie shoote 10.08.2012

#include <amxmodx>

#include <amxmisc>

#include <codmod>

#include <engine>

#include <fakemeta>

#include <hamsandwich>

#include <cstrike>

		  

new const nazwa[]   = "Nozownik";

new const opis[]	= "160hp bazowe, 1/1 kosa (PPM), zmiejszona grawitacja, mniejsza widocznosc podczas kucania (z nozem)";

new const bronie	= 0;

new const zdrowie   = 160;

new const kondycja  = 50;

new const inteligencja = 0;

new const wytrzymalosc = 30;

  

new ma_klase[33];

public plugin_init()

{

register_plugin(nazwa, "1.0", "a");

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

register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);



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

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



}

public cod_class_enabled(id)

{

  entity_set_float(id, EV_FL_gravity, 530.0/800.0);

ma_klase[id] = true;

}

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;

}



//Przy kucaniu

public fwPrethink_Niewidzialnosc(id)

{

if(!ma_klase[id])

  return;

new button = get_user_button(id);

if( button & IN_DUCK && get_user_weapon(id) == CSW_KNIFE)

{

  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 75);

}

else

{

  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);

}

}

public fwSpawn_Grawitacja(id)

{

if(ma_klase[id])

  entity_set_float(id, EV_FL_gravity, 530.0/800.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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)

		cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

		

	return HAM_IGNORED;

}

Użytkownik shoote edytował ten post 10.08.2012 20:30
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 10.08.2012

Spróbuj

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>
new const nazwa[]   = "Nozownik";
new const opis[]	    = "160hp bazowe, 1/1 kosa (PPM), zmiejszona grawitacja, mniejsza widocznosc podczas kucania (z nozem)";
new const bronie	    = 0;
new const zdrowie   = 160;
new const kondycja  = 50;
new const inteligencja = 0;
new const wytrzymalosc = 30;
new ma_klase[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "a");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);

RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

}
public cod_class_enabled(id)
{
entity_set_float(id, EV_FL_gravity, 530.0/800.0);
ma_klase[id] = true;
}
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;
}
//Przy kucaniu
public fwPrethink_Niewidzialnosc(id)
{
if(!ma_klase[id])
  return;
new button = get_user_button(id);
if( button & IN_DUCK && get_user_weapon(id) == CSW_KNIFE)
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 75);
}
else
{
  set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
  entity_set_float(id, EV_FL_gravity, 530.0/800.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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
{
  damage = float(get_user_health(this));
  SetHamParamFloat(4, damage);
  return HAM_IGNORED;
}

return HAM_IGNORED;
}
Odpowiedz

Gość_21977_* 27.09.2012

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany