Apply Car Damage & Car locations script questions
#5

Hmmm, i just tested load vechiles_list, but no cars have been loaded. What is wrong here?
Код:
#include <a_samp>
#include <file>

#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA

new total_vehicles_from_files=0;

main()
{
	print( " " );
	print( " [================================] "	);
	print( " | GTA San Andreas Virtual Life | "	);
	print( " | ---------------------------- | "	);
	print( " |  By Martynas aka Walrus  | "	);
	print( " | ---------------------------- | "	);
	print( " |    Version 1.00    | "	);
	print( " [================================] "	);
	print( " " );
}

public OnGameModeInit()
{
	SetGameModeText("San Andreas Virtual Life");
	AddPlayerClass(103, 747.384, -525.5044, 15, 0, 0, 50000, 38, 50000, 32, 50000);
	total_vehicles_from_files += LoadStaticVehiclesFromFile("vehiclelists/red_country.txt");
	return 1;
}

LoadStaticVehiclesFromFile(const filename[])
{
	new File:file_ptr;
	new line[256];
	new var_from_line[64];
	new vehicletype;
	new Float:SpawnX;
	new Float:SpawnY;
	new Float:SpawnZ;
	new Float:SpawnRot;
	new Color1, Color2;
	new index;
	new vehicles_loaded;

	file_ptr = fopen(filename,filemode:io_read);
	if(!file_ptr) return 0;

	vehicles_loaded = 0;

	while(fread(file_ptr,line,256) > 0)
	{
	  index = 0;

	  // Read type
 		index = token_by_delim(line,var_from_line,',',index);
 		if(index == (-1)) continue;
 		vehicletype = strval(var_from_line);
 		if(vehicletype < 400 || vehicletype > 611) continue;

 		// Read X, Y, Z, Rotation
 		index = token_by_delim(line,var_from_line,',',index+1);
 		if(index == (-1)) continue;
 		SpawnX = floatstr(var_from_line);

 		index = token_by_delim(line,var_from_line,',',index+1);
 		if(index == (-1)) continue;
 		SpawnY = floatstr(var_from_line);

 		index = token_by_delim(line,var_from_line,',',index+1);
 		if(index == (-1)) continue;
 		SpawnZ = floatstr(var_from_line);

 		index = token_by_delim(line,var_from_line,',',index+1);
 		if(index == (-1)) continue;
 		SpawnRot = floatstr(var_from_line);

 		// Read Color1, Color2
 		index = token_by_delim(line,var_from_line,',',index+1);
 		if(index == (-1)) continue;
 		Color1 = strval(var_from_line);

 		index = token_by_delim(line,var_from_line,';',index+1);
 		Color2 = strval(var_from_line);

 		//printf("%d|%f|%f|%f|%f|%d|%d",vehicletype,
 		  //SpawnX,SpawnY,SpawnZ,SpawnRot,Color1,Color2);

		AddStaticVehicleEx(vehicletype,SpawnX,SpawnY,SpawnZ,SpawnRot,Color1,Color2,-1);

		vehicles_loaded++;
	}

	fclose(file_ptr);
	printf("Loaded %d vehicles from: %s",vehicles_loaded,filename);
	return vehicles_loaded;
}


// Tokenise by a delimiter
// Return string and index of the end determined by the
// provided delimiter in delim
token_by_delim(const string[], return_str[], delim, start_index)
{
	new x=0;
	while(string[start_index] != EOS && string[start_index] != delim) {
	  return_str[x] = string[start_index];
	  x++;
	  start_index++;
	}
	return_str[x] = EOS;
	if(string[start_index] == EOS) start_index = (-1);
	return start_index;
}
Reply


Messages In This Thread
Apply Car Damage & Car locations script questions - by walrus - 20.02.2009, 09:44
Re: Apply Car Damage & Car locations script questions - by Donny_k - 20.02.2009, 09:46
Re: Apply Car Damage & Car locations script questions - by walrus - 20.02.2009, 09:50
Re: Apply Car Damage & Car locations script questions - by ReFuSeR - 20.02.2009, 09:52
Re: Apply Car Damage & Car locations script questions - by walrus - 20.02.2009, 09:59

Forum Jump:


Users browsing this thread: 2 Guest(s)