SA-MP Forums Archive
Array must be indexed - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Array must be indexed (/showthread.php?tid=447921)



Array must be indexed - Sellize - 02.07.2013

Yeah so these errors occur
Код:
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1054) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1058) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1059) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1062) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1066) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1067) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1070) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1074) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1075) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1078) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1082) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1083) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1086) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1090) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1091) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1094) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1098) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1099) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1102) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1106) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1107) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1110) : error 033: array must be indexed (variable "color")
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1114) : warning 213: tag mismatch
C:\Users\x3990.003\Desktop\Server\gamemodes\grandlarc.pwn(1115) : warning 213: tag mismatch
With the following code

Код:
COMMAND:vehtag(playerid, params[])//////////////////////////////////////////////////////////////////////////////////////////////////////////
{
    if(PlayerInfo[playerid][pVip] < 2)
	{
 		SendClientMessage(playerid, COLOR_GREY, "You must be a level 2 vip to do this.");
	}
	else
	{
	    if(IsPlayerInAnyVehicle(playerid) == 1)
	    {
	        new tag[40];
	        new color[10];
	        if(sscanf(params, "s[10]s[40]", color ,tag)) return SendClientMessage(playerid, COLOR_GREY, "USAGE: /vehtag [COLOR] [TEXT] (Example: /vehtag red This is my vehicle tag)");
	        if(color == "red")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_RED, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_GOLD, "You attached a red vehicle tag to your vehicle.");
	        }
	        else if(color == "blue")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_RED, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a blue vehicle tag to your vehicle.");
	        }
	        else if(color == "pink")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_PINK, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a pink vehicle tag to your vehicle.");
	        }
	        else if(color == "green")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_GREEN, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a green vehicle tag to your vehicle.");
	        }
	        else if(color == "purple")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_PURPLE, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a purple vehicle tag to your vehicle.");
	        }
	        else if(color == "yellow")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_YELLOW, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a yellow vehicle tag to your vehicle.");
	        }
	        else if(color == "white")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_WHITE, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a white vehicle tag to your vehicle.");
	        }
	        else if(color == "black")
	        {
	            new car;
	            car = GetPlayerVehicleID(playerid);
	            PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_BLACK, 0.0, 0.0, 0.0, 20, 0, 0);
				Attach3DTextLabelToVehicle(PlayerInfo[playerid][pVehTag], car, 0.0, 0.0, 0.0);
				SendClientMessage(playerid, COLOR_BLUE, "You attached a black vehicle tag to your vehicle.");
	        }
	        else
	        {
	            SendClientMessage(playerid, COLOR_GREY, "Unknown color.");
	        }
	    }
	    else
	    {
	        SendClientMessage(playerid, COLOR_GREY, "You need to be in a vehicle to do this.");
	    }
	}
	return 1;
}



Re: Array must be indexed - Scottas - 02.07.2013

you can't compare strings like this, you need to use strcmp function for that


Re: Array must be indexed - Sellize - 02.07.2013

Okay now I have this http://pastebin.com/yp79geGg

but im still getting tag mismatch at this line "PlayerInfo[playerid][pVehTag] = Create3DTextLabel(tag, COLOR_PURPLE, 0.0, 0.0, 0.0, 20, 0, 0);"


Re: Array must be indexed - Scottas - 02.07.2013

pVehTag should have Text3D tag in declaration