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

Error (native "cod_get_user_coins") oraz GetCoins!


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

#1 LulzSec.

    Nie, nie wiem, ani on nie wie, nie pomoge !

  • Użytkownik

Reputacja: 60
Pomocny

  • Postów:242
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Wrocław
Offline

Napisano 17.06.2016 17:15

Od jakiegoś czasu wyskakują mi takie oto errory:

L 06/17/2016 - 10:20:15: [AMXX] Displaying debug trace (plugin "systemmonet.amxx")
L 06/17/2016 - 10:20:15: [AMXX] Run time error 4: index out of bounds 
L 06/17/2016 - 10:20:15: [AMXX]    [0] systemmonet.sma::GetCoins (line 254)
L 06/17/2016 - 10:20:15: Unhandled dynamic native error
L 06/17/2016 - 10:20:15: [AMXX] Displaying debug trace (plugin "codperk_BiednyCygan.amxx")
L 06/17/2016 - 10:20:15: [AMXX] Run time error 10: native error (native "cod_get_user_coins")
L 06/17/2016 - 10:20:15: [AMXX]    [0] codperk_BiednyCygan.sma::eathMsg (line 56) 

Linia 254: Error GetCoins

public GetCoins(id)
	return player_coins[id];

Linia 56: Error eathMsg (native "cod_get_user_coins")

public DeathMsg()
{
	new killer = read_data(1);
	new victim = read_data(2);
 
	if(!is_user_connected(killer))
		return;
 
	if(!ma_perk[killer])
		return;
 
	if(random(3))
		return;
 
	if(!(monety_ofiary[killer] = cod_get_user_coins(victim)))  // tu jest błąd linia 56
		return;
 
	ofiara[killer] = victim;
 
	Kradziez(killer);
}

Wiecie jak to naprawić? Z góry dziękuje za pomoc i oczywiście plusy dla pomocnych :)

 

Załączone pliki


  • +
  • -
  • 0

- Only DD2 | Asysty ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

- 4 Maps | Skiny | Asysty ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

- Cod Mod 401 LvL ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

 

Zapraszam na CSowicze.pl


#2 LulzSec.

    Nie, nie wiem, ani on nie wie, nie pomoge !

  • Autor tematu
  • Użytkownik

Reputacja: 60
Pomocny

  • Postów:242
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Wrocław
Offline

Napisano 23.06.2016 12:24

Nie moge edytować.

 

proszę o przeniesienie tematu do działu "Call Of Duty" z góry dziękuje i przepraszam za kłopot.


  • +
  • -
  • 0

- Only DD2 | Asysty ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

- 4 Maps | Skiny | Asysty ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

- Cod Mod 401 LvL ! b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

 

Zapraszam na CSowicze.pl


#3 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 23.06.2016 15:44

Osoba, która została zabita mogła tak samo rozłączyć się z serwerem jak i zabójca, w związku z czym w 56 linijce wyrzuci Ci błąd, jeżeli będzie próbowano odwołać się do gracza, który w rzeczywistości nie jest połączony z serwerem


  • +
  • -
  • 0

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#4 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 23.06.2016 15:44

Osoba, która została zabita mogła tak samo rozłączyć się z serwerem jak i zabójca, w związku z czym w 56 linijce wyrzuci Ci błąd, jeżeli będzie próbowano odwołać się do gracza, który w rzeczywistości nie jest połączony z serwerem


  • +
  • -
  • 0

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#5 Master Yoga

    Support Team | Mocarz

  • Support Team

Reputacja: 136
Zaawansowany

  • Postów:275
  • Lokalizacja:Magistrala Adresowa
Offline

Napisano 23.06.2016 23:18

Przyczynom tego błędu jest odwołanie się do nieistniejącego elementu.

L 06/17/2016 - 10:20:15: [AMXX] Run time error 4: index out of bounds 

Błąd robisz dokładnie w 56 linii tj:

if(!(monety_ofiary[killer] = cod_get_user_coins(victim)))  // tu jest błąd linia 56

Widzę, że pobierasz Index atakującego:

new killer = read_data(1);

lecz w całej tej funkcji nie widziałem byś sprawdził czy atakującym jest na pewno gracz. 

 

Działa to w taki sposób, że ty pobierasz sobie ID atakującego.

ID podajesz jako parametr natywu. Ten z kolei próbuje zwrócić wartość dla danego ID.
Tablica jest zapewne MAX 33 elementowa.

I wszystko pięknie śmiga o ile ID atakującego jest z zakresu od 0 do 32.

 

A co gdy ID atakującego będzie większe ( np ID będzie większe niż 100 - tak jak to się ma w przypadku bomby ) ?

Funkcja spróbuje ci zwrócić setny element tablicy, a skoro ten nie istnieję otrzymasz powyższe błędy.

Ot cała przyczyna otrzymywanych Errorów.


  • +
  • -
  • 0

HTML ★ CSS ★ JAVASCRIPT ★ AJAX ★ JQUERY ★ PHP ★ C++ ★ PAWN ★ SQL ★ Objective-C++


MKW0tb8.pngMKW0tb8.pngMKW0tb8.png





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

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