[Hilfe] Wie erstelle ich im Skinshop die Auswahl?

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
  • DIeses Thema kann geschlossen werden, habe mich über Nacht nochmal dran gesetzt und ein eigenes erstellt.. ;)


    Hallo Leute,


    ich möchte eine Skinshop erstellen. In diesem Skinshop soll der Spieler in einen Pickup laufen, '/buyskin' eingeben, gefreezt werden und die Kameraansicht soll auf den Spieler von Vorne gerichtet sein.


    Dazu sollen folgende 3 Buttons erstellt werden "Zurück", "Weiter" & "Kaufen"
    Wenn der Spieler auf "Zurück" drückt soll die dem Spieler der vorherige Skin durch seine Spielfigur gezeigt werden.
    Wenn der Spieler auf "Weiter" drückt soll die dem Spieler der nächste Skin durch seine Spielfigur gezeigt werden.
    Wenn der Spieler auf "Kaufen" drückt soll die dem Spieler der momentange Skin gegeben werden, Geld entzogen werden, der Spieler soll entfreezt werden und die Kameraansicht soll wieder normal sein.


    Wo der Skinshop hin soll weiß ich schon und habe ich bereits im Script festgelegt.
    Ich kriege nur das oben beschriebene nicht hin.



    Es wäre nett, wenn mir jemand eine Anleitung oder eine gute, ausführliche
    erklärung geben/machen könnte, damit ich dabei auch etwas lerne.. :)
    Ich hoffe ihr könnt mir helfen!

    DIVIDE ET IMPERA

    Einmal editiert, zuletzt von [GSD]AlphaGen ()


  • public OnPlayerCommandText(playerid, cmdtext[])
    if (strcmp("/buyskin", cmdtext, true, 10) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,1.0,0,0,0)) // den punkt ersetzen wo er kaufen soll.
    {
    ShowPlayerDialog(playerid,DIALOG_STYLE_LIST,1,"Skin kaufen","Skin1\nSkin2\nSkin3","Weiter","Abbrechen");
    TogglePlayerControlable(playerid,0);
    SetCameraPos(playerid,0,0,0);
    }
    }
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==1)
    {
    switch(listitem)
    {
    case 0: // Wenn er Skin 1 wählt
    {
    SetPlayerSkin(playerid,123); // SKin geben.
    TogglePlayerControllable(playerid,0); // Kann sich wieder bewegen
    SendClientMessage(playerid,DEINEFARBE,"Du hast deinen Skin gekauft");
    Spieler[playerid][Skin] = 123; // an dein Register System anpassen.
    }
    case 1:
    {
    SetPlayerSkin(playerid,13);
    TogglePlayerControllable(playerid,0);
    SendClientMessage(playerid,DEINEFARBE,"Du hast deinen Skin gekauft");
    Spieler[playerid][Skin] = 123;
    }


    return 1;
    }


    Wenn du es genauer willst einfach antworten, dann schreibe ich dir ein schönes System :I

  • Danke ersteinmal für die schnelle Antwort


    Aber was genau passiert mit "Skin1\nSkin2\nSkin3"?
    Wird das in einem DIalog gelistet?


    Nehmen wir einmal an, dass der Spieler beim Registrieren die von mir für jede Registration festgelegte SkinID 4 hat.
    Wenn der Spieler dann in einem Skinshop geht und "/buyskin" eingibt soll er mit SkinID 4 in die Auswahl kommen.
    Dann sollen die im Oberen Thread genannten Buttons erscheinen, wenn er "Zurück" anklickt soll er SkinID 3 zum ansehen bekommen, dann SkinID 2, SkinID 1 und SkinID 0.
    Mit "Weiter" soll er von zb. SkinID 10 auf SkinID 11 wechseln.
    Mit "Kaufen" soll er den Skin, den er sich in diesem Moment ansieht kaufen.

    DIVIDE ET IMPERA