Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 21

Thema: wie erstellt man ein eigenes menü

  1. #1

    wie erstellt man ein eigenes menü

    die bilder für das menü habe ich schon. und es erscheint auch ein bild, wenn ich auf esc drücke. weiter komme ich leider nicht. könnte mir irgendjemand helfen?

  2. #2
    Falls du eine der alten Makerversionen nutzt: Hast du es schon mal mit dem EBook versucht? Das hat viele, verständliche Schritt-für-Schritt-Erklärungen, wie man den Makerstandard mit eigenen Systemen ablösen kann.

  3. #3
    Escape und ein Bild erscheint? Sehr gut! Du hast wahrscheinlich einen ParallelProcess, in dem du mit KeyInput auf die Taste Escape abfragst, oder?

    Um zu wissen, wie du ein Menü machst, kann du damit anfangen, die klar zu werden, was in einem Menü passiert und in welcher Reihenfolge.

    Beispielsweise:
    1. Menü wird angezeigt
    2. Der Spieler drückt eine Taste
    3. Das Menü wird anders als zuvor angezeig
    4. Der Spieler drückt eine andere Taste
    5. Das Menü verschwindet


    Kurz: Du stellst das Menü grafisch da. Dann fragst du wieder eine Taste ab. Dann stellst du das Menü wieder da. Dann fragst du wieder eine Taste ab. Wenn du in deinem Menü beispielweise drei Menüpunkte wählen möchtest, dann brauchst du eine Variable, in der steht, wlcher Menüpunkt ausgewählt ist.

    1. Menühintergrund anzeigen
    2. Auswahl=1
    3. Menüpunkte anzeigen für aktuelle Auswahl
    4. Tastenabfrage einlesen
    5. Wenn Taste 'UP' und Auswahl >1 , Auswahl-1 , danach springen zu Zeile 3
    6. Wenn Taste 'DOWN' und Auswahl >1 , Auswahl+1 , danach springen zu Zeile 3
    7. Wenn Taste 'ESC', dann beenden und Grafiken ausblenden


    Hoffe das hilft ein bischen.

  4. #4
    Oder anders ausgedrückt besteht ein Menü aus zwei Bestandteilen: Dem Anzeigen des Menüs und dem Abfragen der Spielereingaben. Je nachdem welchen Maker du benutzt, gibt es unterschiedliche Möglichkeiten, wie du beides umsetzt. Benutzt du denn die alten (2K, 2K3) oder die neuen Maker (XP,VX,Ace)?

  5. #5
    ich benutze den rpg maker 2k. ich bin ein bischen weiter gekommen. habe einen alten zettel als hintergrund genommen und einen curser der anzeigt wo man sich im menü befindet. der curser geht zwar immer in die richtige richtung egal welche curser-taste man drückt aber die variabel "menüpunkt" ist oft verkehrt. kann mir da vielleicht irgenjemand behilflich sein?

  6. #6
    Grundsätzlich müsste die Abfrage ungefähr so aussehen (in einem Autostart-Prozess):

    Code:
    - SCRIPT -
    <> Key Input Processing: Var. Eingabe, Wait until key pressed, Keys: Down, Left, Right, Up, Decision, Cancel, Shift
    <> Fork Condition: If Variable Eingabe == 1 then ...
     <> Comment: Soundeffekt
     <> Change Variable: Menücursor += 1
     <> Call Event: Cursor anzeigen
     <>
    : End of fork
    <> Fork Condition: If Variable Eingabe == 4 then ...
     <> Comment: Soundeffekt
     <> Change Variable: Menücursor  -= 1
     <> Call Event: Cursor anzeigen
     <>
    : End of fork

  7. #7
    common event 1
    disabel system menü
    fork contition : switch "menü möglich" on
    enter password "menübewegung",
    call event "menüaufbau

    common event 2 (menüaufbau)

    show picture 1,alter zettel(160,120)
    show picture 2, curser (160,50)
    change switch "menü möglich"-off set
    change switch "menü an" -on set


    common event 3

    Enter Password (Menüvariabel)
    Fork Optn menüvariabel =1
    Fork Optn menüpunkt= 1
    variabel menüpunkt +1
    show picture 2 curser (160,50)

    else case
    fork optn menüpunkt =2
    variabel menüpunkt +1
    show picture 2 curser (160,100)

    else case
    fork optn menüpunkt =3
    variabel menüpunkt +1
    show picture 2 curser (160,150)

    else case
    fork optn menüpunkt =4
    variabel menüpunkt set 1
    show picture 2 curser (160,200)

    end case

    emd case

    end case

    emd case
    fork optn menüvarriabel =2
    fork optn menüpunkt =1
    variabel menüpunkt set 4
    show picture 2 curser (160,50)

    else case

    fork optn menüpunkt =2
    variabel menüpunkt = -1
    show picture 2 curser (160,100)

    else case

    fork optn menüpunkt =3
    variabel menüpunkt = -1
    show picture 2 curser (160,150)

    else case

    fork optn menüpunkt =4
    variabel menüpunkt = -1
    show picture 2 curser (160,200)

    end case

    end case

    end case

    end case

    end case
    fork optn menüvariabel =3
    fork optn menüpunkt =1
    variabel menüpunkt = +1
    show picture 2 curser (160,50)

    else case

    fork optn menüpunkt =2
    variabel menüpunkt = +1
    show picture 2 curser (160,100)

    else case

    fork optn menüpunkt =3
    variabel menüpunkt = +1
    show picture 2 curser (160,150)

    else case

    fork optn menüpunkt =4
    variabel menüpunkt = set 1
    show picture 2 curser (160,200)

    else case

    fork optn menüvariabel =4
    fork optn menüpunkt =1
    variabel menüpunkt = set 4
    show picture 2 curser (160,50)

    else case

    fork optn menüpunkt =2
    variabel menüpunkt = -1
    show picture 2 curser (160,100)

    else case

    fork optn menüpunkt =3
    variabel menüpunkt = -1
    show picture 2 curser (160,150)

    else case

    fork optn menüpunkt =4
    variabel menüpunkt = -1
    show picture 2 curser (160,200)

    end case


    end case

    end case

    end case

    end case
    fork optn menüvariabel =5
    fork optn menüpunkt = 1
    call system menü

    else case
    fork optn menüpunkt = 2
    call save menü

    else case

    fork optn menüpunkt = 3
    go to title screen

    else case

    fork optn menüpunkt = 4
    game over

    end case

    end case

    end case

    end case

    end case
    fork optn menüvariabel =6
    erase pictur 1
    erase picture 2
    change switch (menü an)-off set
    change switch (menü möglich) -on set


    kann mir einer sagen was an diesem script falsch ist?
    ich vermute es liegt an der picture anordnung.

  8. #8
    Ganz schön schwer zu entziffern, was du da eigentlich versucht hast.
    Es lässt sich jedenfalls festhalten: Du denkst offenbar zu kompliziert.

    Du musst dieses Setzen der Werte und Bilder nicht für alle möglichen erdenklichen Zustände
    einzeln definieren, da sie alle so gleich sind.

    Code:
    <>If Var [Taste] == 1
     <>Set Var [Auswahl] + 1
     <>If Var [Auswahl] > (Hier maximale Auswahlnummer einfügen)
      <> Set Var [Auswahl] = 1
      <>
     :END
     <>
    :ELSE
     <>If Var [Taste] == 4
      <>Set Var [Auswahl] - 1
      <>If Var [Auswahl] == 0
       <> Set Var [Auswahl] = (Hier maximale Auswahlnummer einfügen)
       <>
      :END
      <>
     :END
     <>
    <>
    Damit handelst du alle Möglichkeiten ab.
    NACH diesem Prozess kannst du dann den Cursor bewegen je nach Auswahl-Var,
    den du am besten schon beim Menüaufruf anzeigst, statt ihn immer wieder neu zu laden.
    Code:
    <>If Var [Auswahl] == 1
     <>Move Picture ## blablabla ###|### Dauer: (0, 1 oder 2 Zehntel, bitte nicht länger)
     <>
    :ELSE
     <>If Var [Auswahl] == 2
      <> ........................
    ..................
    :END
    <>

  9. #9
    ich habe es wie folgt gemacht:


    enter password [taste]
    fork variabe l [taste] 1
    variabel [auswahl] +1
    fork [auswahl] 4 above
    variabel [auswahl] set 1

    end case

    else case
    fork variabel [taste] 4
    variabel [auswahl]-1
    fork variabel [auswahl] 0
    variabel [auswahl] set 4

    end case

    end case

    fork variabel [auswahl] 1
    move picture 2 [160,200]

    else case

    fork variabel [auswahl] 2
    move picture 2 [160,150]

    else case

    fork variabel [auswahl] 3
    move picture 2 [160,100]

    else case

    fork variabel [auswahl] 4
    move picture 2 [160,50]



    klappen tut es leider trotzdem nicht. kann mir vielleicht irgendeiner weiter helfen?

  10. #10
    Es gibt da einen Befehl, mit dem kann man Text ausgeben.

    Mit dem Textkommando \v[0022] z.B. kannst du in der Textbox den Inhalt von Variable 22 ausgeben.

    Was du nun tust, ist Textboxen im Code platzieren. Dadurch kannst du sehen, welcher Code aufgerufen wird und in welcher Reihenfolge. Dadurch kannst du erkennen, an welcher Stelle genau der Code nicht mehr das tut, was du von ihm erwartest.

  11. #11
    @Hunter1950
    Hast du das Bild vorher auch einmal mit Show Picture angezeigt?

  12. #12
    hallo kelven!! ja im zweiten common event habe ich es mit show picture gemacht .es werden zwei bilder geladen. einmal picture 1 der alte zettel der immer vorhanden sein soll und einmal das bild curser der sich immer bewegen soll.

  13. #13
    wenn ich drei mal auf die taste unten drücke geht er wieder nach oben. es soll aber erst beim 4 mal nach unten gehen

  14. #14
    Es könnte sein, dass die eine Abfrage auf ">=" statt ">" gestellt ist, dann schlägt der Rücksetzer
    nämlich schon bei der höchstnummerierten Auswahlzeile an und nicht erst, wenn überschritten wird.

  15. #15
    der code sieht so aus:


    - SCRIPT -
    <> Key Input Processing: Var. [133], Wait until key pressed, Keys: Directional keys, Decision, Cancel
    <> Fork Condition: If Variable [133] == 1 then ...
    <> Change Variable: [134] += 1
    <> Fork Condition: If Variable [134] >= 4 then ...
    <> Change Variable: [134] = 1
    <>
    : End of fork
    <> Fork Condition: If Variable [133] == 4 then ...
    <> Change Variable: [134] -= 1
    <> Fork Condition: If Variable [134] == 0 then ...
    <> Change Variable: [134] = 4
    <>
    : End of fork
    <>
    : End of fork
    <>
    : End of fork
    <> Fork Condition: If Variable [134] == 1 then ...
    <> Show Picture: #2, Cursor2, (160, 200), Mgn 100%, Tsp 0%
    <>
    : End of fork
    <> Fork Condition: If Variable [134] == 2 then ...
    <> Show Picture: #2, Cursor2, (160, 150), Mgn 100%, Tsp 0%
    <>
    : End of fork
    <> Fork Condition: If Variable [134] == 3 then ...
    <> Show Picture: #2, Cursor2, (160, 100), Mgn 100%, Tsp 0%
    <>
    : End of fork
    <> Fork Condition: If Variable [134] == 4 then ...
    <> Show Picture: #2, Cursor2, (160, 50), Mgn 100%, Tsp 0%
    <>
    : End of fork
    <> Fork Condition: If Variable [133] == 5 then ...
    <> Fork Condition: If Variable [134] == 1 then ...
    <> Call Main Menu
    <>
    : Else ...
    <> Fork Condition: If Variable [134] == 2 then ...
    <> Call Save Menu
    <>
    : Else ...
    <> Fork Condition: If Variable [134] == 3 then ...
    <> Go To Title Screen
    <>
    : Else ...
    <> Fork Condition: If Variable [134] == 4 then ...
    <> Game Over
    <>
    : End of fork
    <>
    : End of fork
    <>
    : End of fork
    <>
    : End of fork
    <>
    : End of fork
    <> Fork Condition: If Variable [133] == 6 then ...
    <> Erase Picture: #1
    <> Erase Picture: #2
    <> Change Switch: [182] = OFF
    <> Change Switch: [181] = ON
    <>
    : End of fork

  16. #16
    Zitat Zitat
    <> Fork Condition: If Variable [134] >= 4 then ...
    Wie ich es schon vorausgagt hab: Da liegt das Problem (>).

  17. #17
    ich habe es jetzt mit "same 5) getan. funktioniert besser aber trotzdem bin ich mit dem menü noch nicht zufrieden, da der maker erst nach dem 2 tastendruck reagiert

  18. #18
    Textboxen rein und gucken wo es hakt.

  19. #19
    Ich hab so den Verdacht, dass die Auswahl-Var vorher nicht auf einen Startwert von 1 gesetzt wurde.

  20. #20
    @corti kann man das nicht sehen wenn man f9 drückt.da sind doch alle werte von den variabeln aufgelistet

    @ magic maker ich habe die auswahl variabel auf +1 gesetzt

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •