Ayuda con este cуdigo..
#3

Quote:
Originally Posted by Jastak
Посмотреть сообщение
Se podrнa hacer de esta manera:

Код:
new rentasCoche[][] =
{
	{15,300},
	{30,600},
	{60,800}
};

forward FUNC_TimerRentaCoche(playerid);
public FUNC_TimerRentaCoche(playerid)
{
	if(GetPVarInt(playerid, "RentoVehID") == GetPlayerVehicleID(playerid))
	{
	    SetVehicleToRespawn(GetPVarInt(playerid, "RentoVehID"));
        VehRentado[GetPVarInt(playerid, "RentoVehID")] = 0;
        DeletePVar(playerid, "RentoVehID");
	}
	return 1;
}

Cuando te subes en el vehнculo en.. "OnPlayerStateChange"

	    if(EsVehRenta(VehID))
	    {
	    	if(VehRentado[VehID] == 0)
	    	{
				new std[200];
				for(new i; i < sizeof(rentasCoche); i++)
				    format(std, sizeof(std), "%s%i Minutos\t$%i\n", rentasCoche[i][0], rentasCoche[i][1]);
                ShowPlayerDialog(playerid,DIALOG_RENTA,DIALOG_STYLE_LIST,"Renta",std,"Rentar","Salir");
			}
			else if(VehRentado[VehID] == 1 && GetPVarInt(playerid,"RentoVehID") != VehID)
			{
				RemovePlayerFromVehicle(playerid);
				Error(playerid,"ЎYa alguien ha rentado este vehнculo!");
				return 1;
			}
		}

lo que activa el dialogo... y el response en donde quiero aplicar los timers:

    	case DIALOG_RENTA:
    	{
		    if(!response) return RemovePlayerFromVehicle(playerid);
	    	if(GetPVarInt(playerid,"RentoVehID"))
	    	{
				Error(playerid,"ЎYa has rentado un vehнculo!");
				RemovePlayerFromVehicle(playerid);
				return 1;
		    }
		       
			if(GetPlayerMoney(playerid) < rentasCoche[listitem][1])
			{
		    	Error(playerid, "ЎNo tienes dinero suficiente!");
				RemovePlayerFromVehicle(playerid);
		    	return 1;
			}
			
			new std[120];
			format(std, sizeof(std), "ЎRentaste este vehнculo por "#CGRIS2"%i minutos"#CBLANCO" con el costo de %i dуlares!.", rentasCoche[listitem][0], rentasCoche[listitem][1]);
            SendClientMessage(playerid, C_BLANCO, std);
			SetPVarInt(playerid, "RentoVehID", GetPlayerVehicleID(playerid));

			//Yo por lo general uso timers de YSI.. pero esto es lo que quieres
			SetTimerEx("FUNC_TimerRentaCoche", rentasCoche[listitem][0]*60000, false, "i", playerid);
			
			VehRentado[GetPlayerVehicleID(playerid)] = 1;
			QuitarDinero(playerid,  rentasCoche[listitem][1]);
			return 1;
		}
Muchas gracias, te enviarй la reputaciуn saludos.
Reply


Messages In This Thread
Ayuda con este cуdigo.. - by Fagrinht - 05.03.2016, 17:35
Re: Ayuda con este cуdigo.. - by Jastak - 05.03.2016, 18:22
Respuesta: Re: Ayuda con este cуdigo.. - by Fagrinht - 06.03.2016, 19:24

Forum Jump:


Users browsing this thread: 2 Guest(s)