Рекомендованные сообщения



Не найдено.

10 posts in this topic

Здравствуйте дорогие форумчани.
После добавления Античита Nexius у меня выскакивают такие ошибки

Спойлер

[17:38:38] Run time error 4: "Array index out of bounds"
[17:38:38]  Attempted to read/write array element at negative index -1
[17:38:38] AMX backtrace:
[17:38:38] #0 003c02d4 in public ac_OnPlayerKeyStateChange (playerid=1, newkeys=1, oldkeys=0) at C:\Users\RusTick\Desktop\Normative RP. Server 02\gamemodes\rls.pwn:56182
[17:38:38] #1 00024058 in public OnPlayerKeyStateChange (playerid=1, newkeys=1, oldkeys=0) at C:\Users\RusTick\Desktop\NORMAT~1.SER\pawno\include\
rakcheat.inc:5115
[17:48:43] Run time error 4: "Array index out of bounds"
[17:48:43]  Attempted to read/write array element at index 23 in array of size 20
[17:48:43] AMX backtrace:
[17:48:43] #0 00722770 in CaptureUpd (bandkiller=18) at C:\Users\RusTick\Desktop\Normative RP. Server 02\gamemodes\rls.pwn:63307
[17:48:43] #1 00198d0c in public ac_OnPlayerDeath (playerid=2, killerid=6, reason=24) at C:\Users\RusTick\Desktop\Normative RP. Server 02\gamemodes\rls.pwn:26314
[17:48:43] #2 000129b4 in public OnPlayerDeath (playerid=2, killerid=6, reason=24) at C:\Users\RusTick\Desktop\NORMAT~1.SER\pawno\include\
rakcheat.inc:3341
[17:48:44] Run time error 4: "Array index out of bounds"
[17:48:44]  Attempted to read/write array element at index 23 in array of size 20
[17:48:44] AMX backtrace:
[17:48:44] #0 00722770 in CaptureUpd (bandkiller=18) at C:\Users\RusTick\Desktop\Normative RP. Server 02\gamemodes\rls.pwn:63307
[17:48:44] #1 00198d0c in public ac_OnPlayerDeath (playerid=3, killerid=6, reason=24) at C:\Users\RusTick\Desktop\Normative RP. Server 02\gamemodes\rls.pwn:26314
[17:48:44] #2 000129b4 in public OnPlayerDeath (playerid=3, killerid=6, reason=24) at C:\Users\RusTick\Desktop\NORMAT~1.SER\pawno\include\
rakcheat.inc:3341

 

Вот строка 56182

           

Спойлер

if(IsPlayerInAnyVehicle(playerid))
    {
        //new vehicleid = GetPlayerVehicleID(playerid);
        //new model = (GetVehicleModel(vehicleid)-400);
        if (newkeys == 262144 && IsACar(plcar)) return callcmd::radio(playerid); //262144 - ??? id ??????? R
        if (newkeys == KEY_SUBMISSION && !IsABycicle(plcar)) return callcmd::en(playerid);
        if(GetPlayerState(playerid) == 2)
        {
            if(newkeys & 1)
            {
                   if (!(IsABycicle(plcar) || IsAPlane(plcar) || IsABoat(plcar)))
                {
                    if(LightsStatus(plcar) == 1)
                    {
                        Lights(plcar, false);
                        LightPwr[plcar] = 0;
                        lightcar[GetPlayerVehicleID(playerid)] = 0;
                        GetVehicleParamsEx(plcar,engine,lights,alarm,doors,bonnet,boot,objective);
                        SetVehicleParamsEx(plcar,engine,LightPwr[plcar],alarm,doors,bonnet,boot,objective);

                        if (plcar <= MAX_BUYABLE_CARS)
                        {
                            if (CarsInfo[plcar-1][vNeon]) // 56182{
                                DestroyDynamicObject(neons[plcar][0]);
                                DestroyDynamicObject(neons[plcar][1]);
                                neons[plcar][0] = -1;
                                neons[plcar][1] = -1;
                                //SendClientMessage(playerid,COLOR_GREY,"* ?? ????????? ???? ? ????");
                            }
                            //else SendClientMessage(playerid,COLOR_GREY,"* ?? ????????? ????");
                        }
                        //else SendClientMessage(playerid,COLOR_GREY,"* ?? ????????? ????");
                    }
                    else
                    {
                        Lights(plcar, true);
                          LightPwr[plcar] = 1;
                          lightcar[GetPlayerVehicleID(playerid)] = 1;
                          GetVehicleParamsEx(plcar,engine,lights,alarm,doors,bonnet,boot,objective);
                        SetVehicleParamsEx(plcar,engine,LightPwr[plcar],alarm,doors,bonnet,boot,objective);

                          if (plcar <= MAX_BUYABLE_CARS)
                        {
                            if (CarsInfo[plcar-1][vNeon])  //{
                                DestroyDynamicObject(neons[plcar][0]);
                                DestroyDynamicObject(neons[plcar][1]);
                                neons[plcar][0] = CreateDynamicObject(CarsInfo[plcar-1][vNeon],0,0,0,0,0,0);
                                neons[plcar][1] = CreateDynamicObject(CarsInfo[plcar-1][vNeon],0,0,0,0,0,0);
                                new modelS = GetVehicleModel(plcar);
                                AttachDynamicObjectToVehicle(neons[plcar][0], plcar, -1 * NeonPos[modelS-400][0], NeonPos[modelS-400][1], NeonPos[modelS-400][2], 0.0, 0.0, 0.0);
                                AttachDynamicObjectToVehicle(neons[plcar][1], plcar, NeonPos[modelS-400][0], NeonPos[modelS-400][1], NeonPos[modelS-400][2], 0.0, 0.0, 0.0);
                                //SendClientMessage(playerid,COLOR_WHITE,"* ?? ???????? ???? ? ????");
                            }
                            //else SendClientMessage(playerid,COLOR_WHITE,"* ?? ???????? ????");
                        }
                        //else SendClientMessage(playerid,COLOR_WHITE,"* ?? ???????? ????");
                    }
                }
            }

 

Вот от 26314

Спойлер

new bandkiller;
        new bandkill;
        if(PlayerInfo[killerid][pLeader] !=0)
        {
            bandkiller = PlayerInfo[killerid][pLeader];
        }
        else
        {
            bandkiller = PlayerInfo[killerid][pMember];
        }
        if(PlayerInfo[playerid][pLeader] !=0)
        {
            bandkill = PlayerInfo[playerid][pLeader];
        }
        else
        {
            bandkill = PlayerInfo[playerid][pMember];
        }
        if(bandkiller != bandkill)
        {
            if(GangInfo[bandkiller][capture] && GangInfo[bandkill][capture] == 1)
            {
                if(GangInfo[bandkiller][captureid] == GangInfo[bandkill][captureid])
                {
                    GangInfo[bandkiller][score] = GangInfo[bandkiller][score]+1;
                    CaptureUpd(bandkiller);//26314
                }
            }
        }
    }

 

 

Edited by DEST

Заметка от DEST , создано

Большой код оборачивайте еще и под спойлер, как это указано тут.

Share this post


Link to post
Share on other sites

@Рустик по поводу первой ошибки, то переменная plcar принимает значение 0, и поэтому идет обращение по отрицательному индексу в массиве. Найдите в этом коде где объявлена переменная plcar и ей выполнено присваивание какого-нибудь значения (т.е. строку вида 

plcar = ... )

По поводу второй проблемы, скидывайте функцию

CaptureUpd

Share this post


Link to post
Share on other sites
В 03.08.2019 в 18:25, DEST сказал:

@Рустик по поводу первой ошибки, то переменная plcar принимает значение 0, и поэтому идет обращение по отрицательному индексу в массиве. Найдите в этом коде где объявлена переменная plcar и ей выполнено присваивание какого-нибудь значения (т.е. строку вида 

plcar = ... )

По поводу второй проблемы, скидывайте функцию


CaptureUpd

Извените что так долго не отвечал дела были

 

Вот функция
 

stock CaptureUpd(bandkiller)
{
    new SCORE1[10],SCORE2[10];
    tforeach(i)
    {
        if(!gPlayerLogged[i]) continue;
    	if(GangInfo[PlayerInfo[i][pMember]][capture] > 0)
    	{
	        if(GangInfo[bandkiller][gangnumber] == 1)
	        {
	            format(SCORE1, sizeof(SCORE1), "%d", GangInfo[bandkiller][score]);
	            PlayerTextDrawSetString(i,capture_PTD[i][13], SCORE1);
	        }
	        else
	        {
	            format(SCORE2, sizeof(SCORE2), "%d", GangInfo[bandkiller][score]);
	            PlayerTextDrawSetString(i,capture_PTD[i][14], SCORE2);
	       	}
    	}
    }
}

 

Share this post


Link to post
Share on other sites

@Рустик как объявлена capture_PTD

Share this post


Link to post
Share on other sites
2 часа назад, DEST сказал:

@Рустик как объявлена capture_PTD

new PlayerText:capture_PTD[MAX_PLAYERS][16];

Edited by Рустик

Share this post


Link to post
Share on other sites

@Рустик А GangInfo? 

Share this post


Link to post
Share on other sites
2 часа назад, DEST сказал:

@Рустик А GangInfo? 

#define MAX_GANGS 20
enum Ganginfa{
    capture,
    score,
    captureid,
    gangnumber}
new GangInfo[MAX_GANGS][Ganginfa];
#define MAX_GZONE 120

 

Edited by Рустик

Share this post


Link to post
Share on other sites

@Рустик ID фракции игрока равен 23, а количество ячеек массива под информацию GangInfo составляет всего 20. Найдите в моде места, где идет обращение по индексу GangInfo и скиньте сюда. 

Share this post


Link to post
Share on other sites
2 часа назад, DEST сказал:

@Рустик ID фракции игрока равен 23, а количество ячеек массива под информацию GangInfo составляет всего 20. Найдите в моде места, где идет обращение по индексу GangInfo и скиньте сюда. 

if(GangInfo[faction][capture] == 1

Share this post


Link to post
Share on other sites
В 13.08.2019 в 20:08, Рустик сказал:

if(GangInfo[PlayerInfo[i][pMember]][capture] > 0)

это условие замените следующим и ошибка пропадет

if(PlayerInfo[i][pMember] < MAX_GANGS && GangInfo[PlayerInfo[i][pMember]][capture] > 0)

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Guest Zakharchik
      By Guest Zakharchik
      Здравствуйте купив Launcher Addon 1.3 ща 400р я использовал его в тестовом моде, но через день решил сменить его, на тестовом моде работало на данном моде не работает Supreme 1.9