Beiträge von BlackFoX

    Melde dich doch beim Hoster, ich denke dieser kann dir weitaus mehr bei der Sache helfen, wäre
    besser für dich.. wir können nur Theorien aufstellen die dich letztendlich nicht viel weiter bringen

    Hat nichts damit zu tun ob selbst gemacht oder nicht...


    Hast du alle Koordinaten ? Minimal X - Maximal X - Minimal Y - Maximal Y



    Y
    ^
    |
    |
    |< Minimal X - Maximal X >
    |------------ > X

    dazu braucht man nicht viel C/C++ höchstens für den Direct X Hook ansonsten kann man den Client + Server auch in anderen Sprachen schreiben je nach
    wie Kompatibel es zu welchem System sein soll Hauptsächlich bezogen auf den Server

    Im Sp , Memory Hacking ? Eigentlich ganz leicht, die Adressen für GTA San Andreas wurden ja schon bei GTA Forums zusammengefasst, wenn du
    Koordinaten für den MP brauchst einfach /save [kommentar]

    forward Float:DistanzZumPunkt(playerid, Float:x, Float:y, Float:z);
    Float:DistanzZumPunkt(playerid, Float:x, Float:y, Float:z)
    {
    new Float:hhpos[3];
    GetPlayerPos(playerid,hhpos[0],hhpos[1],hhpos[2]);
    return floatsqroot(floatpower(floatabs(floatsub(x,hhpos[0])),2)+floatpower(floatabs(floatsub(y,hhpos[1])),2)+floatpower(floatabs(floatsub(z,hhpos[2])),2));
    }




    getVehicle(playerid)
    {
    new koordinaten[4],found = -1;
    for(new i = 0;i<MAX_VEHICLES;i++)
    {
    GetVehiclePos(i,koordinaten[0],koordinaten[1],koordinaten[2]);
    if(!IsPlayerInRangeOfPoint(playerid,5.0,koordinaten[0],koordinaten[1],koordinaten[2]))continue;
    if(DistanzZumPunkt(playerid,koordinaten[0],koordinaten[1],koordinaten[2]) < koordinaten[4])found = i;
    koordinaten[4] = DistanzZumPunkt(playerid,koordinaten[0],koordinaten[1],koordinaten[2]);
    }
    return found;
    }


    So sollte das einem nächste Fahrzeug in einem Radius von 4-5 Metern gefunden werden & dann wird das nächste Fahrzeug in diesem Radius noch ermittelt,
    sollte so stimmen.

    Am 30. März kommt erstmal Ballad of Gay Tony & Lost and Damned für PC raus im Doppelpack. Bis GTA V kommt dauert es noch aber soll ja in London spielen nach Aussagen von Rockstar jedoch nur eine Vermutung da sie sich noch nicht sicher sind.

    Hallo Leute,


    ich habe nun schon öfters gesehen dass einigen die Struktur nicht wirklich bekannt ist & warum vieles so wie es ist.


    zur Sache #define.
    #define FILTERSCRIPT
    #if defined FILTERSCRIPT


    Einige bleiben hier schon hängen, sieht des öfteren & werden daraus einfach nicht schlauer, klar ist jedenfalls, hätte man die nötige Grundbasis & das wissen wie die Sprache selber überhaupt Funktioniert,
    so müsste es einem einleuchten das hier einfach ein Bereich für den Compiler eingegrenzt wird, es wird also Filterscript definiert eine Leere Variable & Konstante.


    diese Abfrage umgibt den Bereich...
    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Blank Filterscript by your name here");
    print("--------------------------------------\n");
    return 1;
    }


    public OnFilterScriptExit()
    {
    return 1;
    }


    wie man sieht hat dies einen Logischen Zusammenhang, also wenn FS definiert ist sprich die Variable beachtet der Compiler nur diesen Bereich da dieser Bereich wichtig für ein FS ist...
    so ist die Variable FS nicht definiert so...


    main()
    {
    print("\n----------------------------------");
    print(" Blank Gamemode by your name here");
    print("----------------------------------\n");
    }


    ...wird der andere Bereich wiederum nicht beachtet und dies wird einbezogen alles was nicht diesen 2 Bereichen ist wird jedes mal mit rein geworfen,
    da main() den Einstiegspunkt kennzeichnet & für ein Hauptscript wichtig ist, muss es auch euren Gamemode...


    Mehr Unterschiede gibt es nicht.
    Nun aber zum Hauptthema, ihr braucht im Prinzip nur die Funktionen/Callbacks die ihr verwendet sprich den Rest könnt ihr löschen, ist das Skript nun ein reines FS löscht
    ihr einfach die Variable FS & löscht den Bereich der nicht gebraucht wird & dazu die Abfrage , dann noch OnGamemodeInit & OnGamemodeExit da diese Funktionen
    nur für eine Gamemode benötigt werden ( Logisch der Name sagt es ja schon aus... ), beim Gamemode ist das ganze andersherum, ihr lösch OnFSInit & Exit lasst aber OnGameModeExit
    & OnGamemodeInit drinnen auch main muss bleiben da es der Einstiegspunkt des Hauptscripts darstellt.


    Sollte nur eine Info sein für Leute nicht wissen aus welchen Elementen welcher Teil zusammengesetzt ist.


    P.s. manchmal ist es einfach besser die Grundbasis der Sprache zu lernen um selber darauf zu kommen da Makro Abfragen
    im Spiel sind sowohl auch Definitionen, die Abschnitte spielen nicht für den gesamten Code eine Rolle sondern treffen Einstellungen
    die der Compiler beachten sollte, sie greifen sozusagen in das Geschähen ein.

    SetTimerEx, setzt den die Klasse nicht nur als Timer sondern überträgt dabei noch Parameter & Werte an die Klasse die bei jedem Ablauf übergeben werden sollen


    functionbla(param0,param1)


    SetTimerEx("functionbla",MS_INTERVALL,Wiederholen[1/0],"ii",var0,var1);


    Wie man sieht ist das ganze SetTimer ähnlich nur das hierbei nach einem bestimmten Format Muster Werte aus anderen Bezeichnern übertragen werden


    Code
    i = Integer
    s = String / Zeichenfolge / Array
    x = Hex
    c = Char
    d = Dezimal


    Das wären die wichtigsten Formate


    var0, eine Zahlen Variable = i = Integer = Zahl
    da ich noch var1 hab die dem Format Integer entspricht übergebe ich diese in der Reihenfolge ebenfalls als Zahl.


    Code
    "ii",var0,var1
    
    
    1. Integer = var0
    2. Integer = var1


    Übergebe ich als letztes eine Zeichentabelle so geb ich im Format noch s als letztes an , wichtig hierbei auf die Reihenfolge zu achten diese muss zum ersten der Parameter Reihenfolge der Funktion entsprechen und zum anderen der Format Reihenfolge der Datentypen die du übergeben möchtest.