Jump to content
  • 0

putin ajutor


jupanu

Question

(17901) : error 047: array sizes do not match, or destination array is too small
(17911) : error 047: array sizes do not match, or destination array is too small
(18024) : error 047: array sizes do not match, or destination array is too small
(18044) : error 047: array sizes do not match, or destination array is too small
(18051) : error 047: array sizes do not match, or destination array is too small
(18112) : error 047: array sizes do not match, or destination array is too small
public LoadTimes(playerid,timemode,tmp[])
{
	new temprace[256], idx;
	format(temprace,sizeof(temprace),"%s.yr",tmp);
    if(strlen(tmp))
    {
		if(!fexist(temprace))
		{
			format(ystring,sizeof(ystring),"Race \'%s\' doesn't exist!",tmp);
			SendClientMessage(playerid,COLOR_YELLOW,ystring);
			return 1;
		}
		else
		{
			new File:f, templine[256], TBuilder[MAX_PLAYER_NAME], TempLapper[MAX_PLAYER_NAME], TempLap;
			idx=0;
			f = fopen(temprace, io_read);
			fread(f,templine,sizeof(templine)); // Read header-line
			if(templine[0] == 'Y') //Checking if the racefile is v0.2+
			{
				new fileversion;
			    strtok(templine,idx); // read off YRACE
				fileversion = strval(strtok(templine,idx)); // read off the file version
				if(fileversion > RACEFILE_VERSION) // Check if the race is made with a newer version of the racefile format
				{
				    format(ystring,sizeof(ystring),"Race \'%s\' is created with a newer version of YRACE, unable to load.",tmp);
				    SendClientMessage(playerid,COLOR_RED,ystring);
				    return 1;
				}
linia 17901:				TBuilder=strtok(templine,idx); // read off RACEBUILDER
				fread(f,templine,sizeof(templine)); // read off best race times
				if(timemode ==1) fread(f,templine,sizeof(templine)); // read off best lap times
				idx=0;
				if(timemode == 0) format(ystring,sizeof(ystring),"%s by %s - Best race times:",tmp,TBuilder);
				else if(timemode == 1) format(ystring,sizeof(ystring),"%s by %s - Best laps:",tmp,TBuilder);
				else return 1;
				SendClientMessage(playerid,COLOR_GREEN,ystring);
				for(new i=0;i<5;i++)
				{
linia 17911:			    TempLapper=strtok(templine,idx);
				    TempLap=strval(strtok(templine,idx));
					if(TempLap == 0)
					{
					    format(ystring,sizeof(ystring),"%d. None yet",i+1);
						i=6;
					}
					else format(ystring,sizeof(ystring),"%d. %s - %s",i+1,BeHuman(TempLap),TempLapper);
					SendClientMessage(playerid,COLOR_GREEN,ystring);
				}
				return 1;
			}
			else
			{
				format(ystring,sizeof(ystring),"Race \'%s\' doesn't contain any time data.",tmp);
				SendClientMessage(playerid,COLOR_GREEN,ystring);
				return 1;
			}
		}
    }
	return 0;
}
new CBuilder[MAX_PLAYER_NAME], CFile[256], CRaceName[256];
public LoadRace(tmp[])
{
	new race_name[256],templine[256];
	format(CRaceName,sizeof(CRaceName), "%s",tmp);
	format(race_name,sizeof(race_name), "%s.yr",tmp);
	if(!fexist(race_name)) return -1; // File doesn't exist
	CFile=race_name;
    LCurrentCheckpoint=-1; RLenght=0; RLenght=0;
	new File:f, i;
	f = fopen(race_name, io_read);
	fread(f,templine,sizeof(templine));
	if(templine[0] == 'Y') //Checking if the racefile is v0.2+
	{
		new fileversion;
	    strtok(templine,i); // read off YRACE
		fileversion = strval(strtok(templine,i)); // read off the file version
		if(fileversion > RACEFILE_VERSION) return -2; // Check if the race is made with a newer version of the racefile format
linia 18024:	CBuilder=strtok(templine,i); // read off RACEBUILDER
		ORacemode = strval(strtok(templine,i)); // read off racemode
		ORacelaps = strval(strtok(templine,i)); // read off amount of laps
		if(fileversion > 1)
		{
			Airrace = strval(strtok(templine,i));   // read off airrace
			CPsize = floatstr(strtok(templine,i));    // read off CP size
		}
		else // v1 file format, set to default
		{
			Airrace = 0;
			CPsize = 8.0;
		}
		OAirrace = Airrace;
		OCPsize = CPsize;
		Racemode=ORacemode; Racelaps=ORacelaps; //Allows changing the modes, but disables highscores if they've been changed.
		fread(f,templine,sizeof(templine)); // read off best race times
		i=0;
		for(new j=0;j<5;j++)
		{
linia 18044:       TopRacers[j]=strtok(templine,i);
		    TopRacerTimes[j]=strval(strtok(templine,i));
		}
		fread(f,templine,sizeof(templine)); // read off best lap times
		i=0;
		for(new j=0;j<5;j++)
		{
		    TopLappers[j]=strtok(templine,i);
		    TopLapTimes[j]=strval(strtok(templine,i));
		}
	}
	else //Otherwise add the lines as checkpoints, the file is made with v0.1 (or older) version of the script.
	{
		LCurrentCheckpoint++;
		RaceCheckpoints[LCurrentCheckpoint][0] = floatstr(strtok(templine,i));
		RaceCheckpoints[LCurrentCheckpoint][1] = floatstr(strtok(templine,i));
		RaceCheckpoints[LCurrentCheckpoint][2] = floatstr(strtok(templine,i));
		Racemode=0; ORacemode=0; Racelaps=0; ORacelaps=0;   //Enables converting old files to new versions
		CPsize = 8.0; Airrace = 0;  			// v2 additions
		OCPsize = CPsize; OAirrace = Airrace;   // v2 additions
		CBuilder="UNKNOWN";
		for(new j;j<5;j++)
		{
		    TopLappers[j]="A"; TopLapTimes[j]=0; TopRacers[j]="A"; TopRacerTimes[j]=0;
		}
	}
	while(fread(f,templine,sizeof(templine),false))
	{
		LCurrentCheckpoint++;
		i=0;
		RaceCheckpoints[LCurrentCheckpoint][0] = floatstr(strtok(templine,i));
		RaceCheckpoints[LCurrentCheckpoint][1] = floatstr(strtok(templine,i));
		RaceCheckpoints[LCurrentCheckpoint][2] = floatstr(strtok(templine,i));
		if(LCurrentCheckpoint >= 1)
		{
		    RLenght+=Distance(RaceCheckpoints[LCurrentCheckpoint][0],RaceCheckpoints[LCurrentCheckpoint][1],
								RaceCheckpoints[LCurrentCheckpoint][2],RaceCheckpoints[LCurrentCheckpoint-1][0],
								RaceCheckpoints[LCurrentCheckpoint-1][1],RaceCheckpoints[LCurrentCheckpoint-1][2]);
		}
	}
	LLenght = RLenght + Distance(RaceCheckpoints[LCurrentCheckpoint][0],RaceCheckpoints[LCurrentCheckpoint][1],
								RaceCheckpoints[LCurrentCheckpoint][2],RaceCheckpoints[0][0],RaceCheckpoints[0][1],
								RaceCheckpoints[0][2]);
	fclose(f);
	return 1;
}

  • www.LcsNet.org
  • 91.233.106.13:7777
  • www.Joc-Miniclip.info

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

Sub toate #include pune

#undef strtok
iar mai jos in script pune
strtok(const stringstrtok[], &index)
{
	new length = strlen(stringstrtok);
	while ((index < length) && (stringstrtok[index] <= ' ')) { index++; }

	new offset = index, result[20];
	while ((index < length) && (stringstrtok[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = stringstrtok[index];
		index++;
	}
	result[index - offset] = EOS;
	return result;
}

Link to comment
Share on other sites

C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(84) : error 017: undefined symbol "strtok"
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(84) : error 010: invalid function or declaration
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(1322) : error 025: function heading differs from prototype
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(17900) : error 047: array sizes do not match, or destination array is too small
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(17910) : error 047: array sizes do not match, or destination array is too small
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18023) : error 047: array sizes do not match, or destination array is too small
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18043) : error 047: array sizes do not match, or destination array is too small
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18050) : error 047: array sizes do not match, or destination array is too small
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18132) : error 025: function heading differs from prototype
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18133) : error 021: symbol already defined: "strtok"
C:\DOCUME~1\G3@N!N!\Desktop\STUNTE~1\GAMEMO~1\lvdm.pwn(18144) : error 047: array sizes do not match, or destination array is too small
linia 84: #undef strtok
linia 18132:strtok(const stringstrtok[], &index)
linia 18133:{
	new length = strlen(stringstrtok);
	while ((index < length) && (stringstrtok[index] <= ' ')) { index++; }

	new offset = index, result[20];
	while ((index < length) && (stringstrtok[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = stringstrtok[index];
		index++;
	}
	result[index - offset] = EOS;
linia  18144:	return result;
}

  • www.LcsNet.org
  • 91.233.106.13:7777
  • www.Joc-Miniclip.info

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.