Beiträge von Kaliber

    ist aber auch nur richtig, wenn der Rest des Systems auch so aussieht.

    Das versteh ich jetzt nicht so ganz?


    Zumal dein System fast identisch ist..nur du hast mehr extra Variablen..die man eig nicht bräuchte...



    Oh, mir fällt grade auf, das der Pin doch mit der Karte verknüpft ist, weil im Reallife gehst du ja auch zur Bank und musst den Pin eingeben damit du mit der Karte die mit dem Konto verknüpft ist Geld abheben kannst.

    Was? Das macht doch gar keinen Sinn, was du da redest.


    Lies dir nochmal meinen Text durch.

    Aber der Pin ist doch mit keiner Karte, sondern mit einem Bankkonto verknüpft.


    Ergo wenn Spieler A ein Konto hat, muss er ja erstmal n Pin sich ausdenken, damit er auf sein Konto zugreifen kann.
    Dieser Pin wird ja in der Tabelle von dem Spieler gespeichert ganz normal.


    Erlangt jetzt Spieler B die Karte von Spieler A, dann gilt die Pin logischerweise von Spieler A noch.
    Ergo kannst du die einfach durch die SQLid von Spieler A aus der Datenbank ermitteln.

    das man einen PIN eingeben muss um an das Geld zu kommen

    Welchen Pin denn?


    Also, da du ja von Spieler A die SQLid hast, kannst du ja auch Spieler B einfach dazu nötigen die PIN von Spieler A eingeben zu müssen.


    Daran kommst du ja easy, oder soll sich Spieler B dann einen neuen Pin ausdenken?! :D

    Was meinst du mit trivial?

    Ich zitiere...Als trivial gilt ein Umstand, der als naheliegend, für jedermann leicht ersichtlich oder erfassbar angesehen wird



    Es sollte halt so sein, das man /inv machen muss, dabei soll sich n Dialog öffnen wo steht Benutzen, Weitergeben oder Wegwerfen.

    Dann machst du eine Schleife...loopst durch Inventar...


    Dann weißt du ja welche Items er hat, kannst ja ein Array mit namen noch machen (sowie das mit den Objekten).


    Dann wenn er darauf klickt haste den Slot (als listitem) (musst halt die leeren Slots auch auflisten).


    Und die _ref_id muss ja nicht zwingend die SQLid Spielerid sein, kannst du ja vom Item abhängig machen, dass du ihm da kp eben die SQLHausID gibst oder eine SQLVehicleID...


    Und ja, die Funktionen für den Rest gibts ja schon :o

    Also soll es ein generelles Inventar System werden oder geht es nur um diese Karte?


    Man wird halt nicht so schlau aus deinem Text, das sind sehr wenige Infos.


    Gibt auch 1000 Arten sowas umzusetzen, je nachdem, was für "Features" man halt benötigt.


    Ich kann es mal grob erklären, also im Endeffekt ist es nur wesentlich z.B. die SQLid von Spieler A dem Item A zuzuordnen.


    Denn Wenn Spieler B das Item bekommt, wird die SQLid von Spieler A auch Spieler B zugewiesen.


    Somit kann Spieler B über diese "Referenz SQLid (kurz refID)" auf das Konto von Spieler A zugreifen.


    Ich habe mal ein kleines Skript in den Spoiler gepackt (weder getestet, noch optimiert oder sonst was).
    Musst es also noch stark anpassen und evtl als Include oder so aufbereiten.
    Ging mir erstmal nur um die grobe Vermittlung meiner Idee.


    Aber so ganz grob, kann man sich das vorstellen. wie ich mir das ungefähr vorgestellt habe.
    Dem Objekt werden dann auch all diese Attribute zugewiesen. Somit kann dann, wenn jemand das Objekt aufhebt durch die refID auf Spieler A zugreifen.


    Und an der Bank musst du dann halt evtl checken, dass er mit der anderen Karte zahlen kann.
    Wobei das System aktuell so geschrieben ist, dass er sogar mehrere Karten haben könnte.
    Musste halt loopen und evtl die Namen aus der Datenbank auslesen, die hinter den SQLids stehen, damit ihm angezeigt wird, von dem wer die Konten abräumen kann.


    Das System, gerade, wenn es so offen bzw "dynamisch" geschrieben ist, ist halt nicht so trivial umzusetzen.


    Klar, so nutze ich das ganze.

    • Du nutzt dort vehicleid, in deinen Funktionen wird aber nach der playerid verlangt.
    • %0.0f macht nicht soviel Sinn, da du ja einen Integer hast und keinen Float. Ergo nutze %d.
    • Printe eventuell was PlayerVehicle zurückgibt? Ist das ein Makro..oder wieso nicht einfach GetPlayerVehicleID?

    VectorSize ist schneller:

    C
    stock GetVehicleSpeed(vehicleid)
    {
        new Float:x,Float:y,Float:z;
        GetVehicleVelocity(vehicleid,x,y,z);
        return floatround(floatmul(VectorSize(x,y,z),200.0));
    }


    Anyway das Problem ist wohl, dass du diese falsch nutzt.


    Kannst du uns zeigen, wie du die Funktionen aufrufst und das prüfst? :)

    Meh, ich sehe gerade für das progressbar2 Include benötigt man YSI.


    Versuch mal:


    #define ITER_NONE (cellmin)


    Ganz oben in das Include zu setzen...


    Ansonsten...mal nach progressbar 1 googlen xD

    die Balken auch von der Höhe anders gestalten

    Na klar :D


    CreatePlayerProgressBar(playerid, Float:x, Float:y, Float:width = 55.5, Float:height = 3.2, colour, Float:max = 100.0, direction = BAR_DIRECTION_RIGHT)


    Da haste doch direkt die Höhe als Parameter :D



    aber irgendwie läuft das nicht.. immer Unknown Command

    Da musste wohl mal crashdetect laden und in den server log schauen, was da nicht so klappt :c

    Den unteren Teil kannst du so schreiben:



    C
    //Ondialogresponse
    case D_DELCOPCAR:
    {
        new vID = GetPVarInt(playerid, "delRadCopCar");
        DeletePVar(playerid, "delRadCopCar");
        if(!response) return 1;
        AdminLog(playerid, "delcopcar", "entfernt ein Polizei Fahrzeug. [VehID: %d, CarIndex: %d, SQL: %d]", GetVehicleModel(vID), vID, Vehicle[vID][vSQL]);
        DestroyCopCar(vID),
        SCM(playerid, COLOR_LIGHTBLUE, "Du hast das Polizei Fahrzeug erfolgreich entfernt.");
    }

    Das ist doch die VehicleID und nicht nur ein index ;)