Archiv verlassen und diese Seite im Standarddesign anzeigen : Menü lässt sich nach beenden nicht aufrufen
Guten Morgen :)
Ich arbeite gerade daran meine ganzen Menüs die auf Karten basieren (Charakter, Attributsmenü, dergleichen..) Durch ein Menü dass während dem Spiel aufrufbar ist.. Über das übliche System, einen Parallelen Prozess.
Dabei gehe ich so vor: (
Paralleler Prozess 1, Außenmenü (Auslösender Tab: Menü: An)
Passwort eingeben
Bedingung: Var. Tastenabfrage = 6
Bild anzeigen (1): Menü
Bild anzeigen (2): Menücursor
Var. ändern: Tastenabfrage set 0
Var. ändern: Menüsteuerung set 1
Tab AN: Menüstarten
Bedingung Ende
Im Parallelen Prozess 2, "Menüsteuerung" lässt sich das Menü steuern und wieder beenden. Happern tuts beim Beenden und wieder aufrufen.
Der Code im 2ten Prozess(Menüsteuerung) dafür sieht so aus:
(Jener hängt übrigens in einem Zyklus mit den restlichen Menüsteuerungs und Aufrufbedingungen inklusive Tastenabfrage)
Bedingung: Var. Tastenabfrage = 6
Var. ändern: Tastenabfrage = 0
Var. ändern: Menüsteuerung = 0
Bild löschen: 1
Bild löschen: 2
Tab aus: Menüstarten
Tab an: Menü: An
Bedingung Ende:
Zykl. Ende
Das Menü schließt sich - Danach lässt es sich aber nicht mehr aufrufen obwohl die Tabs dafür richtig stehen. Wo könnte mein Fehler liegen?
Danke im voraus!
Bei der Menüsteuerung.
Hast du ja mehrere Auswahlpunkte.
Sagen wir mal 5.
Dann musst du den Key Input Process auch für den Cancel Key machen und zwar für ALLE Auswahlpunkte. Da änderst du den Switch auf off und löscht die Bilder.
Ich denke nämlich du hast das löschen nur ein mal im Code oder?
Ich hatte es einmal im Code, ja - Sodass sich pauschal wenn ESC gedrückt wird das Menü schließt. Ich habs jetzt extra nochmal für jeden Menüpunkt(3 an der Zahl) eingebaut. Schließen lässt sichs nach wie vor, allerdings noch immer nicht wieder aufrufen :/
Kyren:
Wäre nett von Dir, wenn Du den Code über dieses Tool extrahierst und hierher postest. Dann können wir Dir eher sagen, was falsch ist, weil dann alle Zusätze (Eventeinstellungen und so) mit enthalten sind. :)
*Das Ding gibt's hier zum Download* (http://www.multimediaxis.de/showthread.php?t=112743)
€:
Readme lesen nicht vergessen. Bin mir grad nicht sicher, welches der Templates sich für den hellen Hintergrund hier eignet, hab die Namen nicht im Kopf.
Ich hatte es einmal im Code, ja - Sodass sich pauschal wenn ESC gedrückt wird das Menü schließt. Ich habs jetzt extra nochmal für jeden Menüpunkt(3 an der Zahl) eingebaut. Schließen lässt sichs nach wie vor, allerdings noch immer nicht wieder aufrufen :/
Pauschal gedrückt bringt es ja nichts.
Immerhin muss es bei jeden Menüpunkt schließbar und wieder aufrufbar sein.
Schau her.
Key Input Process (Cancel Key)
If Var Menüpunkt 1 gleich 6
Set Switch Menü offen off
Erase Picture 1
Erase Picture 2
...Platz für andere Sachen...
Key Input Process (Cancel Key)
If Var Menüpunkt 2 gleich 6
Set Switch Menü offen off
Erase Picture 1
Erase Picture 2
...Platz für andere Sachen...
Key Input Process (Cancel Key)
If Var Menüpunkt 3 gleich 6
Set Switch Menü offen off
Erase Picture 1
Erase Picture 2
...Platz für andere Sachen...
Wenn du es so hast, bitte ganzen Code zeigen wie schon von cilence gesagt.
EDIT:
Manche wissen es ich hab ne andere Methode^^
Für die einen aufwendiger für die anderen einfacher.
@ Arnold
Bei mir sieht das geringfügig anders aus, ich mach die Tastenabfrage am Anfang des Events. Aber ich stell das hier mal zur Besichtigung..
@Cilence - Danke für den Tipp, ich setz das hier mal um :)
Erster Allg. Prozess, Menüaufruf
- SCRIPT -
<> Key Input Processing: Var. [4], Wait until key pressed, Keys: Cancel
<> Fork Condition: If Variable [4] == 6 then ...
. <> Show Picture: #1, normmenu, (119, 227), Mgn 100%, Tsp 0%, No trans. color
. <> Show Picture: #2, normmenucursor, (35, 232), Mgn 100%, Tsp 0%, No trans. color
. <> Change Variable: [4] = 0
. <> Change Variable: [5] = 1
. <> Change Switch: [18] = ON
. <>
: End of fork
Und hier der 2te, die Menüsteuerung:
- SCRIPT -
<> Comment: ------Menüsteuerung----
<> Loop
. <> Key Input Processing: Var. [4], Wait until key pressed, Keys: Directional keys, Decision, Cancel
. <> Comment: Charakter -> Nach rechts zu Aufgaben/Archiv
. <> Fork Condition: If Variable [5] == 1 then ...
. . <> Fork Condition: If Variable [4] == 3 then ...
. . . <> Move Picture: #2, (130, 232), Mgn 100%, Tsp 0%, 0,0 sec., Wait
. . . <> Change Variable: [5] = 2
. . . <> Change Variable: [4] = 0
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Aufgaben/Archiv -> Nach links zu Charakter
. <> Fork Condition: If Variable [5] == 2 then ...
. . <> Fork Condition: If Variable [4] == 2 then ...
. . . <> Move Picture: #2, (35, 232), Mgn 100%, Tsp 0%, 0,0 sec., Wait
. . . <> Change Variable: [5] = 1
. . . <> Change Variable: [4] = 0
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Aufgaben-/Archiv -> nach rechts zu Inventar
. <> Fork Condition: If Variable [5] == 2 then ...
. . <> Fork Condition: If Variable [4] == 3 then ...
. . . <> Move Picture: #2, (209, 232), Mgn 100%, Tsp 0%, 0,0 sec., Wait
. . . <> Change Variable: [5] = 3
. . . <> Change Variable: [4] = 0
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Inventar -> Nach links zu Aufgaben/Archiv
. <> Fork Condition: If Variable [5] == 3 then ...
. . <> Fork Condition: If Variable [4] == 2 then ...
. . . <> Move Picture: #2, (130, 232), Mgn 100%, Tsp 0%, 0,0 sec., Wait
. . . <> Change Variable: [5] = 2
. . . <> Change Variable: [4] = 0
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Charaktermenü aufrufen
. <> Fork Condition: If Variable [5] == 1 then ...
. . <> Fork Condition: If Variable [4] == 5 then ...
. . . <> Memorize Location: Map -> Var. [1], X -> Var. [2], Y -> Var. [3]
. . . <> Change Variable: [4] = 0
. . . <> Fork Condition: If Hero #1 is in party then ...
. . . . <> Change Variable: [201] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #2 is in party then ...
. . . . <> Change Variable: [202] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #4 is in party then ...
. . . . <> Change Variable: [203] = 1
. . . . <>
. . . : End of fork
. . . <> Change Party: Remove hero #4
. . . <> Change Party: Remove hero #1
. . . <> Change Party: Remove hero #2
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = OFF
. . . <> Change Variable: [5] = 0
. . . <> Teleport: Map #47, (3, 0)
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Aufgaben/Archiv aufrufen
. <> Fork Condition: If Variable [5] == 2 then ...
. . <> Fork Condition: If Variable [4] == 5 then ...
. . . <> Change Variable: [4] = 0
. . . <> Memorize Location: Map -> Var. [1], X -> Var. [2], Y -> Var. [3]
. . . <> Fork Condition: If Hero #1 is in party then ...
. . . . <> Change Variable: [201] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #2 is in party then ...
. . . . <> Change Variable: [202] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #4 is in party then ...
. . . . <> Change Variable: [203] = 1
. . . . <>
. . . : End of fork
. . . <> Change Party: Remove hero #4
. . . <> Change Party: Remove hero #1
. . . <> Change Party: Remove hero #2
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = OFF
. . . <> Change Variable: [5] = 0
. . . <> Teleport: Map #50, (3, 0)
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Comment: Inventar aufrufen
. <> Fork Condition: If Variable [5] == 3 then ...
. . <> Fork Condition: If Variable [4] == 5 then ...
. . . <> Change Variable: [4] = 0
. . . <> Call Main Menu
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Fork Condition: If Variable [5] == 1 then ...
. . <> Fork Condition: If Variable [4] == 6 then ...
. . . <> Erase Picture: #1
. . . <> Erase Picture: #2
. . . <> Change Variable: [4] = 0
. . . <> Change Variable: [5] = 0
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = ON
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Fork Condition: If Variable [5] == 2 then ...
. . <> Fork Condition: If Variable [4] == 6 then ...
. . . <> Erase Picture: #1
. . . <> Erase Picture: #2
. . . <> Change Variable: [4] = 0
. . . <> Change Variable: [5] = 0
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = ON
. . . <>
. . : End of fork
. . <>
. : End of fork
. <> Fork Condition: If Variable [5] == 3 then ...
. . <> Fork Condition: If Variable [4] == 6 then ...
. . . <> Erase Picture: #1
. . . <> Erase Picture: #2
. . . <> Change Variable: [4] = 0
. . . <> Change Variable: [5] = 0
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = ON
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of loop
So, bittesehr. Ich hoff ich vergeud eure Zeit nicht unnötig in dem ich einen Fehler gemacht hab auf den ich selbst auch kommen könnt :/ Danke euch aber schonmal vielmals :))
Nein, nicht nach der Bedingung das mit dem schließen machen.
Du machst einen Ansonsten-Fall und fügst da das mit dem Menü weggmachen ein.
Du meinst so?
- SCRIPT -
. <> Comment: Charaktermenü aufrufen
. <> Fork Condition: If Variable [5] == 1 then ...
. . <> Fork Condition: If Variable [4] == 5 then ...
. . . <> Memorize Location: Map -> Var. [1], X -> Var. [2], Y -> Var. [3]
. . . <> Change Variable: [4] = 0
. . . <> Fork Condition: If Hero #1 is in party then ...
. . . . <> Change Variable: [201] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #2 is in party then ...
. . . . <> Change Variable: [202] = 1
. . . . <>
. . . : End of fork
. . . <> Fork Condition: If Hero #4 is in party then ...
. . . . <> Change Variable: [203] = 1
. . . . <>
. . . : End of fork
. . . <> Change Party: Remove hero #4
. . . <> Change Party: Remove hero #1
. . . <> Change Party: Remove hero #2
. . . <> Change Switch: [18] = OFF
. . . <> Change Switch: [17] = OFF
. . . <> Change Variable: [5] = 0
. . . <> Teleport: Map #47, (3, 0)
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [4] == 6 then ...
. . . . <> Erase Picture: #1
. . . . <> Erase Picture: #2
. . . . <> Change Variable: [4] = 0
. . . . <> Change Variable: [5] = 0
. . . . <> Change Switch: [18] = OFF
. . . . <> Change Switch: [17] = ON
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
Schließen lässt es sich damit nach wie vor, aber leider nicht wieder öffnen. Ich hoff ich hab dich nicht missverstanden?
Hast du eine bedingung beim Common Event die sagt (sozusagen ja :D) das der switch menü offen auf on sein soll?
Ja, beim ersten Parallelen Prozess ist das der Tab "017 Menü: AN"
Für den zweiten Prozess ist das "0018 Menüstarten".
0017 wird eigentlich beim Beenden des Menüs wieder auf AN geschalten :/
- Ich hoffe du meintest die (im deutschen Maker) "auslösenden Tabs"?
Das erste Teil brauchts keinen Switch, das soll immer möglich sein.
Hmm, okay. Wie könnt ich dann ohne weitere Probleme zu verursachen unterbinden dass man dieses Menü aufruft während man sich auf einer Menükarte befindet? Parallele Ereignisse stoppen? Immerhin lässt dieses erste Event die Menübilder anzeigen.. Oder sollte ich das besser beim 2ten Event unterbringen?
Das zweite muss ein Auto-Start Event sein, dann kannst du das erste auch nicht aufrufen ;)
Nun gut, hab jetzt beim ersten den auslösenden Tab entfernt und das zweite Event auf Automatisch starten gestellt. Es lässt sich aber noch immer nicht wieder aufrufen?:/
komisch, ich habe es so gemacht(i-wann für DLSDE-Remake) und es klappt, wie gesagt hab ne andere Methode:
Menü Aufrufen:
http://npshare.de/files/1ad829be/menü%20aufrufen.PNG
Menü offen:
http://npshare.de/files/31eb3a1c/Menü%20offen.PNG
Ich hab jetzt, eigentlich weil ich ausprobieren wollte was du da mit den Labels machst, den Zyklus beim 2er Event rausgenommen. Und jetzt funktionierts auf einmal.. Dass hätt ich gleich probieren sollen. Immerhin klappts jetzt - Vielen Dank für deine Hilfe!
Ich hab jetzt, eigentlich weil ich ausprobieren wollte was du da mit den Labels machst, den Zyklus beim 2er Event rausgenommen. Und jetzt funktionierts auf einmal.. Dass hätt ich gleich probieren sollen. Immerhin klappts jetzt - Vielen Dank für deine Hilfe!
Jo, kein Problem, das mit den Labels mach ich nur, weil ich ne andere Methode hab und nicht die Variablentechnick da.^^
Wer's versteht gut ansonsten naja :D
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.