51 lines
1.8 KiB
Ada
51 lines
1.8 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
with core, resource, item, unit, construction;
|
|
|
|
package world is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type codex is (
|
|
ash, cave, grass, rough, snow, swamp
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
type entity is
|
|
record
|
|
index, x, y : integer;
|
|
end record;
|
|
|
|
type block_array is array (natural range <>, natural range <>) of integer;
|
|
type entity_array is array (natural range <>) of entity;
|
|
|
|
type information is
|
|
record
|
|
terrain : codex;
|
|
width : natural;
|
|
height : natural;
|
|
block : access block_array;
|
|
landmark : access entity_array;
|
|
construction : access entity_array;
|
|
item : access entity_array;
|
|
end record;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
map : information;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
procedure configure;
|
|
|
|
procedure make (index : in codex; width, height : in natural);
|
|
|
|
procedure draw (x, y, width, height : in integer; show_grid : in boolean);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end world;
|