For Schleife Fehler

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
  • Ich helfe dir mal indem ich dir bisschen was beschreibe:


    So hast du das gemacht :
    for(new i = 10; i < MAX_PLAYERS; i++)


    for = Schleife
    new i = 10; = Declaration and initialization of a variable
    i < MAX_PLAYERS = Condition
    i++ = Counter


    Auf Deutsch:
    Du deklarierst eine neue Variable und initzialisiert diese in deinem Fall i=10; Dann schreibst du die Condition (Abfrage) und sagst i < MAX_PLAYERS. Das heißt solange i kleiner als MAX_PLAYERS ist wird diese Schleife ausgeführt.
    mit dem i++ zählst du i immer hoch. Also wenn die Message ausgeführt wird geht i++ also beim nächsten durchlauf wäre es 11. Das ging solange bis MaxPLAYERS erreicht ist.


    Aber du willst diese Message 10 mal schreiben.
    Also solltest du es so machen:
    for(new i = 0; i < 10; i++)


    So zählst du solange bzw. führst den Body of Loop solange durch bis i 10 erreicht hat.


    Ich hoffe ich konnte dir damit etwas helfen.

    MFG

  • So sendest du an jeden Spieler nur eine Zeile bis auf die ersten 10 ID's, soweit ich den Code so spontan am Handy verstehe :)


    Könnte mir das so vorstellen:

    for(new p; p < MAX_PLAYERS; p++) {
    SendClearBlock(i, 10);
    }


    stock SendClearBlock(playerid, rows) {
    for(new m; m < rows; m++) {
    SendClientMessage(playerid, 0x00000000, " ");
    }
    }

    Geht sicherlich noch besser, kürzer und einfacher, aber ok ^^


    Lg