47 lines
1.9 KiB
Ada
47 lines
1.9 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
with core, effect, resource, faction;
|
|
|
|
package construction is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type enumeration is (
|
|
house, cottage, shack, homestead, hut, den
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
type information is record
|
|
name : core.short_string;
|
|
kind : faction.enumeration;
|
|
price : resource.points;
|
|
frames : integer;
|
|
evoke : effect.enumeration;
|
|
end record;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
|
|
|
trait : constant array (enumeration) of information := (
|
|
("Dwarf House ", faction.dwarf, (others => 0), 1, effect.none),
|
|
("Fairy Cottage ", faction.fairy, (others => 0), 1, effect.none),
|
|
("Gnoll Shack ", faction.gnoll, (others => 0), 1, effect.none),
|
|
("Kobold Homestead ", faction.kobold, (others => 0), 1, effect.none),
|
|
("Goblin Hut ", faction.goblin, (others => 0), 1, effect.none),
|
|
("Imp Den ", faction.imp, (others => 0), 1, effect.none)
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
procedure configure;
|
|
|
|
procedure draw (index : in enumeration; x, y : in integer);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end construction;
|