KDvoid ParallaxScrollNode::removeChild ( Sprite* pNode, KDbool bCleanup )
{
	Array*   pToRemove = Array::create ( );
    Object*  pObject   = KD_NULL;
    CCARRAY_FOREACH ( m_pScrollOffsets, pObject )
    {
        ParallaxScrollOffset*  pScrollOffset = (ParallaxScrollOffset*) pObject;
		if ( pScrollOffset->getTheChild ( ) == pNode )
		{
			pToRemove->addObject ( pScrollOffset );
			break;
		}
	}
ParallaxScrollOffset* ParallaxScrollOffset::scrollWithNode(CCNode *node,
		CCPoint r, CCPoint p, CCPoint s, CCPoint v) {
	ParallaxScrollOffset *offset = ParallaxScrollOffset::create();
	return (ParallaxScrollOffset*) offset->initWithNode(node, r, p, s, v);
}
ParallaxScrollOffset* ParallaxScrollOffset::scrollWithNode(Node *node, Point r, Point p, Point s){
    ParallaxScrollOffset *offset = (ParallaxScrollOffset*) ParallaxScrollOffset::create();
    return (ParallaxScrollOffset*)offset->initWithNode(node,r,p,s);
}