Die Controller wie Keyboard und Maus gehören dem Game. Die Figuren gehören zum Level.

Zu dem Zeitpunkt, an dem die Controller instanziert werden, ist noch nicht bekannt, welche Figuren es gibt. Wenn das Level die Figuren angelegt hat, wird den Controllern die zu steuernde Figur übergeben.
Ziel dabei war es von Level zu Level nur die zu steuernde Figur der physisch nur einmal vorhandenen Controller aus zu tauschen. Wenn ich die Controller direkt dem Level unterstellen würde, würden bei mehreren parallel existierenden Leveln mehrere Figuren parallel gesteuert werden. Dann alle Controller, die zu diesem Zeitpunkt inaktiv sein sollten zu überwachen, dachte ich, kann ich mir sparen, wenn es sie nur einmal gibt.