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
Klasa

Prośba o klase "Podpalacz"Klasa Podpalacz

klasa

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

#1 NAX426

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:1
  • Lokalizacja:Rzeszów
Offline

Napisano 08.04.2014 16:56

Nazwa:Podpalacz

Umiejętności:1/6 na podpalenie gracza(podpalenie trwa 5 sekund,1sekunda=10dmg)

Bronie:M4A1,deagle,nóż


Użytkownik NAX426 edytował ten post 08.04.2014 16:58

  • +
  • -
  • 0

#2 Warjat

    Profesjonalista

  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:193
  • Lokalizacja:Warszawa
Offline

Napisano 08.04.2014 18:37

#include <amxmodx>
#include <codmod>
#include <fakemeta>
#include <xs>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
#include <colorchat>

#define MAX 32

new sprite_fire,
	sprite_smoke;

new ma_klase[MAX+1], palenie_gracza[MAX+1];

new const nazwa[]   = "Podpalacz";
new const opis[]    = "Posiada 1/5 na podpalenie gracza. Podpalanie trwa 5sec. zabierając 100hp.";
new const bronie    = (1<<CSW_M4A1)|(1<<CSW_DEAGLE);
new const zdrowie   = 0;
new const kondycja  = 0;
new const inteligencja = 0;
new const wytrzymalosc = 0;
    
public plugin_init()
{
	register_plugin(nazwa, "1.0", "amxx.pl");

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

	register_event("Damage", "Damage", "b", "2!=0");
	
	RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}


public plugin_precache()
{
	sprite_fire = precache_model("sprites/fire.spr")
	sprite_smoke = precache_model("sprites/steam1.spr")
}

public cod_class_enabled(id, wartosc)
{
	ma_klase[id] = true;
	return COD_CONTINUE;
}

public cod_class_disabled(id)
	ma_klase[id] = false;

public Damage(id)
{
        new attacker = get_user_attacker(id);
        if(!is_user_alive(attacker))
                return PLUGIN_CONTINUE;
        
        if(id == attacker)
                return PLUGIN_CONTINUE;
        
        if(ma_klase[attacker] && random_num(1,5) == 1)  // Szansa na podpalenie
        {
                if(task_exists(id+2936))
                        remove_task(id+2936);
                palenie_gracza[id] = 25;
                new data[2]
                data[0] = id
                data[1] = attacker
                set_task(0.5, "burning_flame", id+2936, data, 2, "b"); // Czas
        }
        return PLUGIN_CONTINUE;
}


public burning_flame(data[2])
{
	new id = data[0]
	
	if(!is_user_alive(id))
	{
		palenie_gracza[id] = 0
		remove_task(id+2936);
		return PLUGIN_CONTINUE;
	}
	
	new origin[3], flags = pev(id, pev_flags)
	get_user_origin(id, origin)
	
	if(flags & FL_INWATER || palenie_gracza[id] < 1 || !get_user_health(id))
	{
		message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
		write_byte(TE_SMOKE)
		write_coord(origin[0])
		write_coord(origin[1])
		write_coord(origin[2]-50)
		write_short(sprite_smoke)
		write_byte(random_num(15,20))
		write_byte(random_num(10,20))
		message_end()
		
		remove_task(id+2936);
		return PLUGIN_CONTINUE;
	}
	
	if(flags & FL_ONGROUND)
	{
		static Float:velocity[3]
		pev(id, pev_velocity, velocity)
		xs_vec_mul_scalar(velocity, 0.5, velocity)
		set_pev(id, pev_velocity, velocity)
	}
	cod_inflict_damage(data[1], id, 10.0, 0.0, 0, 1<<24); // DmG
	
	message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
	write_byte(TE_SPRITE)
	write_coord(origin[0]+random_num(-5,5))
	write_coord(origin[1]+random_num(-5,5))
	write_coord(origin[2]+random_num(-10,10))
	write_short(sprite_fire)
	write_byte(random_num(5,10))
	write_byte(200)
	message_end()
	
	palenie_gracza[id]--
	return PLUGIN_CONTINUE;
}	

Sprawdź bo nie jestem pewny czy jest dobrze 


  • +
  • -
  • 0





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

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

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