SA-MP Forums Archive
[Ajuda] Ajuda no /motor - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Ajuda no /motor (/showthread.php?tid=601390)



Ajuda no /motor - Derritee1001 - 20.02.2016

Opб, entгo galera o meu /motor tб bugado, qualquer uma pode ligar e desligar qualquer veнculo, e eu queria que sу o dono podesse ligar.
Код:
CMD:motor(playerid, params[])
{
	new vehicleid = GetPlayerVehicleID(playerid);

	if(CarData[vehicleid][carOwner] == 1)
	    return SendErrorMessage(playerid, "Vocк nгo й dono deste veнculo.");
	    
	if (!IsEngineVehicle(vehicleid))
		return SendErrorMessage(playerid, "Vocк nгo estб em um veнculo.");

	if (GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
	    return SendErrorMessage(playerid, "Vocк nгo pode fazer isso pois nгo й o motorista.");

	if (CoreVehicles[vehicleid][vehFuel] < 1)
	    return SendErrorMessage(playerid, "A gasolina acabou.");

	if (ReturnVehicleHealth(vehicleid) <= 300)
	    return SendErrorMessage(playerid, "O veнculo estб quebrado por isso nгo pode ser ligado.");

	switch (GetEngineStatus(vehicleid))
	{
	    case false:
	    {
	        SetEngineStatus(vehicleid, true);
	        ShowPlayerFooter(playerid, "~g~MOTOR LIGADO~w~!");
	        SendNearbyMessage(playerid, 30.0, COLOR_PURPLE, "** %s insere a chave na igniзгo e liga o motor.", ReturnName(playerid, 0));
		}
		case true:
		{
		    SetEngineStatus(vehicleid, false);
		    ShowPlayerFooter(playerid, "~r~MOTOR DESLIGADO~w~!");
		    SendNearbyMessage(playerid, 30.0, COLOR_PURPLE, "** %s insere a chave na igniзгo e desliga o motor.", ReturnName(playerid, 0));
		}
	}
	return 1;
}



Re: Ajuda no /motor - SepZ - 20.02.2016

Acho que deveria ser
PHP код:
if(CarData[vehicleid][carOwner] == 0
nгo й? pra cancelar o comando se o cara nгo for dono


Re: Ajuda no /motor - Derritee1001 - 20.02.2016

Quote:
Originally Posted by SepZ
Посмотреть сообщение
Acho que deveria ser
PHP код:
if(CarData[vehicleid][carOwner] == 0
nгo й? pra cancelar o comando se o cara nгo for dono
Nгo, eu mudei aqui e testei, agora se eu comprar um carro e usar o /motor ele fala que nгo tenho chaves.


Re: Ajuda no /motor - GabrielCOP - 21.02.2016

Aparentemente o seu cуdigo estб funcional... Poste o novo cуdigo do comando e diga-me o bug.


Re: Ajuda no /motor - Derritee1001 - 21.02.2016

Quote:
Originally Posted by GabrielCOP
Посмотреть сообщение
Aparentemente o seu cуdigo estб funcional... Poste o novo cуdigo do comando e diga-me o bug.
Код:
CMD:motor(playerid, params[])
{
	new vehicleid = GetPlayerVehicleID(playerid);

	if(CarData[vehicleid][carOwner] == 0)
	    return SendErrorMessage(playerid, "Vocк nгo й dono deste veнculo.");
	    
	if (!IsEngineVehicle(vehicleid))
		return SendErrorMessage(playerid, "Vocк nгo estб em um veнculo.");

	if (GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
	    return SendErrorMessage(playerid, "Vocк nгo pode fazer isso pois nгo й o motorista.");

	if (CoreVehicles[vehicleid][vehFuel] < 1)
	    return SendErrorMessage(playerid, "A gasolina acabou.");

	if (ReturnVehicleHealth(vehicleid) <= 300)
	    return SendErrorMessage(playerid, "O veнculo estб quebrado por isso nгo pode ser ligado.");

	switch (GetEngineStatus(vehicleid))
	{
	    case false:
	    {
	        SetEngineStatus(vehicleid, true);
	        ShowPlayerFooter(playerid, "~g~MOTOR LIGADO~w~!");
	        SendNearbyMessage(playerid, 30.0, COLOR_PURPLE, "** %s insere a chave na igniзгo e liga o motor.", ReturnName(playerid, 0));
		}
		case true:
		{
		    SetEngineStatus(vehicleid, false);
		    ShowPlayerFooter(playerid, "~r~MOTOR DESLIGADO~w~!");
		    SendNearbyMessage(playerid, 30.0, COLOR_PURPLE, "** %s insere a chave na igniзгo e desliga o motor.", ReturnName(playerid, 0));
		}
	}
	return 1;
}
Com o numero "0" na if(CarData[vehicleid][carOwner] == 0), nem o proprio dono do veнculo consegue ligar. O bug antes era que quando o jogador comprar um carro na conce, ele podia ligar, inclusive qualquer um que usar /motor no veнculo dele, conseguia ligar.