Un for me da problemas

Started by Yawin, November 18, 2010, 04:52:06 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Yawin

bueno veréis, lo que me ocurre es que quiero poner este for:
for(lvl=1; lvl<5 || salir==1;lvl++)

Según mis conocimientos en c, este for es correcto. Pero claro, esto no es c. ¿Hay alguna forma de ponerle dos condiciones a un for? Porque de esta forma no me va.
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

process main()
       begin
           loop
               pedo();
               frame;
            end
       end

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

nananana... funciona perfecto....


import "mod_say";

private
lvl;
salir=1;
begin

    for(lvl=1; lvl<5 || salir==1;lvl++) say (lvl); if ( lvl == 10 ) salir = 0; end; end


    for(lvl=1; lvl<5 || salir==1;lvl++) say (lvl); if ( lvl == 10 ) salir = 0; end; end


end


salida


splinter@debian:~$ bgdi for.dcb
1
2
3
4
5
6
7
8
9
10
1
2
3
4


perfect!
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

se me ocurre que lo que vos queres hacer no es un || sino un &&.

o sea, que haga el for mientras lvl sea menor a 5 y que salir == 1, ya que si pones un "o" entonces si alguna de las 2 se cumple el for seguira.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Yawin

Vale, ya se cuá era mi error. Lo he visto gracias a tu código. Estaba queriendo decirle que saliese cuando salir=1 o cuando i fuese =5.
Y lo estaba haciendo mal xD

Muchas gracias. A veces tengo errores que no veo de lo simples que son xD.
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

process main()
       begin
           loop
               pedo();
               frame;
            end
       end

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2