Da du sscanf benutzt, musst du einfach die anzahl an parametern bei sscanf ändern.
sscanf nimmt einen string, in deinen fall den mit den parametern des befehls (alles was nach dem befehl selbst, also /heal, kommt sind die parameter. z.b bei dir [ID] [Heal] = 2 parameter) und teilt diese. Weil du ja einmal [ID] und einmal [Heal] hast, werden als parameter "ud" angegeben.
u steht für die ID eines Spielers, oder den namen eines spielers.
d steht für eine ganze zahl, wie z.b 100 oder 1 oder 0 oder 12312532452345245.
Danach kommen die variablen, an die die parameter übergeben werden damit du sie dann im befehl verwenden kannst. u wird an pID übegeben, und d an heal.
Sollte der befehl nicht diese anzahl an parametern enthalten, lso z.b /heal 0 test (0 ist richtig, aber der zweite parameter ist keine zahl) oder /heal 1.5 100 (1,5 ist falsch, weil es weder eine spielerid sein kann noch ein name) wird true zurück gegeben. So weisst du, das wenn sscanf true zurück gibt, der jenige der den befehl eingegeben hat nicht die richtige anzahl an parametern eingegeben hat und du die fehlermeldung "Benutze: /heal [ID] [Heal]" zurück geben kannst.
Wenn du jetzt nicht mehr die anzahl an leben angeben möchtest, sondern nur noch die id des spielers, machst du aus "ud" einfach nur "u" (weil wir dann ja nur noch spielerid/spielername brauchen), und nimmst die variable für den heal wert raus. Also:
if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_BLAU,"Benutze: /heal [ID]");//Die Meldung wird natürlich auch dementsprechend geändert^^
nun änderst du noch den wert der bei SetPlayerHealth gegeben wird. Vorher war der wert ja als heal angegeben, was die variable war in der wir den angegeben wert gespeichert hatten bei /heal [ID] [Heal]. Da du möchtest das der Spieler direkt wieder volles leben hat, änderst du das einfach auf 100.0, also:
SetPlayerHealth(pID,100.0);
Und zu guter letzt nimmst du noch die heal variable raus.
Am ende sollte das dann ungefähr so aussehen:
ocmd:heal(playerid,params[])
{
if(!isPlayerInFrakt(playerid,6)) return SendClientMessage(playerid,COLOR_ROT,"Du bist kein Arzt!");
new pID, string[128];
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,COLOR_BLAU,"Benutze: /heal [ID]");
SetPlayerHealth(pID,100.0);
format(string,sizeof string,"Arzt %s hat dich Erfolgreich geheilt.",SpielerName(playerid));
SendClientMessage(pID,COLOR_GRÜN1,string);
format(string, sizeof string,"Du hast Patient %s Erfolgreich geheilt!",SpielerName(pID));
SendClientMessage(playerid,COLOR_GRÜN1,string);
return 1;
}
Und feritg