I wanted a way to create several identical particle emitters, and thought the easiest way would be to override the clone() method :
[java]
Index: ParticleEmitter.java
===================================================================
— ParticleEmitter.java (revision 6025)
+++ ParticleEmitter.java (working copy)
@@ -112,6 +112,37 @@
super();
}
-
@Override
- public ParticleEmitter clone(){
-
ParticleEmitter clone = new ParticleEmitter(name+" clone", meshType, particles.length);<br />
+
-
clone.setCullHint(this.cullHint);<br />
-
clone.setEndColor(endColor);<br />
-
clone.setStartColor(startColor);<br />
-
clone.setEndSize(endSize);<br />
-
clone.setFaceNormal(faceNormal);<br />
-
clone.setFacingVelocity(facingVelocity);<br />
-
clone.setGravity(gravity);<br />
-
clone.setHighLife(highLife);<br />
-
clone.setIgnoreTransform(ignoreTransform);<br />
-
clone.setImagesX(imagesX);<br />
-
clone.setImagesY(imagesY);<br />
-
clone.setInWorldSpace(worldSpace);<br />
-
clone.setLowLife(lowLife);<br />
-
clone.setParticlesPerSec(particlesPerSec);<br />
-
clone.setRandomAngle(randomAngle);<br />
-
clone.setRotateSpeed(rotateSpeed);<br />
-
clone.setSelectRandomImage(selectRandomImage);<br />
-
clone.setShape(shape);<br />
-
clone.setStartColor(startColor);<br />
-
clone.setStartSize(startSize);<br />
-
clone.setStartVel(startVel);<br />
-
clone.setVariation(variation);<br />
-
clone.setMaterial(material);<br />
+
-
return clone;<br />
- }
+
[/java]
[java]@Override
public ParticleEmitter clone(){
ParticleEmitter clone = new ParticleEmitter(name+" clone", meshType, particles.length);
clone.setCullHint(this.cullHint);
clone.setEndColor(endColor);
clone.setStartColor(startColor);
clone.setEndSize(endSize);
clone.setFaceNormal(faceNormal);
clone.setFacingVelocity(facingVelocity);
clone.setGravity(gravity);
clone.setHighLife(highLife);
clone.setIgnoreTransform(ignoreTransform);
clone.setImagesX(imagesX);
clone.setImagesY(imagesY);
clone.setInWorldSpace(worldSpace);
clone.setLowLife(lowLife);
clone.setParticlesPerSec(particlesPerSec);
clone.setRandomAngle(randomAngle);
clone.setRotateSpeed(rotateSpeed);
clone.setSelectRandomImage(selectRandomImage);
clone.setShape(shape);
clone.setStartColor(startColor);
clone.setStartSize(startSize);
clone.setStartVel(startVel);
clone.setVariation(variation);
clone.setMaterial(material);
return clone;
}[/java]