Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: chuflun on September 03, 2010, 01:31:35 AM

Title: mover un personaje por el scroll mediante el raton - ayuda
Post by: chuflun on September 03, 2010, 01:31:35 AM
hola, estoy intentando mover a un soldado por el scroll, como en el "red alert" o cualquier juego de estrategia en tiempo real, y cuando lo mando al borde derecho del scroll, no llega mas que hasta 1280 pixeles que es la resolucion que he puesto.
podeis ayudarme, no se donde tengo que poner ctype = c_scroll; y donde no.
gracias
aqui os pongo el codigo de mi personaje, raton, y camara
PROCESS protagonista()


BEGIN

ctype = C_scroll;
file = fpg_fondo;
graph = 2;
size = 100;


x=400;
y = 400;
Z = -1;


LOOP


if(mouse.left==true)
posx=raton().x;
posy=raton().y;
mouse.left=false;
end

if(x>posx); x=x-10; end
if(x<posx); x=x+10; end
if(y>posy); y=y-10; end
if(y<posy); y=y+10; end

FRAME;

END

END


process raton();
begin
mouse.file = fpg_raton;
mouse.graph = 1;
file = fpg_raton;
ctype = c_scroll;
graph=5;
z=-100;
loop

x=mouse.x;
y=mouse.y;

frame;
end
end


PROCESS camara()



begin
//ctype = C_scroll;

loop

if (raton().x > 100)
scroll[0].x0+=10;
elseif (raton().x < 20)
scroll[0].x0-=10;
end


FRAME;

END

END
Title: Re: mover un personaje por el scroll mediante el raton - ayuda
Post by: Prg on September 03, 2010, 03:12:52 AM
creo que puedes cambiar un poco el codigo, mira:

[code language="bennu"]
begin //proceso principal
mouse.file = fpg_raton;
   mouse.graph = 1;   //colocas al mouse su grafico
loop
frame;
end
end
PROCESS protagonista()


BEGIN
   
   ctype = C_scroll;   //esto aquí si va
   file = fpg_fondo;
   graph = 2;         
   size = 100;
   
   
   x=400;                  
   y = 400;               
   Z = -1;
      
   
   LOOP
            

      if(mouse.left==true)
         posx=mouse.x + scroll.x0; //esto permite moverte  en las coordenadas del scroll con el ratón
         posy=mouse.y + scroll.y0;
         mouse.left=false;
      end
      
      if(x>posx); x=x-10; end
      if(x
      if(y>posy); y=y-10; end
      if(y
      
      FRAME;
      
   END

END

PROCESS camara()



begin
   loop
         
      if (raton().x > 100)
         scroll[0].x0+=10;         
      elseif (raton().x < 20)
         scroll[0].x0-=10;
      end
      
            
      FRAME;
      
   END

END

[/code]
Title: Re: mover un personaje por el scroll mediante el raton - ayuda
Post by: chuflun on September 03, 2010, 11:45:22 AM
gracias, ya me funciona, lo que me faltaba era sumar a la posicion del mouse el scroll.x0
Title: Re: mover un personaje por el scroll mediante el raton - ayuda
Post by: Prg on September 03, 2010, 09:23:13 PM
de nada  ;)