Dieser Befehl ist für "player enters room before fadein" gedacht und soll sicherstellen, dass Objekte richtig angezeigt werden.
Er wird im Grunde nur benötigt, wenn man mehrere Charaktere hat, zwischen denen der Spieler wechseln kann.
Einfaches Beispiel: Bernard und Achmed stehen in Bernards Zimmer.
-Bernard öffnet die Zimmertür [die GlobalInt der Tür wird auf 1 gesetzt, das "offene Tür"-Objekt sichtbar gemacht].
-Bernard verlässt den Raum, ist jetzt im Flur und schließt seine Zimmertür hinter sich [GlobalInt der Tür wird auf 0 gesetzt, und das "offene Tür"-Objekt im Flur wird unsichtbar gemacht, nicht aber das in Bernards Zimmer!].
-Wechsel zu Achmed
ohne init():
Achmed sieht eine offene Tür, die GlobalInt der Tür ist aber auf 0 gesetzt, d.h. er kann die Tür nur öffnen, nicht schließen, obwohl sie offen ist.
mit init():
In before fadein wird init(gi, obj); aufgerufen => da die GlobalInt gi 0 ist, wird Object obj unsichtbar gemacht => Achmed sieht eine geschlossene Tür.
init(11, 0); überprüft also GetGlobalInt(11) und schaltet object[0].Visible entsprechend auf true oder false.