Cherry und Corti haben Recht, du solltest lieber vorher eine Nummer kleiner anfangen und genau verinnerlichen wie jeder Befehl funktioniert und selber versuchen einen Lösungsansatz zu finden.
Versuche nicht wild drauf los zu skripten, sondern überlege dir erst einen "Pseudo-Algorithmus".
Dennoch:
Pass auf, ganz einfach, nach diesem Fall, kann es vier verschiedene Alternativen geben. Die Alternativen hintereinander so auszuführen würde zu einer Überschreibung einer wohlmöglich erfüllten Bedingung führen. Das heißt, dass immer das ausgerüstete Schild von der "WITCH" alles vorher nichtig macht, weil das immer als Letztes ausgeführt wird. Das heißt, wenn man diese Klasse spielt, sollte das eigentlich funktionieren, aber mit den anderen Klassen dann wiederum nicht. Stattdessen musst du dem Maker sagen, dass es Alternativen sind, indem du Bedingungen mit Else-Verzweigungen benutzt.
Hier wird die Shield ID je nachdem, wer gerade in der Party ist, nach dem aktuellen Helden zugewiesen. Allerdings geht das auch nur so, wenn du wirklich immernur einen einzigen Charakter in der Party hast! (Bei einem ABS üblich, es sei denn Du benutzt NPC-Mitstreiter, was allerdings für einen Amateur zu viel des Guten wäre)
EDIT: Trotzdem überlege dir bitte Mal, was es mit diesem Befehl @> Control Variables: [0001:Shield ID] = [CHARACTER]'s Shield ID GENAU auf sich hat.