2024-04-25 00:27:13 -04:00
|
|
|
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
|
|
--
|
|
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
|
2024-02-22 03:29:04 -05:00
|
|
|
with core, effect, resource, faction;
|
2024-02-15 21:03:09 -05:00
|
|
|
|
|
|
|
package construction is
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-26 16:05:48 -04:00
|
|
|
type enumeration is (
|
2024-05-05 10:22:48 -04:00
|
|
|
house, cottage, shack, homestead, hut, den
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-06-01 11:46:17 -04:00
|
|
|
type definition is record
|
2024-06-14 17:00:08 -04:00
|
|
|
name : access string := new string'("--");
|
|
|
|
kind : faction.enumeration := faction.neutral;
|
|
|
|
price : resource.price := (others => 0);
|
|
|
|
frames : natural := 0;
|
|
|
|
evoke : effect.information := effect.none;
|
2024-02-15 21:03:09 -05:00
|
|
|
end record;
|
|
|
|
|
2024-06-10 04:15:35 -04:00
|
|
|
type information is record
|
2024-06-14 17:00:08 -04:00
|
|
|
index : enumeration := enumeration'first;
|
|
|
|
x : integer := 0;
|
|
|
|
y : integer := 0;
|
2024-06-10 04:15:35 -04:00
|
|
|
end record;
|
|
|
|
|
|
|
|
type informations is array (natural range <>) of information;
|
|
|
|
|
2024-02-15 21:03:09 -05:00
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-26 16:05:48 -04:00
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
2024-02-19 16:20:38 -05:00
|
|
|
|
2024-06-02 07:02:36 -04:00
|
|
|
description : constant array (enumeration) of definition := (
|
2024-06-05 07:55:45 -04:00
|
|
|
house => (new string'("Dwarf House"), faction.dwarf, (others => 0), 1, effect.none),
|
|
|
|
cottage => (new string'("Fairy Cottage"), faction.fairy, (others => 0), 1, effect.none),
|
|
|
|
shack => (new string'("Gnoll Shack"), faction.gnoll, (others => 0), 1, effect.none),
|
|
|
|
homestead => (new string'("Kobold Homestead"), faction.kobold, (others => 0), 1, effect.none),
|
|
|
|
hut => (new string'("Goblin Hut"), faction.goblin, (others => 0), 1, effect.none),
|
|
|
|
den => (new string'("Imp Den"), faction.imp, (others => 0), 1, effect.none)
|
2024-06-02 07:02:36 -04:00
|
|
|
);
|
|
|
|
|
2024-06-10 04:15:35 -04:00
|
|
|
game : array (enumeration) of core.sprite;
|
2024-05-06 14:18:30 -04:00
|
|
|
|
2024-02-15 21:03:09 -05:00
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
end construction;
|