Zitat Zitat
und wie mache ich das dann rückgängig? ich brauch den "richtigen" variablenwert ja auch noch für andere sachen
Am besten ist es immer, wenn du vorgegebene Werte nimmst. Z.B. die HP des Helden. Diese kannst du immer leicht in eine Variable speichern etc etc...

Noch was zu Mod:

Beispiel mit der Zahl 234:
In der Database ist der Held auf Level 15 und hat nun 234 Maximale HP. Wie bekomme ich nun für ein Menü z.B. jede einzelne Stelle?
Erstmal brauch man für jede einzelne Stelle eine Variable, damit man die Zahl speichern kann. (Soweit bestimmt logisch)

(Es gibt viele Methoden, hier eine)
Nun speichert man die Maximale HP in JEDE Variable.

<>Change Variable 0001: Hunderter, Set Hero Max HP
<>Change Variable 0002: Zehner, Set Hero Max HP
<>Change Variable 0003: Einzer, Set Hero Max HP

Ausgeschrieben bedeutet das:

Variable 0001 (Hunderter) = 234
Variable 0002 (Zehner) = 234
Variable 0003 (Einzer) = 234

Nehmen wir nun die erste Variable. Um die erste Ziffer zu bekommen, muss man einfach geteilt durch 100 rechnen.

234 / 100 = 2 ,Rest 34

Da der Maker Nachkommastellen (hier als Rest) nicht mitrechnet und immer abrundet (Bedeutet, selbst wenn das Ergebniss 2,999999 ist, wird in der Variable 2 stehen), hätten wir schonmal die Hunderter bestimmt.
Makercode:

<>Change Variable 0001: Hunderter, / 100

Ausgeschrieben bedeutet das:

Variable 0001 (Hunderter) = 2
Variable 0002 (Zehner) = 234
Variable 0003 (Einzer) = 234

Nehmen wir nun die Zehner. Nun können wir den Mod Befehl anwenden. Damit die 3 als erste Ziffer rauskommt, müssten wir folgendes rechnen:
234 / 100 = 2 ,Rest 34
Das wichtige hierbei wäre, das nur der Rest gespeichert wird, und nicht die 2. Das ist der Sinn der Modfunktion. Es speichert den Rest.

<>Change Variable 0002: Zehner, MOD 100

Ausgeschrieben bedeutet das:
Variable 0001 (Hunderter) = 2
Variable 0002 (Zehner) = 34
Variable 0003 (Einzer) = 234

Um nun nur die 3 zu haben (in der Zehnerstelle), reicht simples dividieren durch 10.

<>Change Variable 0002: Zehner, / 10
( 34 / 10 = 3 ,Rest 4 )

Ausgeschrieben bedeutet das:
Variable 0001 (Hunderter) = 2
Variable 0002 (Zehner) = 3
Variable 0003 (Einzer) = 234

Nun müssen wir nur noch die 4 aus der 234 rauslösen. Um als Rest 4 zu bekommen, müssten wir 234 durch 10 teilen.

234 / 10 = 23 ,Rest 4

Wie oben erwähnt, speichert die Variable beim Mod Befehl den Rest. Bedeutet:

<>Change Variable 0003: Einzer, MOD 10

Ausgeschrieben bedeutet das:
Variable 0001 (Hunderter) = 2
Variable 0002 (Zehner) = 3
Variable 0003 (Einzer) = 4

Und, man schaue, man hat in jede einzelne Variable eine Ziffer. Nun einfach im Menü abfragen, wie hoch der Wert ist... Aber das versteht sich von selbst.
Hier der ganze Makercode:

<>Change Variable 0001: Hunderter, Set Hero Max HP
<>Change Variable 0002: Zehner, Set Hero Max HP
<>Change Variable 0003: Einzer, Set Hero Max HP
<>Change Variable 0001: Hunderter, / 100
<>Change Variable 0002: Zehner, MOD 100
<>Change Variable 0002: Zehner, / 10
<>Change Variable 0003: Einzer, MOD 10


Zidi