コード例 #1
0
	CCWaves3D* CCWaves3D::actionWithWaves(int wav, float amp, const ccGridSize& gridSize, ccTime duration)
	{
		CCWaves3D *pAction = new CCWaves3D();

		if (pAction)
		{
			if (pAction->initWithWaves(wav, amp, gridSize, duration))
			{
				pAction->autorelease();
			}
			else
			{
				CC_SAFE_RELEASE_NULL(pAction);
			}
		}

		return pAction;	
	}
コード例 #2
0
	CCObject* CCWaves3D::copyWithZone(CCZone *pZone)
	{
		CCZone* pNewZone = NULL;
		CCWaves3D* pCopy = NULL;
		if(pZone && pZone->m_pCopyObject) 
		{
			//in case of being called at sub class
			pCopy = (CCWaves3D*)(pZone->m_pCopyObject);
		}
		else
		{
			pCopy = new CCWaves3D();
			pZone = pNewZone = new CCZone(pCopy);
		}

		CCGrid3DAction::copyWithZone(pZone);


		pCopy->initWithWaves(m_nWaves, m_fAmplitude, m_sGridSize, m_fDuration);

		CC_SAFE_DELETE(pNewZone);
		return pCopy;
	}