2016-03-18 5 views
0

Ist es möglich, die Sichtbarkeit eines Child eines Objekts festzulegen, das ein Kind der Bühne über der Bühne ist?AS3 - Einstellungsebene über dem übergeordneten Objekt

Wenn zum Beispiel die Überwelt ein Kind der Bühne ist und ein PlayerCharacter auch ein Kind der Bühne ist, kann der Spielercharakter hinter Teile der Überwelt gehen, zum Beispiel Bäume?

+0

Es ist nicht möglich. Die einzige Möglichkeit, die Anzeigetiefe zu steuern, besteht darin, die Anzeigelistenreihenfolge anzupassen. Sie legen alle Ihre Objekte immer in ein und dasselbe Elternelement und verwenden Ihren eigenen Sortieralgorithmus, um das Aussehen der Tiefe im Laufe der Zeit zu steuern. – Aaron

Antwort

0

können Sie verwenden:

parent.setChildIndex(Overworld, 1) 
parent.setChildIndex(PlayerCharacter , 2) 

Wenn die Tiefe (z Reihenfolge) der Objekte ist konstant I Schichten schlage vor, mit. Fügen Sie drei Sprites zu Ihrer Bühne hinzu. Wie Hintergrund, Spielobjekte und Vordergrund. Spart eine Menge Ärger.

public Sprite foregroundLayer = new Sprite(); 
public Sprite objectLayer = new Sprite(); 
public Sprite backgroundLayer = new Sprite(); 

Fügen Sie sie zu der Bühne in Ihrem Spiel Initialisierung in der gewünschten Reihenfolge.

+0

Ich habe auch darüber nachgedacht, aber das Problem dabei ist, dass die Teile, die im Vordergrund sein sollten, dynamisch auf der Overworld platziert werden, die automatisch auf der Ebene hinter dem Player liegen muss. Zum Beispiel haben die Bäume, die auf der Überwelt platziert sind, zwei Teile, einen unteren Teil, in dem sich der Spieler befinden kann, und einen oberen Teil, der sich vor dem Spieler befindet. Also, ich denke nicht, dass das funktionieren würde, ohne die Spitze des Baumes vollständig von unten zu trennen. Aber ich sehe diese Funktion in so vielen Flash-Spielen, dafür muss es eine Lösung geben. Auch, warum "Eltern". SetChild? – uncanny

Verwandte Themen