[SUCHE]/giveallscore

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
  • Blackace.
    Das soll ja auch so sein, weil man schlagartig den SCM abkriegt.


    Und sowas unnötiges von dem Vorposter , wie vonwegen es würde nicht klappen, dass sollte man es erstmal ausprobieren und dann schreiben...

  • Das Script setzt nun den Socre des Spielers mit der ID 0 auf +50,
    dann sendet er eine ClientMessage, und dann beendet er die Schleife.


    Alle anderen Scores werden nicht verändert.



    Die Lösung:
    ocmd:giveallscore (playerid,params[])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    SetPlayerScore(i, GetPlayerScore(i) +50);
    }
    }
    SendClientMessage(playerid, 0xffffffff, "Allen Spielern wurden 50 Score geschenkt!");
    return 1;
    }

  • Das Script setzt nun den Socre des Spielers mit der ID 0 auf +50,
    dann sendet er eine ClientMessage, und dann beendet er die Schleife.


    Nein tut es nicht.
    Es erhöht den Score des Spielers um 50, der Connected ist
    wenn keine ID 0 connected ist, bekommt ID 1 das...

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Sehe nur dass du es von mir kopiert hast, außer dass du SCM unter dem } gemacht hast.
    MAX_PLAYERS sagt einfach aus, dass wenn der Wert darunter liegt (sprich die Anzahl der Spieler) dass er dann weiter macht , sprich continue; (in dem Fall nicht nötig!

  • Kurz gesagt: Mit folgender Lösung bekommt der User mit der niedrigsten ID,
    der gerade auf dem Server ist +50 Score, und das wars.
    Nurnoch die Nachricht kommt.

    Spoiler anzeigen
    ocmd:giveallscore (playerid,params[])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    SetPlayerScore(i, GetPlayerScore(i) +50);
    SendClientMessage(playerid, 0xffffffff, "Allen Spielern wurden 50 Score geschenkt!");
    return 1;
    }
    }
    return 1;
    }

  • Wieso so umständlich?


    ocmd:giveallscore (playerid,params[])
    {
    new score, string[128], PlayerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
    //Adminabfrage
    if(sscanf(params, "d", score)) return SendClientMessage(playerid, FARBE, "Nutze /giveallscore [Menge]");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    SetPlayerScore(i, GetPlayerScore(i) +score);
    }
    }
    format(string, sizeof(string), "Admin %s hat allen Verbundenen Spielern auf dem Server %d Score geschenkt!", PlayerName, score);
    SendClientMessageToAll(0xffffffff, string);
    return 1;
    }


    ungetestet.




    /e: Rechtschreibfehler behoben.

    [align=center]

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen