Hallo leute, ich bin gerade dabei mein Selfmade zu testen und gerade etwas überfragt.
Erstens bekommt ich denke nur die ID 0 den Textdraw(code unten) angezeigt.
forward CheckTacho(playerid);
public CheckTacho(playerid)
{
new string[512],Float:vHealth,vehicleid = GetPlayerVehicleID(playerid), modelid = GetVehicleModel(vehicleid);
for(new i;i<MAX_PLAYERS;i++)
{
if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i))continue;
GetVehicleHealth(GetPlayerVehicleID(i),vHealth);
format(string,sizeof string,"%d",GetPlayerSpeed(i));
PlayerTextDrawSetString(i,CarSpeed[i],string);
format(string,sizeof string,"Zustand: ~g~%i",floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,Textzustand[i],string);
if(tuer[vehicleid] == false)
{
if(floatround(vHealth, floatround_round)/10 < 30) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~r~%d ~w~Prozent",PlayerVehicle[modelid - 400], floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 < 50) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~y~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 <= 100) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~g~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,CarFahrzeug[i],string);
}
else if(tuer[vehicleid] == true)
{
if(floatround(vHealth, floatround_round)/10 < 30) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~r~%d ~w~Prozent",PlayerVehicle[modelid - 400], floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 < 50) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~y~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 <= 100) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~g~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,CarFahrzeug[i],string);
}
}
return 1;
}
public CheckTacho(playerid)
{
new string[512],Float:vHealth,vehicleid = GetPlayerVehicleID(playerid), modelid = GetVehicleModel(vehicleid);
for(new i;i<MAX_PLAYERS;i++)
{
if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i))continue;
GetVehicleHealth(GetPlayerVehicleID(i),vHealth);
format(string,sizeof string,"%d",GetPlayerSpeed(i));
PlayerTextDrawSetString(i,CarSpeed[i],string);
format(string,sizeof string,"Zustand: ~g~%i",floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,Textzustand[i],string);
if(tuer[vehicleid] == false)
{
if(floatround(vHealth, floatround_round)/10 < 30) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~r~%d ~w~Prozent",PlayerVehicle[modelid - 400], floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 < 50) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~y~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 <= 100) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~g~Offen~w~~n~Zustand: ~g~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,CarFahrzeug[i],string);
}
else if(tuer[vehicleid] == true)
{
if(floatround(vHealth, floatround_round)/10 < 30) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~r~%d ~w~Prozent",PlayerVehicle[modelid - 400], floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 < 50) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~y~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
else if(floatround(vHealth, floatround_round)/10 <= 100) format(string,sizeof string,"Fahrzeug: ~g~%s~n~~w~Tueren: ~r~Geschlossen~w~~n~Zustand: ~g~%d ~w~Prozent",PlayerVehicle[modelid - 400],floatround(vHealth, floatround_round)/10);
PlayerTextDrawSetString(i,CarFahrzeug[i],string);
}
}
return 1;
}
Zumindest bekomme ich es angezeigt und im 2 PC von mir wird es nicht angezeigt, die anderen Textdraws funktionieren perfekt! hab auch schon die Schleife rausgenommen es geht trotzdem nicht.
Zweitens gehen bei dem Befehl die funktion nicht, also ich biete jemanden an sein Fahrzeug zu tanken doch es wird nicht getankt, der rest geht.
ocmd:fuellen(playerid,params[])
{
new string[128], pID;
if(SpielerInfo[playerid][pTeam] != 5) return SendClientMessage(playerid,error,"Diesen Befehl kannst du nicht nutzen. Benötigter Beruf: {#FF0000}Mechaniker");
if(Werkzeug[playerid] == 1)
{
if(sscanf(params,"ud",pID,fill[playerid]))return SendClientMessage(playerid,info,"/fuellen ID Preis");
if(!IsPlayerInAnyVehicle(pID)) return SendClientMessage(playerid, error, "Dieser Spieler befindet sich in keinem Fahrzeug!");
format(string, sizeof(string), "%s hat dir ein Angebot gemacht, dein Auto für %d$ zu Tanken!",SpielerName(playerid),heilerp[playerid]);
ShowPlayerDialog(pID,DIALOG_FILL,DIALOG_STYLE_MSGBOX,"%s möchte dein Auto Tanken",string,"Bestätigen","Abbrechen");
kunde[pID] = playerid;
}
else {
SendClientMessage(playerid, error, "Du hast keinen Werkzeugkoffer bei dir!");
}
return 1;
}
if(dialogid == DIALOG_FILL)
{
if(response == 1)
{
new string[128];
new vehicleid = (GetPlayerVehicleID(kunde[playerid]));
new m = GetVehicleModel(vehicleid);
format(string, sizeof(string), "Du hast %s für %d$ Fahrzeug aufgetankt",SpielerName(kunde[playerid]),fill[kunde[playerid]]);
SendClientMessage(kunde[playerid], info, string);
format(string, sizeof(string), "Dein Fahrzeug wurde von %s für %i$ aufgetankt",SpielerName(kunde[playerid]),fill[kunde[playerid]]);
SendClientMessage(playerid, erfolg, string);
GivePlayerMoney(playerid, -fill[kunde[playerid]]);
GivePlayerMoney(playerid, fill[kunde[playerid]]);
Tank[vehicleid] = GetVehicleMaxTank(m);
}
else if(response == 0)
{
SendClientMessage(playerid,error ,"Du hast den Vorgang abgebrochen!");
}
Das war es erstmal, danke für jede Hilfe
Mit freundlichen Grüßen