SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Русский/Russian

Reply
 
Thread Tools Display Modes
Old 05/08/2019, 01:47 PM   #1
Yanix
Little Clucker
 
Join Date: Aug 2019
Posts: 1
Reputation: 0
Default Ошибки

При убийстве на капте вылазит такая вот ошибка за пределом массива

PHP Code:
Attempted to read/write array element at index 24 in array of size 20 
Не могу понять делаю так не получается так сяк.
PHP Code:
new PlayerText:capture_PTD[MAX_PLAYERS][16];
#define MAX_GANGS 20
enum Ganginfa{
    
capture,
    
score,
    
captureid,
    
gangnumber}
new 
GangInfo[MAX_GANGS][Ganginfa];
#define MAX_GZONE 120 
Ошибка на строке 63308
PHP Code:
stock CaptureUpd(bandkiller)
{
    new 
SCORE1[128],SCORE2[128];
    
tforeach(i)
    {
        if(!
gPlayerLogged[i]) continue; //Вот тут почему тут хз 63308
        
if(GangInfo[PlayerInfo[i][pMember]][capture] > 0)
        {
            if(
GangInfo[bandkiller][gangnumber] == 1)
            {
                
format(SCORE1sizeof(SCORE1), "%d"GangInfo[bandkiller][score]);
                
PlayerTextDrawSetString(i,capture_PTD[i][13], SCORE1);
            }
            else
            {
                
format(SCORE2sizeof(SCORE2), "%d"GangInfo[bandkiller][score]);
                
PlayerTextDrawSetString(i,capture_PTD[i][14], SCORE2);
               }
        }
    }

Ещё тут
PHP Code:
new bandkiller[2];
        if(
PlayerInfo[killerid][pLeader] !=0)
        {
            
bandkiller[0] = PlayerInfo[killerid][pLeader];
        }
        else
        {
            
bandkiller[0] = PlayerInfo[killerid][pMember];
        }
        if(
PlayerInfo[playerid][pLeader] !=0)
        {
            
bandkiller[1] = PlayerInfo[playerid][pLeader];
        }
        else
        {
            
bandkiller[1] = PlayerInfo[playerid][pMember];
        }
        if(
bandkiller[0] != bandkiller[1])
        {
            if(
GangInfo[bandkiller[0]][capture] && GangInfo[bandkiller[1]][capture] == 1)
            {
                if(
GangInfo[bandkiller[0]][captureid] == GangInfo[bandkiller[1]][captureid])
                {
                    
GangInfo[bandkiller[0]][score] = GangInfo[bandkiller[0]][score]+1;
                    
CaptureUpd(bandkiller[0]);//Тут
                
}
            }
        }
    } 
Yanix is offline   Reply With Quote
Old 05/08/2019, 02:10 PM   #2
Stepashka
Godfather
 
Stepashka's Avatar
 
Join Date: Jul 2008
Location: near PC
Posts: 5,751
Reputation: 138
Default Re: Ошибки

В первом варианте ошибка в следующей строке:
pawn Code:
if(GangInfo[PlayerInfo[i][pMember]][capture] > 0)
Ты должен проверить что у тебя в PlayerInfo[i][pMember] и откуда там приходит 24.

Во втором случае дебагай bandkiller[0].
__________________
Клятва Страуструпа: "Я обязуюсь прилежно комментировать свой код, не использовать goto и следить за состоянием своих потоков и выделяемой памяти. Я обязуюсь не оставлять мусора в системе и избегать однобуквенных переменных. Ресет." © Куч
M&M GM
Status: ON HOLD

Stepashka is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Ошибки в MySQL_log SanDev Русский/Russian 11 05/03/2015 08:28 AM
Ошибки крашдетектера. gensek4 Русский/Russian 14 04/03/2015 06:50 AM
Ошибки из-за mxINI Nadim Русский/Russian 4 26/11/2013 05:01 PM
Ошибки на сервере. safari Русский/Russian 1 30/01/2012 09:36 AM
Предупреждения и ошибки Riaz Русский/Russian 22 19/04/2010 07:25 PM


All times are GMT. The time now is 08:22 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.