xhads/source/chad.ads

76 lines
3.0 KiB
Ada
Raw Normal View History

-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
--
-- GNU General Public Licence (version 3 or later)
2024-05-28 06:08:45 -04:00
with core, attribute, skill, resource, material, faction, equipment;
2024-06-02 07:14:06 -04:00
use core;
package chad is
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
type enumeration is (
ada, richard, ognjen, wouter, john, marina
);
------------------------------------------------------------------------------------------
type definition is record
2024-03-13 18:18:07 -04:00
name : core.short_string;
kind : faction.enumeration;
bonus_attribute : attribute.enumeration;
bonus_skill : skill.enumeration;
bonus_resource : resource.enumeration;
end record;
item_limit : constant natural := 24;
type item_array is array (0 .. item_limit - 1) of equipment.enumeration;
type information is record
index : enumeration;
2024-05-16 14:52:41 -04:00
state : core.animation;
x : integer;
y : integer;
health : core.point;
mana : core.point;
movement : core.point;
2024-04-23 16:19:29 -04:00
attributes : attribute.points;
skills : skill.points;
resources : resource.points;
2024-05-28 06:08:45 -04:00
materials : material.points;
equipments : equipment.equip_array;
item_count : natural;
items : item_array;
end record;
type informations is array (natural range <>) of information;
------------------------------------------------------------------------------------------
count : constant natural := enumeration'pos (enumeration'last) + 1;
description : constant array (enumeration) of definition := (
2024-05-23 04:52:45 -04:00
ada => ("Ada Augusta King ", faction.fairy, attribute.defense, skill.diplomacy, resource.metal),
richard => ("Richard Martin Stallman ", faction.dwarf, attribute.offense, skill.leadership, resource.wood),
ognjen => ("Ognjen Milan Robovic ", faction.kobold, attribute.stamina, skill.archery, resource.leather),
wouter => ("Wouter van Oortmerssen ", faction.gnoll, attribute.speed, skill.medicine, resource.stone),
john => ("John Warner Backus ", faction.goblin, attribute.wisdom, skill.sorcery, resource.gem),
marina => ("Marina Ann Hantzis ", faction.imp, attribute.reach, skill.necromancy, resource.gold)
);
2024-06-03 16:06:31 -04:00
view_width : constant integer := 64;
view_height : constant integer := 96;
sprite : array (enumeration) of core.sprite;
view : array (enumeration) of core.sprite;
2024-06-03 16:06:31 -04:00
------------------------------------------------------------------------------------------
procedure draw_data (player : in information; x, y : in integer);
2024-05-25 03:00:30 -04:00
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
end chad;