Beiträge von Johann_x3

    Also hier erkläre ich mal kurz und knapp die "Loop's".


    Schleifen werden meistens gebraucht um mehreren Spielern eine Funktion "anzuhängen" die eigentlich
    nur für "playerid" (einem Spieler) gedacht ist!
    ____________________________________________________________________________
    Es gibt auch "while" schleifen nur diese kann ich im moment kaum.
    Kommt nocht :)

    ____________________________________________________________________________
    Ein Beispiel (for-loop):
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i)) continue;
    SendClientMessage(i, 0x0066CCFF, "Dies ist ein TEST-Text!"); //i Da die Message nicht an "playerid" sondern an jeden geschickt werden soll der "i" ist (Alle da wir MAX_PLAYERS als i definiert haben
    }
    /*Dies ist eine Alternative zu "SendClientMessageToAll"*/


    Erläuterung (for loop):


    /*Standart:*/
    for(new i = 0; i<MAX_PLAYERS; i++)//Um diese Zeile geht es


    /*Verändert:*/
    for(new i = 0; i<GetMaxPlayers(); i++)//Um diese Zeile geht es


    new i = 0; - Definiert die Variable "i" und wird auf "0" gesetzt.
    i<MAX_PLAYERS; - Fragt ob "i" kleiner ("<") als "MAX_PLAYERS" ist.


    i++ - "i" wird + 1 Addiert ("++").
    continue - Lässt eine Schleife weiter arbeiten.
    break - Lässt die Schleife eine Pause machen(!!VERMUTE ICH!!)

    ____________________________________________________________________________
    Eine Andere Version für die for-schleife?
    Kein Ding diese ist Recourceschonender und viel schneller.

    new i = 0;
    for(;i < GetMaxPlayers(); i++) {
    }
    ____________________________________________________________________________
    Ein Beispiel womit man die auch benutzen kann diese Schleifen:
    (Selfmade)

    stock RespawnAllCars() { for(new veh = 0; veh < MAX_VEHICLES; veh++) SetVehicleToRespawn(veh); return 1; }
    /*Mit dieser Funktion kann man alle Autos Respawnen
    Anwendung:


    -Im CMD einfach "RespawnAllCars();" einfügen und den CMD ingame eingeben und SCHWUPS alle Cars wieder da!
    Diese Funktion Respawned alle Cars die im Script definiert sind und die die per /veh gespawned wurden!*/


    ____________________________________________________________________________



    WHILE-LOOPS


    "while"- zu Deutsch "whärend"-Schleifen/Loops.


    new
    i = 0;//Wir definieren "i" und setzen "i" auf "0"
    while (i < 10)//whärend i kleiner als ("<") 10 ist
    {
    i++; //Wird "i" + 1 Addiert
    /*Was im Loop passieren soll*/
    }
    /*Nach dem Loop*/
    Besser kann ich das noch nicht X(


    ____________________________________________________________________________
    Comming Soon?



    While-Loop's Vollständige erklärung


    Break + Continue erklärung


    Bisschen mehr ?



    Wenn du "/save <Kommentar>" eingeben hast bekommst du keine Message mehr wie früher,
    es wird einfach nur gepeichert im Pfad "C:/Programme/Rockstar Games/Grand Theft Auto San Andreas/savedpositions.txt"


    Kurz in deinem GTA Ordner!

    4/10 Kann man sich in max. 10 min basteln in nichts besonderes und demnach auch sinnlos, Pickup wo man hinmuss un d nen Timer der nach ner stunde immer neu anfängt oder iwie sowas der halt angibt ob man reifen aufpumpne muss ... Und an der Tanke für 5$ oder so Reifenaufpumpen sonst hat man nen platten... Das wär was besseres!

    stock RespawnAllCars() { for(new veh = 0; veh < MAX_VEHICLES; veh++) SetVehicleToRespawn(veh); return 1; }


    • Respawn alle Autos für jeden Spieler
    • Ganz Easy

    Anwendung:
    if(strcmp(cmd, "/respawn", true) == 0) {
    if(IsPlayerAdmin(playerid)) {
    RespawnAllCars(); //Hier xD
    SendClientMessage(i, COLOR_DEFINE, "RCON-Admin hat die Cars Respawned"); }
    } else {
    SendClientMessage(playerid, COLOR_DEFINE, "Du bist kein RCON Admin"); }
    return 1; }


    RespawnAllCars - Man kann auch nen Timer erstellen der dann den Callback aufruft und halt jeden Payday oder so die Cars respawned!



    PS: Meine erste stock funktion ganz easy :P

    OnPlayerExitVehicle??


    Dh wenn einer Aussteigt werden alle cars für jeden spieler respawnt?
    Mach es in nen CMD
    if(strcmp(cmd, "/respawn", true) == 0) {
    if(IsPlayerAdmin(playerid)) {
    for(new i = 0;i<MAX_VEHICLES;i++) {
    SetVehicleToRespawn(i); SendClientMessage(i, COLOR_DEFINE, "RCON-Admin hat die Cars Respawned"); }
    } else { SendClientMessage(playerid, COLOR_DEFINE, "Du bist kein RCON Admin"); } return 1; }


    Dies klappt bzw kein Error im Script, und Definier nur die Farbe und änder den namen oder so "COLOR_DEFINE" hab ich jz benutzt
    Logge dich aber erst als RCON Admin ein oder schreib es bissl um^^


    Ausgeschrieben:


    if(strcmp(cmd, "/respawn", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    for(new i = 0;i<MAX_VEHICLES;i++)
    {
    SetVehicleToRespawn(i);
    SendClientMessage(i, COLOR_DEFINE, "RCON-Admin hat die Cars Respawned");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_DEFINE, "Du bist kein RCON Admin");
    }
    return 1;
    }

    Wenn er in der DM-Zone Spawnen soll, solltest du iwas definiert haben..

    if(indm[playerid] == 1)//Abfragt ob er In der DM Zone ist (Ist Beispiel)
    {
    //Hier kannst du die Koordinaten rein haun am besten per Float
    }
    else //Oder ist er nicht in der DM Zone? Hier den normalen spawn
    {
    // normaler spawn wenn nicht indm
    }


    new indm[MAX_PLAYERS]; //... Definieren davor^^

    Warum guckn wie weit er kommt?


    Ich hba es so verstanden:
    Die 2 Buttons unten zeigen keine Funktion bzw sind "defekt".
    Wenn man was Auswählt passiert ncihts wenn man den Rechten/Linken
    Button betätigt.


    Stimmts?