ich habe 9 bizzes die von 0 - 8 gehen und 8 ist das letzte Biz
Beiträge von Masterman
-
-
Danke das du probierst mir zu helfen und hier der scriptteil wo es benutzt wird
stock GetNearestTanke(playerid)
{
new Float: xx,
Float: xy,
Float: xz,
nearst,
Float:bx,
Float:by,
Float:bz;
GetPlayerPos(playerid,xx,xy,xz);
new Float:distance = 9999999.999999999,
Float:olddistance;
for(new x = 0;x < sizeof(SBizzInfo);x++)
{
bx = SBizzInfo[x][sbEntranceX];
by = SBizzInfo[x][sbEntranceY];
bz = SBizzInfo[x][sbEntranceZ];
olddistance = floatsqroot(floatpower(floatabs(floatsub(xx,bx)),2)+floatpower(floatabs(floatsub(xy,by)),2)+floatpower(floatabs(floatsub(xz,bz)),2));
if(olddistance < distance)
{
olddistance = distance;
nearst = x;
}
}
return nearst;
}
Function Fillup()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new VID;
new FillUp;
new string[256];
VID = GetPlayerVehicleID(i);
FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
if(Refueling[i] == 1)
{
if(GetPlayerMoney(i) >= SBizzInfo[GetNearestTanke(i)][sbEntranceCost])
{
Gas[VID] += FillUp;
FillUp = SBizzInfo[GetNearestTanke(i)][sbEntranceCost] * FillUp;
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,SBizzInfo[GetNearestTanke(i)][sbEntranceCost]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - SBizzInfo[GetNearestTanke(i)][sbEntranceCost]);
SBizzInfo[GetNearestTanke(i)][sbTill] += SBizzInfo[GetNearestTanke(i)][sbEntranceCost]-SBizzInfo[GetNearestTanke(i)][sbEntranceCost]/100*20;
FraktionsKasse[6] += SBizzInfo[GetNearestTanke(i)][sbEntranceCost]/100*20;
ExtortionSBiz(GetNearestTanke(i), SBizzInfo[GetNearestTanke(i)][sbEntranceCost]/100*50);
Refueling[i] = 0;
UnFreezePlayer(i);
printf("Stock returnt zu %d",GetNearestTanke(i));
}
else
{
format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",SBizzInfo[GetNearestTanke(i)][sbEntranceCost]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
UnFreezePlayer(i);
}
}
}
}
return 1;
} -
Jetz returnt er zu 8 was ist denn daran falsch ? :X
-
ich habs jetzt so probiert geht aber iwie immernoch nicht
stock GetNearestTanke(playerid)
{
new Float: xx,
Float: xy,
Float: xz,
nearst,
Float:bx,
Float:by,
Float:bz;
GetPlayerPos(playerid,xx,xy,xz);
new Float:distance = 9999999.999999999,
Float:olddistance;
for(new x = 0;x < sizeof(SBizzInfo);x++)
{
bx = SBizzInfo[x][sbEntranceX];
by = SBizzInfo[x][sbEntranceY];
bz = SBizzInfo[x][sbEntranceZ];
olddistance = floatsqroot(floatpower(floatabs(floatsub(xx,bx)),2)+floatpower(floatabs(floatsub(xy,by)),2)+floatpower(floatabs(floatsub(xz,bz)),2));
if(distance > olddistance)
{
//olddistance = distance;
nearst = x;
}
return nearst;
}
return 1;
} -
Und wie soll ich das fixen was ist GENAU daran falsch ?
-
Warum returnt der stock immer auf 0 ?
stock GetNearestTanke(playerid)
{
new Float: xx,
Float: xy,
Float: xz,
nearst,
Float:bx,
Float:by,
Float:bz;
GetPlayerPos(playerid,xx,xy,xz);
new Float:distance = 9999999.999999999,
Float:olddistance;
for(new x = 0;x < sizeof(SBizzInfo);x++)
{
bx = SBizzInfo[x][sbEntranceX];
by = SBizzInfo[x][sbEntranceY];
bz = SBizzInfo[x][sbEntranceZ];
floatsqroot(floatpower(floatabs(floatsub(xx,bx)),2)+floatpower(floatabs(floatsub(xy,by)),2)+floatpower(floatabs(floatsub(xz,bz)),2));
if(distance < olddistance)
{
olddistance = distance;
nearst = x;
}
}
return nearst;
} -
Keine ahnung wie ich das einsetzen sollte :X
Function Fillup()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new VID;
new FillUp;
new string[256];
VID = GetPlayerVehicleID(i);
FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
if(Refueling[i] == 1)
{
for(new j = 0; j< sizeof(SBizzInfo); j++)
{
if(IsPlayerInRangeOfPoint(i,40.0,SBizzInfo[j][sbEntranceX],SBizzInfo[j][sbEntranceY],SBizzInfo[j][sbEntranceZ]))
{
if(strfind(SBizzInfo[j][sbMessage],"Tankstelle",true))
{
if(GetPlayerMoney(i) >= SBizzInfo[j][sbTill])
{
Gas[VID] += FillUp;
FillUp = SBizzInfo[j][sbTill] * FillUp;
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,SBizzInfo[j][sbTill]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - FillUp);
SBizzInfo[j][sbTill] += FillUp;
ExtortionSBiz(j, FillUp);
Refueling[i] = 0;
UnFreezePlayer(i);
return 1;
}
else
{
format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",SBizzInfo[j][sbTill]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
UnFreezePlayer(i);
return 1;
}
}
}
else
{
if(GetPlayerMoney(i) >= SPRITPREISPROLITER)
{
Gas[VID] += FillUp;
FillUp = SPRITPREISPROLITER * FillUp;
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,SPRITPREISPROLITER);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - FillUp);
//SBizzInfo[i][sbTill] += FillUp;
//ExtortionSBiz(i, FillUp);
Refueling[i] = 0;
UnFreezePlayer(i);
return 1;
}
else
{
format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",SPRITPREISPROLITER);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
UnFreezePlayer(i);
return 1;
}
}
}
}
}
}
return 1;
} -
wenn ich /fill eingebe passiert aber nichts
if(strfind(SBizzInfo[j][sbMessage],"Tankstelle",true))
{
if(GetPlayerMoney(i) >= SBizzInfo[j][sbTill])
{
Gas[VID] += FillUp;
FillUp = SBizzInfo[j][sbTill] * FillUp;
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,SBizzInfo[j][sbTill]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - FillUp);
SBizzInfo[j][sbTill] += FillUp;
ExtortionSBiz(j, FillUp);
Refueling[i] = 0;
UnFreezePlayer(i);
return 1;
}
else
{
format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d / Liter.",SBizzInfo[j][sbTill]);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
UnFreezePlayer(i);
return 1;
}
} -
Ohne checkpoints mann soll /tanken eingeben dann soll der Preis der Tankstelle sein pro liter
-
es gibt z.B. zwei coordinaten einmal in Los Santos und einmal in Las venturas und ich möchte abfragen an welcher Coordinate der spieler näher dran ist und dann eine Variable ausgeben.
//edit: ich möchte mein Bizzsystem mit Tankstellen verbinden möchte aber das man an einer Tür das bizz kaufen kann und nicht immer in das Icon fahren muss.
-
Hallo wie kann man es machen das man abfragen kann welchem Punkt man am nächsten ist ?
-
Oh danke hab ich voll übersehen
-
-
Falscher bereich. guck mal in Scripting base oder such erstmal weil es gibt genug Tutorials.
-
Gebraucht würde auch gehen nur halt nicht ganz defekt
-
Hallo leute ich suche ein Handy für maximal 150€ und es sollte ein großes Display haben.
-
Hallo leute. Ich suche 1 Billige und leise Tastatur und Maus.
Kann mir da wer was empfehlen ? -
Ich habe schon einen Objectstreamer aber die Objecte am boden müssen halt normal sein weil da die Autos drauf stehen.
-
Hallo leute. Ich habe ein problem mit dem 0.3e SAMP Map Editor.
Manche objekte verschwinden einfach so im Spiel sind aber im Editor vorhanden. Woran liegt das ? -
Genau ich würde erstmal Treiber installieren :DD