Will auchmitmachen!
Also bei mir sähe das Common Event folgendermaßen aus:

- Ich verwende die zwei Variablen "alter Level" und "neuer Level". Beide Variablen bekommen zu Beginn des Spieles außerhalb dieses Common Events den Level, mit dem der Held sein Abenteuer beginnt (z.B. im Intro oder wo du willst).
- Das Common Event steht auf "Parallel Process" und hat keinen Appearance Condition Switch.

Die Anweisungen sind die folgenden:
1. Gebe der Variable "neuer Level" den Wert vom Level deines Helden.
2. Vergleiche die Variable "neuer Level" mit dem Wert der Variable "alter Level" (mit dem Vergleichsoperator "bigger").
Wenn "neuer Level" größer ist:
3. Gib dem Held das Item
4. Gib der Variable "alter Level" den Wert von "neuer Level".
Ende der Fork-Condition
5. Lass den Rechner 0,1 Sekunden warten, aus Perormance-Gründen.

Natürlich kannst du auch, wie mgx vorgeschlagen hat, innerhalb des CE beim ersten Durchlauf den beiden Variablen ihre Initialwerte geben. Ich wollte halt meine Erklärung auf das Wesentliche beschränken und trotzdem ne sinnvolle Lösung präsentieren.
Btw: Wenn es bei dir passieren kann, dass der Held mehr als einen Level auf einmal gewinnt, wird er auf diese Weise trotzdem nur ein Item erhalten. Um das zu verhindern, müsstest du dem Helden nicht 1 Item geben, sondern die Differenz zwischen "neuer Level" und "alter Level" an Items.

@mgx: Was genau war an der Erklärung von übelster Held logisch falsch? Bis auf die Zuweisung der Initialwerte war doch alles dabei, oder? Und bei deinem Code besteht eine geringe Gefahr, dass der Cursor sich im Moment des Level-Ups auf der letzten Zeile deines Codes befindet und die Variable erhöht, ohne dem Helden das Item zu geben. Mit nem Wait am Ende ist das Risiko zwar sehr gering, aber es ist nicht 0%.

Grüße, Squall83