     if otherBody != nil && (otherBody!.categoryBitMask & blockCategory != 0) {
       otherBody!.node?.removeFromParent()
       if isGameWon() {
-        createBlocks()
+        reset()
+        start()
       }
       return
     }

    let ball = SKSpriteNode(color: ballColor, size: CGSize(width: 8, height: 8))
    
    
    ball.position = CGPoint(x: frame.size.width - 30.0 - ball.size.width, y: CGRectGetHeight(frame)*CGFloat(arc4random())/CGFloat(UINT32_MAX)
)
    ball.name = ballName
    
    ball.physicsBody = SKPhysicsBody(circleOfRadius: ceil(ball.size.width/2.0))

    ball.physicsBody?.friction = 0.0
    
    addChild(ball)
  }
  
  func removeBall() {
    let ball = childNodeWithName(ballName)
    ball?.removeFromParent()
  }
  
  func createLoadingLabelNode() {
