new Taximetro[MAX_PLAYERS][2];
new PrecoCorrida[MAX_PLAYERS];
public OnPlayerCommandText(playerid,cmdtext[])
if(strcmp(cmd, "/ttaxi", true) == 0 && IsPlayerConnected(playerid)) {
if(PlayerInfo[ playerid ][pProfissao] == Taxista || IsPlayerAdmin(playerid)){
new plid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "/ttaxi [id]");
return 1;
}
plid = strval(tmp);
if(GetPlayerVehicleID(playerid) == GetPlayerVehicleID(plid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER){
SendClientMessage(plid, 0xE1E100AA, "| INFO | O(A) Taxista ligou o Taximкtro.");
GivePlayerGrana(playerid,000);
GivePlayerGrana(plid,000);
Taximetro[plid][0] = 1;
Taximetro[plid][1] = playerid;
return 1;
}else{
SendClientMessage(playerid, Vermelho, "| ERRO | O passageiro nгo estб dentro do seu carro ou vocк nгo й o motorista.");
return 1;
}
}
}
public OnPlayerStateChange(playerid, newstate, oldstate)
if(newstate == PLAYER_STATE_ONFOOT){
if(Taximetro[playerid][0] == 1){
SendClientMessage(playerid, Verde, "| INFO | Vocк saiu do taxi, e a corrida foi paga");
SendClientMessage(Taximetro[playerid][1], Vermelho, "| INFO | Vocк recebeu o valor da corrida atй aqui.");
GivePlayerGrana(playerid, 0 - PrecoCorrida[playerid]);
GivePlayerGrana(Taximetro[playerid][1], PrecoCorrida[playerid]);
PrecoCorrida[playerid] = 0;
Taximetro[playerid][1] = 0;
Taximetro[playerid][0] = 0;
return 1;
}
}
public Taxi()
{
foreach(Player, i)
{
if(Taximetro[i][0] == 1){
if(GetPlayerGrana(i) > PrecoCorrida[i] + 3){
new string[128];
PrecoCorrida[i] = PrecoCorrida[i] + 3;
format(string, sizeof(string), "| TAXНMETRO | O taxнmetro estб cobrando R$%d de sua viagem!", PrecoCorrida[i]);
SendClientMessage(i, 0xFFFF00AA, string);
SendClientMessage(Taximetro[i][1], 0xD9D900AA, string);
}
if(GetPlayerGrana(i) < PrecoCorrida[i] + 3){
SendClientMessage(i, Vermelho, "| INFO | Vocк nгo tem mais dinheiro para o taxi, sua viagem acaba aqui.");
SendClientMessage(Taximetro[i][1], Vermelho, "| INFO | Seu passageiro ficou sem dinheiro e por isso foi deixado aqui.");
GivePlayerGrana(i, 0 - PrecoCorrida[i]);
GivePlayerGrana(Taximetro[i][1], PrecoCorrida[i]);
RemovePlayerFromVehicle(i);
PrecoCorrida[i] = 0;
Taximetro[i][1] = 0;
}
}
}
}
new Taximetro[MAX_PLAYERS][2];
new PrecoCorrida[MAX_PLAYERS];
CMD:corrida(playerid, params[])
{
if(pDados[playerid][Organizacao] == 15)
{
new plid;
new string[128];
new carid = GetPlayerVehicleID(playerid);
if(GetPlayerVehicleID(playerid) == GetPlayerVehicleID(plid) && GetPlayerState(playerid) == 2)
{
if(sscanf(params, "i", plid)) return SendClientMessage(playerid, Verde, "Use corrida [ID]");
if(carid <= 44) return SendClientMessage(playerid, Vermelho, "Vocк nгo pode iniciar corrida neste veiculo");
if(playerid == plid) return SendClientMessage(playerid, Laranja, "Vocк nгo pode iniciar o taximetro com voce");
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
format(string, sizeof(string), "O taxista [%s] inicou uma corrida com vocк[%i]", aname,PrecoCorrida);
SendClientMessage(plid, Laranja, string);
format(string, sizeof(string), "Vocк iniciou uma corrida com [%s] leve-o atй o destino", plid);
SendClientMessage(playerid, Laranja, string);
GivePlayerMoney(playerid,000);
GivePlayerMoney(plid,000);
Taximetro[plid][0] = 1;
Taximetro[plid][1] = playerid;
SetTimer("Taxi", 1000, true);
return 1;
}
else
{
SendClientMessage(playerid, Laranja, "O passageiro nгo esta no taxi ou vocк nгo esta dirigindo um taxi");
}
}
return 1;
}
if(newstate == 1)
{
if(Taximetro[playerid][0] == 1)
{
SendClientMessage(playerid, Verde, "| TAXISTAS | Vocк saiu do taxi, e a corrida foi paga");
SendClientMessage(Taximetro[playerid][1], Vermelho, "| TRABALHADOR | Vocк recebeu o valor da corrida atй aqui.");
GivePlayerMoney(playerid, 0 - PrecoCorrida[playerid]);
GivePlayerMoney(Taximetro[playerid][1], PrecoCorrida[playerid]);
PrecoCorrida[playerid] = 0;
Taximetro[playerid][1] = 0;
Taximetro[playerid][0] = 0;
return 1;
}
}
forward Taxi();
public Taxi()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(Taximetro[i][0] == 1){
if(GetPlayerMoney(i) > PrecoCorrida[i] + 3){
new string[128];
PrecoCorrida[i] = PrecoCorrida[i] + 3;
format(string, sizeof(string), "[Taximetro]:R$%d", PrecoCorrida[i]);
SendClientMessage(i, 0xFFFF00AA, string);
SendClientMessage(Taximetro[i][1], 0xD9D900AA, string);
}
if(GetPlayerMoney(i) < PrecoCorrida[i] + 3){
SendClientMessage(i, Vermelho, "Vocк nгo tem mais dinheiro para o taxi, sua viagem acaba aqui.");
SendClientMessage(Taximetro[i][1], Vermelho, "Seu passageiro ficou sem dinheiro e por isso foi deixado aqui.");
GivePlayerMoney(i, 0 - PrecoCorrida[i]);
GivePlayerMoney(Taximetro[i][1], PrecoCorrida[i]);
RemovePlayerFromVehicle(i);
PrecoCorrida[i] = 0;
Taximetro[i][1] = 0;
}
}
}
}
Fiz uma adaptaзгo vou postar aqui caso alguйm esteja com a mesma dificuldade!
Vlw! pawn Код:
pawn Код:
pawn Код:
pawn Код:
|