|
- -- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
- --
- -- GNU General Public Licence (version 3 or later)
-
- with core, effect, attribute, faction;
-
- package item is
-
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
- type slot is (
- with_body, full_body, head, chest, hands, feet,
- neck, main_hand, off_hand, bag, cloak, additional
- );
-
- type enumeration is (
- -- 04.05.2024.
- bone_chestplate, bronze_chestplate, chainmail_chestplate, crystal_chestplate, golden_chestplate, iron_chestplate,
- leather_chestplate, mithril_chestplate, steel_chestplate, bone_greaves, bronze_greaves, chainmail_greaves,
- crystal_greaves, golden_greaves, iron_greaves, leather_greaves, mithril_greaves, steel_greaves,
- black_tunic, blue_tunic, cyan_tunic, green_tunic, grey_tunic, lime_tunic,
- orange_tunic, pink_tunic, purple_tunic, red_tunic, white_tunic, yellow_tunic,
- bone_gauntlets, bronze_gauntlets, chainmail_gauntlets, crystal_gauntlets, golden_gauntlets, iron_gauntlets,
- leather_gauntlets, mithril_gauntlets, steel_gauntlets, bone_helmet, bronze_helmet, chainmail_helmet,
- crystal_helmet, golden_helmet, iron_helmet, leather_helmet, mithril_helmet, steel_helmet,
- bone_axe, bone_battleaxe, bone_bow, bone_mace, bone_spear, bone_sword,
- bronze_axe, bronze_greatsword, bronze_mace, bronze_spear, bronze_sword, club,
- crystal_bow, crystal_greatsword, crystal_mace, crystal_spear, crystal_sword, golden_axe,
- golden_battleaxe, golden_bow, golden_greatsword, golden_sword, iron_axe, iron_bow,
- iron_mace, iron_spear, iron_sword, jade_axe, jade_battleaxe, jade_greatsword,
- jade_mace, jade_spear, jade_sword, maul, mithril_axe, mithril_battleaxe,
- mithril_bow, mithril_mace, mithril_spear, sledge_hammer, spiked_club, spiked_staff,
- staff, steel_battleaxe, steel_bow, steel_greatsword, steel_mace, steel_sword,
- wooden_bow, wooden_greatsword, wooden_sword, golden_necklace, bronze_shield, crystal_shield,
- golden_shield, iron_shield, mithril_shield, steel_shield, wooden_shield
- );
-
- ------------------------------------------------------------------------------------------
-
- type information is record
- name : core.short_string;
- kind : slot;
- attributes : attribute.points;
- favor : faction.enumeration;
- evoke : effect.enumeration;
- end record;
-
- ------------------------------------------------------------------------------------------
-
- count : constant natural := enumeration'pos (enumeration'last) + 1;
-
- trait : constant array (enumeration) of information := (
- ("bone_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("chainmail_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("leather_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_chestplate, ", chest, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("chainmail_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("leather_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_greaves, ", feet, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("black_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("blue_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("cyan_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("green_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("grey_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("lime_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("orange_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("pink_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("purple_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("red_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("white_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("yellow_tunic, ", full_body, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("chainmail_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("leather_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_gauntlets, ", hands, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("chainmail_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("leather_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_helmet, ", head, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_battleaxe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bone_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("club, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_battleaxe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_battleaxe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("jade_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("maul, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_axe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_battleaxe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_spear, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("sledge_hammer, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("spiked_club, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("spiked_staff, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("staff, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_battleaxe, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_mace, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("wooden_bow, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("wooden_greatsword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("wooden_sword, ", main_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_necklace, ", neck, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("bronze_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("crystal_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("golden_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("iron_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("mithril_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("steel_shield, ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none),
- ("wooden_shield ", off_hand, (0, 0, 0, 0, 0, 0), faction.neutral, effect.none)
- );
-
- ------------------------------------------------------------------------------------------
-
- procedure configure;
-
- procedure draw (index : in enumeration; x, y : in integer);
-
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
- end item;
|