Problem mit (vermutlich) format();

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 habe (wieder einmal -.-) ein Problem. Und zwar soll,
    wenn man /wa ..... eingibt (script, siehe unten) die Meldung
    "Hauptzentrale: %s hat %s %d Wanteds gegeben, Grund: %s**
    für alle Cops kommen. Nehmen wir an das erste %s wird mit "SpielerXX"
    belegt und das zweite %s mit "SpielerYY". Wenn ich es teste:


    Anstatt -> "Hauptzentrale: SpielerXX hat SpielerYY %d Wanteds gegeben, Grund: %s**"


    steht das -> "Hauptzentrale: SpielerXX hat SpielerXX %d Wanteds gegeben, Grund: %s**"


    ocmd:wa(playerid,params[])
    {
    new pID,Anzahl;
    new name[MAX_PLAYER_NAME],namePID[MAX_PLAYER_NAME];
    new string[128], string2[128];
    new Grund[128];

    GetPlayerName(playerid,name,sizeof(name));
    GetPlayerName(pID,namePID,sizeof(namePID));


    if(Spieler[playerid][g_TEAM] == 901)
    {
    if(sscanf(params,"uds",pID,Anzahl,Grund)) return SendClientMessage(playerid,COLOR_GREY,"Benutzung: /wa [PlayerID] [Anzahl] [Grund]");
    {
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_GREY,"Dieser Spieler ist nicht Online!");
    {
    if(Anzahl < 1 || Anzahl > 6) return SendClientMessage(playerid,COLOR_GREY,"Du kannst nur Wanteds zwischen 1 und 6 vergeben!");
    {
    if(GetPlayerWantedLevel(pID) >= 6) return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler hat bereits 6 Wanteds!");
    {
    format(string,sizeof(string),"**Hauptzentrale: %s hat %s %d Wanteds gegeben, Grund: %s**",name,namePID,Anzahl,Grund); // <- Hier das Problem
    format(string2,sizeof(string2),"Verbrechen: Du hast von %s %d Wanteds bekommen, Grund: %s",name,Anzahl,Grund);
    SetPlayerWantedLevel(pID,GetPlayerWantedLevel(pID)+Anzahl);
    Spieler[pID][wantedgrund] = Grund;
    Spieler[pID][wantedreporter] = name[playerid];
    SendClientMessage(pID,COLOR_VERBRECHEN,string2);


    for(new i=0;i <= GetMaxPlayers(); ++i)
    {
    if(Spieler[i][g_TEAM] == 901)
    {
    SendClientMessage(i,COLOR_POLIZEIFUNK,string);
    return 1;
    }
    }
    }
    }
    }
    }
    return 1;
    }
    return 1;
    }


    Ich bitte um Hilfe!
    Danke,
    TyP_s