Um das zu verhindern muss man einfach eine zusätzliche Variable einbauen und Menumode 1042 verwenden um zu überprüfen, ob das Verzauberungsmenü überhaupt geöffnet wurde.
Natürlich noch mit einer Abfrage der Menge vor & nach dem Menü vergleichen, falls sich etwas geändert hat die fehlenden hinzufügen, ansonsten die neue Variable wieder auf 0 setzten.
Damit ist die Gefahr, dass ein Seelenstein fälschlicherweise hinzugefügt wird vernachlässigbar gering, zumindest wenn das Script oft genug abläuft.