2024-04-25 00:27:13 -04:00
|
|
|
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
|
|
--
|
|
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
|
2024-04-26 15:49:49 -04:00
|
|
|
with core, effect, attribute, skill;
|
2024-02-15 21:03:09 -05:00
|
|
|
|
|
|
|
package item is
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
type slot is (
|
2024-04-26 15:49:49 -04:00
|
|
|
with_body, full_body, head, chest, hands, feet,
|
|
|
|
neck, main_hand, off_hand, bag, cloak, additional
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
type codex is (
|
2024-04-26 15:49:49 -04:00
|
|
|
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
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-26 15:49:49 -04:00
|
|
|
type information is record
|
|
|
|
name : core.short_string;
|
|
|
|
kind : slot;
|
|
|
|
attributes : attribute.points;
|
|
|
|
bonus_skill : skill.codex;
|
|
|
|
evoke : effect.codex;
|
2024-02-15 21:03:09 -05:00
|
|
|
end record;
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-02-19 16:20:38 -05:00
|
|
|
count : constant natural := codex'pos (codex'last) + 1;
|
|
|
|
|
2024-04-23 16:19:29 -04:00
|
|
|
trait : constant array (codex) of information := (
|
2024-04-26 15:49:49 -04:00
|
|
|
("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)
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
procedure configure;
|
|
|
|
|
|
|
|
procedure draw (index : in codex; x, y : in integer);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
end item;
|