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

Ham Takedamage - Index


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

#1 dram

    Wszechwidzący

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 28.08.2011 19:28

Witam.

Błąd:
Run time error 4: index out of bounds

Rejestrowanie zmiennej:
new zmienna[33] = 0 // zmienna ta jest liczba całkowitą od 0-3

Rejestrowanie wydarzenia:

RegisterHam(Ham_TakeDamage, "player","fwTakeDamage",0);

Ciało funkcji:

 
 
public fwTakeDamage(this, idinflictor, idattacker, Float:damage, damagebits){
    
    if(!is_user_connected(this) || is_user_connected(idattacker) )
        return HAM_IGNORED
    
    if(zmienna[idattacker] == 1){ // linia błędu
        damage = damage * 1.05
    }
 
    SetHamParamFloat(4, damage);
    
    return HAM_IGNORED;
}

Jak widzimy chodzi mi tu tylko i wyłącznie o rejestracje dmg dla "player-a" ,a wywala mi że nie mam odpowiednio zarezerwowanego miejsca w zmiennej ;O

Użytkownik dram edytował ten post 28.08.2011 19:29

  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#2 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 28.08.2011 19:32

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

if(zmienna[idattacker] == 1){
damage = damage * 1.05
}

SetHamParamFloat(4, damage);
return HAM_IGNORED;
}

Użytkownik Goliath edytował ten post 28.08.2011 19:33

  • +
  • -
  • 0

#3 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 28.08.2011 19:33

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

if(zmienna[idattacker] == 1){ // linia błędu
damage = damage * 1.05
SetHamParamFloat(4, damage);

return HAM_HANDLED;
}

return HAM_IGNORED;
}


P.S. Poprawcie w końcu te zwijanie wierszy, bo to zaczyna być irytujące...

Użytkownik sebul edytował ten post 28.08.2011 19:33

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 981
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 28.08.2011 20:03

public fwTakeDamage(this, idinflictor, idattacker, Float:damage, damagebits){
	if(!is_user_connected(this) || !is_user_connected(idattacker) )    return HAM_IGNORED
    
	if(zmienna[idattacker] == 1){
   	 
    	SetHamParamFloat(4, damage * 1.05);
 
    	return HAM_HANDLED;
	}
    
	return HAM_IGNORED;
}
lub bez sprawdzania ==
public fwTakeDamage(this, idinflictor, idattacker, Float:damage, damagebits){
	if(!is_user_connected(this) || !is_user_connected(idattacker) )    return HAM_IGNORED
    
	if(zmienna[idattacker]){
   	 
    	SetHamParamFloat(4, damage * 1.05);
 
    	return HAM_HANDLED;
	}
    
	return HAM_IGNORED;
}

  • +
  • -
  • 0




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

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