/heal id problem :D

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo,
    ich wollte mir folgenden befehl machen

    ocmd:heal(playerid,params[])
    {
    if(klasse2[playerid] == 1)
    {
    new Medic;
    new verletzter;
    if(sscanf(params,"u",verletzter))return SendClientMessage(playerid,ROT,"/heal [SpielerID]");
    {
    SetPlayerHealth(verletzter,100);
    GivePlayerMoney(Medic,100);
    new string[256];
    format(string,sizeof(verletzter),"Du wurdest von Artzt %s geheilt.",verletzter);
    SendClientMessage(verletzter,ROT,string);
    }
    else
    {
    SendClientMessage(playerid,0x00FF00FF,"Du bist kein Medic.");
    }
    }
    return 1;
    }

    aber bekomme folgende fehler :
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(186) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(186) : error 017: undefined symbol "ocmd_heal"
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(186) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(186) : fatal error 107: too many error messages on one line
    hab ocmd und sscanf


    mfg Varg

  • dann kommt :
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(188) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(188) : error 017: undefined symbol "params"
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(188) : warning 215: expression has no effect
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(188) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(188) : fatal error 107: too many error messages on one line
    selbe zeile
    arbeite mit ocmd noch ned so lange :D

  • das ocmd_heal definieren ist unsinn mach mal das new verletzter zu
    new verletzter[32];


    und mach noch zusätzlich
    new pID;


    dann mach
    if(sscanf(params,"u",verletzter))return SendClientMessage(playerid,ROT,"/heal [SpielerID]");
    zu
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"/heal [SpielerID]");
    GetPlayerName(pID,verletzter,sizeof(verletzter));


    ich hoffe ich konnte dir helfen
    mfG

    La Cosa Nostra ♥

  • C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(187) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(187) : error 017: undefined symbol "ocmd_heal"
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(187) : error 029: invalid expression, assumed zero
    C:\Users\Kai\Desktop\server\gamemodes\Elite_War2.pwn(187) : fatal error 107: too many error messages on one line
    und so gelangen wir wieder zum anfang :D
    brauch noch hilfe :D

  • new Medic;
    new verletzter;
    if(sscanf(params,"u",verletzter))
    {
    return SendClientMessage(playerid, FARBE, "Verwendung: /heal [SpielerID]");
    }
    SetPlayerHealth(verletzter,100);
    GivePlayerMoney(Medic,100);
    new string[256];
    format(string,sizeof(verletzter),"Du wurdest von Artzt %s geheilt.",verletzter);
    SendClientMessage(verletzter,ROT,string);

  • ocmd:heal(playerid,params[])
    {
    if(klasse2[playerid] == 1)
    {
    new Medic;
    new verletzter;
    if(sscanf(params,"u",verletzter))return SendClientMessage(playerid,ROT,"/heal [SpielerID]");
    {
    SetPlayerHealth(verletzter,100);
    GivePlayerMoney(Medic,100);
    new string[256],Name[30];
    GetPlayerName(verletzter,Name,30);
    format(string,sizeof(verletzter),"Du wurdest von Artzt %s geheilt.",Name);
    SendClientMessage(verletzter,ROT,string);
    }
    else
    {
    SendClientMessage(playerid,0x00FF00FF,"Du bist kein Medic.");
    }
    }
    return 1;
    }

  • Leute, ihr könnt nicht für eine Abfrage, die bereits direkt nach dieser eine Funktion auslöst, noch Klammern setzen!


    if(1 == 2) SendClientMessage(playerid, ROT, "Test");
    {
    //geht nicht!!!
    }


    Das ist falsch!

  • Leute, ihr könnt nicht für eine Abfrage, die bereits direkt nach dieser eine Funktion auslöst, noch Klammern setzen!


    if(1 == 2) SendClientMessage(playerid, ROT, "Test");
    {
    //geht nicht!!!
    }


    Das ist falsch!


    LoL? (0147) :D
    Natürlich geht das, ist aber sinnlos,
    es wird halt einfach weiter ausgelesen?

  • ocmd:heal(playerid,params[])
    {
    if(klasse2[playerid] == 1)
    {
    new verletzter;
    if(sscanf(params,"u",verletzter))return SendClientMessage(playerid,ROT,"/heal [SpielerID]");
    SetPlayerHealth(verletzter,100);
    GivePlayerMoney(playerid,100);
    new string[50], Name[MAX_PLAYER_NAME];
    GetPlayerName(verletzter, Name, sizeof Name);
    format(string,sizeof(string),"Du wurdest von Artzt %s geheilt.",Name);
    SendClientMessage(verletzter,ROT,string);
    }
    else
    {
    SendClientMessage(playerid,0x00FF00FF,"Du bist kein Medic.");
    }
    return 1;
    }

  • Echt? Na ja, tut nix zur Sache ^^
    In diesem Fall würde der Code in den Klammern nur aufgerufen werden, wenn ein Parameter fehlt.