crashdetect находит ошибку
#1

Помогите пожалуйста, проверяю мод плагином crashdetect 4.9 и в паблике нашло вот это:
[09:30:23] [debug] Run time error 4: "Array index out of bounds"
[09:30:23] [debug] Accessing element at index 1 past array upper bound 0
[09:30:23] [debug] AMX backtrace:
[09:30:23] [debug] #0 000141f4 in public MzCheck () from Sa.amx

Вот паблик:
PHP код:
public MzCheck()
{
    for(new 
=0;i<sizeof(MZInfo);i++)
    {
        if(
ZoneOnBattlem[i] == && MZSafeTime[i] == 0)
        {
            
ZoneTimerm[i] -=10;
            if(
ZoneTimerm[i] <=0)
            {
                for(new 
0sizeof(BizzInfo); h++)
                {
                    if(
BizzInfo[h][bZahvat] == 1)
                    {
                        
BizzInfo[h][bMafia] = BizzInfo[h][bMafia];
                        
SendFamilyMessage(BizzInfo[h][bMafia],COLOR_GREEN,"{40E0D0}Âàì óäàëîñü îòñòîÿòü ñâîé áèçíåñ");
                        
SendFamilyMessage(MZInfo[i][mNapad],COLOR_RED,"{CD5C5C}Âàì íå óäàëîñü âçÿòü ïîä êîíòðîëü íîâûé áèçíåñ");
                        
BizzInfo[h][bZahvat] = 0;
                        
startwar 0;
                        
ZoneOnBattlem[i] =0;
                        
GangZoneStopFlashForAll(zons);
                        
OnPropUpdate();
                    }
                }
            }
            for(new 
=0;x<MAX_PLAYERS;x++)
            {
                if(
PlayerToKvadrat(x,328.7557062412.644531448.7557062564.644531))
                {
                    new 
factionm;
                    if(
PlayerInfo[x][pLeader] !=0factionm PlayerInfo[x][pLeader];
                    else 
factionm PlayerInfo[x][pMember];
                    
OnmZONE[i][factionm] ++;
                }
            }
            new 
asd;
            for(new 
=0;x<20;x++)
            {
                if(
OnmZONE[i][x] > && IsInAllowedM(x)) asd ++;
            }
            if(
asd == 1)
            {
                for(new 
=0;x<20;x++)
                {
                    if(
OnmZONE[i][x] > 0)
                    {
                        new 
zx,zl;
                        
zx x;
                        
zl i;
                        if(
MZInfo[i][mFrakVlad] == x)
                        {
                            for(new 
0sizeof(BizzInfo); h++)
                            {
                                if(
BizzInfo[h][bZahvat] == 1)
                                {
                                    
BizzInfo[h][bMafia] = BizzInfo[h][bMafia];
                                    
SendFamilyMessage(BizzInfo[h][bMafia],COLOR_RED,"{40E0D0}Âû îòñòîÿëè ñâîé áèçíåñ");
                                    
SendFamilyMessage(MZInfo[i][mNapad],COLOR_RED,"{CD5C5C}Âàì íå óäàëîñü çàâîåâàòü åù¸ îäèí áèçíåñ");
                                    
BizzInfo[h][bZahvat] = 0;
                                    
startwar 0;
                                }
                            }
                        }
                        else
                        {
                            for(new 
0sizeof(BizzInfo); h++)
                            {
                                if(
BizzInfo[h][bZahvat] == 1)
                                {
                                    
SendFamilyMessage(BizzInfo[h][bMafia],COLOR_RED,"{40E0D0}Âû ïîòåðÿëè êîíòðîëü íàä îäíèì èç ñâîèõ áèçíåñîâ");
                                    
SendFamilyMessage(MZInfo[i][mNapad],COLOR_LIGHTGREEN,"{CD5C5C}Âû çàâîåâàëè íîâûé áèçíåñ");
                                    
BizzInfo[h][bMafia] = MZInfo[i][mNapad];
                                    
BizzInfo[h][bZahvat] = 0;
                                    
startwar 0;
                                }
                            }
                        }
                        
ZoneOnBattlem[zl] =0;
                        
MZInfo[zl][mNapad] = 0;
                        
MZInfo[zl][mFrakVlad] = zx;
                        
GangZoneStopFlashForAll(zons);
                        
GangZoneHideForAll(zons);
                        
GangZoneShowForAll(zons,COLOR_NEWS);
                        
OnPropUpdate();
                        break;
                    }
                }
            }
        }
    }
    for(new 
=0;i<3;i++)
    {
        for(new 
0;z<20;z++)
        {
            
OnmZONE[i][z] =0;
        }
    }

Reply
#2

Как интересно:
i пробегается в диапазоне от 0 до sizeof(MZInfo), но при этом подставляется в совершенно другие массивы ZoneOnBattlem[i], MZSafeTime[i], ZoneTimerm[i], OnmZONE[i][factionm]

Код:
new zx,zl; 
zx = x; 
zl = i;
зачем это, просто так выделить лишние 8 байт, вы это где-то скопировали или сами написали?
Reply
#3

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Как интересно:
i пробегается в диапазоне от 0 до sizeof(MZInfo), но при этом подставляется в совершенно другие массивы ZoneOnBattlem[i], MZSafeTime[i], ZoneTimerm[i], OnmZONE[i][factionm]

Код:
new zx,zl; 
zx = x; 
zl = i;
зачем это, просто так выделить лишние 8 байт, вы это где-то скопировали или сами написали?
Я делал по уроку одному, но там решения лучше нету. помоги исправить
Reply
#4

поможет кто-то?
Reply
#5

Тут дают подсказки и помогают с вашим кодом. Ни кто за тебя править ничего не будет.
Сам начни для начала, а вот когда появятся баги начинай задавать вопросы!
Reply
#6

Выкладывай массив и его размерность.
Reply
#7

Quote:
Originally Posted by White_116
Посмотреть сообщение
Выкладывай массив и его размерность.
Всмысле? зачем ошибка в этом паблике, я его когда заношу в комент то ошибки нет
Reply
#8

Это п*здец товарищи, я сваливаю.
Reply
#9

Quote:
Originally Posted by Kuroki
Посмотреть сообщение
Всмысле? зачем ошибка в этом паблике, я его когда заношу в комент то ошибки нет
Мда, потому что твой паблик не выполняется потому и нету ошибки.
Нужно учить pawn язык, а не просить все сделать - а самому сидеть сложив руки.
Как и говорил Stepashka:
Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Тут дают подсказки и помогают с вашим кодом. Ни кто за тебя править ничего не будет.
Тебе пытаются помочь, но если ты без знаний pawn языка, тебе никто не поможет.
Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Сам начни для начала, а вот когда появятся баги начинай задавать вопросы!
P.s Я думал сюда не дойдет быдло рлс, но увы..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)