Mostrar Mensajes

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.

Mensajes - Marth

781
Preguntas y respuestas / Re:Splash Screen
Agosto 21, 2015, 02:48:36 PM
Yo también tengo esa versión.
¿No encuentras esa opción?
782
Juegos en desarrollo / Re:Ilíada Espacial
Agosto 20, 2015, 04:36:11 PM
Cita de: Guacusio en Agosto 20, 2015, 01:59:18 AM
Probé el juego otra vez y ahora lee el joystick genérico sin palancas perfectamente.

Con eso el quebradero de cabeza de los mandos queda solucionado.
El chat de dudas que cree para tratar este contratiempo lo he marcado como solucionado.
783
Preguntas y respuestas / Re:Splash Screen
Agosto 20, 2015, 04:21:57 PM
Para retirarlo, ve a Global Game Settins, vas a Windows, hay desactiva la casilla Display Splash Screen.
Eso si, eso solo afectara a ese juego en cuestión. El resto de juegos y cualquier otro que crees seguirá teniendo esa opción activada.
784
Cierto, en Megaman solo se mostraba la parte entera, no se mostraba una parte de vitalidad perdida, entonces puedes excluir el fragmento for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)

Lo que si es que en megaman la barra se contenía en un "tubo". Yo en Ilíada Espacial uso una barra similar para las batallas contra jefes, y en mi caso tengo por un lado el sprite del icono de vitalidad y por otro el sprite del contenedor y dibujo el contenedor de tal forma que encaje con la vitalidad.
Así lo hago yo, obviamente tu lo tendrás que adaptar a tu gusto (pues mi barra es horizontal y porcentual y tu quieres una vertical y no tiene por que ser porcentual):

draw_sprite(contenedor,0,room_width-250,room_height-56)
for(u=0 u<ceil(vida*longitud/PS) u++)
draw_sprite_ext(vida,0,room_width-241+u,room_height-53,1,1,0,global.color[floor(5*u/150)],1)
785
Cita de: Kain88 en Agosto 20, 2015, 12:00:14 AM
Ok, gracias! Una ultima consulta: cual sería el sprite_herida?

Un sprite que crearías para indicar la vitalidad perdida. Por ejemplo, en Rayman la vitalidad se indicaba con una esferas amarillas y cada  vez que recibías daño una de esas esferas se tornaba roja.
786
Preguntas y respuestas / Re:Splash Screen
Agosto 19, 2015, 10:51:39 PM
Envié un aviso a yoyogames.
Dicen que en cuanto puedan harán algo al respecto, pero debido a que tienen que corregir ya varias cosas, no esperemos solución al menos en la siguiente actualización.
787
Preguntas y respuestas / Re:Splash Screen
Agosto 19, 2015, 02:30:30 PM
Cita de: ocarina en Agosto 19, 2015, 07:27:58 AM
Simplemente cambia la imagen x una imagen negra y listo! Así no se va a ver nada! Bueno esta opcion esta solo en la versión pro del gms

Eso no me sirve de nada porque tengo que ir a Global Game Setting a cambiarlo igualmente y para eso directamente lo desactivo.
788
Preguntas y respuestas / Splash Screen
Agosto 19, 2015, 02:29:08 AM
Con las ultimas actualizaciones de GMS salio una novedad denominada "Splash Screen".
Básicamente, una imagen que se muestra previo a que comience el juego.
Aunque se pueden desactivar, me molesta que cada vez que cree un nuevo proyecto tenga que ir a Global Game Settings a desactivarlo para que no me moleste al ejecutarlo.
¿Hay algún modo de hacer que de forma predeterminada al crear un nuevo proyecto el Splash Screen este desactivado?
789
El código que te he mostrado ponlo en el evento draw de cualquier objeto que haya en el room que vas al perder, como por ejemplo en el botón de volver al menú que mencionaste.
Recuerda que score y globlal.records son variables globales, es decir, no están afiliados a ningún objeto, por lo que puede usarlos y modificarlos cualquier objeto y no se pierden si cambias de room o ejecutas room_restart(). Solo se perderán si usas game_end() o game_restart().
790
Necesitas crear una variable global.record en la cual tras perder se comprobara si score es mayor y de serlo pues: global.record=score
En alguno de los objetos que haya en esa room, pon esto en el draw:

draw_self() // Para que no pase a ser invisible.
draw_text(5,5,"Puntuacion: "+string(score))
if(score==global.record) draw_text(5,25,"Nuevo Record")
else draw_text(5,25,"Record: "+string(global.record))
791
Cita de: Guacusio en Agosto 18, 2015, 01:33:52 PM
Cita de: Marth en Agosto 18, 2015, 11:56:27 AM
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.

¿Qué serían las variables vida_total y vida_maxima y entre qué rangos de valores deberían moverse?

La vitalidad total y máxima del personaje. ;)
El rango el que el jugador quiera.
En el megaman original los personajes tenían 28 puntos de vida, por lo que la barra tenia 28 fragmentos. A diferencia de con draw_healthbar, este medidor de vitalidad no es porcentual.
792
Preguntas y respuestas / Re:Lio con los mandos.
Agosto 18, 2015, 02:03:23 PM
la función joystick_direction la encuentro bastante compleja que el el uso de los joystic_pos.

Esto es lo que he hecho al final. Lo puse en el juego que me daba quebradero de cabeza y ya me han confirmado que la chapuza funciona:

if((keyboard_check(vk_left) || joystick_xpos(0)<-0.1 || gamepad_axis_value(0,gp_axislh)<-0.1) && bbox_left>view_xview[0]) x-=desplazamiento
else if((keyboard_check(vk_right) || joystick_xpos(0)>0.1 || gamepad_axis_value(0,gp_axislh)>0.1) && bbox_right<view_xview[0]+view_wview[0]-desplazamiento) x+=desplazamiento
if((keyboard_check(vk_up) || joystick_ypos(0)<-0.1 || gamepad_axis_value(0,gp_axislv)<-0.1) && bbox_top>view_yview[0]) y-=desplazamiento
else if((keyboard_check(vk_down) || joystick_ypos(0)>0.1 || gamepad_axis_value(0,gp_axislv)>0.1) && bbox_bottom<Escenario.y-desplazamiento) y+=desplazamiento


Aviso: Al final esto ha permitido que se pueda jugar tanto con mandos normales como con mandos de Xbox. Este tema voy a darlo por solucionado.
793
Cita de: Guacusio en Agosto 18, 2015, 01:34:56 PM
Cita de: Marth en Agosto 18, 2015, 11:58:25 AM
En el step pon:

if(instance_number(enemigo)>4){
show_message("¡Perdiste!")
game_restart()
}

Yo haría eso, pero en el evento create del enemigo en vez de en el step.

Cierto, es más optimo porque se comprueba cada vez que aparece un enemigo en vez de a cada rato. :-[
794
En el step pon:

if(instance_number(enemigo)>4){
show_message("¡Perdiste!")
game_restart()
}
795
for(u=0 u<vida_total u++) draw_sprite(spritevida,0,5,5+u*sprite_height)
for(u=vida_total u<vida_maxima u++) draw_sprite(sprite_herida,0,5,5+u*sprite_height)


Esto te puede servir para hacer un sistema de vitalidad estilo Megaman.