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

Sam nóż

CoD Nowy

  • Zamknięty Temat jest zamknięty
3 odpowiedzi w tym temacie

#1 Kewin. (ZeZ)

    Wszechobecny

  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 15.07.2011 02:49

Szukalem i szukalem , ale znalezc dobrze wytlumaczonej tej funkcji nie znalazlem :(

Wiec proszę Was :)
Kto mi powie jak zrobić w Klasie ,np. Ninja zeby miala Only Knife?

Wzorujmy sie na tym jak by to wygladalo:

#include <amxmodx>
#include <engine>
#include <hamsandwich>
#include <codmod>
#include <fun>

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Mroczny Ninja";
new const opis[] = "Zmniejszona grawitacja i widoczność, 1/2 zabicie z noza";
new const bronie = 0;
new const zdrowie = -5;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 50;


public plugin_init() {
	register_plugin(nazwa, "1.0", "QTM_Peyote");
	
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	
	RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public cod_class_enabled(id)
{
    set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 30); 
	entity_set_float(id, EV_FL_gravity, 400.0/800.0);
	ma_klase[id] = true;
}

public cod_class_disabled(id)
{
    ma_klase[id] = false;
	set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255); 
	entity_set_float(id, EV_FL_gravity, 800.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(damagebits & DMG_BULLET)
	{
		new weapon = get_user_weapon(idattacker);
		
		if(weapon == CSW_KNIFE && damage > 20.0 && random_num(1,2) == 1) 
			cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
	}
	
	return HAM_IGNORED;
}


Dam + :)
  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!


#2 BliBs_Pl

    Wszechpomocny

  • Użytkownik

Reputacja: 91
Zaawansowany

  • Postów:365
  • GG:
  • Steam:steam
  • Imię:Piotrek
  • Lokalizacja:Pisz
Offline

Napisano 15.07.2011 08:34

Include'ujesz to:
#include <hamsandwich>

Rejestrujesz publica:
RegisterHam(Ham_Spawn, "player", "Spawn", 1);

Dodajesz go:
public Spawn(id)
{
	if(ma_klase[id])
	{
		strip_user_weapons(id);                      // zabiera wszystkie bronie danej osobie
		give_item(id, "weapon_knife");               // daje nóż danej osobie
	}
}

To jest logiczne, wystarczy dokumentację trochę przejrzeć. To jest w module fun.

I wszystko ma wyglądać tak:

#include <amxmodx>
#include <engine>
#include <hamsandwich>
#include <codmod>
#include <fun>

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Mroczny Ninja";
new const opis[] = "Zmniejszona grawitacja i widoczność, 1/2 zabicie z noza";
new const bronie = 0;
new const zdrowie = -5;
new const kondycja = 30;
new const inteligencja = 0;
new const wytrzymalosc = 50;


public plugin_init() {
	register_plugin(nazwa, "1.0", "QTM_Peyote");
	
	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
	
	RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
	
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
}

public cod_class_enabled(id)
{
    set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 30); 
	entity_set_float(id, EV_FL_gravity, 400.0/800.0);
	ma_klase[id] = true;
}

public cod_class_disabled(id)
{
    ma_klase[id] = false;
	set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255); 
	entity_set_float(id, EV_FL_gravity, 800.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(damagebits & DMG_BULLET)
	{
		new weapon = get_user_weapon(idattacker);
		
		if(weapon == CSW_KNIFE && damage > 20.0 && random_num(1,2) == 1) 
			cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
	}
	
	return HAM_IGNORED;
}

public Spawn(id)
{
	if(ma_klase[id])
	{
		strip_user_weapons(id);                      // zabiera wszystkie bronie danej osobie
		give_item(id, "weapon_knife");               // daje nóż danej osobie
	}
}

Ps. Radziłbym do public'a Spawn wrzucić również niewidkę i grawitkę.
  • +
  • -
  • 1

#3 A może sma?

    Godlike

  • Power User

Reputacja: 547
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 15.07.2011 08:34

Załączony plik  nindża.sma   1,8 KB  49 Ilość pobrań
  nindża.amxx

Edit: Ehhh... Spóźniłem się...

Użytkownik kisiel96 edytował ten post 15.07.2011 08:36

  • +
  • -
  • 1

#4 Kewin. (ZeZ)

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 15.07.2011 12:42

dzięki Wam dam obojga +
  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!






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