Beiträge von lyinch

    Das ist kein Bug. Die Views werden nicht in echtzeit aktualisiert. Es kann mehrere Stunden bis Tage dauern, bis die Views auf der Channelseite aktualisiert werden. Genau so sind die Video Views und die Views in den Statistiken unterschiedlich, da sie eine gewisse Zeit zum aktualisieren benötigen.
    Auch das Anzeigen von 301 Views ist kein Bug, sondern ab 300 Views werden sie auf Echtheit kontrolliert, und das kann eine Zeit dauern.

    Entferne mal den * hinter Account so wie hier:
    format(buffer,sizeof(buffer),"Account = '%i', PlayerKreditTime = '%i', PlayerKredit = '%i',",PlayerInfo[playerid][pAccount],PlayerInfo[playerid][pPlayerKreditDauer],PlayerInfo[playerid][pPlayerKredit]);

    Es ist das gleiche Prinzip in MySQL wie in Dini, nur soeicherst und lädst du anders. Vor mir wurden zwei links gepostet, diese erklären alles was du brauchst.

    Speichere die Koordinaten(X,Y,Z) und den Facing Angle mit dem Usernamen in einer Datenbank wenn der Spieler off geht. Lade sie wieder wenn er on kommt, und spawne ihn dort.

    Du kannst nicht SELECT * FROM benutzen und dann SET. Das wiederspricht sich. Schau dir mal MySQL Tutorials im Internet an, damit du die Basis hast (SELECT, UPDATE, INSERT INTO) und versuche dann MySQL Tutorials in Verbindung mit PAWNO zu lesen und verstehen. Denn die Resultate müssen nicht bur abgerufen sondern auch gespeichert und ausgegeben werden.

    Also LADEN macht das überhaupt nichts.
    format(query,sizeof(query),"UPDATE `accounts` SET `Level` WHERE `Name` = '%s'",SpielerInfo[playerid][pLevel],PlayerName(playerid));
    Du machst einen UPDATE Befehl, der nichts lädt sondern überschribt. Nutze einen SELECT Befehl. Ausserdem hast du nur einen String (%s) in der Abfrage, du möchtest jedoch zwei verschiedene Variablen benutzen (SpielerInfo[playerid][pLevel],PlayerName(playerid)).

    Wie hast du gemerkt, dass etwas heruntergeladen wurde? Wurde auf der Seite eine Downloadbar angezeigt? Oder hat dein Browser das explizit gemeldet, dass eine Datei heruntergeladen wird? Am besten ist, wenn du nach dieser dubiosen Seite recherchierst, und schaust ob noch andere eine solche Erfahrung gemacht haben. Ausserdem wären Virenscans und HiJack this Scans vom Vorteil um Sicher zu gehen, dass du keinen Virus hast. Falls wirklich ein Bug genutzt wurde, um die Datei ohne dein Einverständnis herunter zu laden, kannst du es beim jeweiligen Entwickler(Browser oder Plugin) melden, damit dies dann in der nächsten Version gefixxt wird.

    Das Passwort kann MD5 verschlüsselt sein. Verschlüssele die Eingabe auch und vergleiche beide. Möglicherweise wurde auch ein Salt oder eine andere Verschlüsselungsart benutzt.

    Hey, wenn der Button transparent ist, im Design jedoch nicht, dann suche in CSS den entsprechenden Container und ändere dort die Farbe. Mache ein Screenshot, lass dir mit Photoshop den RGB Farbcode ausgeben, und such dann mit dem Plugin Firebug wie das Element heisst. Ersetze dann die graue Farbe durch: background-color: transparent;

    Da du eine relative Position nimmst, kannst du auch folgende Befehle nutzen:

    Code
    { right:10px; ODER left:-10px;}

    Frage ab, ob es bereits einen Eintrag gibt von dem Spieler. Falls nein, gibst du ihm einen neuen Skin, falls ja, liest du die SkinID aus, und setzt diese.

    Die Menübar oben gefällt mir, der Header sieht nicht schlecht aus, der Rest muss jedoch noch bearbeitet werden. Vor allem die blaue Hintergrundfarbe, die im sehr starken Kontrast zum Rot agiert...

    Hallo, gibt es eine möglichkeit um Teile aus dem Script extern zu speichern und zu verlinken?
    Anstatt ein tausend zeilen langes Script könnte man es doch in mehrere Dateien einteilen und diese werden eingebunden? Gibt es hier eine Möglichkeit dies mit a) den Stocks zu machen und b) den Inhalten der Funktionen (public Onblabla) ?

    Ok also:


    stock CheckCoordinates( playerid, Float:XMin, Float:YMin, Float:XMax, Float:YMax )
    {
    new RetValue = 0;
    new Float: PosX, Float: PosY, Float: PosZ;
    GetPlayerPos( playerid, PosX, PosY, PosZ );


    if( PosX >= XMin && PosY >= YMin && PosX < XMax && PosY < YMax )
    {
    RetValue = 1;
    }
    return RetValue;
    }


    stock CheckCoordinates( playerid, Float:XMin, Float:YMin, Float:XMax, Float:YMax )
    {
    new RetValue = 0;
    Die erste Zeile erstellt einen neuen stock. Dies ist ansisch eine Funktion, sie bearbeitet Daten. Die Datentypen und Variablennamen werden also in den Klammern festgelegt.
    stock CheckCoordinates( playerid, Float:XMin, Float:YMin, Float:XMax, Float:YMax )
    Es kommen also eine playerid, einmal ein Float Wert xMin, einman ein Float Wert YMin etc. herein.


    Dann wird mit RetValue den Prüfwert auf 0 gesetzt.


    new Float: PosX, Float: PosY, Float: PosZ;
    GetPlayerPos( playerid, PosX, PosY, PosZ );
    Hier nimmt dann der stock deine Aktuelle Position und speichert sie in die vorher definierten Float Werte.


    if( PosX >= XMin && PosY >= YMin && PosX < XMax && PosY < YMax )
    {
    RetValue = 1;
    }
    return RetValue;
    Der wohl wichtigste Teil ist das. Es wird geschaut, ob PosX grösser oder gleich als xMin ist(PosX >= XMin). Das bedeutet also, ob die Position des Spielers grösser oder gleich als die kleinste X Koordinate deines Checkpoints. (Bei einer Linie ist es der Anfang.)
    Das && symbolisiert ein boolesches AND, was soviel bedeutet wie, die Abfrage ist NUR Wahr, und auch NUR WENN ALLE angegebenen Abfragen stimmen.
    Bei : PosX < XMax überprüft der stock, ob deine aktuelle Position nicht die maximale Position überschreitet. Das ist ansisch das Ende deiner Linie.
    (Nimmt man nun die X und die Y Koordinate, zeichnet sie Rechtwinklig auf, dass sie sich in der Mitte schneiden hat man ein Kreuz. Nimmt man den Schnittpunkt als Kreismitte, und eine Längt von der Mitte bis zum Ende dieser linie als Radius, so bekommt man dann ein Kreis, der den Checkpoint darstellt. Man braucht keine Z Koordinate, da die Höhe egal ist ;) )
    Die letzte zahl ist die grösse deines Checkpointes

    stock CheckCoordinates( playerid, Float:XMin, Float:YMin, Float:XMax, Float:YMax )
    {
    new RetValue = 0;
    new Float: PosX, Float: PosY, Float: PosZ;
    GetPlayerPos( playerid, PosX, PosY, PosZ );


    if( PosX >= XMin && PosY >= YMin && PosX < XMax && PosY < YMax )
    {
    RetValue = 1;
    }
    return RetValue;
    }


    müsste deine Frage beantworten, was du einfügen musst oder?