








//aqui estб a funзгo na qual carregarб a carreta no caso sу o trailer
if(newkeys == KEY_YES && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) // Tecla Y
{
new trailer = GetVehicleTrailer(veh);
if(CarregarCarretaCombustivel(playerid) && InfoJogador[playerid][iEmprego] == eCaminhoneiro && CarrosDeCaminhoneiros(veh))
{
if(GetVehicleModel(trailer) != 584) //Verifica se o modelo do trailer do veiculo em questгo й 584 (tanque de combustivel)
{
MP(playerid, cinza, "Vocк nгo estб com uma carreta de tanque de combustнvel engatada!");
return 1;
}
else if(GetVehicleModel(trailer) == 584)
{
if(CarregamentoNasCarretasC[trailer] < 500)
{
if(JaEstaCarregando[playerid] == 1)
{
MP(playerid, cinza, "Vocк jб estб fazendo o carregamento da carreta, pode cancelar pressionando 'N'!");
}
else
{
MP(playerid, cinza, "Vocк iniciou o carregamento, para cancelar pressione 'N'!");
JaEstaCarregando[playerid] = 1;
TogglePlayerControllable(playerid, false);
GameTextForPlayer(playerid, "~n~~n~~w~Sua carreta esta sendo carregada!~n~Aguarde!~n~Para cancelar pressione 'N'", 5000, 3);
timerCarregamento = SetTimerEx("CarregandoCarretaCombustivel", 1000, true, "ii", playerid, trailer);
return 1;
}
}
else if(CarregamentoNasCarretasC[trailer] == 500)
{
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~y~Sua carreta ja esta~n~~w~100% ~g~carregada!", 10000, 3);
return 1;
}
}
}
}
forward CarregandoCarretaCombustivel(playerid, idcarreta);
public CarregandoCarretaCombustivel(playerid, idcarreta)
{
new engatada = GetVehicleTrailer(GetPlayerVehicleID(playerid));
if(engatada == idcarreta)
{
if(CarregamentoNasCarretasC[idcarreta] < 1000)
{
CarregamentoNasCarretasC[idcarreta]+= 5;
DinheiroPelaCargaCombustivel[playerid] += 25;
UltimoCarregamento[playerid] = CarregamentoNasCarretasC[idcarreta];
// MFP(playerid, -1, "Carregando trailer de combustivel %d com %d valor total a pagar R$%.2d!", idcarreta, CarregamentoNasCarretasC[idcarreta], DinheiroPelaCargaCombustivel[playerid]);
}
else if(CarregamentoNasCarretasC[idcarreta] == 1000)
{
TogglePlayerControllable(playerid, true);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~y~Sua carreta esta~n~~w~100% ~g~carregada!", 10000, 3);
KillTimer(timerCarregamento);
}
}
return 1;
}
//aqui estб a funзгo na qual serб chamada a atualizaзгo do textdraw conforme o id da carreta(trailer) porйm se eu desengato uma e engato outra, a outra fica com a mesma quantia de carga que a antiga...
forward AtualizarCargas(playerid, idcarreta);
public AtualizarCargas(playerid, idcarreta)
{
new str[245];
// MFP(playerid, -1, "teste id carreta %d", idcaminhao);
new cavalinho = GetPlayerVehicleID(playerid);
if(IsTrailerAttachedToVehicle(cavalinho) == 1)
{
if(GetVehicleModel(GetVehicleTrailer(cavalinho)) == 584)
{
TipoCarregamento[idcarreta] = tcCombustivel;
if(CarregamentoNasCarretasC[idcarreta] == 0)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Combustivel");
TextDrawSetString(textQuantiaCarga[idcarreta], "Quantia: ~y~0/1000L");
TextDrawSetString(textValorCarga[idcarreta], "Valor carga: ~y~Nada");
UltimoCarregamento[playerid] = 0;
}
else if(CarregamentoNasCarretasC[idcarreta] >= 1)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Combustivel");
format(str, 256, "Quantia: ~y~%d/1000", CarregamentoNasCarretasC[idcarreta]);
TextDrawSetString(textQuantiaCarga[idcarreta], str);
format(str, 256, "Valor da carga: ~y~R$%.2d", DinheiroPelaCargaCombustivel[playerid]);
TextDrawSetString(textValorCarga[idcarreta], str);
UltimoCarregamento[playerid] = CarregamentoNasCarretasC[idcarreta];
}
TextDrawShowForPlayer(playerid,textTipoCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textQuantiaCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textValorCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textBordaCargas);
TextDrawShowForPlayer(playerid,textFundoCargas);
TextDrawShowForPlayer(playerid,textInfosCarga);
}
}
else
{
TextDrawHideForPlayer(playerid,textTipoCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textQuantiaCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textValorCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textBordaCargas);
TextDrawHideForPlayer(playerid,textFundoCargas);
TextDrawHideForPlayer(playerid,textInfosCarga);
}
return 1;
}
forward VerificarCarretas(playerid, cavalinho);
public VerificarCarretas(playerid, cavalinho)
{
if(IsTrailerAttachedToVehicle(cavalinho) == 1)
{
new trailer = GetVehicleTrailer(cavalinho);
timerCargas = SetTimerEx("AtualizarCargas", true, 1000, "ii", playerid, trailer);
}
else
{
KillTimer(timerCargas);
}
return 1;
}
//quando o player entra na carreta executa essa funзгo
else if(CarrosDeCaminhoneiros(car))
{
if(EmpregoCaminhoneiros(playerid))
{
timerCarreta = SetTimerEx("VerificarCarretas", true, 1000, "ii", playerid, car);
MP(playerid, cor_caminhoneiros, "Para comeзar alguma carga, engate um dos 3 trailers e procure uma empresa para fazer transportes!");
}
else
{
RemovePlayerFromVehicle(playerid);
MP(playerid, grad3, "Vocк nгo й um Caminhoneiro!");
KillTimer(timerCarreta);
}
}
//essa й a callback chamada pelo timer
forward VerificarCarretas(playerid, cavalinho);
public VerificarCarretas(playerid, cavalinho)
{
new trailer = GetVehicleTrailer(cavalinho);
if(IsTrailerAttachedToVehicle(cavalinho) == 1)
{
timerCargas = SetTimerEx("AtualizarCargas", true, 1000, "ii", playerid, trailer);
}
else if(IsTrailerAttachedToVehicle(cavalinho) == 0)
{
TextDrawHideForPlayer(playerid,textTipoCarga[trailer]);
TextDrawHideForPlayer(playerid,textQuantiaCarga[trailer]);
TextDrawHideForPlayer(playerid,textValorCarga[trailer]);
TextDrawHideForPlayer(playerid,textBordaCargas);
TextDrawHideForPlayer(playerid,textFundoCargas);
TextDrawHideForPlayer(playerid,textInfosCarga);
KillTimer(timerCargas);
}
return 1;
}
//e essa callback й chamada pelo outro timer = timerCargas que serve pra verificar as informaзхes da carreta engatada
forward AtualizarCargas(playerid, idcarreta);
public AtualizarCargas(playerid, idcarreta)
{
new str[245];
// MFP(playerid, -1, "teste id carreta %d", idcaminhao);
new cavalinho = GetPlayerVehicleID(playerid);
if(IsTrailerAttachedToVehicle(cavalinho) == 1)
{
if(GetVehicleModel(GetVehicleTrailer(cavalinho)) == 584)
{
TipoCarregamento[idcarreta] = tcCombustivel;
if(CarregamentoNasCarretasC[idcarreta] == 0)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Combustivel");
TextDrawSetString(textQuantiaCarga[idcarreta], "Quantia: ~y~0/1000L");
TextDrawSetString(textValorCarga[idcarreta], "Valor carga: ~y~Nada");
UltimoCarregamento[playerid] = 0;
}
else if(CarregamentoNasCarretasC[idcarreta] >= 1)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Combustivel");
format(str, 256, "Quantia: ~y~%d/1000L", CarregamentoNasCarretasC[idcarreta]);
TextDrawSetString(textQuantiaCarga[idcarreta], str);
format(str, 256, "Valor carga: ~y~R$%.2d", DinheiroPelaCargaCombustivel[playerid]);
TextDrawSetString(textValorCarga[idcarreta], str);
UltimoCarregamento[playerid] = CarregamentoNasCarretasC[idcarreta];
}
TextDrawShowForPlayer(playerid,textTipoCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textQuantiaCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textValorCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textBordaCargas);
TextDrawShowForPlayer(playerid,textFundoCargas);
TextDrawShowForPlayer(playerid,textInfosCarga);
}
else if(GetVehicleModel(GetVehicleTrailer(cavalinho)) == 584)
{
TipoCarregamento[idcarreta] = tcCombustivel;
if(CarregamentoNasCarretasC[idcarreta] == 0)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Combustivel");
TextDrawSetString(textQuantiaCarga[idcarreta], "Quantia: ~y~0/1000L");
TextDrawSetString(textValorCarga[idcarreta], "Valor carga: ~y~Nada");
UltimoCarregamento[playerid] = 0;
}
else if(CarregamentoNasCarretasC[idcarreta] >= 1)
{
TextDrawSetString(textTipoCarga[idcarreta], "Carga: ~y~Mercadorias");
format(str, 256, "Quantia: ~y~%d/700", CarregamentoNasCarretasM[idcarreta]);
TextDrawSetString(textQuantiaCarga[idcarreta], str);
format(str, 256, "Valor carga: ~y~R$%.2d", DinheiroPelaCargaItems[playerid]);
TextDrawSetString(textValorCarga[idcarreta], str);
UltimoCarregamento[playerid] = CarregamentoNasCarretasM[idcarreta];
}
TextDrawShowForPlayer(playerid,textTipoCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textQuantiaCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textValorCarga[idcarreta]);
TextDrawShowForPlayer(playerid,textBordaCargas);
TextDrawShowForPlayer(playerid,textFundoCargas);
TextDrawShowForPlayer(playerid,textInfosCarga);
}
}
else
{
TextDrawHideForPlayer(playerid,textTipoCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textQuantiaCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textValorCarga[idcarreta]);
TextDrawHideForPlayer(playerid,textBordaCargas);
TextDrawHideForPlayer(playerid,textFundoCargas);
TextDrawHideForPlayer(playerid,textInfosCarga);
}
return 1;
}
SetTimerEx("AtualizarCargas", true, 1000, "ii", playerid, trailer);
SetTimerEx("AtualizarCargas", 1000, true, "ii", playerid, trailer);
|
sobre travar o server:
PHP код:
PHP код:
|
,
agora vo ajeitar os timers
