Problem mit der Loop Funktion

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
  • Abend,


    Und zwar bin ich gerad dabei ein Pflanzen System zu erstellen.
    Problem ist nur dass, immer wenn ich den Befehl ausführe 100 Dateien erstellt werden.
    Und ich verstehe es nicht, warum?


    Hier mal der Code.


    Code:




    ocmd:pflanzen(playerid)
    {
    for(new drugid=0;drugid<MAX_DRUGS;)
    {
    if(PlayerDaten[playerid][pTutorial] == 1)return SendClientMessage(playerid,ORANGE," Du bist noch im Tutorial!");
    if(PlayerDaten[playerid][pLogin] == 0)return SendClientMessage(playerid,ORANGE ," Du bist nicht Eingeloggt!");
    if(PlayerDaten[playerid][pFraktion] != 1)return SendClientMessage(playerid, ORANGE, " Nur für Gangs, Mafien oder Organisationen");
    if(DrugSys[drugid][Pflanzenanzahl] == 3)return SendClientMessage(playerid, DUNKELROT, " Es können nur 3Pflanzen gepflanz werden.");
    {
    new Float:x,Float:y,Float:z, string[32], drgid;
    SendClientMessage(playerid, ORANGE, "[SYSTEM]: Du hast einen Hanfsamen angepflanz, achte auf den Wasserstand!");
    GetPlayerPos(playerid,x, y, z);
    format(string,sizeof(string),"%s", SpielerName(playerid));
    DrugSys[drugid][Pflanzenanzahl] += 1;
    drgid = 1;
    CreatePflanze(x, y, z, drgid, string);
    }
    }
    return 1;
    }



    Nehme ich die for schleife raus. Funktioniert es problemlos.
    Nehme ich sie wieder rein, werden wie geschrieben 100 Dateien erstellt..




    Hoffe ihr könnt mir da weiterhelfen.



    MfG

  • ocmd:pflanzen(playerid)
    {
    if(PlayerDaten[playerid][pTutorial] == 1)return SendClientMessage(playerid,ORANGE," Du bist noch im Tutorial!");
    if(PlayerDaten[playerid][pLogin] == 0)return SendClientMessage(playerid,ORANGE ," Du bist nicht Eingeloggt!");
    if(PlayerDaten[playerid][pFraktion] != 1)return SendClientMessage(playerid, ORANGE, " Nur für Gangs, Mafien oder Organisationen");
    for(new drugid=0;drugid<MAX_DRUGS;drugid++)
    {
    if(DrugSys[drugid][gepflanzt] == 1) continue;
    new Float:x,Float:y,Float:z, string[32];
    SendClientMessage(playerid, ORANGE, "[SYSTEM]: Du hast einen Hanfsamen angepflanz, achte auf den Wasserstand!");
    GetPlayerPos(playerid,x, y, z);
    format(string,sizeof(string),"%s", SpielerName(playerid));
    DrugSys[drugid][gepflanzt] = 1;
    CreatePflanze(x, y, z, 1, string); //Hier noch die drugid mitgeben
    return 1;
    }
    return SendClientMessage(playerid, DUNKELROT, " Es können nur 3Pflanzen gepflanz werden.");
    }


    So sollte es passen.
    gepflanzt musst du noch im enum anlegen.