Skripta koju koristim: UP
Detaljan opis problema: Znaci ovako ja startam server sve lepo radi ukucam cmd /lideri i onda mi izbaci ono online i svi lideri idem online lepo prikaze textdraw idem svi lideri ne desi se nista samo mi ovo u server logu izbaci
[20:41:31] [debug] Run time error 3: "Stack/heap collision (insufficient stack size)"
[20:41:31] [debug] Stack pointer (STK) is 0x806868, heap pointer (HEA) is 0x806A0C
[20:41:31] [debug] AMX backtrace:
[20:41:31] [debug] #0 00000000 in public OnDialogResponse () from BERPP.amx
Dio skripte:
if(dialogid == LIDERI)
{
if(!response) return true;
if(response)
{
switch(listitem)
{
case 0:
{
new big_String[1110];
new orgtext[25];
new string[64];
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PI[i][pLeader] > 0)
{
if(PI[i][pLeader] == 1) { orgtext = "Policija"; }
else if(PI[i][pLeader] == 2) { orgtext = "Black Guerilla Family"; }
else if(PI[i][pLeader] == 4) { orgtext = "Cripsy Joker"; }
else if(PI[i][pLeader] == 6) { orgtext = "Novinari"; }
else if(PI[i][pLeader] == 8) { orgtext = "F.B.I"; }
else if(PI[i][pLeader] == 9) { orgtext = "The Red Brigade"; }
else if(PI[i][pLeader] == 10) { orgtext = "La Cosa Nostra"; }
else if(PI[i][pLeader] == 11) { orgtext = "Mara Salvatrucha 13"; }
else if(PI[i][pLeader] == 12) { orgtext = "Parking Servis"; }
else if(PI[i][pLeader] == 13) { orgtext = "Hitna Pomoc"; }
else if(PI[i][pLeader] == 14) { orgtext = "The Escobar Cartel"; }
else if(PI[i][pLeader] == 15) { orgtext = "Taxi"; }
else { orgtext = "Nepoznat"; }
format(string,sizeof(string),"Lider: %s | Organizacija: %s\n", GetNameEx(i), orgtext);
strcat(big_String, string);
}
if(strlen(big_String) == 0) return SCM(playerid,-1,""ORANGE"HR: "SIVA"Trenutno nema online lidera!");
if(strlen(big_String) > 1110) return SCM(playerid,-1,"Preveliki string!");
SPD(playerid, DIALOG_GLUPOST, DSM, ""COL_BE"Lista online lidera", big_String, "OK", "");
}
}
}
case 1:
{
new text[64];
new File:lider1 = fopen("HR-RP/lideri/1.txt", io_read);
while(fread(lider1, text)) {
strmid(ldr1, text, 0, strlen(text), 255); }
fclose(lider1);
new File:lider2 = fopen("HR-RP/lideri/2.txt", io_read);
while(fread(lider2, text)) {
strmid(ldr2, text, 0, strlen(text), 255); }
fclose(lider2);
new File:lider3 = fopen("HR-RP/lideri/3.txt", io_read);
while(fread(lider3, text)) {
strmid(ldr3, text, 0, strlen(text), 255); }
fclose(lider3);
new File:lider4 = fopen("HR-RP/lideri/4.txt", io_read);
while(fread(lider4, text)) {
strmid(ldr4, text, 0, strlen(text), 255); }
fclose(lider4);
new File:lider5 = fopen("HR-RP/lideri/5.txt", io_read);
while(fread(lider5, text)) {
strmid(ldr5, text, 0, strlen(text), 255); }
fclose(lider5);
new File:lider6 = fopen("HR-RP/lideri/6.txt", io_read);
while(fread(lider6, text)) {
strmid(ldr6, text, 0, strlen(text), 255); }
fclose(lider6);
new File:lider8 = fopen("HR-RP/lideri/8.txt", io_read);
while(fread(lider8, text)) {
strmid(ldr8, text, 0, strlen(text), 255); }
fclose(lider8);
new File:lider9 = fopen("HR-RP/lideri/9.txt", io_read);
while(fread(lider9, text)) {
strmid(ldr9, text, 0, strlen(text), 255); }
fclose(lider9);
new File:lider10 = fopen("HR-RP/lideri/10.txt", io_read);
while(fread(lider10, text)) {
strmid(ldr10, text, 0, strlen(text), 255); }
fclose(lider10);
new File:lider11 = fopen("HR-RP/lideri/11.txt", io_read);
while(fread(lider11, text)) {
strmid(ldr11, text, 0, strlen(text), 255); }
fclose(lider11);
new File:lider12 = fopen("HR-RP/lideri/12.txt", io_read);
while(fread(lider12, text)) {
strmid(ldr12, text, 0, strlen(text), 255); }
fclose(lider12);
new File:lider13 = fopen("HR-RP/lideri/13.txt", io_read);
while(fread(lider13, text)) {
strmid(ldr13, text, 0, strlen(text), 255); }
fclose(lider13);
new File:lider14 = fopen("HR-RP/lideri/14.txt", io_read);
while(fread(lider14, text)) {
strmid(ldr14, text, 0, strlen(text), 255); }
fclose(lider14);
new File:lider15 = fopen("HR-RP/lideri/15.txt", io_read);
while(fread(lider15, text)) {
strmid(ldr15, text, 0, strlen(text), 255); }
new lideri1[2048], lideri2[2048], lideri[2048];
format(lideri1,sizeof(lideri1),"{FFFFFF}Policija | %s\nBlack Guerilla Family | %s\nCripsy Joker | %s\nNovinari | %s\nF.B.I | %s\nThe Red Brigade | %s\nMara Salvatrucha 13 | %s\nParking Servis | %s\nHitna Pomoc | %s\nThe Escobar Cartel | %s",ldr1,ldr2,ldr3,ldr4,ldr5,ldr6,ldr7,ldr8,ldr9,ldr10);
format(lideri2,sizeof(lideri2),"Taxi | %s",ldr11);
format(lideri,sizeof(lideri),"%s\n%s",lideri1,lideri2);
SPD(playerid, DIALOG_GLUPOST, DSM, ""COL_BE"Lista svih lidera", lideri, "OK", "");
}
}
}
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Refres
napravi debug preko print i vidi u kojem djelu stane...
Kako to?
new string[]= "simple message";
printf("This is a %s containing the number %d.", string, number); //-> This is a simple message containing the number 42.
pomocu printf radis provjeru
A gde to dodam?
Citat: Kriso poslato Decembar 16, 2015, 20:59:39 POSLE PODNE
A gde to dodam?
pa dodas tih X izmedju kodova i vidis do kojeg djela stigne kod...
Ovako?
if(dialogid == LIDERI)
{
if(!response) return true;
if(response)
{
switch(listitem)
{
case 0:
{
new big_String[1110];
new orgtext[25];
new string[64];
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PI[i][pLeader] > 0)
{
if(PI[i][pLeader] == 1) { orgtext = "Policija"; }
else if(PI[i][pLeader] == 2) { orgtext = "Black Guerilla Family"; }
else if(PI[i][pLeader] == 4) { orgtext = "Cripsy Joker"; }
else if(PI[i][pLeader] == 6) { orgtext = "Novinari"; }
else if(PI[i][pLeader] == 8) { orgtext = "F.B.I"; }
else if(PI[i][pLeader] == 9) { orgtext = "The Red Brigade"; }
else if(PI[i][pLeader] == 10) { orgtext = "La Cosa Nostra"; }
else if(PI[i][pLeader] == 11) { orgtext = "Mara Salvatrucha 13"; }
else if(PI[i][pLeader] == 12) { orgtext = "Parking Servis"; }
else if(PI[i][pLeader] == 13) { orgtext = "Hitna Pomoc"; }
else if(PI[i][pLeader] == 14) { orgtext = "The Escobar Cartel"; }
else if(PI[i][pLeader] == 15) { orgtext = "Taxi"; }
else { orgtext = "Nepoznat"; }
format(string,sizeof(string),"Lider: %s | Organizacija: %s\n", GetNameEx(i), orgtext);
strcat(big_String, string);
}
if(strlen(big_String) == 0) return SCM(playerid,-1,""ORANGE"HR: "SIVA"Trenutno nema online lidera!");
if(strlen(big_String) > 1110) return SCM(playerid,-1,"Preveliki string!");
SPD(playerid, DIALOG_GLUPOST, DSM, ""COL_BE"Lista online lidera", big_String, "OK", "");
}
}
}
case 1:
{
new text[64];
new File:lider1 = fopen("HR-RP/lideri/1.txt", io_read);
while(fread(lider1, text)) {
strmid(ldr1, text, 0, strlen(text), 255); }
fclose(lider1);
new File:lider2 = fopen("HR-RP/lideri/2.txt", io_read);
while(fread(lider2, text)) {
strmid(ldr2, text, 0, strlen(text), 255); }
fclose(lider2);
new File:lider3 = fopen("HR-RP/lideri/3.txt", io_read);
while(fread(lider3, text)) {
strmid(ldr3, text, 0, strlen(text), 255); }
fclose(lider3);
new File:lider4 = fopen("HR-RP/lideri/4.txt", io_read);
while(fread(lider4, text)) {
strmid(ldr4, text, 0, strlen(text), 255); }
fclose(lider4);
new File:lider5 = fopen("HR-RP/lideri/5.txt", io_read);
while(fread(lider5, text)) {
strmid(ldr5, text, 0, strlen(text), 255); }
fclose(lider5);
new File:lider6 = fopen("HR-RP/lideri/6.txt", io_read);
while(fread(lider6, text)) {
strmid(ldr6, text, 0, strlen(text), 255); }
fclose(lider6);
new File:lider7 = fopen("HR-RP/lideri/7.txt", io_read);
while(fread(lider7, text)) {
strmid(ldr7, text, 0, strlen(text), 255); }
fclose(lider7);
new File:lider8 = fopen("HR-RP/lideri/8.txt", io_read);
while(fread(lider8, text)) {
strmid(ldr8, text, 0, strlen(text), 255); }
fclose(lider8);
new File:lider9 = fopen("HR-RP/lideri/9.txt", io_read);
while(fread(lider9, text)) {
strmid(ldr9, text, 0, strlen(text), 255); }
fclose(lider9);
new File:lider10 = fopen("HR-RP/lideri/10.txt", io_read);
while(fread(lider10, text)) {
strmid(ldr10, text, 0, strlen(text), 255); }
fclose(lider10);
new File:lider11 = fopen("HR-RP/lideri/11.txt", io_read);
while(fread(lider11, text)) {
strmid(ldr11, text, 0, strlen(text), 255); }
fclose(lider11);
new File:lider12 = fopen("HR-RP/lideri/12.txt", io_read);
while(fread(lider12, text)) {
strmid(ldr12, text, 0, strlen(text), 255); }
fclose(lider12);
new File:lider13 = fopen("HR-RP/lideri/13.txt", io_read);
while(fread(lider13, text)) {
strmid(ldr13, text, 0, strlen(text), 255); }
fclose(lider13);
new File:lider14 = fopen("HR-RP/lideri/14.txt", io_read);
while(fread(lider14, text)) {
strmid(ldr14, text, 0, strlen(text), 255); }
fclose(lider14);
new File:lider15 = fopen("HR-RP/lideri/15.txt", io_read);
while(fread(lider15, text)) {
strmid(ldr15, text, 0, strlen(text), 255); }
fclose(lider15);
new string[]= "simple message";
printf("This is a %s containing the number %d.", string, number); //-> This is a simple message containing the number 42.
new lideri1[2048], lideri2[2048], lideri[2048];
format(lideri1,sizeof(lideri1),"{FFFFFF}Policija | %s\nBlack Guerilla Family | %s\nCripsy Joker | %s\nNovinari | %s\nF.B.I | %s\nThe Red Brigade | %s\nMara Salvatrucha 13 | %s\nParking Servis | %s\nHitna Pomoc | %s\nThe Escobar Cartel | %s",ldr1,ldr2,ldr3,ldr4,ldr5,ldr6,ldr7,ldr8,ldr9,ldr10);
format(lideri2,sizeof(lideri2),"Taxi | %s",ldr11);
format(lideri,sizeof(lideri),"%s\n%s",lideri1,lideri2);
ShowPlayerDialog(playerid, DIALOG_GLUPOST, DIALOG_STYLE_MSGBOX, ""COL_BE"Lista svih lidera", lideri, "OK", "");
}
}
}
}
OMFG :FacePlam: Dali ti citas opce sta sam ti posalo ??? Poslao sam ti primjer kako da debug tj provjeravas skriptu jeli ti dobro poslo ili ne , a ne da copy paste uradis.
Citat: Assassin007 poslato Decembar 16, 2015, 22:21:45 POSLE PODNE
OMFG :FacePlam: Dali ti citas opce sta sam ti posalo ??? Poslao sam ti primjer kako da debug tj provjeravas skriptu jeli ti dobro poslo ili ne , a ne da copy paste uradis.
Ne razumem se nesto u pawno mozes li mi ti objasniti kako to da sredim?
Evo ti primjere
Znaci koristis print("neki text");
Evo ti jedan malo bolji primjer
new lideri1[2048], lideri2[2048], lideri[2048];
print("Provjera 1");/////////////Prva provjera
format(lideri1,sizeof(lideri1),"{FFFFFF}Policija | %s\nBlack Guerilla Family | %s\nCripsy Joker | %s\nNovinari | %s\nF.B.I | %s\nThe Red Brigade | %s\nMara Salvatrucha 13 | %s\nParking Servis | %s\nHitna Pomoc | %s\nThe Escobar Cartel |%s",ldr1,ldr2,ldr3,ldr4,ldr5,ldr6,ldr7,ldr8,ldr9,ldr10);
print("provjera 2");////////Druga provjera
format(lideri2,sizeof(lideri2),"Taxi | %s",ldr11);
format(lideri,sizeof(lideri),"%s\n%s",lideri1,lideri2);
print("provjera 3");/////////Treca provjera
ShowPlayerDialog(playerid, DIALOG_GLUPOST, DIALOG_STYLE_MSGBOX, ""COL_BE"Lista svih lidera", lideri, "OK", "");
I ukucas tu komandi i odes u server log i nadjes gdje komanda zapne i posaljes nam ;)
Razumem te :D
Primer:
Ja uradim 3 provere
I ako ne ucita 3 onda je tu problem
Hvala ti
Znaci ako je zadnja poruka u server logu Provjera 2 znaci da izmedju Provjera 2 i Provjera 3 je problem
Znam,hvala ti.