         super.init()
         
         self.position = node.position
+        self.zPosition = node.zPosition
+        self.name = node.name
     }
     
     required public init?(coder aDecoder: NSCoder) {
         fatalError("init(coder:) has not been implemented")
     }
-    
-    private func getMostRightPositionX()->CGFloat {
-        return getMostRightChildnode()!.position.x+node.size.width
-    }
-    
     
     private func getMostRightChildnode()->SKNode? {
         var mostRightNode:SKNode? = nil

 Usage:
 Designed for this kind of pattern
 GameScene  -> world            -> backgroundNodes -> place your EndlessBackground(s) here
                                -> e.g. platforms
                                -> e.g. interactive sprites
                                -> e.g. characters -> hero
                                                   -> enemies
            -> camera -> fixed stuff, e.g. control UI

 
 Add your EndlessBackground object to your backgroundNodes or world and call its draw() method in your didMoveToView for initializing.
 After that just call triggerDraw() in your GameScenes didFinishUpdate()

 */
public class EndlessBackground:SKNode {
    
    /// Caches your background node
    private let node:SKSpriteNode
    /// Max number of background nodes
    private var drawMaxNodes:Int
    private let camera:SKCameraNode
    /// New background is drawn when there is no bg at this value+camera.position.x
    private let distanceTrigger:CGFloat
    
    init(yourBackgroundNode node:SKSpriteNode,camera:SKCameraNode, triggerDistance:CGFloat?=nil) {
        
        self.node = node
        self.camera = camera
        
        if let d = triggerDistance {
