Since rendering the sprite itself isn't good enough to trigger the scene to re-render, let's directly check whether we've updated the sprites and if any have, we'll rerender the object IsoScene

git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@959 c613c5cb-e716-0410-b11b-feb51c14d237
This commit is contained in:
Mike Thomas
2010-08-17 18:38:49 +00:00
parent 51bb948925
commit 7884435cd1
2 changed files with 7 additions and 2 deletions
@@ -57,8 +57,6 @@ public class CharacterIsoSprite extends IsoSprite
_character = charSprite;
sprites = [wrapper];
autoUpdate = true;
}
public function tick (tickStamp :int) :void
@@ -93,9 +93,16 @@ public class CrowdStageScenePanel extends StageScenePanel
override public function tick (tickStamp :int) :void
{
super.tick(tickStamp);
var shouldRender :Boolean = false;
_sprites.forEach(function (key :int, sprite :CharacterIsoSprite) :void {
sprite.tick(tickStamp);
shouldRender ||= sprite.isInvalidated;
});
// TODO - partial scene rerenders would be useful here...
if (shouldRender) {
_objScene.render();
}
}
protected function updateDisplayForScene () :void