Hab das über ne andere Art und Weise gelöst, danke trotzdem an alle.
Beiträge von dekoration ♕
-
-
Ist ja alles schön und gut, aber es funktioniert immer noch nicht..
Ich denke nicht, dass es an Klammern oder irgendwelchen anderen Kriterien liegen kann ausser dass ich eventuell was falsch beim Befehl formuliert hab.
Stimmt dieser Befehl an sich. Sollte er das tun was von ihm verlangt wird oder ist da irgendwo ein Fehler. Und damit meine ich den ersten Post. Falsche Klammern ausgeschlossen. -
Nun ist aber ziel nicht mehr definiert.
reicht ein einfaches new ziel[512] ? -
Die Klammern warens halt auf jeden Fall nicht.
Funktioniert immer noch nicht.
Und nebenbei. Die Klammern helfen mir meistens etwas leichter zu verstehn. Ist zwar irrsinnig aber egal.//e: Nope.
-
Danke,
doch nun will mein Gehirn da noch n else{ stehn haben...
Sollte das nicht bleiben?//e: funktioniert trotzdem nicht, mit und ohne Klammern
-
Guten Nachmittag an alle Brotfische da draussen,
wie man vllt. sehen kann bin ich erst seit kurzem eurer Community beigetreten.Nun erbitte ich euch folgendes Problem zu lösen.
Hierbei handelt es sich um einen eigentlich simplen /heal Befehl.if(strcmp(strget(cmdtext,0), "/heal", true) == 0)
{
if(!IstSpielerAdmin(playerid, 1)) return SendClientMessage(playerid, RED, "SERVER: Du bist kein Admin!");
{
new ziel = strval(strget(cmdtext,1));
if(!IsPlayerConnected(ziel)) return SendClientMessage(playerid, RED, "SERVER: Dieser Spieler ist nicht mit dem Server verbunden!");
{
if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, RED, "SERVER: Benutze: /heal ID");
{
new zielname[512];
new playername[512];
new msg[512];
new msg2[512];
new Float:health;
GetPlayerHealth(ziel,health);
if(health >= 100) return SendClientMessage(playerid, RED, "SERVER: Dieser Spieler muss nicht geheilt werden!"); //Der Fehler liegt denk ich mal hier
else
{
SetPlayerHealth(ziel, 100);
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerName(ziel, zielname, sizeof(zielname));
format(msg, sizeof(msg), "SERVER: Du hast %s geheilt!", zielname);
format(msg2, sizeof(msg2), "SERVER: %s hat dich geheilt!", playername);
SendClientMessage(playerid, RED, msg);
SendClientMessage(ziel, RED, msg2);
}
}
}
}
return 1;
}Nun zum Problem: Falls das "Ziel" 100 HP oder mehr hat soll eine Fehlermeldung wie sie oben bereits steht ausgegeben werden.
Diese wird aber nicht ausgegeben, wenn das "Ziel" mehr als 100 HP hat; ganz im Gegenteil, das Ziel wird auf 100 HP zurückgesetzt bzw. "geheilt".
Wenn das "Ziel" genau 100 HP hat, wird diese jedoch ausgegeben und der Spieler nicht geheilt.Ich hoffe ihr könnt mir da irgendwie weiterhelfen.
Danke,
Mit freundlichen Grüßen,
dekoration