2024-02-15 21:03:09 -05:00
|
|
|
with core, effect;
|
|
|
|
|
|
|
|
package item is
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
type slot is (
|
|
|
|
main_hand, off_hand, head, chest, neck, full_body,
|
|
|
|
finger, feet, hands, bag
|
|
|
|
);
|
|
|
|
|
|
|
|
type codex is (
|
|
|
|
admirals_hat, ambassadors_sash, undertakers_amulet, angel_feather_arrows, angelic_alliance, angel_wings,
|
|
|
|
armageddons_blade, armor_of_the_damned, armor_of_wonder, arms_of_legion, badge_of_courage, bird_of_perception,
|
|
|
|
blackshard, boots_of_levitation, boots_of_polarity, boots_of_speed, elven_bow, sharpshooters_bow,
|
|
|
|
unicorns_string, brimstone_armour, wooden_breastplate, gnolls_buckler, cape_of_conjuring, cape_of_velocity,
|
|
|
|
cards_of_prophecy, celestial_necklace, centaurs_axe, charm_of_mana, balanced_cloak, clover_of_fortune,
|
|
|
|
collar_of_conjuring, cornucopia, crest_of_valor, crown_of_dragontooth, crown_of_magician, dead_mans_boots,
|
|
|
|
diplomats_ring, dragonbone_greaves, dragon_scale_armor, dragon_scale_shield, dragon_wing_tabard, elixir_of_life,
|
|
|
|
emblem_of_cognizance, endless_bag_of_gold, endless_purse_of_gold, endless_sack_of_gold, equestrians_gloves, everflowing_crystal,
|
|
|
|
vial_of_mercury, ring_of_sulfur, interference_choker, glyph_of_gallantry, golden_bow, greater_gnolls_flail,
|
|
|
|
head_of_legion, hellstorm_helmet, helm_of_chaos, helm_of_heavens, helm_of_the_alabaster, evil_hour,
|
|
|
|
cart_of_lumber, cart_of_ore, ladybird_of_luck, legs_of_legion, shield_of_courage, loins_of_legion,
|
|
|
|
mystic_orb_of_mana, dragonteeth_necklace, ocean_guidance, necklace_of_swiftness, ogres_club_of_havoc, orb_of_driving_rain,
|
|
|
|
orb_of_inhibition, orb_of_silt, orb_of_hell_tempest, orb_of_the_firmament, orb_of_vulnerability, pendant_of_courage,
|
|
|
|
pendant_of_death, pendant_of_dispassion, pendant_of_free_will, pendant_of_holiness, pendant_of_life, pendant_of_negativity,
|
|
|
|
pendant_of_renderer, pendant_of_memory, dragon_father_armour, quiet_eye, recanters_cloak, flammenwerfer,
|
|
|
|
rib_cage, ring_of_conjuring, ring_of_infinite_gems, ring_of_life, ring_of_the_magi, ring_of_the_wayfarer,
|
|
|
|
ring_of_vitality, sandals_of_the_saint, basilisk_chestplate, sea_captains_hat, sentinels_shield, shackles_of_war,
|
|
|
|
fortrans_shield, oakenshield, undead_shield, skull_helmet, speculum, spellbinders_hat,
|
|
|
|
sphere_of_permanence, spirit_of_oppression, spyglass, statesmans_medal, statue_of_legion, cs_ring,
|
|
|
|
stoic_watchman, counterpoise, sword_of_hellfire, adas_claymore, talisman_of_mana, targ,
|
|
|
|
thunder_helmet, titans_cuirass, titans_gladius, titans_thunder, tome_of_air, tome_of_earth,
|
|
|
|
tome_of_fire, tome_of_water, torso_of_legion, cyclops_tunic, vampires_cowl, vial_of_dragon_blood,
|
|
|
|
vial_of_lifeblood, wizards_well
|
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
subtype level_limit is natural range 0 .. 3;
|
|
|
|
|
|
|
|
type information is
|
|
|
|
record
|
|
|
|
name : core.short_string;
|
|
|
|
kind : slot;
|
|
|
|
level : level_limit;
|
|
|
|
evoke : effect.codex;
|
|
|
|
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-02-15 21:03:09 -05:00
|
|
|
("Admiral's Hat ", head, 0, effect.none),
|
|
|
|
("Ambassador's Sash ", full_body, 0, effect.none),
|
|
|
|
("Undertaker's Amulet ", neck, 1, effect.none),
|
|
|
|
("Angel Feather Arrows ", bag, 1, effect.none),
|
|
|
|
("Angelic Alliance ", main_hand, 2, effect.none),
|
|
|
|
("Angel Wings ", full_body, 2, effect.none),
|
|
|
|
("Armageddon's Blade ", main_hand, 3, effect.none),
|
|
|
|
("Armor of The Damned ", chest, 3, effect.none),
|
|
|
|
("Armor of Wonder ", chest, 0, effect.none),
|
|
|
|
("Arms of Legion ", bag, 0, effect.none),
|
|
|
|
("Badge of Courage ", bag, 1, effect.none),
|
|
|
|
("Bird of Perception ", bag, 1, effect.none),
|
|
|
|
("Blackshard ", main_hand, 2, effect.none),
|
|
|
|
("Boot's of Levitation ", feet, 2, effect.none),
|
|
|
|
("Boot's of Polarity ", feet, 3, effect.none),
|
|
|
|
("Boot's of Speed ", feet, 3, effect.none),
|
|
|
|
("Elven Bow ", off_hand, 0, effect.none),
|
|
|
|
("Sharpshooter's Bow ", off_hand, 0, effect.none),
|
|
|
|
("Unicorn's String ", bag, 1, effect.none),
|
|
|
|
("Brimstone Armour ", chest, 1, effect.none),
|
|
|
|
("Wooden Breastplate ", chest, 2, effect.none),
|
|
|
|
("Gnoll's Buckler ", off_hand, 2, effect.none),
|
|
|
|
("Cape of Conjuring ", full_body, 3, effect.none),
|
|
|
|
("Cape of Velocity ", full_body, 3, effect.none),
|
|
|
|
("Card's of Prophecy ", bag, 0, effect.none),
|
|
|
|
("Celestial Necklace ", neck, 0, effect.none),
|
|
|
|
("Centaur's Axe ", main_hand, 1, effect.none),
|
|
|
|
("Charm of Mana ", neck, 1, effect.none),
|
|
|
|
("Balanced Cloak ", full_body, 2, effect.none),
|
|
|
|
("Clover of Fortune ", bag, 2, effect.none),
|
|
|
|
("Collar of Conjuring ", neck, 3, effect.none),
|
|
|
|
("Cornucopia ", bag, 3, effect.none),
|
|
|
|
("Crest of Valor ", bag, 0, effect.none),
|
|
|
|
("Crown of Dragontooth ", head, 0, effect.none),
|
|
|
|
("Crown of Magician ", head, 1, effect.none),
|
|
|
|
("Dead Man's Boots ", feet, 1, effect.none),
|
|
|
|
("Diplomat's Ring ", finger, 2, effect.none),
|
|
|
|
("Dragonbone Greaves ", feet, 2, effect.none),
|
|
|
|
("Dragon Scale Armor ", chest, 3, effect.none),
|
|
|
|
("Dragon Scale Shield ", off_hand, 3, effect.none),
|
|
|
|
("Dragon Wing Tabard ", full_body, 0, effect.none),
|
|
|
|
("Elixir of Life ", bag, 0, effect.none),
|
|
|
|
("Emblem of Cognizance ", neck, 1, effect.none),
|
|
|
|
("Endles's Bag of Gold ", bag, 1, effect.none),
|
|
|
|
("Endles's Purse of Gold ", bag, 2, effect.none),
|
|
|
|
("Endles's Sack of Gold ", bag, 2, effect.none),
|
|
|
|
("Equestrian's Gloves ", hands, 3, effect.none),
|
|
|
|
("Everflowing Crystal ", full_body, 3, effect.none),
|
|
|
|
("Vial of Mercury ", bag, 0, effect.none),
|
|
|
|
("Ring of Sulfur ", finger, 0, effect.none),
|
|
|
|
("Interference Choker ", neck, 1, effect.none),
|
|
|
|
("Glyph of Gallantry ", bag, 1, effect.none),
|
|
|
|
("Golden Bow ", off_hand, 2, effect.none),
|
|
|
|
("Greater Gnoll's Flail ", main_hand, 2, effect.none),
|
|
|
|
("Head of Legion ", bag, 3, effect.none),
|
|
|
|
("Hellstorm Helmet ", head, 3, effect.none),
|
|
|
|
("Helm of Chaos ", head, 0, effect.none),
|
|
|
|
("Helm of Heavens ", head, 0, effect.none),
|
|
|
|
("Helm of The Alabaster ", head, 1, effect.none),
|
|
|
|
("Evil Hour ", bag, 1, effect.none),
|
|
|
|
("Cart of Lumber ", bag, 2, effect.none),
|
|
|
|
("Cart of Ore ", bag, 2, effect.none),
|
|
|
|
("Ladybird of Luck ", bag, 3, effect.none),
|
|
|
|
("Leg's of Legion ", bag, 3, effect.none),
|
|
|
|
("Shield of Courage ", off_hand, 0, effect.none),
|
|
|
|
("Loin's of Legion ", bag, 0, effect.none),
|
|
|
|
("Mystic Orb of Mana ", neck, 0, effect.none),
|
|
|
|
("Dragonteeth Necklace ", neck, 0, effect.none),
|
|
|
|
("Ocean Guidance ", neck, 0, effect.none),
|
|
|
|
("Necklace of Swiftness ", neck, 0, effect.none),
|
|
|
|
("Ogre's Club of Havoc ", main_hand, 0, effect.none),
|
|
|
|
("Orb of Driving Rain ", bag, 0, effect.none),
|
|
|
|
("Orb of Inhibition ", bag, 1, effect.none),
|
|
|
|
("Orb of Silt ", bag, 1, effect.none),
|
|
|
|
("Orb of Hell Tempest ", bag, 1, effect.none),
|
|
|
|
("Orb of The Firmament ", bag, 1, effect.none),
|
|
|
|
("Orb of Vulnerability ", bag, 1, effect.none),
|
|
|
|
("Pendant of Courage ", neck, 1, effect.none),
|
|
|
|
("Pendant of Death ", neck, 1, effect.none),
|
|
|
|
("Pendant of Dispassion ", neck, 1, effect.none),
|
|
|
|
("Pendant of Free Will ", neck, 2, effect.none),
|
|
|
|
("Pendant of Holiness ", neck, 2, effect.none),
|
|
|
|
("Pendant of Life ", neck, 2, effect.none),
|
|
|
|
("Pendant of Negativity ", neck, 2, effect.none),
|
|
|
|
("Pendant of Renderer ", neck, 2, effect.none),
|
|
|
|
("Pendant of Memory ", neck, 2, effect.none),
|
|
|
|
("Dragon Father Armour ", chest, 2, effect.none),
|
|
|
|
("Quiet Eye ", finger, 2, effect.none),
|
|
|
|
("Recanter's Cloak ", full_body, 3, effect.none),
|
|
|
|
("Flammenwerfer ", main_hand, 3, effect.none),
|
|
|
|
("Rib Cage ", chest, 3, effect.none),
|
|
|
|
("Ring of Conjuring ", finger, 3, effect.none),
|
|
|
|
("Ring of Infinite Gems ", finger, 3, effect.none),
|
|
|
|
("Ring of Life ", finger, 3, effect.none),
|
|
|
|
("Ring of The Magi ", finger, 3, effect.none),
|
|
|
|
("Ring of The Wayfarer ", finger, 3, effect.none),
|
|
|
|
("Ring of Vitality ", finger, 3, effect.none),
|
|
|
|
("Sandal's of The Saint ", feet, 3, effect.none),
|
|
|
|
("Basilisk Chestplate ", chest, 3, effect.none),
|
|
|
|
("Sea Captain's Hat ", head, 3, effect.none),
|
|
|
|
("Sentinel's Shield ", off_hand, 3, effect.none),
|
|
|
|
("Shackle's of War ", hands, 3, effect.none),
|
|
|
|
("Fortran's Shield ", off_hand, 3, effect.none),
|
|
|
|
("Oakenshield ", off_hand, 3, effect.none),
|
|
|
|
("Undead Shield ", off_hand, 3, effect.none),
|
|
|
|
("Skull Helmet ", head, 3, effect.none),
|
|
|
|
("Speculum ", bag, 3, effect.none),
|
|
|
|
("Spellbinder's Hat ", head, 3, effect.none),
|
|
|
|
("Sphere of Permanence ", bag, 3, effect.none),
|
|
|
|
("Spirit of Oppression ", bag, 3, effect.none),
|
|
|
|
("Spyglass ", bag, 3, effect.none),
|
|
|
|
("Statesman's Medal ", neck, 3, effect.none),
|
|
|
|
("Statue of Legion ", bag, 3, effect.none),
|
|
|
|
("C's Ring ", finger, 3, effect.none),
|
|
|
|
("Stoic Watchman ", bag, 3, effect.none),
|
|
|
|
("Counterpoise ", full_body, 3, effect.none),
|
|
|
|
("Sword of Hellfire ", main_hand, 3, effect.none),
|
|
|
|
("Ada's Claymore ", main_hand, 3, effect.none),
|
|
|
|
("Talisman of Mana ", bag, 3, effect.none),
|
|
|
|
("Targ ", off_hand, 3, effect.none),
|
|
|
|
("Thunder Helmet ", head, 3, effect.none),
|
|
|
|
("Titan's Cuirass ", chest, 3, effect.none),
|
|
|
|
("Titan's Gladius ", main_hand, 3, effect.none),
|
|
|
|
("Titan's Thunder ", main_hand, 3, effect.none),
|
2024-02-16 05:52:11 -05:00
|
|
|
("Tome of Air ", off_hand, 3, effect.none),
|
|
|
|
("Tome of Earth ", off_hand, 3, effect.none),
|
|
|
|
("Tome of Fire ", off_hand, 3, effect.none),
|
|
|
|
("Tome of Water ", off_hand, 3, effect.none),
|
2024-02-15 21:03:09 -05:00
|
|
|
("Torso of Legion ", bag, 3, effect.none),
|
|
|
|
("Cyclop's Tunic ", chest, 3, effect.none),
|
|
|
|
("Vampire's Cowl ", full_body, 3, effect.none),
|
|
|
|
("Vial of Dragon Blood ", bag, 3, effect.none),
|
|
|
|
("Vial of Lifeblood ", bag, 3, effect.none),
|
|
|
|
("Wizard's Well ", bag, 3, effect.none)
|
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
procedure configure;
|
|
|
|
|
|
|
|
procedure draw (index : in codex; x, y : in integer);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
end item;
|