Ayuda > Preguntas y respuestas
Como hacer un scroll automatico tipo de algunos juegos de naves
J.E.A:
Quisiera saber como podria hacer un scroll automatico, o sea, que la pantalla vaya avanzando sola. Porque por ejemplo: Tengo un juego de naves que avanzo de abajo hacia arriba. Entonces a medida que avanzo deberían aparecer naves o bases de naves (algo tipo el Star Soldier o Starforce de NES) mi nave puede moverse de arriba hacia abajo y de costado a costado XD. El problema es que si a mi nave le asigno una view, la nave va a ir para atras y el scroll va a ir para atras con mi nave cosa que el scroll deberia seguir y no frenarse ni retroceder. Como debería hacer para que el scroll continue a pesar de que me mueva para abajo por ejemplo?
Ojala haberme explicado bien :-[
MaanuRP:
En algun evento step agrega:
view_xview += 2 //Dependiendo de la velocidad que le quieras dar va a ser menor o mayor.
Texic:
A eso de MaanuRP agregale que la velocidad de la nave en estado normal no debería ser 0 sino la velocidad del movimiento de la view. Ese sería el eje del cual partir a la hora de darle movimiento. Por ejemplo si querés que se mueva con una velocidad de 4 hacia la derecha sería 6 y hacia la izquierda -2 ya que 2+4=6 y 2-4=-2
Luego agregarás límites para que la nave no se salga de la view y listo. Aunq lo que hacen algunos juegos es crear la apariencia de que se mueve la view cuando en realidad la nave está estática y lo que se mueven son los objetos que salen de arriba. Mirá los ejemplos básicos de gm, hay uno de autos, te va a servir para comprender lo q digo
Saludos!
SobacoEnLlamas:
para los juegos de nave se suele usar una pantalla estática pero con el fondo haciendo scroll para dar esa sensación, y los enemigos escuadrones, etc aparecen como si viniesen mientras la nave tuya avanza
MaanuRP:
--- Cita de: Texic en Junio 12, 2012, 09:06:05 pm ---A eso de MaanuRP agregale que la velocidad de la nave en estado normal no debería ser 0 sino la velocidad del movimiento de la view. Ese sería el eje del cual partir a la hora de darle movimiento. Por ejemplo si querés que se mueva con una velocidad de 4 hacia la derecha sería 6 y hacia la izquierda -2 ya que 2+4=6 y 2-4=-2
Luego agregarás límites para que la nave no se salga de la view y listo. Aunq lo que hacen algunos juegos es crear la apariencia de que se mueve la view cuando en realidad la nave está estática y lo que se mueven son los objetos que salen de arriba. Mirá los ejemplos básicos de gm, hay uno de autos, te va a servir para comprender lo q digo
Saludos!
--- Fin de la cita ---
Eso es cierto, si mueves la nave por hspeed es asi.
Como yo las veces que hice juegos asi las movia por x, no necesitaba hacer esas cuentas.
Si me permites la "discusion" el ejemplo que puede servir mas, es el shooter de Yoyogames, creo que es el que mas iria con este tema (Aunque en realidad no vi el de autos que dices, pero del que hablo yo es exclusivamente de esto).
--- Cita de: SobacoEnLlamas en Junio 12, 2012, 09:28:56 pm ---para los juegos de nave se suele usar una pantalla estática pero con el fondo haciendo scroll para dar esa sensación, y los enemigos escuadrones, etc aparecen como si viniesen mientras la nave tuya avanza
--- Fin de la cita ---
¿Quien te dijo que esto es asi? Quizas tu lo hagas asi, y desde ya te digo que esta bastante mal.
Tengo 5 razones por las cual no deberias seguir haciendolo asi:
1 - Al dejar la camara estatica, tendras que crear los objetos a medida que el juego corre, no podras ubicarlos en el editor del room, ya que nunca aparecerian, y si pones para que aparezcan solos, estas usando muchos eventos step al mismo tiempo, que ya es obvio porque esta mal.
2 - Si vas a hacer que las naves disparen, y las naves ya vienen con, no se, digamos -5 de hspeed, sus balas tendran que tener algo de -7 hasta -10 para que se vea bien, y si le pones esa velocidad a las balas normales, quiero ver como te ingenias una bala rapida del boss o de otro mob.
3 - Si nunca mueves la camara, como pretendes llegar al final del room para llegar a un boss o simplemente al fin del room? Si lo haces por la "x" del background, quiero ver que lo hagas sin complicaciones (Bugs, cuentas, pruebas), lo digo por experiencia.
4 - Despues de solucionar todo eso, tendrias que ponerte a pensar como podrias hacer la muerte, ya que si la camara esta siempre en el mismo lugar, no tienes referencia para el grado de avanzado del jugador y lo unico que te quedaria es reiniciar el room entero.
5 - Si despues de todas estas razones, no me quieres creer a mi, revisa el ejemplo Shooter que da Yoyogames, y revisa como lo hacen.
Si despues de todo eso lo quieres seguir haciendo asi, me vas a dar la razon cuando te metas en un proyecto mas complicado y no puedas o te canses de solucionar bugs por cosas que se pueden programar de una mejor manera.
Navegación
[#] Página Siguiente
Ir a la versión completa