¡¡Hola señores!! ;D ¿Qué tal estáis?
Buenas, como siempre, mis dudas son de novato. Así que supongo que la mayoría de aquí puede resolverlas en un periquete.
Mi primera duda es: ¿Cómo puedo delimitar la room? ¿La única manera es poniendo bloques sólidos?
La segunda duda es: ¿Cómo puedo dibujar las variables para que se queden siempre en la esquina? Esta pregunta tiene trampa. La cosa es que se sigan manteniendo en la esquina de la cámara no de la room. Por si no me explico bien: El problema es que una vez dibujadas, por ejemplo en la esquina x=0,y=0. Cuando me muevo a la derecha y la cámara me sigue, estas se quedan en la posición x,y de la room. Osea que dejo de verlas..
Espero con ansias vuestras respuestas. Un saludo y gracias de antemano.
Lo que quieres entonces no es delimitar la habitación, es delimitar el movimiento del objeto. Esto se puede hacer de muchas formas, mediante la función clamp(), mediante las funciones como median(), mediante ifs. En el manual vienen ejemplos con clamp y median, con if sería
if (x > 0) and (x < room_width)
{
//código para mover al personaje horizontalmente
}
Para dibujar algo "sin que se mueva" NO hay que usar X y Y como cordenadas porque esas son posiciones en la habitación, lo que hay que hacer es usar la posición x y y DE LA VISTA (VIEW) que uses para seguir al jugador. Consulta el manual para view_xview o view_yview y ahí de nuevo, encontrarás un ejemplo de cómo se usa, o aquí en el foro, esa pregunta está hecha innumerables veces
Por ejemplo si queres dibujar algo en un room en cierta posicion lo haces asi
draw_sprite(sprite,0,20,60) ///dibuja el sprite en los ejes x=20 y=60 de la room
pero si queres que sea en la view de la room tenes que poner esto
draw_sprite(sprite,0,view_xview[current]+20,view_yview[current]+60)
Cita de: 3dgeminis en Junio 26, 2014, 08:48:31 PM
Por ejemplo si queres dibujar algo en un room en cierta posicion lo haces asi
draw_sprite(sprite,0,20,60) ///dibuja el sprite en los ejes x=20 y=60 de la room
pero si queres que sea en la view de la room tenes que poner esto
draw_sprite(sprite,0,view_xview[current]+20,view_yview[current]+60)
Uff! Reconozco que soy muy novato pero creía que los sprites se asignaban a los objetos y estos eran lo que luego se posicionaban en la room.
¿Tambien puedo poner en la room los sprites directamente?
No dopo es sprite solo se dibuja en room sin ningun efecto
Se usa el draw para eso .
Pero no es igual como objectos por que recuerda que a los objetos le agregas codigos y a los sprite se van a quedar como dibujo nada mas por eso se usan tambie para las teclas virtuales pero recuerda que abajo de las teclas van los de virtual key osea es como pinta .