Beiträge von BlackFoX

    new Text:Textdrawstats[MAX_PLAYERS];


    OnPlayerConnect
    Textdrawstats[playerid] = TextDrawCreate(40.000000,214.000000,bstring);
    TextDrawAlignment(Textdrawstats[playerid],0);
    TextDrawBackgroundColor(Textdrawstats[playerid],0x000000ff);
    TextDrawFont(Textdrawstats[playerid],1);
    TextDrawLetterSize(Textdrawstats[playerid],0.299999,1.200000);
    TextDrawColor(Textdrawstats[playerid],0xffffffff);
    TextDrawSetOutline(Textdrawstats[playerid],1);
    TextDrawSetProportional(Textdrawstats[playerid],1);



    TextDrawShowForPlayer(playerid, Textdrawstats[playerid]);


    format(bstring,sizeof(bstring),"~b~Name: ~w~%s ~n~~b~Job: ~w~%s ~n~~b~Level: ~w~%d ~n~~b~Bank: ~w~%d$",name, jtext , level , account );
    TextDrawSetString(Textdrawstats[playerid], bstring);



    OnPlayerDisconnect


    TextDrawDestroy(Textdrawstats[playerid]);

    Du musst die Textdraws für jeden Spieler einzeln erstellen sprich


    new Text:Textdrawstats[MAX_PLAYERS];


    Und dann für jede Player ID beim Verbinden erstellen danach wieder Löschen sprich OnPlayerDisconnect

    -= Informationen =-


    BFX Ini das leichte & einfache INI System zugleich schneller als so manches Speicherungssystem,
    es arbeitet über Cache & muss somit nicht jedes mal auf die Datei zugreifen, das heißt alles wird
    einmal geladen & kann dann solange bearbeitet werden bis die Datei geschlossen wird bzw. die Cache
    geleert wird.



    -= Funktionen =-


    OpenINI(const file[]);


    o Öffnet die Datei & ließt sie in die Cache ein



    ReadStringKey(const keyname[]);


    o Gibt den Inhalt des gewünschten Schlüssels wieder ( Im Text Format )



    ReadFloatKey(const keyname[]);


    o Gibt den Inhalt des gewünschten Schlüssels wieder ( Im Kommazahl Format )



    ReadIntKey(const keyname[]);


    o Gibt den Inhalt des gewünschten Schlüssels wieder ( Im Zahlen Format )



    SetKeyString(const keyname[],const value[]);


    o Ändert/setzt Schlüssel im Text Format



    SetKeyInt(const keyname[],const value);


    o Ändert/setzt Schlüssel im Zahlen Format



    SetKeyFloat(const keyname[],const Float:value);


    o Setzt/ändert Schlüssel im Kommazahl Format



    SaveINI(Keine Parameter);


    o Speichert alles geänderte bitte nutzen bevor Datei geschlossen wird!



    CloseINI(Keine Parameter);


    o Schließt die Datei & leert die Cache



    KeyIsSet(const keyname[]);


    o Fragt ab ob Schlüssel existiert



    UnsetKey(const keyname[]);


    o Löscht Schlüssel



    CreateINI(const file[])


    o Datei erstellen


    Es Funktioniert also ganz einfach, viel Spaß damit.

    Entweder Maximale Bots in den Server Variablen nicht eingestellt sprich Server Konfiguration oder
    dein überspringt deine Systeme nicht sprich dein Login/Register System kickt Leute sobald sie sich nicht eingeloggt haben deshalb musst du abfragen ob
    dieser Spieler ein Bot ist & diese Aktion einfach überspringen

    Entweder
    SetTimerEx("Payday",600000,1,"i",playerid);
    ist aber zu Ressourcenlastend also verbaust du eine schleife in die Klasse


    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(!IsPlayerConnected(i) || IsPlayerNPC(i))continue;
    // Dein Code...
    }

    stock gibt der Klasse die Eigenschaft das sie unbeachtet bleibt solange sie nirgendwo genutzt wird sprich auch wenn in dieser Fehler existieren werden
    diese nicht ausgegeben bis du die Klasse in einer anderen jedoch beachteten Klasse nutzt

    Blubb , PlayerToPoint war mal eine Alternative als es noch keine Native Funktion dafür gab also
    ist IsPlayerInRangeOfPoint wohl die richtige Methode


    Schon mal versucht den Radius zu ändern ? auf c.a. 7.5 - 8.0 ? Ansonsten mal Koordinaten Checken

    MTA ist für dein vorhaben die leichtere Sache sowohl auf die Möglichkeiten als auch auf das Scripting bezogen Lua ist einfacher , einfacher geht es nicht mehr,
    musst es halt nur lernen

    DD3 : Diese Adressen können im Prinzip Direkt aufgerufen werden, sie werden mit Boolean Wahr/Falsch beschrieben sprich gesetzt nach dem Prinzip Aktivieren Deaktivieren
    du kannst sie auch mit den Erforderlichen Werten beschreiben wie z.b. die Wanted Adresse
    Auf Integer/Zahlen Basis 0xBAA420 beschreibst du mit der Zahl 5 hast du 5 Sterne im Spiel
    hier genau das gleiche 0x969130 die Adresse um Waffen Paket 1 zu übernehmen einfach mit 1 oder 0 beschreiben sprich aufrufen
    0 = Deaktivieren / False
    1 = Aktivieren / True


    Am besten du schaust mal hier nach http://www.gtamodding.com/inde…Memory_Addresses_%28SA%29


    Wenn nicht zeig ich dir ein etwas Detailliertes Beispiel

    XP sowohl auch Windows 7 sind sehr gute Betriebssysteme, das ein zigste was gegen XP sprechen könnte wäre der Support der seitens Microsoft wohl bald ein komplettes Ende finden wird
    ansonsten spricht nichts dagegen das System noch einige Zeit zu nutzen auch wenn Windows 7 seine Ressourcen besser verteilt wird man dafür einfach ein stärkeres System brauchen sprich Spiele & sonstige aufwendige 3D Anwendungen werden einfach mehr Leistung brauchen. Du solltest einfach selber entscheiden was für dich besser ist, ich z.b. habe Windows 7 auch erst installiert als mein XP total zerschossen wurde durch meine Schuld


    p.s. Die Leute sind immer unzufrieden, erst nutzen sie XP Jahre lang & auf einmal ist es doch der letzte Müll, sobald was neues kommt aufs alte geschissen naja komische Einstellung