Beiträge von Mogly1

    @Rocky Balboa 
    Hier ist sein Connect_To_Database();

    Code
    stock Connect_To_Database()
    {
        #if defined Testserveran
        mysql_log( LOG_ALL , LOG_TYPE_HTML);
        #endif
        gSQL = mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS); //Wir versuchen mit den Angaben die wir oben im Script gemacht haben uns mit dem MySQL Server zu verbinden.
        mysql_oquery("SELECT 1", THREAD_CONNECTION_CHECK1 , INVALID_PLAYER_ID ,gSQL);
        tMySQL = SetTimer("MySQL_Connection_Check",5003,false);
    }

    wollte hier das nur fix für alle ersichtlich machen
    MfG. Mogly1

    Aber hast du evt. in der Tabelle bei Admin keine Default Value?
    Bzw. hilft dir der Link eventuell:
    https://stackoverflow.com/ques…snt-have-a-default-values

    Nach dem Login?
    Speicherst du die Koordinaten richtig und lädst sie auch wieder?
    Nicht das du nach dem Logout die Koords nicht richtig in der Db hast und somit beim Einloggen dann falsch spawnst.
    (Wenn du das im Script drinne hast)

    Oder wei genau meinst du das mit dem durch die Map fallen.

    Mfg. Mogly1

    Hast du bei

    "OnplayerRegister"

    auf groß und klein Schreibung geachtet, also das der public genaus so auch geschrieben ist?


    nicht das du es im public mit einem großen P geschrieben hast also so, "OnPlayerRegister".


    mfg. M1

    Hey, weiß einer warum nichts passiert wenn ich /createclan bzw wenn ich vor einem freien Clanhaus stehe kein Clan erstellt wird?

    Da Ich jetzt nicht fest stellen konnte, wann du ClanHaus[i][hActicate] setzt.

    Denke Ich das du in der Zeile 5873 das ändern solltest zu ClanHaus[i][hActicate] ==1, da du sonst derzeitig alle überspringst, die Noch zu haben sind?
    (Meine Vermutung, da ich nicht weiß wann du ClanHaus[i][hActicate] die variable setzt. Bsp. in OnPlayerCreateClan wird sie nämlich nicht gesetzt.)

    Kann aber auch falsch sein :P.

    Dann muss ich für denen Player einen Timer setzen oder?


    Wie ressourcenhungrig ist eigentlich so ein Timer? ich brüchte ja 100Stk bei 100 Spielern. Bei SetWorldTime brauche ich nur einen (da geht die minute ja nicht?)

    Nicht ganz du machst einen Globalen Timer und gehst dann mit einer for schleife durch alle Spieler die gerade auf den Server sind, somit sparst du andere Timer.

    und wenn du jetzt den Timer einmal alle Minute updatest sollte das doch gehen oder? Sowie den Spielern beim Connect die Uhrzeit einmal setzen, die du einfach in einer globalen Variable speicherst und beim Timer Aufruf setzt.



    Sry wegen dem langen Zitieren aber Foren und ich ka. wie man das kürzt :D

    Also, nach dem DestroyVehicle(BizVehicle[i]);

    fügst du noch das hinzu:

    Code
    DestroyVehicle(Biz6Vehicle[i]);
    Biz6Vehicle[i] = INVALID_VEHICLE_ID;
    ErsetztesVehicle[playerid] = CreateVehicle(FVVehTypes1[i][FVT1Model],//

    Grund, du hast ja bestimmt Biz6Vehicle[I] = CreateVeh... erstellt somit behält er die Vehicle id auch wenn du sie Destroyst, denn DestroyVehicle cleart nicht dein Biz6Vehicle[i], somit musst du danach der Variable eine Invalid id geben oder -1 setzen ist eig. egal :D

    Somit sollte es dann gehen eig. ^^

    Schau mal in deinem Code Zeile 22 bis 25

    müsste playerid nicht zu i? wie du davor auch für die if abfragen genutzt hast?

    Code
    PlayerCar[i][slot][vehAbgeschleppt] = 1;
                            format(PlayerCar[i][slot][vehAbgeschlepptVon], MAX_PLAYER_NAME, "%s", GetName(playerid));
                            PlayerCar[i][slot][vehKaution] = Geld;
                            SavePlayerVehicle(i);

    Sonst speicherst du die Daten ja nur für die playerid... könnte evt. der Fehler sein.

    mfg. Mogly1

    Also du könntest über deiner AddAuftrag Funktion, die Seite hinzufügen aber das

    Problem hierbei ist, mann sieht dennoch dann 12 Items bzw. das 13 sogar als überschrift.

    siehe https://wiki.sa-mp.com/wiki/AddMenuItem

    Deswegen würde ich das so nicht ganz machen, du machst gerade jedes Item(Auftrag) gleich als AddMenuItem aber das wird dir bald Probleme geben.


    Ich würde dir empfehlen wenn du es über so ein Menu weiter machen willst, erstelle dir gleich ein Menu mit genau 10 Items und der "Nächsten Seite".

    Also so hier, das wäre ein Lösungsansatz/vorschlag von mir (mit diesem kannst du dann auch ganz einfach Items/Aufträge wieder löschen)

    Was genau, habe ich da jetzt gemacht?



    Beachte bitte: "128 menus in total" und da das Menu dann Player abhängig sein müsste, wegen Nächste Seite, kann es bei zu vielen Spielern zu Probleme führen.

    (Bei anderen Ansätzen, bin ich gerne offen, falls dieser unnötig oder co. ist)

    MfG Mogly1.

    Stimmt FindClosestVeh hatte nicht das nächste ausgegeben ^^, habe es jetzt gleich angepasst damit man nun den 'ClosestTrunk' bekommt :saint:. (Hatte ich gar nicht mehr auf den schirm)

    GangstaSunny habe deine Vorschläge, best möglich versucht mit einzubauen, habe es editiert und ein neues Video hinzugefügt.


    Kaliber Ich werde mir das mit dem Include mal ansehen, habe noch nie eins geschrieben (glaube ich) und das mit for(new i=1;i<MAX_SLOTS;i++) wurde auch angepasst danke für den Hinweis.


    MfG. Mogly1

    Danke für das Feedback und die ganzen ansetz stellen.

    Ich werde das mal noch alles anpassen :).

    Auf jeden Fall danke, das du dir den Code mal angesehen hast8):thumbup:

    Nur eine Anmerkung bei

    - Bei new id = strval(inputtext); kann theoretisch sonst was bei rumkommen. Du solltest also vorher validieren ob der User auch eine Zahl eingeben hat.

    laut https://wiki.sa-mp.com/wiki/Strval
    ' The integer value of the string. '0 if the string is not numeric.'

    Somit sollte da nix falsches bei raus kommen da wenn es keine zahl ist eine 0 ist, falls dir eine Eingabe auffällt die dennoch geht würde mich das mal interessieren mfg. Mogly1.

    Guten Tag, auf nachfrage bei mir habe ich ein Kofferraum mit einem kleinem Item system gebastelt.

    Da ich lange nix mehr mit Pawn zutun hatte ist der Code wohl nicht so der Optimalste.

    Aber evt. können andere dieses System ja noch gebrauchen oder verbessern.

    Hier ein Video dazu:


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    und hier der Code:

    Mit MAX_SLOTS gebt ihr die Allgemeine menge an Items an die man Pro Slot im vehicle hat und mit MAX_MASS wie viel man im Auto lagern kann Bsp. 300 Schuss mit der Deagle oder 300 Drogen...

    Derzeitige Items, Drogen(allgemein) id=100 und Materialien(Allgemein) id=101 weiters leicht einzufügen,wenn man sich kurz rein liest.

    Wenn jemand gerade am Kofferraum ist, kann kein weiterer ihn benutzen um Bugs zu vermeiden.

    Anmerkung: fügt ClearKofferraum(vehicleid); hinzu bei den Fahrzeugen die Spawnen oder geht es einmal am start mit einer for schleife durch alle Autos durch, je nach dem wie ihr es dann braucht.

    Ich hoffe das Denglisch verwirrt nicht.


    Items hinzufügen simple erklärt:


    Mfg. Mogly1

    Ich bin mir nicht ganz sicher aber schau mal wenn du das Komma vor dem WHERE weg nimmst ob es dann geht?


    Also das,
    UPDATE user SET level = '%d', money = '%d',kills = '%d', deaths ='%d', arang = '%d', WHERE id = '%d
    zu dem
    UPDATE user SET level = '%d', money = '%d',kills = '%d', deaths ='%d', arang = '%d' WHERE id = '%d