Vorab solltest du die Idee mit den Switches schonmal vergessen. Es gibt einen simpleren Weg, statt auf einen SwitchPointerPatch zu warten: Werte, die nicht abgefragt werden sollen, mit -1 multiplizieren (bei Erhöhung/Senkung im Hintergrund aber Minus statt Plus, um den Betrag zu erhöhen usw.).

Zitat Zitat von EasyEventExporterEdit
- VarCheck -

<> Change Variable: [0021 Check_Target] Set 1
<> Change Variable: [0022 Check_ID_First/Now] Set 1
<> Change Variable: [0023 Check_ID_Last] Set 10
<> Change Variable: [0024 Check_Value_Memory] Set Var[V[0021]] Value
<> Change Variable: [0025 Check_ID_Memory] Set 0
<> Label: 1
<> Fork Condition: If Variable [0022 Check_ID_First/Now] is V[0021] Not
<> Change Variable: [0026 Check_Value] Set Var[V[0022]] Value
<> Fork Condition: If Variable [0026 Check_Value] is 0 or more
<> Comment: Jede Var mit negativem Wert wird nicht berücksichtigt.
<> Fork Condition: If Variable [0026 Check_Value] is V[0024] Less/Equal
<> Change Variable: [0024 Check_Value_Memory] Set Var[V[0022]] Value
<> Change Variable: [0025 Check_ID_Memory] Set Var[0022]'s Value
<>
: End
<>
: End
<>
: End
<> Fork Condition: If Variable [0022 Check_ID_First/Now] is V[0023] Not
<> Change Variable: [0022 Check_ID_First/Now] + 1
<> Jump To Label: 1
<>
: End
<> Fork Condition: If Variable [0025 Check_ID_Memory] is 0 Not
<> Change Variable: [0026 Check_Value] Set Var[V[0021]] Value
<> Show Message: Var.No \v[0021] (hat den Wert \v[0026]) wird um \v[0024] subtrahiert.
<> Change Variable: [0026 Check_Value] - Var[0024]'s Value
<> Show Message: Das Ergebnis ist \v[0026].
<> Comment: Send Value of V[0026]
: oder:
:
: Variable Oper: [V[0021]] Set, Var V[0026]'s Value
<>
: Else Handler
<> Show Message: Alle geprüften Werte sind größer als das Ziel.
<>
: End
<>
Es werden alle Werte zwischen ID_First und ID_Last mit der Var-ID in Check_Target verglichen. Alles mit einem Wert unter Null bleibt draußen. Bei gleichen kleinsten Zahlen wird der letzte erfasste Wert genommen.

Zum Thema "Variablen liegen verstreut herum": verpasse den genutzten Variablen einen Pseudo-Header. Zum Bsp. zu nutzende Werte um +7 000 000 erhöhen, Fork Cond. if V[xxxx] is 7 000 000 or more um zugewiesene Variablen zu erkennen, dann -7 000 000 gefolgt von allen Berechnungen und Abfragen, am Ende wieder +7 000 000. Oder was auch immer für Erkennungsmuster, die in keiner anderen Variable je erreicht werden.