xhads/source/faction.ads

47 lines
2.0 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 codex is (
fairy, dwarf, gnoll, kobold, goblin, imp,
neutral
);
------------------------------------------------------------------------------------------
type information is
record
name : core.short_string;
bonus_attribute : attribute.codex;
bonus_skill : skill.codex;
bonus_resource : resource.codex;
end record;
------------------------------------------------------------------------------------------
count : constant natural := codex'pos (codex'last) + 1;
trait : constant array (codex) 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.steel),
("Goblin Kingdom ", attribute.reach, skill.exploration, resource.wood),
("Imp Kingdom ", attribute.wisdom, skill.sorcery, resource.crystal),
("Neutral ", attribute.offense, skill.archery, resource.gold)
);
------------------------------------------------------------------------------------------
procedure draw (value : in codex; x, y : in integer);
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
end faction;