/// <summary>
        ///  creates the action with the number of rows to split and the duration 
        /// </summary>
        public static CCSplitRows actionWithRows(int nRows, float duration)
        {
            CCSplitRows pAction = new CCSplitRows();
            if (pAction.initWithRows(nRows, duration))
            {
                return pAction;
            }

            return null;
        }
        /// <summary>
        ///  creates the action with the number of rows to split and the duration 
        /// </summary>
        /// <param name="nRows"></param>
        /// <param name="duration"></param>
        /// <returns></returns>
        public static CCSplitRows actionWithRows(int nRows, float duration)
        {
            CCSplitRows pAction = new CCSplitRows();

            if (pAction != null)
            {
                if (pAction.initWithRows(nRows, duration))
                {
                    //pAction->autorelease();
                }
                else
                {
                    //CC_SAFE_RELEASE_NULL(pAction);
                }
            }

            return pAction;
        }
        public override CCObject copyWithZone(CCZone pZone)
        {
            CCZone pNewZone = null;
            CCSplitRows pCopy = null;
            if (pZone != null && pZone.m_pCopyObject != null)
            {
                pCopy = (CCSplitRows)(pZone.m_pCopyObject);
            }
            else
            {
                pCopy = new CCSplitRows();
                pZone = pNewZone = new CCZone(pCopy);
            }

            base.copyWithZone(pZone);

            pCopy.initWithRows(m_nRows, m_fDuration);

            //CC_SAFE_DELETE(pNewZone);
            pNewZone = null;
            return pCopy;
        }