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

Tablice wymiarowe w menu


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

#1 Stachuu :D ??

    Wszechobecny

  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 14.11.2011 21:35

witam do rzeczy

Mam taki o to problem

L 11/14/2011 - 20:57:18: Start of error session.
L 11/14/2011 - 20:57:18: Info (map "de_train") (file "addons/amxmodx/logs/error_20111114.log")
L 11/14/2011 - 20:57:18: Invalid cellvector handle provided (17:45:0)
L 11/14/2011 - 20:57:18: [AMXX] Displaying debug trace (plugin "gildie.amxx")
L 11/14/2011 - 20:57:18: [AMXX] Run time error 10: native error (native "ArrayGetCell")
L 11/14/2011 - 20:57:18: [AMXX]	[0] gildie.sma::info_gracza (line 72)

oto kod


/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <nvault_util>
#include <fakemeta>

#define PLUGIN "test"
#define VERSION "1.0"
#define AUTHOR "W?a?ciciel"

new iVaultHandle
new Array:g_MojaTablica;

new const GildiaXP[11] = {
0,35000,85000,160000,290000,490000,620000,890000,1300000,1800000,99999999
}

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /gildie","menu")

g_MojaTablica=ArrayCreate(1,32);
}
public menu(id)
{
new key[128]
new MyMenu=menu_create("Info","info_gracza");

new iPos , szKey[ 32 ] , szVal[ 64 ] , iTimeStamp;
iVaultHandle = nvault_util_open("Gildie")
new iCount = nvault_util_count (iVaultHandle)

for ( new iCurrent = 1 ; iCurrent <= iCount ; iCurrent++ )
{
iPos = nvault_util_read( iVaultHandle , iPos , szKey , charsmax( szKey ) , szVal , charsmax( szVal ) , iTimeStamp );
formatex(key, 127, "%s",szKey);
key[strlen(key)-4] = 0;

if(equali(key,""))
continue;
if(equali(key,"Brak"))
continue;

ArrayPushCell(g_MojaTablica,iPos);
menu_additem(MyMenu, key, _, _, _);
}
menu_setprop(MyMenu,MPROP_EXITNAME,"Wyjscie");

menu_setprop(MyMenu,MPROP_BACKNAME,"Wroc")
menu_setprop(MyMenu,MPROP_NEXTNAME,"Nastepne")

//zawsze poka? opcj? wyj?cia
menu_setprop(MyMenu,MPROP_EXIT,MEXIT_ALL);

menu_setprop(MyMenu,MPROP_PERPAGE,7)

menu_display(id, MyMenu);
}

public info_gracza(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED
}

new iPos
iPos = ArrayGetCell(g_MojaTablica,item)

new szKey[ 32 ] , szVal[ 64 ] , iTimeStamp;
nvault_util_read( iVaultHandle , iPos , szKey , charsmax( szKey ) , szVal , charsmax( szVal ) , iTimeStamp );

new key[128],a[4],b[15],c[4],d[32],nazwa[128],a1,b1,c1
formatex(key, 127, "%s",szKey);
key[strlen(key)-4] = 0;

parse(szVal, a, 3, b,14, c, 3, d, 31);

copy(nazwa, 31, d);

a1 = str_to_num(a)
b1 = str_to_num(B)
c1 = str_to_num(c)

info(id,key,nazwa,a1,b1,c1)


ArrayClear(g_MojaTablica);
return PLUGIN_HANDLED
}

public info(id,const szKey[],const nazwa[],a1,b1,c1)
{
new Skillsinfo[513]
format(Skillsinfo, 512,"Gildia
%s
Zalozyciel
%s
Lvl %i
Exp
%i/%i
Ilosc czlonkow %i/%i",
szKey,nazwa,a1,b1,GildiaXP[a1],c1,a1+2)

showczary(id,Skillsinfo)
}
public showczary(id,cotammasz[])
{
static motd[1050],header[100],len
len = 0
len += formatex(motd[len],sizeof motd - 1 - len,"")
len += formatex(motd[len],sizeof motd - 1 - len,"<font color="white">
<center><b>%s</b></center><b>
</b></font><b>
",cotammasz)

formatex(header,sizeof header - 1,"Info")

show_motd(id,motd,header)
}


bycmoze to jakis prosty blad
menu samo w sobie dziala bez zarzutu jednak nie wiem czy uzywanie tutaj wymiarowych tablic jest konieczne /potrzebne

Użytkownik Stachuu ?? edytował ten post 14.11.2011 21:35

  • +
  • -
  • 0

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

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

Napisano 14.11.2011 22:27

Na pewno tu jest blad, bo item moze byc jeszcze wstecz i dalej, coś koło -2, -1 (na pewno ujemne), więc to też musisz odfiltrować
if(item == MENU_EXIT)
		{
				menu_destroy(menu);
				return PLUGIN_HANDLED
		}

		new iPos
		iPos = ArrayGetCell(g_MojaTablica,item)

  • +
  • -
  • 0




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

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