|
- -- 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.value;
- 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)
- );
-
- sprite : array (enumeration) of core.sprite;
-
- ------------------------------------------------------------------------------------------
-
- procedure configure;
-
- procedure draw (index : in enumeration; x, y : in integer);
- procedure draw_plus (index : in enumeration; x, y : in integer);
-
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
- end construction;
|