Actionscript3.0, Flash

noviembre 2008

Diferencias entre MovieClip, Sprite y Shape

En Actionscript 3.0 tenemos la posibilidad de trabajar con varios tipos de display objects. Esto es un intento de explicar cuales son las diferencias entre ellos y para qué se pueden utilizar:

MovieClip: La clase MovieClip hereda de la clase Sprite. Es decir: todos los atributos y métodos de Sprite, los tiene MovieClip. Además los MovieClips incluyen linea de tiempo, y las propiedades y métodos asociados. Por ejemplo MovieClip incluye los métodos play(), stop(), gotoAndPlay(), nextFrame(), etc… y las propiedades currentFrame, currentLabel, scenes, totalFrames, etc…

Sprite: como un MovieClip pero sin linea de tiempo. Es decir, un Sprite puede utilizarse como contenedor de objetos, almacenar variables, y recibir eventos. Lo único que no se puede hacer es manipular su linea de tiempo, ya que no tiene.

Shape: como un Sprite pero sin interactividad de ratón ni teclado. Tampoco pueden contener objetos de visualización secundarios. Se suelen utilizar para dibujar dentro de ellos, ya que poseen el atributo graphics.