Ergebnis 1 bis 20 von 21

Thema: wie erstellt man ein eigenes menü

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    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?

  2. #2
    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

  3. #3
    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.

  4. #4
    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
    <>

  5. #5
    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?

  6. #6
    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.

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

  8. #8
    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.

  9. #9
    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

  10. #10
    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.

  11. #11
    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

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

Berechtigungen

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