xhads/source/faction.ads
2024-05-07 03:58:41 -04:00

46 lines
2.1 KiB
Ada

-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
--
-- GNU General Public Licence (version 3 or later)
with core, attribute, skill, resource;
package faction is
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
type enumeration is (
fairy, dwarf, gnoll, kobold, goblin, imp,
neutral
);
------------------------------------------------------------------------------------------
type information is record
name : core.short_string;
bonus_attribute : attribute.enumeration;
bonus_skill : skill.enumeration;
bonus_resource : resource.enumeration;
end record;
------------------------------------------------------------------------------------------
count : constant natural := enumeration'pos (enumeration'last) + 1;
trait : constant array (enumeration) of information := (
("Fairy Kingdom ", attribute.speed, skill.mysticism, resource.gold),
("Dwarf Kingdom ", attribute.defense, skill.estates, resource.stone),
("Gnoll Kingdom ", attribute.stamina, skill.logistics, resource.leather),
("Kobold Kingdom ", attribute.offense, skill.tactics, resource.metal),
("Goblin Kingdom ", attribute.reach, skill.exploration, resource.wood),
("Imp Kingdom ", attribute.wisdom, skill.sorcery, resource.gem),
("Neutral ", attribute.offense, skill.archery, resource.gold)
);
------------------------------------------------------------------------------------------
procedure draw (value : in enumeration; x, y : in integer);
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
end faction;