Beiträge von Firerfan

    Ausserdem willst du ja auch abfragen, ob der Spieler genug Geld ($5000) hat.

    if(Player[playerid][Respekt]==8 || GetPlayerMoney(playerid)>=5000)
    Natürlich bei "Player" dein Array setzen.

    setz ne Variable und Frag diese ab, fertig.
    Sprich:
    new hatgezahlt[MAX_PLAYERS];
    //-------
    hatgezahlt[playerid] = 0;
    if(hatgezahlt[playerid] == 0)
    {
    RemovePlayerFromVehicle
    SendClientMessage(playerid,COLOR_RED,"Du musst erst bezahlen!");
    }


    As grobes Codesnipsel.




    MfG Firer

    Achso, ja z.B.^^
    3 Positionen an denen man den CMD ausführen kann.
    Daneben einfach ne PlayerToPoint Abfrage mit den Koordinaten der LSPD-Garage und fertig is die Sache.


    //EDIT: Nicht 2 sondern 3 Positionen

    Das sind die x y und z koordinaten
    Auf der Map:
    Länge, Breite und Höhe (Wenn ich mich gerade nicht irre).


    Fast wie bei unserem GPS-System ;)



    //EDIT:
    Diese 3 Koordinaten sind für eine Ortsbestimmung wichtig.
    0.0,0.0,0.0 ist z.B. etwas unter einer Landfläche auf einem Bauernhof.

    Einfach ne neue "PlayerToPoint"-Abfrage neben die erste setzen, Koordinaten der PD-Garage einfügen (Von da wo man arresten soll) und fertig. Wenn du nicht weist wie das geht oder was ich meine hör lieber mit dem Scripten auf.



    MfG Firer

    forward spawntimer();
    public OnGameModeInit()
    {
    // Spawn deine Objecte etc.
    SetTimer("spawntimer",3000,false); //Spawntimer - Name | 300 - Zeit in Milisekunden | false - der Timer wird nicht wiederholt
    }
    public spawntimer()
    {
    // Spawn die Fahrzeuge)
    }

    Sorry wenn ich den alten Thread jetzt wieder rauskrame, aber das Funktioniert alles nicht X(
    Die Datei wird zwar erstellt und alles, aber beim connecten wird die Ban-Datei immer entfernt, auch wenn der Ban noch nicht ausgelaufen ist.
    OnPlayerConnect
    if(INI_Exists(string))
    {
    bantime = INI_ReadInt("dauer");
    INI_ReadString(admindgh,"admin",MAX_PLAYER_NAME);
    if(Now()<bantime)
    {
    new duration=(bantime-Now())/60;
    SendClientMessage(playerid,COLOR_RED,"** Dieser Account ist gebannt **");
    SendFormatMessage(playerid,COLOR_RED,"** Admin: %s | Dauer: %d Minuten **",admindgh,duration+1);
    Kick(playerid);
    }
    else
    {
    INI_Remove(string);
    }
    }
    Stock für den Ban:
    stock tBan(playerid,zeit,admin[])
    {
    new ipstring[40];
    format(ipstring,sizeof(ipstring),"bans/%s.txt",pname[playerid]);
    if(INI_Open(ipstring))
    {
    INI_WriteInt("dauer",(Now()+(zeit*60)));
    INI_WriteString("admin",admin);
    INI_Save();
    INI_Close();
    }
    Kick(playerid);
    }


    //EDIT: Genauere Infos eingefügt

    Bitte helfen ;)

    else if(IsPlayerInRangeOfPoint(playerid,2.0,eingange[i][i_x],eingange[i][i_y],eingange[i][i_z]) && GetPlayerVirtualWorld(playerid) == eingange[i][world])// Wir Fragen ab, ob die Position und die Virtual-World stimmt


    Kopiere dies bei schritt 4.
    Aber bitte achten - es ist die 2te Abfrage.


    Der Fehler war, ich hab das Interior mit der Virtuellen Welt verglichen^^
    Ich ändere das gleich im original topic.



    MfG Firer

    Das hier ist die Methode "Auf Knopfdruck" ;)
    Aber du hast recht, es geht bei so einem System sogar ohne for-schleife...


    Ganz übersehen, das ich einfach die PickupID verwenden könnte.
    Allerdings finde ich das mit dem Knopfdruck besser - mein kann nicht verstehentlich reinlaufen^^

    Hallo


    Vielleicht könntest Du noch ein Tut machen, wo mithilfe der Pickupid rumgeportet wird, dann könntest Du dir die for-Schleife sparen ;)
    Aber sonst gut brauchbar, ist ja der selbe Weg wie bei den Checkpoints.


    DUDA

    Naja, die schleife könnte ich mir nicht sparen, wenn ich das so mache wie oben^^
    Ich finde das ist die übersichtlichste Methode.


    Ja, die Daten werden oben Definiert.
    Eventuell bring ich sowas auch noch als Filterscript raus, das sich ingame Ein- und Ausgänge erstellen lassen.


    MfG Firer