Ergebnis 1 bis 20 von 2336

Thema: Programmwunsch und -erstellungsthread #2

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Selbst mit DynRPG sehe ich keine Möglichkeit ein einziges Event weiter laufen zu lassen. Die Bewegung des Helden wird unterdrückt, wenn du ein Autostart laufen hast. Es kann auch nur ein Autostart zur Zeit laufen. Dein eigenes Menü wird sicherlich per Tastenabfrage in einem PP aufgerufen. Mach das Menüevent selbst trotzdem als Autostart. Die anderen PPs aus dem Kampfgeschehen kann man nicht so einfach pausieren, du könntest sie aber am Zyklusende manuell pausieren, davon ausgehend, dass deine PPs alle elegant und kurz gehalten sind. Eventbewegungen auf der Map kann man so aber nicht einfrieren. Die üblichen Kniffe wie ein Mapwechsel sind allesamt unelegant und mit anderen Nebenproblemen verbunden.

    Aber nicht verzweifeln, eine Lösung gibt es immer irgendwie. Nur ist sie manchmal mit etwas mehr Aufwand verbunden.

  2. #2
    SwitchOnMenuCall
    Ersetzt den Aufruf vom Standardmenü per Abbruchtaste durch einen Switch, standardmäßig #1017.

    RPG_RT.exe-Version: RPG2000 1.07 + 1.61, RPG2003 1.08 + 1.11

    Der Switch, der benutzt wird (oder eine höhere ID, z.B. 5000), muss vor dem allerersten möglichen Menüaufruf
    einmal im Spiel verwendet worden sein, damit die Werte von Switch 1 bis X im Speicher initialisiert sind.

    Beispiel, was beim Spielstart gemacht werden könnte:
    Code:
    <>Change Switch: [1017:MenuCall] = OFF
    Das Standardmenü kann weiterhin per Event geöffnet werden (<>Call Game Menu), soweit ich beim Testen,
    festgestellt hab, gibt's keinen negativen Einfluss auf Dinge wie DirectMenuPatch, soll heißen: Kompatibel.

    Auch das Sperren von eurem Menü geht nun so einfach wie beim Standard, das macht nun der altbekannte
    normale Eventbefehl (<>Game Menu: Disallow).

    Was der Patch bei einem CustomMenu behebt:
    Interaktion mit Events zum gleichen Zeitpunkt wie das Menü aufgerufen wird, was zwangsweise eins der beiden
    Dinge je nach Fall hinten anstellt (oder bei sowas dummem wie einem Mapmenü die Interaktion ganz frisst).
    Das Verhalten hat die Aufruffunktion vom Standardmenü nicht, da die Engine es rechtzeitig blockiert.

    Was der Patch bei einem CustomMenu NICHT behebt:
    Generelle Probleme mit Events, die bereits parallel im Gange sind. Bislang hab ich dafür leider keine einfache
    Lösung, sah aber eh die andere Sache erstmal als kritischer an.

    "Noch nicht ganz verstanden. Muss ich mein Menü noch irgendwie manuell aufrufen lassen?"
    Nö, das macht das Spiel von allein, solange ein Event, vorzugsweise CommonEvent, auf den Switch reagiert.

    Beispielaufbau von einem sehr primitiven Menü-CommonEvent:
    Code:
    CE0001: "Menü"   Trigger: [AutoStart]   Switch: [1017:MenuCalling]
    
    <>Game Menu: Disallow   Caller vorerst sperren
    <>Change Switch: [1017:MenuCalling] = OFF   Switch ausschalten hat keinen Einfluss darauf, ob das Menü weiterläuft
    <>Play Sound: Decision1 (Vol 100, Pitch 100, Pan 50)   Ein xbeliebiges Signal zum Öffnen vom Menü
    <>Loop Start
     <>Show Choice: "Status", "Optionen", "Speichern", "Beenden", ExtraCancel   Provisorische Auswahl zur Demonstration
     : Choice ["Status"]
      <>Show Message: "Hier gibt's nix!"
      <>
     : Choice ["Optionen"]
      <>Show Message: "Hier gibt's ne doppelte Portion Nix!"
      <>
     : Choice ["Speichern"]
      <>Go To Label: 99
      <>
     : Choice ["Beenden"]
      <>Set Face: Delete
      <>Show Message: "Willst du wirklich zurück zum Titelbildschirm?"
      <>Show Choice: "Nein", "Ja"
      <>
      : Choice ["Nein"]
       <>
      : Choice ["Ja"]
       <>Go To Titlescreen
       <>
      : Choice End
      <>
     : Cancel
      <>Play Sound: Cansel1 (Vol 100, Pitch 100, Pan 50)
      <>Break Loop
      <>
     : Choice End
     <>
    : Loop End
    <>Go To Label: 100
    <>Label Set: 99
    <>Call Save Menu
    <>Label Set: 100   Ende vom Menüprozess
    <>Game Menu: Allow   Dafür sorgen, dass das Menü nachher wieder geöffnet werden kann
    <>
    Um einen anderen Switch zu verwenden, tragt an der jeweiligen Hex-Adresse eure gewünschte Nummer ein.
    • 2000-1.07: 0x0008CA4A
    • 2000-1.61: 0x00086BDA
    • 2003-1.08: 0x000A8EAE
    • 2003-1.11: 0x000BD796



    SwitchOnMenuCall rv100 (2015|06|29)

Berechtigungen

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