Tutorial 7 - Como hacer juegos en android con Andengine
Hoy, otros modifiers
Buenos días, sus visitas y comentarios me dan motivación para seguir, espero estos tutoriales sean útiles para ustedes. No duden en dejarme un comentario o agregarme a cualquiera de las redes sociales. Porfavor denle like o compartan los tutoriales, eso me ayuda mucho :D.
Ahora si empecemos. El tutorial pasado vimos el JumpModifier que es muy divertido perooooooo hay muchos otros más. Incluso hay formas de mezclar 2, 3, 4, 100(aunque no creo que 100 sean necesarios xD).
Veamos 2 tipos nuevos de modifiers y luego mezclamos esos 2 (para eso usaremos cualquiera de estas texturas de moneda, aquí).
Primero el Sprite ;D :
[code language="java"]
//No se olviden de
//declarar la textura
//private ItextureRegion texturaMoneda;
//y ubicarla en el atlas
//texturaMoneda = BitmapTextureAtlasTextureRegionFactory.createFromAsset(miAtlas, this, "moneda.png", 0, 250);
//y obvio un sprite
//private Sprite spriteMoneda;
spriteMoneda = new Sprite(700, 250, texturaMoneda, getVertexBufferObjectManager());
[/code]
ScaleModifier:
[code language="java"]
//scalemodifier
spriteMoneda.registerEntityModifier(new ScaleModifier(0.5f, 1, 1.5f));
sceneEjemplo.attachChild(spriteMoneda);
[/code]
Sorprendente no?, pues no. Jajajajaja. Es que al momento de ejecutar solo veremos la moneda escalada 50% más de su tamaño original. Lo que necesitamos es reducirla y aumentarla. Qué es lo lógico. Pues escalarla 50% menos, regresarla a su tamaño normal, o escalarla menos. Nose eso es cuestion de gustos. Vamos a dejarla de tamaño normal:
[code language="java"]
//scalemodifier
spriteMoneda.registerEntityModifier(new ScaleModifier(0.5f, 1.5f, 1));
[/code]
Ahora si. No, mentira ahora tampoco xD. Ahora solo vemos ......lo mismo? Si lo mismo.
Es aquí donde los Loops vienen a ser utiles. Necesitamos un loop que repita estos efectos no? Pues adivinen que. Ya existe y se llama LoopEntityModifier :
[code language="java"]
//loop entity modifier recibe como parametro otro modifier y lo repite hasta el fin del mundo XD
spriteMoneda.registerEntityModifier(new LoopEntityModifier(new ScaleModifier(0.5f, 1, 1.5f)));
[/code]
Mmmmmm, para mi gusto aún no se ve bien. Le falta disminuirse y aumentarse secuencialmente. Pues Si existiera un modifier de secuencia sería perfecto, qué? me acaban de informar que si EXISTE jaja. Se llama SequenceEntityModifier y se usa así:
[code language="java"]
//esta vez un loop entity modifier recibe un sequence e.m. que tiene dos scales
//osea repite la secuencia
spriteMoneda.registerEntityModifier(new LoopEntityModifier(new SequenceEntityModifier(new ScaleModifier(0.6f, 1, 1.5f), new ScaleModifier(0.6f, 1.5f, 1))));
[/code]
Miren ustedes :D
El código de la sesión aquí.
Muy buenas tutoriales!
ResponderEliminarGracias!
ResponderEliminarEnhorabuena por el blog! Es muy interesante para los que empezamos con Andengine.
ResponderEliminar