xhads/source/faction.ads

47 lines
2.5 KiB
Ada
Raw Normal View History

-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
--
-- GNU General Public Licence (version 3 or later)
2024-02-15 21:03:09 -05:00
with core, attribute, skill, resource;
package faction is
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
type enumeration is (
fairy, dwarf, gnoll, kobold, goblin, imp,
2024-05-15 06:30:40 -04:00
human, elf, orc, neutral
2024-02-15 21:03:09 -05:00
);
------------------------------------------------------------------------------------------
type definition is record
name : access string;
bonus_attribute : attribute.enumeration;
bonus_skill : skill.enumeration;
bonus_resource : resource.enumeration;
2024-02-15 21:03:09 -05:00
end record;
------------------------------------------------------------------------------------------
count : constant natural := enumeration'pos (enumeration'last) + 1;
description : constant array (enumeration) of definition := (
fairy => (new string' ("Fairy Kingdom"), attribute.speed, skill.mysticism, resource.gold),
dwarf => (new string' ("Dwarf Kingdom"), attribute.defense, skill.estates, resource.stone),
gnoll => (new string' ("Gnoll Kingdom"), attribute.stamina, skill.logistics, resource.leather),
kobold => (new string' ("Kobold Kingdom"), attribute.offense, skill.tactics, resource.metal),
goblin => (new string' ("Goblin Kingdom"), attribute.reach, skill.exploration, resource.wood),
imp => (new string' ("Imp Kingdom"), attribute.wisdom, skill.sorcery, resource.gem),
human => (new string' ("Fallen Human Empire"), attribute.wisdom, skill.estates, resource.gold),
elf => (new string' ("Fallen Elf Empire"), attribute.wisdom, skill.estates, resource.gold),
orc => (new string' ("Fallen Orc Empire"), attribute.wisdom, skill.estates, resource.gold),
neutral => (new string' ("Neutral"), attribute.offense, skill.archery, resource.gold)
2024-02-15 21:03:09 -05:00
);
sprite : array (enumeration) of core.sprite;
2024-02-15 21:03:09 -05:00
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
end faction;