Cuando tenemos varios clips para crear en el escenario y debemos indicarles la posición y la ubicación a veces resulta medio tedioso escribir siempre el mismo código.
Este sería un código de ejemplo:
Código :
var miSprite:Sprite= new Sprite();
addChild(miSprite);
miSprite.x=10;
miSprite.y=10;
Uff y ni hablar de que si tengo que crear 20 Sprites uno dentro del otro me quedaría el código algo extenso verdad?..
Por lo que hice una clase que facilita la creación de Sprites. El código quedaría así:
Código :
package phoxer{
import flash.display.Sprite;
public class Sprites extends Sprite{
public function Sprites(cont:*,sx:int=0,sy:int=0,at:int=0):void{
super();
if(at>0){
cont.addChildAt(this,at);
}else{
cont.addChild(this);
}
this.x=sx;
this.y=sy;
}
}
}
Entonces al si queremos crear un Sprite con una simple linea ya podemos.
Código :
import phoxer.Sprites;
var miSprite:Sprites = new Sprites(this,10,10);
sipor ejemplo queremos anidar clips uno dentro del otro tambien se pude hacer asi..
Código :
var miSprite:Sprites = new Sprites(this,10,10);
var miSprite2:Sprites = new Sprites(miSprite,10,10);
var miSprite3:Sprites = new Sprites(miSprite2,10,10);
por lo menos se crean las cosas mas rápido y bueno se que no es muy útil pero simplifica el código mucho..
Está bien el tip. Siempre es bueno crearse clases que nos agilicen el escribir procesos que repetimos muy a menudo. Por:Zguillez
En realidad tampoco es que ahorre mucho ese objeto. Saludos Por:bipsa
Che mejor sería poner el default de at en -1, porque 0 es una posición válida para addChildAt(). no? o.O Por:petruza.com.ar-blog
si te fijas bien el 4to argumento es para manejar los index. 0 siempre es por default. pero si vos tenes una lista de 5 sprites y queres incluir uno nuevo en la posicion 4 pasas ese parametro con el numero 4 y listo.
var miSprite:Sprites = new Sprites(this,10,10,4);
pero si no lo pones no usa el addChildAt() Por:phoxer
Con todo el respeto pero no lo veo de gran utilidad. Por:adriesp
@adriesp:
La utilidad está en saber aplicar ejemplos como este, ya que puedes personalizar tus propios Sprite (o cualquier tipo de Clase o Dato) agregando nuevas propiedades y/o eventos para ahorrar tiempo al momento de instanciar esta clase Por:eldervaz-blog
Sé cúal es su utilidad, pero creo que cualquiera capaz de agregar objetos mediante actionscript puede hacerse este tipo de funcionalidad, no es un aporte que descubra algo nuevo o que ahorre un trabajo enormemente tedioso, por esta regla de tres podríamos hacer clases para sobreescribir todos los constructores que no nos resulten cómodos y colgar un tip, pero creo que eso es algo que debe hacer cada programador a su gusto.
Aún así insisto en que es mi opinión y para gustos los colores, si alguien piensa otra cosa o le resulta útil, por mi estupendo. Por:adriesp
y si. yo se que no es "util" yo quice compartir mi idea con los demas, y por otra parte ademas esta el chiste de que "mas fasil que crear un sprite". es una clase para flojos como yo nomas jeje.
como esas tengo muchas, y la utilidad como dijo eldervaz-blog es simplemente economizar tiempo y ser ordenado con el codigo. =) Por:phoxer
Phoxer, quizas a algunos no les sirva... pero estoy seguro que a muchisimos les va a servir mas que suficiente.
Todo aporte es bueno, no se porque las críticas, al que no le sirve que siga de largo, o que aporte con algo...
1 peso pa la birrA? Por:Raxiro-blog
Siento no ser propositivo, pero lo que dices acerca del 4° argumento es falso, para hacer un [baddChildAt[/b] en AS3 la altura ya tiene que estar ocupada, osea que si yo hago;
new Sprites(this,10,10,5);
Seguramente obtenedré un hermoso error diciendo que el índice está fuera de los límites. Por:Quantium-blog
Quantium , claro que tira error. fíjate que
mas arriba aclaro que "ya habiendo una lista de Sprites" funciona. eso es básico del AS3 en cuestión index. tan solo es un adicional. Por:phoxer
gracias por su ayuda Por:sergio -blog
¿Con que programa se hace? Por:Nicolás-blog
eso creo que se puede hacer con un simple for Por:ironeric23-blog