Ich hab mal ne Frage undzwar: Wie kann ich den Kilometerstand zählen? Ich will das in ein Tacho einbauen, weiß aber nicht, wie man den Zählt
Hoffe, mir kann einer Helfen
Ich hab mal ne Frage undzwar: Wie kann ich den Kilometerstand zählen? Ich will das in ein Tacho einbauen, weiß aber nicht, wie man den Zählt
Hoffe, mir kann einer Helfen
Soweit ich weis sollte das mit Floats gehen doch leider ist mir dies selbst noch nicht bewusst.
Bei mir wird da nix angezeigt
Bei mir wird da nix angezeigt
/*==================================================================================================
====================================================================================================
============= 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. ===============
====================================================================================================*/
#include <a_samp>
#define FILTERSCRIPT
#if defined FILTERSCRIPT
new Float:distance[MAX_PLAYERS];
new m[MAX_PLAYERS];
new km[MAX_PLAYERS];
new Float:xx[MAX_PLAYERS],Float:yy[MAX_PLAYERS],Float:zz[MAX_PLAYERS];
new Text:tacho[MAX_PLAYERS];
new tachovar[MAX_PLAYERS];
public OnFilterScriptInit()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
tacho[i]= TextDrawCreate(508.000000, 383.000000, " ");
TextDrawBackgroundColor(tacho[i],255);
TextDrawFont(tacho[i],2);
TextDrawLetterSize(tacho[i],0.639999,2.399999);
TextDrawColor(tacho[i],16711935);
TextDrawSetOutline(tacho[i],1);
TextDrawSetProportional(tacho[i],1);
}
print("\n----------------------------------");
print(" Kilometerzähler Copyright by Pille.");
print("----------------------------------\n");
}
#else
#endif
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate==PLAYER_STATE_DRIVER)
{
tachovar[playerid]=SetTimerEx("tachotimer",200,true,"i",playerid);
TextDrawShowForPlayer(playerid,tacho[playerid]);
GetPlayerPos(playerid,xx[playerid],yy[playerid],zz[playerid]);
}
if(newstate==PLAYER_STATE_ONFOOT)
{
KillTimer(tachovar[playerid]);
TextDrawHideForPlayer(playerid,tacho[playerid]);
}
}
forward tachotimer(playerid);
public tachotimer(playerid)
{
new string[50];
new Float:distanz;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
distanz=GetDistanceFromPointToPoint(xx[playerid],yy[playerid],zz[playerid],x,y,z);
if(distanz>100) return 1;
distance[playerid]=distance[playerid]+distanz;
GetPlayerPos(playerid,xx[playerid],yy[playerid],zz[playerid]);
if(distance[playerid]>100)
{
m[playerid]++;
distance[playerid]=distance[playerid]-100;
if(m[playerid]==10)
{
km[playerid]++;
m[playerid]=0;
}
format(string,sizeof(string),"%i,%i KM",km[playerid],m[playerid]);
TextDrawSetString(tacho[playerid],string);
}
return 1;
}
forward Float:GetDistanceFromPointToPoint(Float:X,Float:Y,Float:Z,Float:tX,Float:tY,Float:tZ);
public Float:GetDistanceFromPointToPoint(Float:X,Float:Y,Float:Z,Float:tX,Float:tY,Float:tZ)
{
return Float:floatsqroot((tX-X)*(tX-X)+(tY-Y)*(tY-Y)+(tZ-Z)*(tZ-Z));
}
Ich meinte InGame