30.06.2015, 17:38
Hey guys,
I have a problem with taxi system.
This part:
doesn't work as it should work I printed taxi_distance[playerid] and some how it printed not 1 time but 2 times.
This is the part where I update taxi_distance variable:
I have a problem with taxi system.
PHP код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(GetVehicleModel(vehicleid) == 420) // Tikriname ar taxi masina
{
new money = floatround(taxi_distance[playerid]*5, floatround_ceil)*2; // Skaiciuojame kiek pinigu vairuotojas turi gauti uz nuvaziuota atstuma
printf("%f",taxi_distance[playerid]);
if(IsPlayerTaxi_passenger[playerid] == 1 ) // Tikriname ar islipes zaidejas yra keleivis
{
format(zinute, 120, "{5980FF}•{ffffff} gavote {5980FF}%i Ђ{ffffff}, kadangi keleivis iљlipo iљ tr. priemonės.", money); // Suformatuojame zinute
SendClientMessage(TaxiDriver[playerid], -1, zinute); // Issiunciame zinute
format(zinute, 120, "{5980FF}•{ffffff} sumokėjote {5980FF}%i Ђ{ffffff}, kadangi iљlipote iљ taxi.", money); // Suformatuojame zinute
SendClientMessage(playerid, -1, zinute); // Issiunciame zinute
givePlayerMoney(playerid, -money); // Nuimame keleiviui pinigus
givePlayerMoney(TaxiDriver[playerid], money); // Duodame vairuotojui pinigus
new idas = TaxiDriver[playerid];
for(new i; i < 3; i++) { // Darome cikla is visu 3 keleivio vietu
if(TaxiPassengers[idas][i] == playerid) { // Tikriname ar zaidejo id yra lygi vienai is keleivio vietu
TaxiPassengers[idas][i] = -1; // Nuimame zaidejo id reiksme nuo keleivio vietos
break; // sustabdome cikla
}
}
TaxiDriver[playerid] = -1; // Zaidejui nuimame vairuotojo reiksme
IsPlayerTaxi_passenger[playerid] = 0; // Nustatome, kad zaidejas nebera keleivis
taxi_distance[playerid] = 0.0; // Nustatome, kad atstumas yra pradinis
PlayerTextDrawHide(playerid, taksometras1[playerid]);
PlayerTextDrawHide(playerid, taksometras2[playerid]);
PlayerTextDrawHide(playerid, taksometras3[playerid]);
return 1;
}
}
return 1;
}
PHP код:
new money = floatround(taxi_distance[playerid]*5, floatround_ceil)*2;
PHP код:
[20:06:17] 0.000000
[20:06:21] 3.654547
PHP код:
updateSpeedomether(playerid) // nigga
{
new
trID = GetPlayerVehicleID ( playerid ) , vMod = GetVehicleModel ( trID ) ,
Float:speed_ [ 4 ], engine, lights, alarm, doors, bonnet, boot, objective;
if(masina[trID][Gas] < 0.1)
{
GetVehicleParamsEx(trID, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(trID, 0, lights, alarm, doors, bonnet, boot, objective); // ONLY the engine param was changed (to 1)
}
//GetVehicleHealth ( vehID , carHP ) ;
GetVehicleVelocity ( trID , speed_ [ 0 ] , speed_ [ 1 ] , speed_ [ 2 ] );
speed_ [ 3 ] = floatsqroot ( ( speed_ [ 0 ] * speed_ [ 0 ] ) + ( speed_ [ 1 ] * speed_ [ 1 ] ) + ( speed_ [ 2 ] * speed_ [ 2 ] ) ) * 200.666667 ;
masina [ trID ] [ vehRida ] += speed_ [ 3 ] / 35000;
format ( g_szBuffer , sizeof ( g_szBuffer ) , "~y~%d~w~ KM/H" , GetPlayerSpeed ( playerid ) ) ;
PlayerTextDrawSetString ( playerid , speede[1][playerid] , g_szBuffer ) ;
//format ( string , sizeof ( string ) , "%0.1f%" , carHP/10 ) ;
//PlayerTextDrawSetString ( playerid , speedo [ 6 ] [playerid] , string ) ;
format ( g_szBuffer , sizeof ( g_szBuffer ) , "~y~ %0.2f~w~ L." , masina[trID][Gas] ) ; // speedo [ 10 ] [playerid]
PlayerTextDrawSetString ( playerid , speede[2][playerid] , g_szBuffer ) ;
format ( g_szBuffer , sizeof ( g_szBuffer ) , "~y~%s" , aVehicleNames [ vMod - 400 ] ) ; // speedo [ 10 ] [playerid]
PlayerTextDrawSetString ( playerid , speede[0][playerid] , g_szBuffer ) ;
format ( g_szBuffer , sizeof ( g_szBuffer ) , "~y~ %0.2f ~w~KM." , masina [ trID ] [ vehRida ] ) ;
PlayerTextDrawSetString ( playerid , speede[3][playerid] , g_szBuffer ) ;
if(GetVehicleModel(trID) == 420 && TaxiPassenger[playerid] != -1)
{
taxi_distance[playerid] += speed_ [ 3 ] / 35000;
format ( g_szBuffer , sizeof ( g_szBuffer ) , "Jusu vairuotojas %s~n~Nuvaziuotas atstumas: %0.2f~n~Moketi: %i EUR" , GetPlayerNameEx(playerid), taxi_distance[playerid], floatround(taxi_distance[playerid]*5, floatround_ceil)*2 ) ;
PlayerTextDrawSetString ( TaxiPassenger[playerid] , taksometras3[TaxiPassenger[playerid]] , g_szBuffer ) ;
}
return 1;
}