anchor.diff:  
     set score(int score) {
       _score = score;
  -    _updateHud();
  +    _dirtyScore = true;
     }
   
     Hud(this.spriteSheetUI) {
       pivot = Point.origin;
   
       sprtBgScore = new Sprite(spriteSheetUI["scoreboard.png"]);
  -    sprtBgScore.pivot = Point.origin;
  +    sprtBgScore.pivot = new Point(1.0, 0.0);
       sprtBgScore.scale = 0.6;
       addChild(sprtBgScore);
   
       sprtBgShield = new Sprite(spriteSheetUI["bar_shield.png"]);
  -    sprtBgShield.pivot = new Point(1.0, 0.0);
  +    sprtBgShield.pivot = Point.origin;
       sprtBgShield.scale = 0.6;
  -    addChild(sprtBgShield);
  +    // TODO: Add shield
  +    //addChild(sprtBgShield);
     }
   
     void spriteBoxPerformedLayout() {
  
positive.code:     // Move objects to center camera and warp objects around the edges
      centerCamera();
      warpObjects();
  
      // Update shield
      if (_numFrames > _numFramesShieldActive) _shield.visible = false;
  
negative.code:     size = spriteBox.visibleArea.size;
  
      // Position hud objects
      sprtBgShield.position = new Point(20.0, 20.0);
      sprtBgScore.position = new Point(size.width - 20.0, 20.0);
    }
  
    void update(double dt) {
      // Update score
      if (_dirtyScore) {
  
        sprtBgScore.removeAllChildren();
  
        String scoreStr = _score.toString();
        double xPos = -50.0;
        for (int i = scoreStr.length - 1; i >= 0; i--) {
          String numStr = scoreStr.substring(i, i + 1);
          Sprite numSprt = new Sprite(spriteSheetUI["number_$numStr.png"]);
          numSprt.position = new Point(xPos, 49.0);
          sprtBgScore.addChild(numSprt);
          xPos -= 37.0;
        }
        _dirtyScore = false;
      }
      // Update power bar
    }
  }
  
  