-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic -- -- GNU General Public Licence (version 3 or later) with core, effect, attribute, skill; package item is ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ type slot is ( with_body, full_body, head, chest, hands, feet, neck, main_hand, off_hand, bag, cloak, additional ); type codex is ( iron_chestplate, iron_greaves, grey_tunic, iron_gauntlets, iron_helmet, iron_sword, golden_necklace, iron_round_shield, ginger_long_beard, ginger_short_hair, head_runic_tattoo ); ------------------------------------------------------------------------------------------ type information is record name : core.short_string; kind : slot; attributes : attribute.points; bonus_skill : skill.codex; evoke : effect.codex; end record; ------------------------------------------------------------------------------------------ count : constant natural := codex'pos (codex'last) + 1; trait : constant array (codex) of information := ( ("Iron Chestplate ", chest, (0, 3, 0, 0, 0, 0), skill.leadership, effect.none), ("Iron Greaves ", feet, (0, 1, 0, 0, 0, 0), skill.logistics, effect.none), ("Grey Tunic ", full_body, (0, 1, 0, 1, 0, 0), skill.exploration, effect.none), ("Iron Gauntlets ", hands, (0, 1, 0, 0, 0, 0), skill.logistics, effect.none), ("Iron Helmet ", head, (0, 1, 0, 0, 0, 0), skill.leadership, effect.none), ("Iron Sword ", main_hand, (1, 0, 0, 0, 1, 2), skill.tactics, effect.none), ("Golden Necklace ", neck, (0, 0, 0, 0, 0, 0), skill.estates, effect.none), ("Iron Round Shield ", off_hand, (0, 2, 0, 0, 0, 1), skill.tactics, effect.none), ("Ginger Long Beard ", with_body, (0, 0, 0, 0, 0, 0), skill.mercantile, effect.none), ("Ginger Short Hair ", with_body, (0, 0, 0, 0, 0, 0), skill.mercantile, effect.none), ("Head Runic Tattoo ", with_body, (0, 0, 1, 0, 0, 0), skill.mysticism, effect.none) ); ------------------------------------------------------------------------------------------ procedure configure; procedure draw (index : in codex; x, y : in integer); ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ end item;