-- 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, human, elf, orc, neutral ); ------------------------------------------------------------------------------------------ type definition is record name : access string := new string'("--"); bonus_attribute : attribute.enumeration := attribute.enumeration'first; bonus_skill : skill.enumeration := skill.enumeration'first; bonus_resource : resource.enumeration := resource.enumeration'first; 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) ); icon : array (enumeration) of core.sprite; view : array (enumeration) of core.sprite; ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ end faction;