[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Also Geburtstag wird als "0" ausgegeben

    Ist das jetzt der Geburtstag oder das Alter? Deine Variable heißt Alter, deine Bezeichnung Geburtstag. Entscheide dich für eins und benenne beides gleich, ebenfalls in der Datenbank.
    Für das Alter musst du %d nutzen, für den Geburtstag %s. Beim Geburtstag muss im enum das pGeburtstag dann ein Array sein. pGeburtstag[11],



    Passwort wird garnicht angezeigt.

    Ich bezweifle, dass du mit der Funktion das gehashte Passwort in Klartext zurück bekommst. Der Sinn eines Hashes ist ja genau das, dass man das nicht mehr hinbekommt.

  • Das Passwort muss ja beim einloggen auch enthasht werden.

    Nein, es wird nur aus dem was du eingibst wieder ein Hash erzeugt und mit dem Hash in der Datenbank verglichen. Sind die gleich, geht es durch.



    Die Variable pAlter ich auf das Geburtstagsdatum defeniert. ich möchte eigentlich das Alter(also z.B als 18 Jahre) angezeigt wird.

    Dann musst du dort auch das Alter rein schreiben.
    sI[playerid][pAlter] = GetPlayerAge(inputtext);


    Allerdings aktualisiert sich das ja nicht.
    Daher ist es sinnvoller, du speicherst den Geburtstag
    format(sI[playerid][pGeburtstag], 11, inputtext);


    Und machst dann in dem Dialog anstatt
    sI[playerid][pAlter]
    das:
    GetPlayerAge(sI[playerid][pGeburtstag])

  • Ich hab es jetzt so:


    new age = GetPlayerAge(inputtext);
    if(age == -1)
    {
    ShowPlayerDialog(playerid, D_REGISTER_ALTER, DIALOG_STYLE_INPUT, ""SERVER_HTML""SERVER_NAME" - Registration", ""HTML_WHITE"Bitte gebe dein Geburtsdatum ein. \nFormat: "HTML_RED"TT.MM.YYYY", "Weiter", "Abbruch");
    ClearPlayerChat(playerid);
    SendClientMessage(playerid, COLOR_RED, "* Du hast das falsche Format eingegeben! Benutze: "HTML_YELLOW" TT.MM.JJJJ");
    format(sI[playerid][pGeburtstag], 11, inputtext);
    return 1;
    }


    Aber jetzt steht beim Geburtstag '-1'

  • 2. Sachen
    Gibt es die Moeglichkeit wie bei C, if-else Bedingungen mit xyz ? xyz: 2xyz auszudruecken? Also mit bool?


    2. Gibt es irgendein Include fuer pawn das Mathematische Funktionen wie z.B. um von einer Komplexen Zahl die komplex konjugierte Zahl zu bilden, oder um 2 Polynome zu falten oder sowas?
    Aktuell arbeite ich etwas mit C#, da gibt es Bibliotheken dafuer aber fuer PAWN habe ich bisher noch nichts dergleichen gefunden

  • Gibt es die Moeglichkeit wie bei C, if-else Bedingungen mit xyz ? xyz: 2xyz auszudruecken? Also mit bool?

    Ja, genau gleich.



    2. Gibt es irgendein Include fuer pawn das Mathematische Funktionen wie z.B. um von einer Komplexen Zahl die komplex konjugierte Zahl zu bilden, oder um 2 Polynome zu falten oder sowas?

    Das weiß ich nicht.
    Möglicherweise ist hier was hilfreiches dabei: http://forum.sa-mp.com/showthread.php?t=591010

  • Guten Abend, könnt ihr mir vielleicht sagen wieso mein Pickup erstellt wird aber mein Text nicht Erstellt/Angezeigt wird?



    CreateDynamicPickup(1239, 1, 160.9182, -1921.3374, 3.7734);
    CreateDynamic3DTextLabel("[- Fahrradverleih -]\nBenutze: '/radverleih'", 0x008080FF, 160.9182, -1921.3374, 3.7734, 25.0, 0, 0);


    Mit freundlichen Grüßen.

  • Guten Abend, könnt ihr mir vielleicht sagen wieso mein Pickup erstellt wird aber mein Text nicht Erstellt/Angezeigt wird?


    CreateDynamicPickup(1239, 1, 160.9182, -1921.3374, 3.7734);CreateDynamic3DTextLabel("[- Fahrradverleih -]\nBenutze: '/radverleih'", 0x008080FF, 160.9182, -1921.3374, 3.7734, 25.0, 0, 0);


    Mit freundlichen Grüßen.

    versuchs mal so
    CreateDynamic3DTextLabel("[- Fahrradverleih -]\nBenutze: '/radverleih'", 0x008080FF, 160.9182, -1921.3374, 3.7734,25.0,0);

  • Ist nicht mehr Normal, seid wann müssen denn alle Parameter angegeben werden? :o

    Müssen es nicht.
    Weißt du, deine Version klappt nicht, da die Virtuelle Welt auf 0 gesetzt war.
    Allerdings befindest du dich offensichtlich nicht in dieser.
    Das mit dem Dynamic funktioniert, da dort die Welt auf -1 gesetzt wurde und diese somit überall angezeigt wird :)


    Mit der Punkt Notation, kannste den Parameter btw direkt übergeben:


    CreateDynamic3DTextLabel("[- Fahrradverleih -]\nBenutze: '/radverleih'", 0x008080FF, 160.9182, -1921.3374, 3.7734, 25.0, .worldid = -1);

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Warum ist das Passwort immer falsch?


    //ist gefixxt. hab das Passwort zu kurz definiert :/ :D

    Einmal editiert, zuletzt von Marschl ()

  • Ich habe mal eine Frage an euch, wie kann ich es machen, das ein Fahrzeug was Gespawnt wird nur der Spieler nutzen kann, der es auch Gespawnt hat ?


    Also das wenn jemand anderes da einsteigen/aufsteigen möchte, das die Animation dann zB Geblockt wird.


    Mit freundlichen Grüßen.

  • Ich habe mal eine Frage an euch, wie kann ich es machen, das ein Fahrzeug was Gespawnt wird nur der Spieler nutzen kann, der es auch Gespawnt hat ?


    Globale Variable für alle Fahrzeuge erstellen:
    new vehicleOwner[MAX_VEHICLES]={INVALID_PLAYER_ID,...};


    und dann bei deinem Spawnbefehl:


    Code
    new vID = CreateVehicle(HIER DEINE PARAMETER);
    vehicleOwner[vID]=playerid;


    und dann noch unter "OnPlayerEnterVehicle":



    Code
    if(vehicleOwner[vehicleid]!=INVALID_PLAYER_ID&& vehicleOwner[vehicleid]!=playerid)
    	ClearAnimations(playerid);

    //Edit: INVALID_VEHICLE_ID zu INVALID_PLAYER_ID geändert. Ist zwar der selbe Wert, sieht aber schöner aus.

    2 Mal editiert, zuletzt von Zim30 ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen