Ergebnis 1 bis 20 von 2334

Thema: Programmwunsch und -erstellungsthread #2

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #11
    Wenn jetzt Event A das Event B aufruft, Event B setzt einen Switch der Event A (und dadurch auch die Ausführung vom gecallten Event B!) deaktivieren würde, funktioniert das mit deiner Methode nicht.

    Meine Methode mit dem Call Stack ginge so:

    In den einzelnen Funktionen für die Eventbefehle (z.B. 4ACB18 ProcChangeVariable) gibt es ja drei Parameter: eax = aktueller TLcfgScripter, edx = aktuelle TLcfgScriptData, ecx = aktuelle TLcfEventScriptLine.
    Davon ausgehend:

    Code:
    ; angenommen, eax ist der TLcfgScripter
    mov eax, [eax+4] ; TLcfgScriptDataList
    mov eax, [eax+8] ; innere TList der TLcfgScriptDataList (quasi der Call Stack)
    mov eax, [eax+4] ; Pointer auf Array
    mov eax, [eax] ; Erster Eintrag (ursprünglicher Caller)
    mov eax, [eax+1c] ; Event ID (0 wenn kein Map Event)
    Der Vollständigkeit halber müsste das ganze btw auch bei Item Management und Change Party ausgeführt werden.

    EDIT: Bei DynRPG oder beim RM2k3 Debug Addon oder der Revolution Patch Preview-Version kann die Event ID da auch negativ sein, das ist dann eine Common-Event-ID, du solltest also überprüfen ob sie >= 0 ist, nicht != 0.

    Geändert von Cherry (14.09.2014 um 12:50 Uhr)

Berechtigungen

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