Div Games en Html5 y Canvas

Started by AmakaSt, September 07, 2012, 03:28:01 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

AmakaSt

Y ya está disponible para descargar la versión 1.28.2 de Div GO: https://www.amakasoft.com/herramientas/div-go.html

Quote from: hokuto40 on April 11, 2020, 09:38:44 AM
Tengo otra duda.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            IF (punto++==50) punto=1; END
        END

Este codigo seria igual a este.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            punto++;
            IF (punto == 50) punto=1; END
        END

Si. :)

Un saludo.

hokuto40

Ultima pregunta.

Te pongo el ejemplo de los puntos.
https://www.divgo.net/c-df6b4c63

¿Y como se hace con set_point()?
No hay ejemplo de set_point() y no se muy bien como hacerlo,tal vez seria bueno que hicieras el mismo ejemplo que te he puesto pero con set_point().

AmakaSt

Buenas a todos,

Ya está disponible online (para realizar testeos) la versión 1.30.0 de DivGO y las novedades: 


bugs y mejoras:
   - [FIX] corregida función fullscreen_scale() y manejo manual de los scrolls
   - [FIX] corregido problema al asignar una tabla procedente de otra tabla de dos dimensiones o al operar entre ellas
   - [FIX] solucionado loading de carga archivos formato fpg y fnt
   - [FIX] control de dibujado al llamar a frame, si no hay frame no dibuja el proceso
   - [FIX] corregidas funciones path_find(), path_free() y path_line()
   - [DEL] eliminado onfocus() en canvas tanto en proyector como en proyectos empaquetados




Un saludo.

AmakaSt

Quote from: hokuto40 on April 11, 2020, 06:05:16 PM
Ultima pregunta.

Te pongo el ejemplo de los puntos.
https://www.divgo.net/c-df6b4c63

¿Y como se hace con set_point()?
No hay ejemplo de set_point() y no se muy bien como hacerlo,tal vez seria bueno que hicieras el mismo ejemplo que te he puesto pero con set_point().
Hola hokuto40,

He creado los ejemplos tanto para set_point() como para las funciones path_line(), path_free() y path_find().  :)

Un saludo.

oskarg

Muchas gracias AmakaSt,el domingo por mi parte trasteo a fondo divgo con  la nueva version y si veo algo que falla te comento.
Otra cosa,en el juego de  Zelda siempre me ha dado error ................ FUENTE=LOAD_FONT("fuentes/USER/zelda/ZELDA.fnt"); -- NO SE ENCONTRÓ
Un saludo.

AmakaSt

Quote from: oskarg on April 23, 2020, 07:44:30 PM
Otra cosa,en el juego de  Zelda siempre me ha dado error ................ FUENTE=LOAD_FONT("fuentes/USER/zelda/ZELDA.fnt"); -- NO SE ENCONTRÓ
Hola oskarg,

Ese error es debido a que no existe ZELDA.fnt, sino ZELDA.FNT. La carga de archivo por url hace distinción entre mayúsculas y minúsculas para localizar el archivo. Para una web o juego web, lo mejor es poner siempre los nombres de los archivos en minúsculas y así te evitas este tipo de problemas, en principio ya está corregido.  ;)

Un saludo.

AmakaSt

Hola a todos,

Ya está disponible para descargar la versión 1.30.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html

Y aquí dejo un pequeño ejemplo de juego 3d, con marcador en 3d, colisiones de objetos y sombras: https://www.divgo.net/c-69054bbc

Un saludo.

oskarg

Hola AmakaST,
te adjunto archivo donde se muestran dos bugs
1.En tablas bidimensionales no puedo hacer sumas dentro de los [][] pues se intercambian las x por las y.
2.en map_block copy tampoco puedo hacer operaciones tipo (j-1)*8 porque me expresa que la variable no existe...dentro de un for
AL ver el codigo se entendera adecuadamente donde pone Falla!!!
Adjunto archivo y codigo fuente:

program Plataformas_10x10;
GLOBAL
Coli_box;//colision caja
P_x = 8;//Posicion x
P_y = 8*14;//rectangulo alto
P_ancho=8;
P_alto= 8;//16
zz;
T_fondo[128,128];//para no complicar el algoritmo lo hago en dos dimensiones...quizas lo cambie.....
                //10 pantallas.....de tamaño 128x128 .....
//T_salto[]=-10,-8,-6,-4,-2,-2,-1,-1,0,0,1,1,2,2,4,6,8,10;   
//T_salto[]=-9,-7,-5,-2,-2,-1,-1,0,1,1,2,2,5,7,9;   
T_salto[]  =0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;   /////////15..............
T_salto1[] =-3,-3,-2,-1,0,0,0,0,0,1,2,3,3;   /////13
T_salto2[] =-4,-4,-3,-2,-2,-1,-1,0,0,0,0,0,0,0,0,1,1,2,2,3,4,4;   /////////22..............
T_tipo[]   = 0,1,2,3,4,5,6,7,8,9;
T_coli[]   = 0,0,0,0;
N_colisiones=0;

//T_salto2[] =-10,-8,0,8,10;   /////////19..............

indice_salto=0;
               
Tabla_Fondo[17,17];   
valor_tabla;


T_x  = 8;//posicion rectangulo x
T_y  = 8;//posicion rectangulo y
T_ancho=8;
T_alto =8;

caida=1;
Poder_salto=6;
v_g=2;
saltando;
salto_poder=8;
puedo_saltar=0;
jota1;
jota2;
jota3;
jota4;
jota5;
jota6;
jota7;
jota8;
dista_up;
dista_do;
dista_le;
dista_ri;
coli_up;
coli_do;
coli_le;
coli_ri;
coli_tipo;
mame;
FICHERO1;
Prota_cajax;
Prota_cajay;
Prota_estoy;
Prota_Saltando;
Prota_H;
Prota_V;
escaleras;
piiso;

Box_x;
BOx_y;
BOX_YY;
TOTAL;
LOADING
    set_mode(m320x240);
    set_title("Game´s Evoteka: Cargando...");

  text = 'Cargando datos...';
text_color = rgb(255, 220, 200);
text_size = 40;
  text_x = 240;
text_y = 200;
text_position = 4;

BEGIN
set_title("My Program Name");
    set_mode(128,128,3);
    set_color(rgb(0,0,0));
    screen_color(rgb(20,50,10));
    screen_smooth(false);
screen_color(cc_silver);
set_fps(40, 0);
     text_size=42;
    //write_int(0,0,20,0,offset jota1);
   
     FICHERO1=load_fpg("graficos/motor0001/");
     
      write_int(0,40,10,0,offset jota1);
      write_int(0,40,20,0,offset jota2);
     // write_int(0,40,30,0,offset jota3);
     // write_int(0,40,40,0,offset jota4);
     // write_int(0,40,50,0,offset jota5);
    //  write_int(0,40,60,0,offset jota6);
    //  write_int(0,40,80,0,offset jota7);
    //  write_int(0,60,80,0,offset jota8);
     
   
    Graba_tabla();
   
   // Tile(T_x,T_y);
//Prota(P_x,P_y);
   
loop
IF (key(_esc))
        unload_fpg(Fichero1);
        exit("Text Exit", 1);
        END

frame;
end
end


/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██           GRABA  TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
PROCESS Graba_tabla()
private
pixel,xx,yy;
BEGIN
FILE=FICHERO1;
set_center(0,14,0,0);
FOR(y=0;y<16;y++)
FOR(x=0;x<16;x++)
    pixel=map_get_pixel(file,14,x,y,"r");
      xx=x+1;
      yy=y+1;
     
    SWITCH(pixel)
          CASE 1  : tabla_fondo[xx][yy]=4;END
          CASE 10 : tabla_fondo[xx][yy]=3;END
          CASE 20 : tabla_fondo[xx][yy]=2;END
          CASE 255: tabla_fondo[xx][yy]=1;END
          DEFAULT   tabla_fondo[xx][yy]=0;END
         
    END     
   
/*  ­­­­­­­­­­­­­­­­­      FALLA    ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­               
       SWITCH(pixel)
          CASE 1  : tabla_fondo[x+1][y+1]=4;END
          CASE 10 : tabla_fondo[x+1][y+1]=3;END
          CASE 20 : tabla_fondo[x+1][y+1]=2;END
          CASE 255: tabla_fondo[x+1][y+1]=1;END
          DEFAULT   tabla_fondo[x+1][y+1]=0;END
         
    END   
    ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
     ME INVIERTE LAS X POR LAS Y ?¿?.....
*/   
   
   
END
END


PINTA_FONDO();
END

/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██      PINTA FONDO TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
PROCESS PINTA_FONDO()
private i,j,valor,pixel,xx,yy;
BEGIN
file=FICHERO1;
//graph=800;

x=128/2;
y=128/2;


start_scroll(0,FICHERO1 , 800, 9, 0, 0);
scroll[0].front.alpha = 100; scroll[0].back.alpha = 100;

FOR(i=1;i<17;i++)
FOR(j=1;j<17;j++)
     pixel=tabla_fondo[j][i];
     SWITCH(pixel)
          CASE 0 : valor = 810;END
          CASE 1 : valor = 802;END
          CASE 2 : valor = 702;END
          CASE 3 : valor = 703;END
          CASE 4 : valor = 706;END
         
    END   
    xx=j-1;
    yy=i-1;

   map_block_copy(fichero1, 800, xx*8+4,yy*8+4,valor , 0,0, 8,8);//dibuja un punto en el centro...

/*___________________________        FALLLA    ______________________________________________________________
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
   map_block_copy(fichero1, 800, (j-1)*8+4,(i-1)y*8+4,valor , 0,0, 8,8);//dibuja un punto en el centro...

­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­

*/   
END
END

refresh_scroll(0);

//start_scroll(0, fichero1, 830, 201, 0, 15);


LOOP

scroll[0].back.y  -=0.5;

FRAME;
END

END


Sugerencias Sobre el editor fpg:
1.Deberia haber  alguna forma de poder importar las imagenes directamente al fpg de divgo...por ejemplo si tengo en una carperta con imagenes numeradas 000.png 001.png que leyera esa carpeta o que la pudiera arrastrar y añadir directamente los graficos..
2.Si me equivoco en un grafico en su asignacion dios mio!!lo tengo que repetir todo,tendria que haber alguna forma de eliminar el grafico o copiar encima otro.
3.Cuando cierro el editor fpg y por ejemplo estoy en el grafico 300..cuando lo vuelva abrir su indice deberia mantenerse en el 300 no el primer numero no asignado a un grafico

Un saludo y sigo programando....




oskarg

Rectifico , debería cuando abriera el editor de gráficos en el gráfico 301 , siempre y cuando estuviera vacío  y si no es de ese modo ,el siguiente que cumpla tal norma

oskarg

#834
Hola AmakaSt,
Cómo inicializo una tabla de dos dimensiones  con valores predefinidos?¿?
en tabla normal es asi tabla[]=1,2;
                         en dos dimensiones?¿?
                             T_C[][] = { {6,7},{3, 8}, {1,0}, {9,5} }; no va. me dice variable no definida.
Un saludo.

oskarg

Hola Amakast,
Hace días que no te veo por este medio, espero que estés bien de salud y tú familia.
Un saludo.

oskarg

Hola Amakast,
El otro día  comencé a programar en divgo ,pero me topé con el problema de la inicialización de tablas bidimensionales que no sé cómo se hacen en este lenguaje y también con el bug que expliqué en su momento un poco más abajo que cambia las x por las y si hago una asignación dentro de los corchetes....
Cuando puedas me dices algo de cómo hacerlo
Gracias
Un saludo.

AmakaSt

Hola oskarg,

He estado en "standby" durante un periodo, ningún problema de salud, a veces me saturo y prefiero desconectar, dedicar el tiempo libre a otras cosas... y tener mellizos me consume mucho de ese tiempo.

Sobre las tablas bidimensionales, aquí te dejo un ejemplo de cómo funciona en Div:
program PruebaTabla2D;
global
    tabla[4,2]   = 0,1,2,3,4,
                   5,6,7,8,9,
                   0,1,2,3,4;

begin
    set_mode(m320x240);
    set_fps(60, 0);

    for (x = 0; x < 5; x++)
        for (y = 0; y < 3; y++)
            write_int(0, x * 20, y * 20, 0, &tabla[x,y]);
        end
    end
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end


En DivGO falla porque las tablas de dos dimensiones las programé de forma diferente (como funcionaría en otros lenguajes), así es como funciona ahora:
program PruebaTabla2D;
global   
    tabla[4,2]   = 0,1,2,3,4,
                   5,6,7,8,9,
                   0,1,2,3,4;
                   
begin
    set_mode(m320x240);
    set_fps(60, 0);

    for (x = 0; x < 5; x++)
        for (y = 0; y < 3; y++)
            write(0, x * 20, y * 20, 0, tabla[x][y]);
        end
    end
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

En próximas versiones funcionara como en Div, tengo que arreglarlo, está mezclado.

Un saludo.

oskarg

Hola AmakaSt
Me alegra saber que estás bien,hacía tiempo que no publicabas algo y tampoco queria preguntar al respecto por si era un tema algo incomodo y como no veia respuesta tampoco yo me motivaba para trastear con divgo .

Sobre los mellizos,los crios dan mucho trabajo,pero tambien dan  muchas alegrias y sabiendo que has tenido dos de golpe...ya sabes.si te animas... el siguiente reto es tener trillizos.

Gracias por la explicacion de las tablas ,no sabia como hacer algo tan simple.
Un saludo.

SplinterGU

felicitaciones por los mellizos!
Download Lastest BennuGD Release: http://www.bennugd.org/node/2