Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*==================================================================================================
- ====================================================================================================
- ============= VIELEN DANK, DASS SIE SICH DAS FILTERSCRIPT VON PILLE ENTSCHIEDEN HABEN. =============
- ====================================================================================================
- ====================== ICH WÜNSCHE VIEL SPAß MIT IHREM NEUEN KILOMETERZÄHLER. ======================
- ====================================================================================================
- =========== DAS LÖSCHEN DIESES TEXTES IST VERBOTEN UND FÜHRT ZU SCHLECHTEM GEWISSEN. ===============
- ====================================================================================================
- ====================================== V 2.0 =======================================================
- ====================================================================================================*/
- #include <a_samp>
- new Float:distance[MAX_PLAYERS];
- new Float:Pos[MAX_PLAYERS][3];
- new meter[MAX_PLAYERS];
- new bool:IsInVehicle[MAX_PLAYERS];
- new PlayerText:Textdraw[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- print("\n----------------------------------");
- print(" Kilometerzähler Copyright by Pille.");
- print("----------------------------------\n");
- SetTimer("Kilometertimer",200,true);
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate==PLAYER_STATE_DRIVER)
- {
- new string[32];
- format(string,sizeof(string),"%i,%i KM",floatround((float(meter[playerid])/10),floatround_floor),meter[playerid]%10);
- PlayerTextDrawSetString(playerid,Textdraw[playerid],string);
- PlayerTextDrawShow(playerid,Textdraw[playerid]);
- GetPlayerPos(playerid,Pos[playerid][0],Pos[playerid][1],Pos[playerid][2]);
- IsInVehicle[playerid]=true;
- }
- if(newstate==PLAYER_STATE_ONFOOT)
- {
- IsInVehicle[playerid]=false;
- PlayerTextDrawHide(playerid,Textdraw[playerid]);
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid,reason)
- {
- IsInVehicle[playerid]=false;
- Pos[playerid][0]=0.0;
- Pos[playerid][1]=0.0;
- Pos[playerid][2]=0.0;
- distance[playerid]=0.0;
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Textdraw[playerid]=CreatePlayerTextDraw(playerid,508.000000, 383.000000, "0,0 KM");
- PlayerTextDrawBackgroundColor(playerid,Textdraw[playerid],255);
- PlayerTextDrawFont(playerid,Textdraw[playerid],2);
- PlayerTextDrawLetterSize(playerid,Textdraw[playerid],0.639999,2.399999);
- PlayerTextDrawColor(playerid,Textdraw[playerid],16711935);
- PlayerTextDrawSetOutline(playerid,Textdraw[playerid],1);
- PlayerTextDrawSetProportional(playerid,Textdraw[playerid],1);
- return 1;
- }
- forward Kilometertimer();
- public Kilometertimer()
- {
- new string[16];
- new Float:tmpdistance;
- new vehicleid;
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(IsInVehicle[i]==false) continue;
- vehicleid=GetPlayerVehicleID(i);
- tmpdistance=GetVehicleDistanceFromPoint(GetPlayerVehicleID(i),Pos[i][0],Pos[i][1],Pos[i][2]);
- if(tmpdistance>100) continue; // Wenn jemand teleportiert wird, wird die Strecke nicht addiert.
- distance[i]+=tmpdistance;
- GetVehiclePos(vehicleid,Pos[i][0],Pos[i][1],Pos[i][2]);
- if(distance[i]>100.0)
- {
- meter[i]++;
- distance[i]-=100.0;
- format(string,sizeof(string),"%i,%i KM",floatround((float(meter[i])/10),floatround_floor),meter[i]%10);
- PlayerTextDrawSetString(i,Textdraw[i],string);
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement