Prototype game engine for Heroes of Might & Magic, featuring a gameplay plot-twist...
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

5 дней назад
10 часов назад
2 месяцев назад
2 недель назад
5 дней назад
1 неделю назад
1 неделю назад
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. -- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
  2. --
  3. -- GNU General Public Licence (version 3 or later)
  4. with core, attribute, skill, resource, material, faction, equipment;
  5. use core;
  6. package chad is
  7. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  8. type enumeration is (
  9. ada, richard, ognjen, wouter, john, marina
  10. );
  11. ------------------------------------------------------------------------------------------
  12. type definition is record
  13. name : core.short_string;
  14. kind : faction.enumeration;
  15. bonus_attribute : attribute.enumeration;
  16. bonus_skill : skill.enumeration;
  17. bonus_resource : resource.enumeration;
  18. end record;
  19. item_limit : constant natural := 24;
  20. type item_array is array (0 .. item_limit - 1) of equipment.enumeration;
  21. type information is record
  22. index : enumeration;
  23. state : core.animation;
  24. x : integer;
  25. y : integer;
  26. health : core.point;
  27. mana : core.point;
  28. movement : core.point;
  29. attributes : attribute.points;
  30. skills : skill.points;
  31. resources : resource.points;
  32. materials : material.points;
  33. equipments : equipment.equip_array;
  34. item_count : natural;
  35. items : item_array;
  36. end record;
  37. type informations is array (natural range <>) of information;
  38. ------------------------------------------------------------------------------------------
  39. count : constant natural := enumeration'pos (enumeration'last) + 1;
  40. description : constant array (enumeration) of definition := (
  41. ada => ("Ada Augusta King ", faction.fairy, attribute.defense, skill.diplomacy, resource.metal),
  42. richard => ("Richard Martin Stallman ", faction.dwarf, attribute.offense, skill.leadership, resource.wood),
  43. ognjen => ("Ognjen Milan Robovic ", faction.kobold, attribute.stamina, skill.archery, resource.leather),
  44. wouter => ("Wouter van Oortmerssen ", faction.gnoll, attribute.speed, skill.medicine, resource.stone),
  45. john => ("John Warner Backus ", faction.goblin, attribute.wisdom, skill.sorcery, resource.gem),
  46. marina => ("Marina Ann Hantzis ", faction.imp, attribute.reach, skill.necromancy, resource.gold)
  47. );
  48. ------------------------------------------------------------------------------------------
  49. procedure configure;
  50. procedure draw (player : in information; x, y : in integer);
  51. procedure draw_data (player : in information; x, y : in integer);
  52. procedure draw_menu (player : in information; x, y : in integer);
  53. function take_equipment_item (player : in out information; item : in equipment.enumeration) return boolean;
  54. procedure draw_pepe;
  55. procedure draw_alice;
  56. procedure save_value (here : in core.io.file_type; data : in information);
  57. procedure load_value (here : in core.io.file_type; data : out information);
  58. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  59. end chad;