diff --git a/src/as/com/threerings/miso/client/MisoScenePanel.as b/src/as/com/threerings/miso/client/MisoScenePanel.as index c9f15e15..50306b03 100644 --- a/src/as/com/threerings/miso/client/MisoScenePanel.as +++ b/src/as/com/threerings/miso/client/MisoScenePanel.as @@ -204,6 +204,11 @@ public class MisoScenePanel extends Sprite return blocks; } + protected function createSceneBlock (blockKey :int) :SceneBlock + { + return new SceneBlock(blockKey, _objScene, _isoView, _metrics); + } + protected function refreshBaseBlockScenes () :void { _resStartTime = getTimer(); @@ -219,8 +224,7 @@ public class MisoScenePanel extends Sprite blocks.forEach(function(blockKey :int) :void { if (!_blocks.containsKey(blockKey)) { - var sceneBlock :SceneBlock = - new SceneBlock(blockKey, _objScene, _isoView, _metrics); + var sceneBlock :SceneBlock = createSceneBlock(blockKey); _pendingBlocks.add(sceneBlock); sceneBlock.resolve(_ctx, _model, thisRef, blockResolved); } @@ -228,7 +232,7 @@ public class MisoScenePanel extends Sprite _skipComplete = false; - + if (_pendingBlocks.size() == 0) { resolutionComplete(); } diff --git a/src/as/com/threerings/miso/client/SceneBlock.as b/src/as/com/threerings/miso/client/SceneBlock.as index a41a21bf..1aceab2f 100644 --- a/src/as/com/threerings/miso/client/SceneBlock.as +++ b/src/as/com/threerings/miso/client/SceneBlock.as @@ -142,7 +142,7 @@ public class SceneBlock */ public function render () :void { - _isoView.addScene(_baseScene); + _isoView.addSceneAt(_baseScene, 0); _baseScene.render(); for each (var sprite :ObjectTileIsoSprite in _objSprites) { _objScene.addChild(sprite);