02.10.2016, 10:59
Код:
spdtimer = SetTimer("Speedo", 750, 1);
Код:
function Speedo() { new str[128]; foreach(Player, i) { if(GetPlayerState(i) == PLAYER_STATE_DRIVER && !IsPlayerNPC(i) && Allowed[i] == 0) { new Float: oldX[MAX_PLAYERS], Float: oldY[MAX_PLAYERS], Float: oldZ[MAX_PLAYERS]; oldX[i] = PosX[i]; oldY[i] = PosY[i]; oldZ[i] = PosZ[i]; GetPlayerPos(i,PosX[i],PosY[i],PosZ[i]); new Float:distanta[MAX_PLAYERS]; distanta[i] = GetDistanceBetweenPoints(oldX[i],oldY[i],oldZ[i],PosX[i],PosY[i],PosZ[i]); new str1[128],zone[30]; new vehicle = GetPlayerVehicleID(i); new oldspeed = PlayerData[i][Speed]; PlayerData[i][Speed] = GetVehicleSpeed(GetPlayerVehicleID(i), 0); new newspeed = PlayerData[i][Speed]; new acceleration = abs(newspeed - oldspeed); new Consume = (((acceleration / 10) + 1) * (newspeed / 20)); new Float:Consume2 = float(Consume); new carid = FindSpawnID(vehicle); if(!(IsAPlane(vehicle) || IsABoat(vehicle) || IsABike(vehicle))) { Gas[vehicle] -= Consume2/500; if(Gas[vehicle] <= 0) { new e,l,a,d,b,bo,o; GetVehicleParamsEx(vehicle,e,l,a,d,b,bo,o); SetVehicleParamsEx(vehicle,0,l,a,d,b,bo,o); format(str1,sizeof(str1),"Fuel: ~r~NO FUEL"); // PlayerTextDrawSetString(i, Fuell, str1); Gas[vehicle] = 0; } } else { Consume = 0; } if(CarInfo[carid][cID] != -2 && carid != 0) PlayerTextDrawHide(i, Odometerr); PlayerTextDrawHide(i, Speedd); PlayerTextDrawHide(i, Fuell); PlayerTextDrawHide(i, Destination); PlayerTextDrawHide(i, DestinationKM); PlayerTextDrawHide(i, Radio); CarInfo[carid][KM] += distanta[i]/1000; mysql_format(SQL, str,128,"UPDATE `cars` SET `KM`='%f' WHERE `ID`='%d' LIMIT 1",CarInfo[carid][KM],carid); mysql_tquery(SQL, str, "", ""); if(CarInfo[carid][cID] != -2 && carid != 0) { format(str1,sizeof(str1),"Odometer: ~y~%.2f ~w~KM",CarInfo[carid][KM]); PlayerTextDrawSetString(i, Odometerr, str1); } if(PlayerData[i][Speed] <= 110) { format(str1,sizeof(str1),"Speed: ~y~%d ~w~KM/H",PlayerData[i][Speed]); PlayerTextDrawSetString(i, Speedd, str1); } if(PlayerData[i][Speed] > 110 && PlayerData[i][Speed] <= 160) { format(str1,sizeof(str1),"Speed: ~b~%d ~w~KM/H",PlayerData[i][Speed]); PlayerTextDrawSetString(i, Speedd, str1); } if(PlayerData[i][Speed] > 160) { format(str1,sizeof(str1),"Speed: ~r~%d ~w~KM/H",PlayerData[i][Speed]); PlayerTextDrawSetString(i, Speedd, str1); } if(Gas[vehicle] > 0) { format(str1,sizeof(str1),"Fuel: %d %% (C: %d %%)", floatround(Gas[vehicle], floatround_round), Consume); // PlayerTextDrawSetString(i, Fuell, str1); } if(DestinationSet[i] == 0) { format(str1,sizeof(str1),"Destination: None"); // PlayerTextDrawSetString(i, Destination, str1); } else { GetPlayer3DZone2(DestSet[i][0],DestSet[i][1],DestSet[i][2],zone,30); format(str1,sizeof(str1),"Destination: ~y~%s",zone); // PlayerTextDrawSetString(i, Destination, str1); new Float:distance = GetPlayerDistanceFromPoint(i, DestSet[i][0],DestSet[i][1],DestSet[i][2]); format(str1,sizeof(str1)," ~y~%.2f meters",distance); // PlayerTextDrawSetString(i, DestinationKM, str1); PlayerTextDrawShow(i, DestinationKM); } if(RadioSet[i] == 0) { format(str1,sizeof(str1),"Radio: ~r~OFF"); // PlayerTextDrawSetString(i, Radio, str1); } else { format(str1,sizeof(str1),"Radio: ~y~%s",RadioName(RadioSet[i])); // PlayerTextDrawSetString(i, Radio, str1); } if(CarInfo[carid][cID] != -2 && carid != 0) PlayerTextDrawShow(i, Odometerr); PlayerTextDrawShow(i, Speedd); PlayerTextDrawShow(i, Fuell); PlayerTextDrawShow(i, Destination); PlayerTextDrawShow(i, Radio); } else { PlayerTextDrawHide(i, Odometerr); PlayerTextDrawHide(i, Speedd); PlayerTextDrawHide(i, Fuell); PlayerTextDrawHide(i, Destination); PlayerTextDrawHide(i, Radio); PlayerTextDrawHide(i, DestinationKM); } } }
Код:
[warning] client exceeded 'ackslimit' --.--.---.---. (5426) Limit: 5000/sec