Que tal. Yo por ahora he usado 1 solo Scroll donde estaba el escenario del personaje protagonista.
En el proceso del protagonista ponia:
...
type = C_SCROLL; //para que las coordenadas sean relativas al Scroll
Mi pregunta es la siguiente:
Como hago para cargar otro scroll, y que un proceso use ese otro Scroll en vez del primero que utilizé.
Quiero otro scroll para poner ahi ciertas cosas que no quiero q influyan con lo grafico, animaciones , escenario etc, por eso.
Muchas gracias.
Creas un scroll sobre la región 1,2,3,4, lo que quieras, luego con define_region puedes cambiar el tamaño de esta.
Si quieres ver un ejemplo de esto, mi PiXDash utiliza hasta 4, con este sencillo código:
define_region(1,0,0,ancho_pantalla/2,alto_pantalla/2);
define_region(2,ancho_pantalla/2,0,ancho_pantalla,alto_pantalla/2);
define_region(3,0,alto_pantalla/2,ancho_pantalla/2,alto_pantalla);
define_region(4,ancho_pantalla/2,alto_pantalla/2,ancho_pantalla,alto_pantalla);
start_scroll(0,0,mapa_scroll,fondo,1,4);
scroll[0].camera=prota(1);
start_scroll(1,0,mapa_scroll,fondo,2,4);
scroll[1].camera=prota(2);
start_scroll(2,0,mapa_scroll,fondo,3,4);
scroll[2].camera=prota(3);
start_scroll(3,0,mapa_scroll,fondo,4,4);
if(jugadores==4)
scroll[3].camera=prota(4);
end
Y luego debes setear la local region si quieres que cada uno de los procesos aparezca sólo en un scroll
http://www.google.com/codesearch/p?hl=es#4VV-tEoejaI/trunk/pixdash/src/pixdash.prg&q=pixdash.prg%20package:http://pixjuegos%5C.googlecode%5C.com&sa=N&cd=5&ct=rc
Gracias, pero si pongo
ctype = C_SCROLL; //Las coordenadas son relativas al scroll
Para que las coordenadas sean relativas al scroll (en el codigo de un proceso claro), sobre que scroll me estoy refiriendo aca?
Gracias.
Se referiria al scroll 0, para que refiera a otro scroll creo que lo tienes que asignar en la variable local cnumber (cnumber=nº de scroll)
Por desgracia parece que no esta documentado en el wiki de bennu, asi que te digo de memoria, tampoco estoy seguro...tu prueba a ver.
Dale te agradezco q pruebes que toy trabado en esto, gracias =)
c_number es un arregle de bits e indica en que scrolls debe verse el proceso.
O sea, que se debe tratar c_number como un array de bits, donde el menos significativo indica si se debe ver en el scroll 0.
Si queremos que se vea en los scrolls 1, 2, 3 y 5, deberíamos hacer lo siguiente.
c_number= 1 + 2 + 4 + 16;
O bien hacerlo usando las constantes C_0 a C_9, que para eso están ;)
Otra cosa, no se necesita una region por cada scroll, varios scrolls pueden compartir la misma región siempre que se coloquen las Z como corresponda ("Drajon Lol: Devolución" o nivel 2 de SBTime, por poner 2 ejemplos que yo conozco), incluso con modos7 ;)
cuidado, no es un array