Prototype game engine for Heroes of Might & Magic, featuring a gameplay plot-twist...
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 line
2.6KB

  1. -- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
  2. --
  3. -- GNU General Public Licence (version 3 or later)
  4. with core, attribute, skill, resource, faction;
  5. package deity is
  6. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  7. type enumeration is (
  8. AEZORA, MITENA, GUAREA, KERENA, ULDRAE, KANAKO,
  9. HENEAL, EVELOR, OROHAN, XORANA
  10. );
  11. ------------------------------------------------------------------------------------------
  12. type definition is record
  13. name : core.short_string;
  14. favor : integer;
  15. loved_faction : faction.enumeration;
  16. bonus_attribute : attribute.enumeration;
  17. bonus_skill : skill.enumeration;
  18. bonus_resource : resource.enumeration;
  19. end record;
  20. ------------------------------------------------------------------------------------------
  21. count : constant natural := enumeration'pos (enumeration'last) + 1;
  22. description : constant array (enumeration) of definition := (
  23. AEZORA => ("Aezora ", 0, faction.fairy, attribute.offense, skill.archery, resource.gold),
  24. MITENA => ("Mitena ", 0, faction.dwarf, attribute.offense, skill.archery, resource.gold),
  25. GUAREA => ("Guarea ", 0, faction.gnoll, attribute.offense, skill.archery, resource.gold),
  26. KERENA => ("Kerena ", 0, faction.kobold, attribute.offense, skill.archery, resource.gold),
  27. ULDRAE => ("Uldrae ", 0, faction.goblin, attribute.offense, skill.archery, resource.gold),
  28. KANAKO => ("Kanako ", 0, faction.imp, attribute.offense, skill.archery, resource.gold),
  29. HENEAL => ("Heneal ", 0, faction.human, attribute.offense, skill.archery, resource.gold),
  30. EVELOR => ("Evelor ", 0, faction.elf, attribute.offense, skill.archery, resource.gold),
  31. OROHAN => ("Orohan ", 0, faction.orc, attribute.offense, skill.archery, resource.gold),
  32. XORANA => ("Xorana ", 0, faction.neutral, attribute.offense, skill.archery, resource.gold)
  33. );
  34. sprite : array (enumeration) of core.sprite;
  35. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  36. end deity;