Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: I-Am-Goku en Diciembre 06, 2009, 05:48:53 AM

Título: Problema con "Image_xscale = -1"
Publicado por: I-Am-Goku en Diciembre 06, 2009, 05:48:53 AM
Bueon me idjeron que para ahorrar recursos, en mis juegos meta, en vez de un sprite de derecha y uno de izquierda... meta solo uno de derecha y despues use la accion "image_xscale = -1"

Pero al usar esto se mueve de lugar el objeto... y cuando apreto derecha obtiene el sprite mirando hacia la izquierda y viceversa... en fin, me cambia todo...
Título: Re: Problema con "Image_xscale = -1"
Publicado por: kakashigna en Diciembre 06, 2009, 05:53:20 AM
primero tal ves el objeto se mueva, por que para poder usar bien ese metodo tienes que tener los sprites con los origenes en el centro.

salu2
Título: Re: Problema con "Image_xscale = -1"
Publicado por: DarkKRuleR en Diciembre 06, 2009, 12:59:44 PM
exacto, ademas tener muy claro que 1 es derechay -1 izquierda, y un code bueno para el movimiento es este, el que uso yo
al pulsar derecha o izquierda SOLO cambias el sprite a sprite corriendo, al pulsar derecha cambialo a corriendo y pones image_xscale=1 para la derecha, y al pulsar izquierda en -1.ahora en step para que se mueva:

if sprite_index=spr_corriendo {hspeed=image_xscale*5;}
asi se movera a velocidad de 5 automaticamente segun la direccion, pruebalo aver =)
yclaro si el sprite es de parado la hspeed=0
Título: Re: Problema con "Image_xscale = -1"
Publicado por: metalfox6383 en Diciembre 07, 2009, 05:31:54 AM
Asi es, s?lo pon los origenes de X en el sprite al centro de la imagen.

Es increible esta funci?n, cierto? Te ahorras la mitad de los sprite. Cuando usaba GM4 no hab?a esta funci?n y hab?a que hacer los sprites tanto de derecha como izquierda, y era mucho problema cuando tu personaje tiene multiples animaciones.
Título: Re: Problema con "Image_xscale = -1"
Publicado por: bonachiu en Diciembre 08, 2009, 01:32:02 PM
Si, la verdad es un lujo, me acuerdo que en GM5 era sprite_mirror_horizontal() o algo asi, y habia que crear al menos dinamicamente una variable que guardara al sprite dado la vuelta, ahora es una simple propiedad sin tener que duplicar sprites, por no hablar de image_angle, aunque esa funcion es solo para premium.. y con los blend y los surfaces puedes hacer practicamente lo que quieras, pero es una movida, porque para que salga bien debes usar sprites con medidas pares tanto de ancho como de alto, si no, aunque sea por un pixel, se nota la chapuzilla jaja!
Título: Re: Problema con "Image_xscale = -1"
Publicado por: korosu en Diciembre 08, 2009, 02:09:44 PM
alguien me podria explicar donde y como se utiliza este codigo es k no lo entendi muy bien y me vendria genial para el juego k estoy haciendo
Título: Re: Problema con "Image_xscale = -1"
Publicado por: I-Am-Goku en Diciembre 08, 2009, 05:31:22 PM
1) Necesitas tener un sprite de el objeto mirando a la derecha o izquierda... y setear el origen al centro....

2) si el sprite es de derecha... simplemente donde tenes seteado el movimiento a la izquierda escribis abajo "image_xscale = -1" y te lo da vuelta...

3) viceversa si tenes el sprite para la izquierda...
Título: Re: Problema con "Image_xscale = -1"
Publicado por: korosu en Diciembre 08, 2009, 08:28:42 PM
pero si pongo el origen en el centro el sprite me sale como flotando

Edito: ya lo solucione era k no habia centrado la mask  XD