Ejemplo n.º 1
0
// --- Methods inherited from ReferenceTarget ---
// This method is called to have the plug-in clone itself.
RefTargetHandle Planet::Clone(RemapDir &remap) {
	// Create a new instance of the plug-in class
	Planet *newPlanet = new Planet();

	// Copy superclass stuff
	*((MtlBase *)newPlanet) = *((MtlBase *)this);

	// Clone the items we reference
	newPlanet->ReplaceReference(0, remap.CloneRef(xyzGen));
	newPlanet->ReplaceReference(1, remap.CloneRef(pblock));
	newPlanet->col[0] = col[0];
	newPlanet->col[1] = col[1];
	newPlanet->col[2] = col[2];
	newPlanet->col[3] = col[3];
	newPlanet->col[4] = col[4];
	newPlanet->col[5] = col[5];
	newPlanet->col[6] = col[6];
	newPlanet->col[7] = col[7];
	newPlanet->size = size;
	newPlanet->island = island;
	newPlanet->percent = percent;
	newPlanet->seed = seed;
	newPlanet->texValidity.SetEmpty();	
	BaseClone(this, newPlanet, remap);
	// Return the new cloned texture
	return (RefTargetHandle)newPlanet;
}