Danke, mich hat nur der eine Warning gestört, aber da hatte ich nur = anstatt == gemacht.
Danke
Danke, mich hat nur der eine Warning gestört, aber da hatte ich nur = anstatt == gemacht.
Danke
Und wie? So wird das ja sicher nicht funktionieren oder?
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if (oldstate = PLAYER_STATE_DRIVER)
{
PlayerTextDrawHide(playerid, vehHealthText[playerid]);
}
return 1;
}
Wie mache ich denn das? Mit einer if Abfrage?
Trotzdem steigt man zu langsam aus/ab und es wird wieder geshowed.
Vieeeeelen Dank! Ich hätte jetzt bestimmt noch bis um 3 Uhr Nachts gesessen, bis ich das selber hin bekommen hätte.
EDIT: Wenn man das Fahrzeug verlässt zerstöre ich immer den Textdraw. Doof nur, dass man das Fahrzeug so langsam verlässt und der Textdraw dann meistens wieder erstellt wird und dann auch stehen bleibt, wenn man nicht mehr drin sitzt.
Ich will ja, dass die Anzeige immer Aktuell bleibt, heißt, wenn ich vor eine Wand fahre und nur noch 75% habe, dann soll da auch sofort 75% stehen und nicht erst, wenn ich das nächste mal in das Fahrzeig steige.
EDIT: Stimmt, da war ja was... Wie gesagt, habe bestimmt 3 Jahre nichts mehr geschrieben.
Danke
Jetzt hab ich aber ein Problem. Möchte mit einer While Schleife überprüfen, ob der Player noch im Fahrzeug ist und wenn er es ist, dann soll eben die VehicleHealth geschrieben werden (habe es mittlerweile als TextDraw). Wenn der Player nicht mehr im Fahrzeg ist, soll die Schleife aber enden und nicht den Server unnötig auslasten.
Hab das jetzt so, aber ich vermute, dass das nicht passt
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
new
Float:health,
string[25];
while (IsPlayerInVehicle(playerid, vehicleid) = 1)
{
PlayerTextDrawDestroy(playerid, healthText[playerid]);
GetVehicleHealth(vehicleid, health);
format(string,sizeof(string), "Fahrzeug: %.0f%s", health/10.0, "%");
healthText[playerid] = CreatePlayerTextDraw(playerid, 320.0, 0.0, string);
PlayerTextDrawShow(playerid, healthText[playerid]);
};
return 1;
}
Danke. Will ja nicht nur kopieren, sondern auch lernen und anwenden können
Danke, passt. Kannst du vielleicht erklären, was genau jetzt passiert ist? Einfach ein String, der eingefügt wird und das % Zeichen beinhaltet, oder?
Hab ich auch schon probiert, dann crasht aber der Server.
Zeigt immer noch kein % Zeichen an.
Öhm nee. Da kommt dann zB. 1250055484848545 raus. Kann ja keinen Float als Integer ausgeben, da kommt dann nämlich dieser Schrott raus.
Moin Leute,
ich hab gestern zum Spaß nach Jahren angefangen mir wieder einen kleinen Server zu schreiben. Habe früher immer nur Copy'n'Paste gemacht und möchte das ganze nun richtig lernen.
Jetzt zu meinem Problem:
Ich lasse mir jedes Mal, wenn ich in ein Fahrzeug steige die Leben des Fahrzeugs (vorerst im Chat) ausgeben. Wollte dort gerne von 0 - 100 % stehen haben. Ich habe jetzt auch zB. "Das Fahrzeug hat noch 52 Struktur." da stehen, möchte aber gerne 52% Struktur haben. Einfach ein % Zeichen rein setzen ist nicht und auf andere Arten hab ich auch nichts vernünftiges hin bekommen. Kann mir wer helfen?
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
new
Float:health,
string[36];
GetVehicleHealth(vehicleid, health);
format(string,sizeof(string), "Das Fahrzeug hat noch %.0f Struktur.", health/10.0);
SendClientMessage(playerid, COLOR_RED, string);
return 1;
}