sscanf abfrage sagt mir falsche parameter...

  • Hallo Community,
    Ich weiß nicht was da falsch ist hier der code:


    ocmd:heal(playerid,params)
    {
    if(isPlayerInFrakt(playerid, 6))
    {
    new pID, pheal, hpreis;
    new string[128], string2[128];
    if(sscanf(params,"uii[128]",pID,pheal,hpreis))return SendClientMessage(playerid,GRAU,"Verwendung: /heal [playerid] [heal] [preis]"); //Fehler zeile
    if(pheal<100||pheal>100)return SendClientMessage(playerid,GRAU,"Achtung: Du darfst nicht unter oder über 100HP heilen!");
    if(hpreis<0||hpreis>150)return SendClientMessage(playerid,GRAU,"Achtung: Der Preis darf nicht unter 0$ und nicht über 150$ sein.");
    SetPlayerHealth(pID,pheal);
    GivePlayerMoney(pID,-hpreis);
    GivePlayerMoney(playerid,hpreis);
    format(string,sizeof(string),"Du hast %s auf %dHP für %d$ geheilt.",SpielerName(pID),pheal, hpreis);
    SendClientMessage(playerid,DROT,string);
    format(string2,sizeof(string2),"Du wurdest von %s auf %dHP für %d$ geheilt.",SpielerName(playerid),pheal,hpreis);
    SendClientMessage(pID,-1,string);
    }
    else
    {
    SendClientMessage(playerid,GRAU,"Fehler: Du bist nicht beim Rettungsdienst!");
    }
    return 1;
    }


    Zeile (576) : Falscher Variablentyp als Parameter (Parameter #1)

  • Musst es so schreiben:


    if(sscanf(params,"uii",pID,pheal,hpreis))return SendClientMessage(playerid,GRAU,"Verwendung: /heal [playerid] [heal] [preis]"); //Fehler zeile

    Nur bei s die Länge vom Array angeben ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S