Help me with this error
#1

Код:
*/
#include <a_samp>
//#include <time>
#include <YSI/y_ini>
//-------------------------------------------------------------------------------------------------------//
#define RED 0xFF0000FF
#define BLUE 0x00FFFFFF

new isInExam[MAX_PLAYERS];
new examCar[3][2] = {{0,-1},{0,-1},{0,-1}};
new Player[MAX_PLAYERS];
new examCarPlayer[MAX_PLAYERS];
new info;
// The Checkpoints coordinates
new Float:checkX[10] = {1008.1208,1007.3864,1007.7344,1567.6937,1727.3376,1644.3011,1344.1215,1074.1572,1078.9534,1166.2103};
new Float:checkY[10] = {1377.3363,1500.0265,1786.8397,1782.9592,1490.8068,1185.8735,1192.0806,1193.2159,1376.3060,1376.3862};
new Float:checkZ[10] = {10.3701,10.2369,10.2882,10.2378,10.2372,10.2371,10.2367,10.2367,10.2326,10.2274};
new checkpoint[MAX_PLAYERS];
new bool:ejectFromVeh = false;
new Float:oldHP, bool:allowHPchange = false, bool:timeChanged = false;

new dialog;

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" Blank filterscript");
	print("--------------------------------------\n");
	info = CreatePickup(1239,1,1172.9979,1348.3250,10.9219,-1); //  Exam Info pickup
    examCar[0][0] = AddStaticVehicle(526,1413.8760,-1719.1808,13.2740,267.4485,0,0); // ExamCar1
	examCar[1][0] = AddStaticVehicle(526,1413.8760,-1715.6440,13.2523,267.3694,0,0); // ExamCar2
	examCar[2][0] = AddStaticVehicle(526,1413.8760,-1712.1121,13.2740,268.0577,0,0); // ExamCar3
	return 1;
}

public OnPlayerConnect(playerid)
{
	if(!IsPlayerNPC(playerid))
	GetPlayerDrivingLicense(playerid);
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
	SavePlayerLicense(playerid);
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
	if (strcmp("/exam", cmdtext, true) == 0)
	{
		if(Player[playerid]==0)
		{
			if(!isInExam[playerid])
			{
				if(GetPlayerMoney(playerid) >= 3000)
				{
					for(new i=0; i<3; i++)
					{
						if(examCar[i][1]==-1)
						{
							isInExam[playerid]=1; examCar[i][1]=1; examCarPlayer[playerid]=examCar[i][0]; 
							SetVehiclePos(examCar[i][0],1008.1208,1377.3363,10.3701);
							GetVehicleHealth(examCar[i][0], oldHP);
							PutPlayerInVehicle(playerid,examCar[i][0],0);
							SetPlayerCheckpoint(playerid,checkX[0],checkY[0],checkZ[0],8.0);
							GameTextForPlayer(playerid,"~r~Drive Safe!",10000,6);
							return 1;
						}
						if(i==2)
							SendClientMessage(playerid,RED,"There is no car available at this moment. Try again later");
					}
				}
				else SendClientMessage(playerid,RED,"You don't have enough money! You need at least 3000$");
			}
			else SendClientMessage(playerid,RED,"You can't do more than 1 exam at the same time!");
		}
		else SendClientMessage(playerid,BLUE,"You already have a driver license");
		return 1;
	}
	return 0;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(Player[playerid]==0 && vehicleid!=examCarPlayer[playerid])
    {
    SendClientMessage(playerid,RED,"You can't drive this vehicle because you don't have a driver license!");
    ejectFromVeh = true;
	}
	return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	if(newstate == PLAYER_STATE_DRIVER)
	{
		if(ejectFromVeh)
		{
			RemovePlayerFromVehicle(playerid);
			ejectFromVeh = false;
		}
	}
	return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
	new veh;
	if(isInExam[playerid])
	{
		if(IsPlayerInVehicle(playerid,examCarPlayer[playerid]))
		{
			DisablePlayerCheckpoint(playerid);
			checkpoint[playerid]++;
			if(checkpoint[playerid]>10)
			{
				if(timeChanged)
				{
					new h,m,s;
					gettime(h,m,s); SetPlayerTime(playerid, h, m); timeChanged = false;
				}
				veh = GetPlayerVehicleID(playerid);
				RemovePlayerFromVehicle(playerid);
				SetVehicleToRespawn(veh);
				GivePlayerMoney(playerid,-3000);
				GameTextForPlayer(playerid,"You have ~b~passed ~w~the exam",10000,5);
				SetPlayerWeather(playerid, 1);
				isInExam[playerid]=0; checkpoint[playerid]=0;
				for(new i=0; i<3; i++)
				{
					if(examCar[i][0]==veh)
					{
						examCar[i][1]=-1;
						break;
					}
				}
				Player[playerid]=1; examCarPlayer[playerid]=0;
			}
			else if(checkpoint[playerid]==9)
			{
				SendClientMessage(playerid,BLUE,"Simulating Storm Conditions - Your car may slide");
				SetPlayerWeather(playerid, 8);
				SetPlayerCheckpoint(playerid,checkX[checkpoint[playerid]],checkY[checkpoint[playerid]],checkZ[checkpoint[playerid]],8.0);
			}
			else if(checkpoint[playerid]==8)
			{
				SendClientMessage(playerid,BLUE,"Simulating Sandstorm Conditions - Low Visibility");
				SetPlayerWeather(playerid, 19);
				SetPlayerCheckpoint(playerid,checkX[checkpoint[playerid]],checkY[checkpoint[playerid]],checkZ[checkpoint[playerid]],8.0);
			}
			else if(checkpoint[playerid]==7)
			{
				SendClientMessage(playerid,BLUE,"Simulating Night Conditions - Foggy Weather"); timeChanged = true;
				SetPlayerTime(playerid,0,0);
				SetPlayerWeather(playerid, 9);
				SetPlayerCheckpoint(playerid,checkX[checkpoint[playerid]],checkY[checkpoint[playerid]],checkZ[checkpoint[playerid]],8.0);
			}
			else SetPlayerCheckpoint(playerid,checkX[checkpoint[playerid]],checkY[checkpoint[playerid]],checkZ[checkpoint[playerid]],8.0);
		}
		else GameTextForPlayer(playerid,"~r~You are not in your exam car!",10000,5);
	}
	else DisablePlayerCheckpoint(playerid);
	return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
	if(pickupid==info)
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_LIST,"Shop List","PracticalTest\n Disagree","Select","Exit");
	if(pickupid==dialog)
	GameTextForPlayer(playerid,"Type ~r~/exam ~w~to get started",5000,5);
	return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
	for(new i=0; i<MAX_PLAYERS; i++)
	{
		if(isInExam[i] && examCarPlayer[i]==vehicleid)
		{
			if(timeChanged)
			{
				new h,m,s;
				#pragma unused s
				gettime(h,m,s); SetPlayerTime(i, h, m); timeChanged = false;
			}
			GameTextForPlayer(i, "~r~You have failed!", 10000, 5);
			SetVehicleToRespawn(vehicleid);
			isInExam[i]=0; checkpoint[i]=0; examCarPlayer[i]=0;
			for(new j=0; j<3; j++)
			{
				if(examCar[j][0]==vehicleid)
				{
					examCar[j][1]=-1;
					break;
				}
			}
			SetPlayerWeather(i, 1);
			DisablePlayerCheckpoint(i);
			break;
		}
	}
	return 1;
}

public OnVehicleRespray(playerid,vehicleid,color1,color2)
{
	if(isInExam[playerid])
	{
		if(timeChanged)
		{
			new h,m,s;
			gettime(h,m,s); SetPlayerTime(playerid, h, m); timeChanged = false;
		}
		SendClientMessage(playerid,BLUE,"NO CHEATING MOTHERFUCKER!");
		GameTextForPlayer(playerid, "~r~You have failed!", 10000, 5);
		isInExam[playerid]=0; checkpoint[playerid]=0; examCarPlayer[playerid]=0;
		for(new i=0; i<3; i++)
		{
			if(examCar[i][0]==vehicleid)
			{
				examCar[i][1]=-1;
				break;
			}
		}
		SetPlayerWeather(playerid, 1);
		RemovePlayerFromVehicle(playerid); SetVehicleToRespawn(vehicleid);
		DisablePlayerCheckpoint(playerid);
	}
	return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
	if(isInExam[playerid])
	{
		if(timeChanged)
		{
			new h,m,s;
			gettime(h,m,s); SetPlayerTime(playerid, h, m); timeChanged = false;
		}
		SendClientMessage(playerid,BLUE,"Don't fuck the exam car!");
		GameTextForPlayer(playerid, "~r~You have failed!", 5000, 5);
		isInExam[playerid]=0; checkpoint[playerid]=0; examCarPlayer[playerid]=0;
		for(new i=0; i<3; i++)
		{
			if(examCar[i][0]==vehicleid)
			{
				examCar[i][1]=-1;
				break;
			}
		}
		SetPlayerWeather(playerid, 1);
		RemovePlayerFromVehicle(playerid); RemoveVehicleComponent(vehicleid, componentid);
		SetVehicleToRespawn(vehicleid);
		DisablePlayerCheckpoint(playerid);
	}
	return 1;
}

public OnVehicleDamageStatusUpdate(vehicleid, playerid)
{
	new Float:health; 
	GetVehicleHealth(vehicleid,health);
	for(new i=0; i<MAX_PLAYERS; i++)
	{
		if(isInExam[i] && examCarPlayer[i]==vehicleid && playerid!=i)
		{
			FixCar(vehicleid); SetVehicleHealth(vehicleid, oldHP); allowHPchange = true;
			SendClientMessage(playerid,BLUE,"Don't bother, it's bulletproof :))");
			break;
		}
	}
    oldHP = health;
	return 1;
}

public OnPlayerUpdate(playerid)
{
	if(IsPlayerInVehicle(playerid, examCarPlayer[playerid]) && isInExam[playerid])
	{
		new Float:health;
		GetVehicleHealth(examCarPlayer[playerid], health);
		if(health > oldHP && allowHPchange==false)
		{
			if(timeChanged)
			{
				new h,m,s; 
				gettime(h,m,s); SetPlayerTime(playerid, h, m); timeChanged = false;
			}
			SendClientMessage(playerid,BLUE,"NO CHEATING MOTHERFUCKER!");
			GameTextForPlayer(playerid, "~r~You have failed!", 10000, 5);
			isInExam[playerid]=0; checkpoint[playerid]=0; 
			for(new i=0; i<3; i++)
			{
				if(examCar[i][0]==examCarPlayer[playerid])
				{
					examCar[i][1]=-1;
					break;
				}
			}
			SetPlayerWeather(playerid, 1);
			RemovePlayerFromVehicle(playerid); SetVehicleToRespawn(examCarPlayer[playerid]);
			DisablePlayerCheckpoint(playerid);
			examCarPlayer[playerid]=0;
		}
		else if(allowHPchange) allowHPchange = false;
	}
	return 1;
}


forward LoadLicense(playerid, name[], value[]);
public LoadLicense(playerid, name[], value[])
{
	INI_Int("DrivingLicense", Player[playerid]);
	return 0;
}

stock GetPlayerDrivingLicense(playerid)
{
	new name[MAX_PLAYER_NAME],string[256];
	GetPlayerName(playerid,name,sizeof(name));
	format(string,256,"Players/%s.ini",name);
	INI_ParseFile(string,"LoadLicense", .bExtra=true, .extra=playerid);
}

stock SavePlayerLicense(playerid)
{
	new INI:player;
	new name[MAX_PLAYER_NAME],string[256];
	GetPlayerName(playerid,name,sizeof(name));
	format(string,256,"Players/%s.ini",name);
	player = INI_Open(string);
	INI_WriteInt(player, "DrivingLicense", Player[playerid]);
	INI_Close(player);
}

stock SetPlayerMoney(playerid, money)
{
    ResetPlayerMoney(playerid); 
    GivePlayerMoney(playerid, money);
}

FixCar(vehicleid)
{
	new panels, doors, lights, tires;
	GetVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
    tires = encode_tires(0, 0, 0, 0); 
    panels = encode_panels(0, 0, 0, 0, 0, 0, 0); 
    doors = encode_doors(0, 0, 0, 0, 0, 0); 
    lights = encode_lights(0, 0, 0, 0); 
    UpdateVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
}

encode_tires(tire1, tire2, tire3, tire4) return tire1 | (tire2 << 1) | (tire3 << 2) | (tire4 << 3);
encode_panels(flp, frp, rlp, rrp, windshield, front_bumper, rear_bumper)
{
	return flp | (frp << 4) | (rlp << 8) | (rrp << 12) | (windshield << 16) | (front_bumper << 20) | (rear_bumper << 24);
}
encode_doors(bonnet, boot, driver_door, passenger_door, behind_driver_door, behind_passenger_door)
{
	#pragma unused behind_driver_door
    #pragma unused behind_passenger_door
	return bonnet | (boot << 8) | (driver_door << 16) | (passenger_door << 24);
}
encode_lights(light1, light2, light3, light4)
{
    return light1 | (light2 << 1) | (light3 << 2) | (light4 << 3);
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    {
if(dialogid==1 && response==1)
{
switch(listitem)
    {
        case 0:
        {
   	dialog = CreatePickup(1239,6,1160.1805,1394.2655,5.8203,-1);
	SetPlayerCheckpoint(playerid,1160.1805,1394.2655,5.8203,6.0);
	}
	case 1:
	SendClientMessage(playerid,BLUE,"Okay, Mr.Stupid");
	}
}
return 0;
}
in this script, i got this error help me with it
Error name:
C:\Documents and Settings\Mostwanted\Desktop\samp03e_svr_win32\filt erscripts\Drivingschool1.pwn(425) : error 030: compound statement not closed at the end of file (started at line 403)
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


1 Error.
Reply
#2

Which line is 403? and which is 425?
Reply
#3

I just fixed it myself, Thanks, I found the mistake.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)