with Raylib;
use  Raylib;

procedure Preview is

   type Texture_Index is (
      Archery,
      Barracks,
      Blacksmith,
      Castle,
      House_1,
      House_2,
      House_3,
      Stable,
      Terrain,
      Tree_1,
      Tree_2,
      Tree_3
   );

   Texture_Array : array (Texture_Index) of Texture;

begin
   Open_Window (1280, 720, "Pandemos Empire" & ASCII.NUL);
   --
   for I in Texture_Index
   loop
      Texture_Array (I) := Load_Texture ("./example/resource/"
                                        & Texture_Index'Image (I)
                                        & ".png"
                                        & ASCII.NUL);
   end loop;
   --
   until Window_Should_Close
   loop
      Begin_Drawing;
      for Y in 0 .. Get_Screen_Height / Terrain.Height - 2
         for X in 0 .. Get_Screen_Width / Terrain.Width - 2
            Draw_Texture (Data => Texture_Array (Terrain),
                          X    => X * Terrain.Width,
                          Y    => Y * Terrain.Height);
      End_Drawing;
   end loop;
   --
   for I in Texture_Index
   loop
      Unload_Texture (Texture_Array (I));
   end loop;
   --
   Close_Window;
end Preview;
