SA-MP Forums Archive
Help with vehicleid - 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: Help with vehicleid (/showthread.php?tid=671098)



Help with vehicleid - ImTobi - 09.12.2019

Code:
for(new i=0; i<sizeof(KraftstoffCars); i++)
		{
			if(vID == KraftstoffCars[i][kID])
			{
				if(GetVehicleModel(GetVehicleTrailer(vID)) == 584)
				{
					tInfo[tID[playerid]][tFuelStand] = 100;
					SendClientMessage(playerid, COLOR_YELLOW, "You filled the gas pump.");
					GameTextForPlayer(playerid, "~g~PAYDAY +1500 $", 2000, 6);
					pInfo[playerid][payday] += 1500;
					return 1;
				}
				return SendClientMessage(playerid, COLOR_RED, "Your Truck doesn't have the right Trailer.");
			}
		    return SendClientMessage(playerid, COLOR_RED, "You are not sitting in an Job-Truck");
		}
My question is, how do i make it, so when i am not in an Job Tuck, i am getting a message, that i am not in a job truck? For me it just says it for every other truck, but the first one ist working


Re: Help with vehicleid - NaS - 09.12.2019

Instead of putting the second message (and return) into the loop, you must move it outside of the loop, otherwise it will execute at the first iteration where the player is not in the correct truck (when you have for example 10 trucks, this might be the case for the first 9 iterations - this is why only the first truck works).

So only if the loop has finished completely and no truck was the one the player is driving, it should send the message saying the player isn't in any job truck.


Re: Help with vehicleid - ImTobi - 09.12.2019

Quote:
Originally Posted by NaS
View Post
Instead of putting the second message (and return) into the loop, you must move it outside of the loop, otherwise it will execute at the first iteration where the player is not in the correct truck (when you have for example 10 trucks, this might be the case for the first 9 iterations - this is why only the first truck works).

So only if the loop has finished completely and no truck was the one the player is driving, it should send the message saying the player isn't in any job truck.
can you give me an example?


Re: Help with vehicleid - NaS - 09.12.2019

Code:
for(new i=0; i<sizeof(KraftstoffCars); i++)
{
	if(vID == KraftstoffCars[i][kID])
	{
		if(GetVehicleModel(GetVehicleTrailer(vID)) == 584)
		{
			tInfo[tID[playerid]][tFuelStand] = 100;
			SendClientMessage(playerid, COLOR_YELLOW, "You filled the gas pump.");
			GameTextForPlayer(playerid, "~g~PAYDAY +1500 $", 2000, 6);
			pInfo[playerid][payday] += 1500;
			return 1;
		}
		return SendClientMessage(playerid, COLOR_RED, "Your Truck doesn't have the right Trailer.");
	}
}
return SendClientMessage(playerid, COLOR_RED, "You are not sitting in an Job-Truck");
Now the message will only be sent if none of the trucks are driven by the player, since you use return in any other case.


Re: Help with vehicleid - ImTobi - 09.12.2019

Quote:
Originally Posted by NaS
View Post
Code:
for(new i=0; i<sizeof(KraftstoffCars); i++)
{
	if(vID == KraftstoffCars[i][kID])
	{
		if(GetVehicleModel(GetVehicleTrailer(vID)) == 584)
		{
			tInfo[tID[playerid]][tFuelStand] = 100;
			SendClientMessage(playerid, COLOR_YELLOW, "You filled the gas pump.");
			GameTextForPlayer(playerid, "~g~PAYDAY +1500 $", 2000, 6);
			pInfo[playerid][payday] += 1500;
			return 1;
		}
		return SendClientMessage(playerid, COLOR_RED, "Your Truck doesn't have the right Trailer.");
	}
}
return SendClientMessage(playerid, COLOR_RED, "You are not sitting in an Job-Truck");
Now the message will only be sent if none of the trucks are driven by the player, since you use return in any other case.
Code:
if(tInfo[tID[playerid]][tFuelStand] < 100)
	{
		for(new i=0; i<sizeof(KraftstoffCars); i++)
		{
			if(vID == KraftstoffCars[i][kID])
			{
				if(GetVehicleModel(GetVehicleTrailer(vID)) == 584)
				{
					tInfo[tID[playerid]][tFuelStand] = 100;
					SendClientMessage(playerid, COLOR_YELLOW, "Du hast die Zapfsдule erfolgreich gefьllt.");
					GameTextForPlayer(playerid, "~g~PAYDAY +1500 $", 2000, 6);
					pInfo[playerid][payday] += 1500;
					return 1;
				}
				return SendClientMessage(playerid, COLOR_RED, "Dein LKW hat keinen oder nicht den richtigen Auflieger.");
			}
		}
		return SendClientMessage(playerid, COLOR_RED, "Du sitzt nicht in einem Job-LKW.");
	}
	return SendClientMessage(playerid, COLOR_RED, "Die Zapfsдule ist voll.");
so like that it should work everything?


Re: Help with vehicleid - ImTobi - 09.12.2019

K its working, thank you, i now understand it why it is outside of the loop! Rep