Wie die überschrift sagte ich hab ein error beim heal command
error:
C:\Users\ascom\Desktop\Samp server\gamemodes\Untitled.pwn(1051) : error 035: argument type mismatch (argument 1)
in zeile:
SetPlayerHealth(Verletzte,100);
Hoffe einer kann helfen
Wie die überschrift sagte ich hab ein error beim heal command
error:
C:\Users\ascom\Desktop\Samp server\gamemodes\Untitled.pwn(1051) : error 035: argument type mismatch (argument 1)
in zeile:
SetPlayerHealth(Verletzte,100);
Hoffe einer kann helfen
Da könnte playerid stehen
Poste mal das ganze Befehl
hier
ocmd:heal(playerid,params[])
{
if(!IstSpielerInFraktion(playerid,7)) return 0;
new Medic[128],Verletzte[128];
if(sscanf(params,"uis",Verletzte,Medic))return SendClientMessage(playerid,Blau,"/heal [SpielerID]");
format(Verletzte,sizeof(Verletzte),"Du wurdest vom Sanitäter %s geheilt!",Medic,Verletzte);
format(Medic,sizeof(Medic),"Du hast einen Patienten geheilt!");
SetPlayerHealth(Verletzte,100);
return 1;
}
So sollte es richtig sein ;D
ocmd:heal(playerid,params[])
{
new string[128];
if(!IstSpielerInFraktion(playerid,7)) return 1;
if(sscanf(params,"u",pID))return SendClientMessage(playerid,Blau,"/heal [SpielerID]");
format(string,sizeof(string),"Du wurdest vom Sanitäter %s geheilt!",SpielerName(playerid));
format(string,sizeof(string),"Du hast %s geheilt!",SpielerName(pID));
SetPlayerHealth(pID,100);
return 1;
}
stock SpielerName(playerid)
{
new GAMER[MAX_PLAYER_NAME];
GetPlayerName(playerid,GAMER,sizeof(GAMER));
return GAMER;
}
Den Fehler, den du gemacht hast ist, dass du für die ID im SetPlayerHealth keine Zahl, sondern einen string, Text, verwendet hast.
Wtf, ich versteh iwie nicht was du dir dabei gedacht hast. So müsste es richtig heißen:
ocmd:heal(playerid,params[])
{
if(!IstSpielerInFraktion(playerid,7)) return 1; // Hier musst du 1 statt 0 returnen, sonst kommt bei dem Spieler Unknown Command. Würde dir auch ampfehlen dem Spieler noch ne Nachricht zu senden von wegen "Du bist kein Medic" oder so
new medic[MAX_PLAYER_NAME],pID,string[128];
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,Blau,"/heal [SpielerID]");
GetPlayerName(playerid,medic,sizeof(medic));
format(string,128,"Du wurdest vom Sanitäter %s geheilt!",medic);
SendClientMessage(pID,Blau,string);
SendClientMessage(playerid,Blau,"Du hast einen Patienten geheilt!");
SetPlayerHealth(pID,100);
return 1;
}
//Edit: Shoxx: Ebenfalls zwei Fehler die mir direkt ins Auge stechen. Erstens hast du pID nicht definiert ("new pID;") und zweitens wird der string zwar formatiert aber nichts ausgegeben
Danke hat geholfen