Clone ParticleEmitter

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+&quot; clone&quot;, 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]