with core, attribute, skill, resource; package faction is ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ type codex is ( neutral, castle, stronghold, inferno, tower, conflux, necropolis, rampart, fortress, dungeon ); ------------------------------------------------------------------------------------------ type information is record name : core.short_string; attribute_bonus : attribute.codex; skill_bonus : skill.codex; resource_bonus : resource.codex; end record; ------------------------------------------------------------------------------------------ count : constant natural := codex'pos (codex'last) + 1; trait : constant array (codex) of information := ( ("Neutral ", attribute.offense, skill.archery, resource.gold), ("Castle ", attribute.offense, skill.archery, resource.gold), ("Stronghold ", attribute.offense, skill.archery, resource.gold), ("Inferno ", attribute.offense, skill.archery, resource.gold), ("Tower ", attribute.offense, skill.archery, resource.gold), ("Conflux ", attribute.offense, skill.archery, resource.gold), ("Necropolis ", attribute.offense, skill.archery, resource.gold), ("Rampart ", attribute.offense, skill.archery, resource.gold), ("Fortress ", attribute.offense, skill.archery, resource.gold), ("Dungeon ", attribute.offense, skill.archery, resource.gold) ); ------------------------------------------------------------------------------------------ procedure draw (value : in codex; x, y : in integer); ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ end faction;