[GAME] Penguin PUSH [En Desarollo]

Proyectos en Desarrollo.

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby CicTec » Fri Aug 27, 2010 1:13 pm

simulatorone wrote:--------------------------------Fallo del sonido, 2 a 4 jugadores y Out_region----------------
Lo que si hay un fallo cuando jugamos con mas jugadores, 2 a 4. que son los sonidos del juego.
No suenan cuando tenemos ventanas divididas!

No se como hacer que los processos que estan en pantalla, los que se vean, en diferentes regiones de scroll, me diga Out_region(id,region) que esta dentro de la pantalla y reproduzca el sonido.

podria ser un fallo de Out_Region + la combinacion de Scrolls.

Incluso usando esta manera:
Code: Select all
from R=0 to 4;//Analiza regiones 0,1,2,3,4
  if(not out_region(id,R));//DEBERIA FUNCIONAR!!!
    <sonido>
  end
end

No me funciona :?:

Los processos que estan en el scroll, No tienen asignado ninguna REgion, esta por defecto Region=0;
Podria ser esta la causa??

El juego de momento no esta disponible para la baja, mas tarde probar nuevamente.
Sobre los fallos, el sonido depende, puede no sonar para varias razones, lo de la region claro, si no asignas al proceso en su variable region el numero de region, siempre se vera en la 0 (pantalla).
User avatar
CicTec
 
Posts: 16571
Joined: Thu Jul 31, 2008 10:18 pm

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby SimulatorOne » Fri Aug 27, 2010 1:38 pm

pero como?

como es posible asignar las 4 regiones?? en todos los procesos? solo es un variable local, y solo puedes poner 1 numero.

Si estan en el mismo scroll!
los procesos estan como ctype=c_scoll;

yo solo intento que suene los sonidos si esta visible en pantalla, esten en la region que este.

region=0 pantalla completa o modo 1 jugador, este funciona solo si jugamos con 1 solo jugador.
region=1 = Jugador 1, si se juegan con mas de 1 jugador(2,3,4)
region=2 = jugador 2
region=3 = jugador 3
region=4 = jugador 4

es un bug, que intento solucionarlo desde que cree el sistema multijugador.
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby CicTec » Fri Aug 27, 2010 2:49 pm

simulatorone wrote:pero como?

como es posible asignar las 4 regiones?? en todos los procesos? solo es un variable local, y solo puedes poner 1 numero.

Si estan en el mismo scroll!
los procesos estan como ctype=c_scoll;

yo solo intento que suene los sonidos si esta visible en pantalla, esten en la region que este.

region=0 pantalla completa o modo 1 jugador, este funciona solo si jugamos con 1 solo jugador.
region=1 = Jugador 1, si se juegan con mas de 1 jugador(2,3,4)
region=2 = jugador 2
region=3 = jugador 3
region=4 = jugador 4

es un bug, que intento solucionarlo desde que cree el sistema multijugador.

A ver, es solo el jugador que debe estar en una region o tambien otros procesos ?
User avatar
CicTec
 
Posts: 16571
Joined: Thu Jul 31, 2008 10:18 pm

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby SimulatorOne » Fri Aug 27, 2010 7:43 pm

se usan 4 scroll, que comparten el mismo mapa, y todos los processos llamados como: ctype=c_scoll;

LAs camaras del juego, las 4, se enfocan cada jugador.

y las 4 regiones definidas en cada scroll correspondiente. 1,2,3,4
la region 0 es la pantalla normal

scroll = 0 Jugador=1 Region=1
scroll = 1 Jugador=2 Region=2
scroll = 2 Jugador=3 Region=3
scroll = 3 Jugador=4 Region=4

Todos los processos que estan en el mundo scroll, se ven,colisionan y todo eso.
Los enemigos y el resto de cosas que no son jugador, no tienen ninguna camara de seguimiento, pero si interactuan en el mismo scroll que todos los jugadores.

Las ventanas y regiones, son solo para la camara asignada en cada jugador.

y el problema esta en que, no se como usar el out_region(idjugador,objeto,enemigo // <Region:1,2,3,4>);
en regiones multiples y que se usan scroll.
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby CicTec » Fri Aug 27, 2010 7:57 pm

En principio es simple, usa:
Code: Select all
out_region(id, region);

si la comprobacion la hace el proceso mismo, o:
Code: Select all
out_region(id_A, id_A.region);

Si quieres que el proceso B controle si el proceso A esta fuera de su region.
User avatar
CicTec
 
Posts: 16571
Joined: Thu Jul 31, 2008 10:18 pm

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby SimulatorOne » Fri Aug 27, 2010 9:23 pm

si,si

pero el variable local de region? estan a = 0

me comprobara si aparece en la region 0, que es toda la pantalla, pero no funciona :S
Eso solo funciona si se juega solo con 1 jugador, que usa la region 0 en el scroll.

en los scrolls multijugador estan asignados la regiones:1,2,3,4

no vale usar....??¿

from R=1 to 4;
if(not out_region(id,R));
<sonido>
end
end

Deberia funcionar...pero
yo ya lo e probado, y no me hace nada T^T

Lo unico que se me ocurre es como "forzar" la variable region en todos los objetos declarados como ctype=c_scoll.
repeat
if(idf=get_id(type jugador,enemigos,bloques...etc));
if(idf.ctype==c_scoll);
from R=1 to 4;
idf.region=R;
if(not out_region(idf,R));señal=true;break;end
end
end
end
until(not idf);
if(señal);<sonido>end
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby GINO » Fri Aug 27, 2010 10:33 pm

simulatorone va a ser mejor que expliques con alguna imagen d elo que quieres hacer, pq no se entiende bien.
User avatar
GINO
 
Posts: 2823
Joined: Thu Jul 31, 2008 10:25 pm

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby SimulatorOne » Fri Aug 27, 2010 11:26 pm

no lo entiendo, jamas me a pasado esto, con el megaupload, de que no se puede descargar...


Lo que yo quiero es simple.

4 scrolls
4 regiones ,asignados en cada scroll
4 jugadores con c_scoll; y camera
y un monton de processos. con c_scoll;

lo que quiero es, todo processo que tenga asignado ctype=c_scoll ...
y cuando ese proceso tenga que reproducir un sonido; que lo haga DENTRO de la region!! Si es visible ese proceso, que reproduzca el sonido.
este en la region de scroll que este. donde sea visible en la pantalla!
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby GINO » Fri Aug 27, 2010 11:42 pm

Pues es simple, tienes q usar out_region() y ya esta.
Code: Select all
if (!out_region(id, region del scroll dd estoy))
    //reproduce sonido
end

Intenta acotar el bug en otro prg y postealo asi podemos mirar en detalle si es bug de gemix.

A no ser que lo que tengas es q el mismo proceso se muestre en los 4 scrolles, y que quieras q reproduzca solo si esta en alguno de esas regiones, osea si es visible en alguno de los scroles. Es eso?
En este caso lo que puedes hacer es simple, mirar las areas rectangulares a pelo, algo asi:
Code: Select all
//suponiendo q cada scroll es de 400x300px en una resolucion de 800x600px, por ejemplo
if ((x > scroll[0].x0 and x < scroll[0].x + 400 and y > scroll[0].y and y < scroll[0].y + 300) or
    (x > scroll[1].x0 and x < scroll[1].x + 400 and y > scroll[1].y and y < scroll[1].y + 300) or
    (x > scroll[2].x0 and x < scroll[2].x + 400 and y > scroll[2].y and y < scroll[2].y + 300) or
    (x > scroll[3].x0 and x < scroll[3].x + 400 and y > scroll[3].y and y < scroll[3].y + 300))
        //reproduce sonido
end
User avatar
GINO
 
Posts: 2823
Joined: Thu Jul 31, 2008 10:25 pm

Re: [GAME]: PUSH 0.84 Beta - Version extendida de "Pingu y No"

Postby SimulatorOne » Sat Aug 28, 2010 1:08 am

GINO wrote:A no ser que lo que tengas es q el mismo proceso se muestre en los 4 scrolles, y que quieras q reproduzca solo si esta en alguno de esas regiones, osea si es visible en alguno de los scroles. Es eso?
En este caso lo que puedes hacer es simple, mirar las areas rectangulares a pelo, algo asi:
Code: Select all
//suponiendo q cada scroll es de 400x300px en una resolucion de 800x600px, por ejemplo
if ((x > scroll[0].x0 and x < scroll[0].x + 400 and y > scroll[0].y and y < scroll[0].y + 300) or
    (x > scroll[1].x0 and x < scroll[1].x + 400 and y > scroll[1].y and y < scroll[1].y + 300) or
    (x > scroll[2].x0 and x < scroll[2].x + 400 and y > scroll[2].y and y < scroll[2].y + 300) or
    (x > scroll[3].x0 and x < scroll[3].x + 400 and y > scroll[3].y and y < scroll[3].y + 300))
        //reproduce sonido
end


Este si que me funciono!! funciona muy bien :)

Y usando el out_region. no me funciona bien :?: o ni funciona.

Adjunto el test_region con tu codigo.

Me permitido modificar los valores de tu codigo:
Code: Select all
 valido=false;
if ((x > scroll[0].x0 and x < scroll[0].x0 + 320 and y > scroll[0].y0 and y < scroll[0].y0 + 240) or
    (x > scroll[1].x0 and x < scroll[1].x0 + 320 and y > scroll[1].y0 and y < scroll[1].y0 + 240) or
    (x > scroll[2].x0 and x < scroll[2].x0 + 320 and y > scroll[2].y0 and y < scroll[2].y0 + 240) or
    (x > scroll[3].x0 and x < scroll[3].x0 + 320 and y > scroll[3].y0 and y < scroll[3].y0 + 240))
  valido=true;
end


De momento lo e solucionado usando tu codigo!
De momento en este test funciona muy bien :)
You do not have the required permissions to view the files attached to this post.
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

PreviousNext

Return to Proyectos WIP

Who is online

Users browsing this forum: No registered users and 2 guests