Beiträge von Firerfan

    Dann machst du es einfach rein.

    public OnVehicleSpawn(vehicleid)


    Lg byBSE


    Ein Callback der leider beim ersten Spawnen der Fahrzeuge übersprungen wird.
    Lads doch einfach bei "OnGameModeInit" mit rein O.o


    public OnGameModeInit()
    {
    //--- fahrzeuge...
    SetVehicleHealth(cop[0],2000);
    //...
    /--- Rest
    }


    Musst es halt auf deine Bedürfnisse anpassen ;)


    //EDIT: Da ich gerade erst sehe, wieviele das sind.. nehm doch ne schleife O.o
    for(new ccar; ccar < sizeof(PolizeiVehs); ccar++)
    {
    SetVehicleHealth(PolizeiVehs[ccar],2000.0);
    }

    Finde es gut, dass sich leute vornehmen mal ein Spiel zu entwickeln.
    Ich hoffe, das was bei rausspringt und gleich zu Anfang mal ein Tipp:


    "Graficker" schreibt man nicht mit "ck" sondern mit "k" -> "Grafiker"...




    MfG Firer

    Hmm.... Meine Idee:
    for(new i; i<MAX_VEHICLES; i++)
    {
    if(IsAArmyCar(i) && !IsAnyPlayerInVehicle(i))
    {
    SetVehicleToRespawn(i);
    }
    }
    //--------------------
    stock IsAnyPlayerInVehicle(vehicleid)
    {
    new var;
    for(new playerid; playerid<MAX_PLAYERS; playerid++)
    {
    if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
    {
    if(IsPlayerInVehicle(playerid,vehicleid);
    {
    var = 1;
    }
    }
    }
    return var;
    }


    Ist gerade alles so zusammengeschrieben, müsste aber funktionieren.
    MfG Firer

    Ich denke mal, dass der Markplatz in spätestens einer Woche weniger genutzt wird.
    Jetzt, wo das gerade eingefügt wurde ist doch klar, dass alle die irgendwas loswerden wollen das jetzt verkaufen.


    Nur werden Sie:
    - Entweder keinen Käufer finden und die Suche (hier zumindest) aufgeben
    - Oder Natürlich einen Käufer finden und die Sache ist eh gegessen.



    MfG Firer

    Hmm.. setz am besten einen Timer.
    Machs z.B. so:
    new timer;
    public OnGameModeInit()
    {
    SetTimer("timer",1000,1);
    //...
    return 1;
    }


    public timer()
    {
    for(new playerid; playerid<GetMaxPlayers(); playerid++)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(...);
    {
    //... GameText
    }
    }
    }
    return 1;
    }

    Ja, nur finde ich es teilweise eine Unverschämtheit, was hier alles gepostet wird.
    Klar ist das Forum dafür da und vielleicht hilft es vielen Scriptanfängern.


    Aber gerade wenn man ein GF Script Editiert sollte man auch selbst Hand anlegen.
    Wenn dir die Abfragen bekannt sind reicht z.B. ein kurzer Blick in das Englische Wiki und ich wette mit dir, du kriegst die Funktion eingebaut.



    Sorry 4 OffTopic

    Wieso kriegt die Karre ID 1?
    Vorallem welche ID?


    Eine Scriptseitige oder eine ID, die automatisch von SA-MP vergeben wird [GetPlayerVehicleID(..);]
    Mehr informationen, auch zu deinem Script, falls es kein Selfmade sein sollte.



    MfG Firer

    Dann setz doch einfach nach dem Inviten 2 Variablen:
    -> Variable ob er ne Einladung bekommen hat
    -> Variable in Welche Fraktion er eingeladen wurde


    Dann einfach bei /acceptinvite abfragen und setzen.

    Poste uns mal die Errors bitte.
    Gerade nämlich keine Ahnung wonach genau ich da suchen sollte. Habe auf den ersten Blick jetzt nämlich nichts gesehen.



    MfG Firer


    //EDIT: jetzt aber.
    Du musst nach "JoinPed" die erste Zahl in den eckigen Klammern die Zahl der Skins eintrage, die dort aufgelistet sind.

    Also erstmal eine Festellung:
    Du verwendest bei beiden exakt die selben Koordinaten.
    Somit würde sich das Gate auch nicht bewegen, wenn der Befehl richtig wäre.


    Das einzige problem ist, dass mit der "else if" abfrage zwar vermieden wird, dass beide befehle hintereinander aufgerufen werden, allerdings hält sie auch davon ab, dass der letzte Befehl aufgerufen wird.




    Lösung(en) deines Problems:
    1. Koordinaten richtig setzen
    2. Durch das Setzen einer Variable abfragen, ob das Gate offen oder geschlossen ist. Somit ist es nun möglich in einem CMD diese Abfrage auszuführen.
    Jetzt gaaanz einfach nurnoch das Gate wenn es offen ist zu der geschlossenen position und umgekehrt bewegen und anschließend die Variable setzen.



    Könnte so aussehen:

    //--- Ganz oben
    new var;
    //--------------
    if(strcmp(cmdtext,"/Mv",true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,range,x,y,z))
    {
    if(var == 0) //--- Ist das Gate geschlossen...
    {
    MoveObject(...);
    var = 1;
    }
    else
    {
    Moveobject(...);
    var = 0;
    }
    }
    }


    Hoffe das konnte dir helfen ;)

    Von mir auch mal ein herzliches Wilkommen ;)
    Freut mich jemanden neuen in der Community begrüßen zu dürfen.


    Ausserdem gibt es zwei Möglichkeiten:
    Entweder das ist das erste mal in diesem Forum, dass ich einen Vorstellungsthread sehe oder Alzheimer lässt grüßen...