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

Neomex jako zaleta klasymały szkopuł w szczególe


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

#1 Pa+hetiC

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:10
  • Imię:Piotr
  • Lokalizacja:Gołębiów
Offline

Napisano 15.05.2011 20:44

Witam, zrobiłem klase z wbudowanym pancerzem neomexowym. Klasa działa jak należy, no prawie. Odbija pociski ale z szansą 1/2 mimo że określiłem random 1/5.

public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, wytrzymalosc, kondycja);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public cod_class_enabled(id)
ma_klase[id] = true;

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

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_klase[this])
return HAM_IGNORED;

if(random(5))
cod_inflict_damage(this, idattacker, damage, 0.0, idinflictor, damagebits);
return HAM_SUPERCEDE;
}


ktoś mi wytłumaczy czemu nie uwzględnia
if(random(5))
?
  • +
  • -
  • 0

"każda ominięta walka jest walką zwycięską"


Born to be dead.
Pa+hetiC

#2 Sm4rT

    Zaawansowany

  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:95
  • Imię:Filip
  • Lokalizacja:reafds
Offline

Napisano 15.05.2011 20:46

spróbuj

public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, wytrzymalosc, kondycja);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public cod_class_enabled(id)
ma_klase[id] = true;

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

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_klase[this])
return HAM_IGNORED;

if(random(1, 5))
cod_inflict_damage(this, idattacker, damage, 0.0, idinflictor, damagebits);
return HAM_SUPERCEDE;
}

  • +
  • -
  • 0

Pomogłem? Kliknij Dołączona grafika Będę wdzięczny :)


#3 Pa+hetiC

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:10
  • Imię:Piotr
  • Lokalizacja:Gołębiów
Offline

Napisano 15.05.2011 20:53

Error przy kompilowaniu.

if(random(5) ==1) też nie zdaje egzaminu.
  • +
  • -
  • 0

"każda ominięta walka jest walką zwycięską"


Born to be dead.
Pa+hetiC

#4 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 15.05.2011 22:10

Bloki kodu nie są rozpoznawane z intencji programisty, a z tego jak używa znaków {}

if(random(5) == 0){
cod_inflict_damage(this, idattacker, damage, 0.0, idinflictor, damagebits);
return HAM_SUPERCEDE;
}
return HAM_IGNORED;

No i porównanie if(random(5)) daje 4/5 od kiedy 0 to fałsz, a 1,2,3,4 to prawda
  • +
  • -
  • 0

#5 Pa+hetiC

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:10
  • Imię:Piotr
  • Lokalizacja:Gołębiów
Offline

Napisano 16.05.2011 16:28

Ale ja głupi jestem :D No tak :D
Dzięki :)
  • +
  • -
  • 0

"każda ominięta walka jest walką zwycięską"


Born to be dead.
Pa+hetiC




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

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