[Ajuda] Debug na callback
#1

Fala rapaziada!
A um tempo venho percebendo esse debug no Log, nгo consegui identificar o erro pode ajudar?

Debug no Log:
Код:
[13:54:21] [debug] Run time error 4: "Array index out of bounds"
[13:54:21] [debug]  Accessing element at negative index -1
[13:54:21] [debug] AMX backtrace:
[13:54:21] [debug] #0 0014bdec in public putInVehicle (5) from NFS.amx
Quando й usado:
Код:
SetTimerEx("putInVehicle", 1500, 0, "i", x);
Callback:
Код:
callBack:: putInVehicle(playerid){

	if(PlayerInfo[playerid][pInCorrida]){

	    PutPlayerInVehicle(playerid, PlayerInfo[playerid][pCarroId], 0);

        PlayerInfo[playerid][pActualCarro] = PlayerInfo[playerid][pCarroId];

	   	new Float:v[3];
	    GetVehiclePos(PlayerInfo[playerid][pCarroId],v[0],v[1],v[2]);
	    SetVehiclePos(PlayerInfo[playerid][pCarroId],v[0],v[1],v[2]);

		if (PlayerInfo[playerid][pCarroId] != INVALID_VEHICLE_ID) {
		    setTunning(playerid);
		    
		    new corridaid = PlayerInfo[playerid][pInCorrida];

		    if(corridaInfo[corridaid][rTipo] == 3 && corridaInfo[corridaid][rLadrao] == playerid){

		        SetVehicleHealth(PlayerInfo[playerid][pCarroId], 250.0);
				corridaInfo[corridaid][rTempo] = 0;
		    }
		}
	}
}
Desde-jб agradeзo
Reply
#2

Run time error 4: "Array index out of bounds"

Este erro significa que vocк estб tentando acessar um index que nгo existe dentro de uma matriz/vetor.

Por exemplo:

Suponha que vocк tem a variбvel PlayerInfo[100][100]

e vocк estб tentando acessar PlayerInfo[101][101];


Um index que nгo existe no range da matriz criada, que vai de 0 atй 99.



Faz um debug nesse seu cуdigo, usa print mesmo, e tenta ver se quando tu chama essa funзгo, tu passa algum valor que nгo existe na matriz, negativo ou positivo.
Reply
#3

Quote:
Originally Posted by ipsNan
Посмотреть сообщение
Run time error 4: "Array index out of bounds"

Este erro significa que vocк estб tentando acessar um index que nгo existe dentro de uma matriz/vetor.

Por exemplo:

Suponha que vocк tem a variбvel PlayerInfo[100][100]

e vocк estб tentando acessar PlayerInfo[101][101];


Um index que nгo existe no range da matriz criada, que vai de 0 atй 99.



Faz um debug nesse seu cуdigo, usa print mesmo, e tenta ver se quando tu chama essa funзгo, tu passa algum valor que nгo existe na matriz, negativo ou positivo.
Obrigado pelo retorno ipsNan!

#Edit
Olha, andei estudando sobre isso de acordo com o cуdigo ele identifica que o playerid (Que representa o "X" no SetTimeEx citado acima) й -1, mas queria saber porque isso acontece. Jб que nгo existe ID -1.
Reply
#4

Pode ser que nessa parte do cуdigo playerid assuma -1

Код:
SetTimerEx("putInVehicle", 1500, 0, "i", x);
Reply
#5

Quote:
Originally Posted by ViniBorn
Посмотреть сообщение
Pode ser que nessa parte do cуdigo playerid assuma -1

Код:
SetTimerEx("putInVehicle", 1500, 0, "i", x);
Olб Vini!

Sim, й nessa parte porйm como devo resolver nesse caso?
Reply
#6

Provavelmente o time tб jogando um playerid inexistente na sua call back, posta o cуdigo completo de onde o settimer й executado
Reply
#7

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Provavelmente o time tб jogando um playerid inexistente na sua call back, posta o cуdigo completo de onde o settimer й executado
Segue:
Код:
	        new Float:v[3];
	        GetVehiclePos(PlayerInfo[x][pCarroId],v[0],v[1],v[2]);
	        
	        new corridaid = PlayerInfo[x][pInCorrida];
	        
	        // Checar se o carro estб abaixo do nнvel do mar
			if (v[2] <= 0.1 && (corridaid != -1 && corridaInfo[corridaid][rTipo] != 4)){

					SetPVarInt(x, "varTeleport", gettime() + 10);
			
			    // Setar o carro a -150 metros abaixo do mar
			    // Ele volta automaticamente pra superfieie
			    
		        	SetVehiclePos(PlayerInfo[x][pCarroId],v[0],v[1],-150.0);
		        	PutPlayerInVehicle(x, PlayerInfo[x][pCarroId], 0);
		        	GetPlayerPos(x, PlayerInfo[x][pCheckPos][0], PlayerInfo[x][pCheckPos][1], PlayerInfo[x][pCheckPos][2]);

		        	SetTimerEx("putInVehicle", 1500, 0, "i", x);
			}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)