Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #define VALOR_LITRO 2.0 //- Definir valor por litro da gasolina
- #define RETIRAR_KM 16 //- A Cada 16 KM ,retirar 1 de gasolina
- #define DIALOG_GAS 24 //- ID Do Dialog para Colocar Gasolina
- new
- Gasosa[MAX_VEHICLES],
- bool:Avisado[500],
- Float:velokm[3],
- Retirada[500]
- ;
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(!strcmp(cmdtext, "/gasolina", true)) {
- if(!IsPlayerInAnyVehicle(playerid))
- return SendClientMessage(playerid, 0xFFFFFFFF, "Você não esta em um carro");
- ShowPlayerDialog(playerid,DIALOG_GAS,DIALOG_STYLE_INPUT,"Colocar Gasolina","Por favor digite a quantidade de litros para colocar \n o Preço atual da Gasolina é 2$ por litro","Sim","Nao");
- return 1;
- }
- return 0;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_GAS) {
- if(!response)
- return SendClientMessage(playerid, 0xFFFFFFFF, "Você não colocou gasolina");
- new sGasolinaT = strval(inputtext),string[64],quantia = sGasolinaT*floatround(VALOR_LITRO);
- if(GetPlayerMoney(playerid) < quantia)
- return SendClientMessage(playerid, 0xFFFFFFFF, "Você não tem dinheiro para isto");
- if(sGasolinaT > 100 || sGasolinaT <= 0)
- return SendClientMessage(playerid, 0xFFFFFFFF, "Quantia Inválida");
- format(string,60, "* Você abastaceu %d Litros por %d$",sGasolinaT,quantia);
- SendClientMessage(playerid,0xFFFF00AA, string);
- Gasosa[GetPlayerVehicleID(playerid)] = sGasolinaT;
- GivePlayerMoney(playerid,-quantia);
- Retirada[playerid] = 0;
- Avisado[playerid] = false;
- TogglePlayerControllable(playerid, true);
- return 1;
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- new str[128];
- format(str, sizeof(str), "* Este carro esta com %d Litros de gasolina", Gasosa[vehicleid]);
- SendClientMessage(playerid,0xFFFF00AA, str);
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- if(IsPlayerInAnyVehicle(playerid)) {
- new string[50],carid = GetPlayerVehicleID(playerid);
- GetVehicleVelocity(carid, velokm[0], velokm[1], velokm[2]);
- format(string, sizeof(string), "~w~Gasolina: ~r~%i", Gasosa[carid]);
- GameTextForPlayer(playerid,string,300,1);
- if(floatround(((floatsqroot(((velokm[0] * velokm[0]) + (velokm[1] * velokm[1]) + (velokm[2] * velokm[2]))) * (170.0))) * 1) > 5) {
- if(Gasosa[carid] == 0 && Avisado[playerid] == false) {
- SendClientMessage(playerid,0xFFFF00AA,"A Gasolina Deste carro acabou | Chame o Guincho ou /gasolina");
- TogglePlayerControllable(playerid, false);
- Avisado[playerid] = true;
- }
- if(Gasosa[carid] > 0) {
- Retirada[playerid]+=1;
- if(Retirada[playerid] >= (RETIRAR_KM*13)) {
- Gasosa[carid]--;
- Retirada[playerid]=0;
- Avisado[playerid] = false;
- }
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement