Código [Seleccionar]
background_x=view_xview*0.75
background_y=view_yview*0.75
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
background_x=view_xview*0.75
background_y=view_yview*0.75
Cita de: penumbra en Diciembre 11, 2014, 03:07:03 AM
las surfaces hay que borrarlas después de usarlas, según aconseja el manual
Cita de: penumbra en Diciembre 10, 2014, 11:20:41 PMCita de: TheSandBoxMKG en Diciembre 10, 2014, 08:02:57 PMTengo mis dudas sobre si eso funcionaría, a lo mejor se me escapa algo, pero si dibujas sprites sólo cuando se cambia de ropa, estarías dibujando superficies "sin movimiento": Según los mensajes anteriores, toda la vestimenta y armaduras serían animadas. Para que la vestimenta y armaduras sigan el movimiento del jugador, se tienen que dibujar constantemente las subimágenes de ESOS sprites en la surface mientras el jugador tenga una pose o acción animada. Dibujar los sprites una una sola vez produciría que sólo se vea UNA subimagen de cada pieza de armadura, es decir, hecharía al traste las animaciones. Así que al tener sprites animados, forzosamente se requiere un dibujo constante (ya sea en la superficie o en la pantalla) y no nada más cuando se cambia de ropa.
Si no entendiste, hablo de dibujar esos sprites solo cuando cambias de vestimenta y re-usar los surfaces dibujándolos en la pantalla
Como en GM nativamente no hay superficies animadas, no hay manera de tener subimagenes en una superficie y poder asignarle una velocidad a la cual reproducir la animación. Claro que se pueden dibujar cada subimagen de cada sprite en un arreglo de superficies y dibujar una tras otra para dar la impresión de animación, pero veo difícil que alguien se decida a tomar esta ruta.
Cita de: penumbra en Diciembre 09, 2014, 11:23:49 PM
para información sobre surfaces, visite:
http://www.comunidadgm.org/preguntas-y-respuestas/que-es-un-surface/msg93208/#msg93208
http://www.comunidadgm.org/preguntas-y-respuestas/(resuelto)hacer-un-sprite-en-base-a-dos-tres/msg99687/#msg99687
Es cierto que se pueden usar surfaces, pero no creo que eso resuelva la problemática central: La superficie se dibuja sólo una vez, sí, en la pantalla, pero para dibujar en la superficie, tienes que cambiar el target, y, si tienes 5 o 6 piezas de armadura (sprites) distintos, se tendría que usar 5 o 6 veces la función draw para dibujar esos sprites o piezas en la superficie, así que al final, mediante surfaces, usaste la función draw las mismas veces para dibujar todo un set de armadura que dibujando directo en la pantalla (en realidad, una más, por la necesidad de dibujar la surface misma al final)
Lo complicado es hacer un número significativo de sprites, contando con que son animados, por lo que todas las piezas deben encajar con el movimiento del jugador. Ya sea que con draw, especificando las coordenadas x, y respecto al jugador, o como dijo emanuelsko, en el mismo sprite animado del jugador ir dibujando las piezas de la armadura y al final borrar el jugador. Teniendo los sprites listos, dibujarlos uno por uno directo en la pantalla o en una surface es sencillo
Cita de: empardopo en Diciembre 09, 2014, 09:37:40 AM
Entiendo que si una variable global no "perdurase" desde el inicio del programa/juego hasta que se finalize deberían cambiar de nombre, no?
Precisamente por definición una variable global es accesible desde cualquier parte del programa y no tendría sentido que no fuese así y que se reseteara por el hecho de cambiar de room.
Saludos
Cita de: Chrom en Diciembre 08, 2014, 08:34:52 PM
Me parecio muy bien las dos respuestas.Arregle y modifique un poco el codigo hice esto aqui les dejo mi juego y ven como quedo y si notan problemas avisenmelos ;D Gracias por sus respuestas.
Cita de: zHeMaa en Diciembre 08, 2014, 09:37:59 AM
Vaaale, menos mal, lo acabo de solucionar!
Gracias a tu respuesta que no sabias cual era mi problema me he parado a penar que si me dices eso, es porque en teoría no fallaba nada.
Mi "problema" era que tenia un "Parent" puesto a todos los enemigos, y en ese parent estaba el STEP de guardar los archivos INI, básicamente hice el parent para ahorrarme de poner en cada enemigo lo mimo, pero se ve que con el parent no funciona, ahora lo he puesto en cada uno de los enemigos y si, funciona perfectamente!
Un saludo!
Page generada en 0.027 segundos con 12 consultas.