Prototype game engine for Heroes of Might & Magic, featuring a gameplay plot-twist...
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

49 rindas
2.4KB

  1. -- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
  2. --
  3. -- GNU General Public Licence (version 3 or later)
  4. with core, attribute, skill, resource;
  5. package faction is
  6. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  7. type enumeration is (
  8. fairy, dwarf, gnoll, kobold, goblin, imp,
  9. human, elf, orc, neutral
  10. );
  11. ------------------------------------------------------------------------------------------
  12. type information is record
  13. name : core.short_string;
  14. bonus_attribute : attribute.enumeration;
  15. bonus_skill : skill.enumeration;
  16. bonus_resource : resource.enumeration;
  17. end record;
  18. ------------------------------------------------------------------------------------------
  19. count : constant natural := enumeration'pos (enumeration'last) + 1;
  20. trait : constant array (enumeration) of information := (
  21. ("Fairy Kingdom ", attribute.speed, skill.mysticism, resource.gold),
  22. ("Dwarf Kingdom ", attribute.defense, skill.estates, resource.stone),
  23. ("Gnoll Kingdom ", attribute.stamina, skill.logistics, resource.leather),
  24. ("Kobold Kingdom ", attribute.offense, skill.tactics, resource.metal),
  25. ("Goblin Kingdom ", attribute.reach, skill.exploration, resource.wood),
  26. ("Imp Kingdom ", attribute.wisdom, skill.sorcery, resource.gem),
  27. ("Fallen Human Empire ", attribute.wisdom, skill.estates, resource.gold),
  28. ("Fallen Elf Empire ", attribute.wisdom, skill.estates, resource.gold),
  29. ("Fallen Orc Empire ", attribute.wisdom, skill.estates, resource.gold),
  30. ("Neutral ", attribute.offense, skill.archery, resource.gold)
  31. );
  32. ------------------------------------------------------------------------------------------
  33. procedure draw (value : in enumeration; x, y : in integer);
  34. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  35. end faction;