Einfacher Scripten (Ressourcenschonender)

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
  • Wenn du vor hast noch mehrere solche pickups zu erstellen, ware es auf jeden Fall übersichtlicher und einfacher, wenn auch ned Viel Ressourcensparender, die pickupids in nem array zu speichern und diese dann im calback entweder mit nem switch, oder direkt mit ner for-schleife abzufangen.
    Das würde Dir bei richtiger anwendung und bei steugender quantitat viele Zeilen Script und auch arbeit ersparen.

  • Am Handy eher schwer. Naja, vielleicht verstehst Dus ja.
    Natürlich deklariwrst du erstmal ein globales Array.
    new pfandflasche[2];


    In dieses speicherst du dann deine pickupid rein, wenn du das pickup erstellst.
    pfandflasche[0]=createpickup(....
    pfandflasche[1]=createpickup


    Im callback gehst du mit ner schleife dein gesamtes Array durch und prufst ob die pickupid in deinem Array enthalten ist.
    For(new i=0; i<sizeof(pfandflaschen); i++) {
    if(pickupid==pfandflaschen[i]) {


    }
    }


    Is zwar Jetz extrem schlecht geschrieben, aber mehr mag ich am Handy auch ned schreiben...
    Vielleicht checkst ja, wies im Grunde geht.



  • Habe das nun so :)


    for(new i = 0;i<sizeof(pfand);i++)
    {
    if(pickupid == pfand[i])
    {
    SendClientMessage(playerid,weis," Du hast eine Pfandflasche gefunden!");
    Spieler[playerid][pfandflaschen] ++;
    new query[90];
    format(query,sizeof(query),"SELECT pfandflaschen FROM accounts WHERE Username='%s'",Name(playerid));
    mysql_function_query(dbhandle,query,false,"","");
    format(query,sizeof(query),"Aktuelle Pfandflaschen: %d",Spieler[playerid][pfandflaschen]);
    SendClientMessage(playerid,weis,query);
    SetPlayerScore(playerid,3);
    return 1;
    }
    }


    Ist das richtig?