xhads/source/attribute.ads
2024-06-02 10:15:47 -04:00

51 lines
2.2 KiB
Ada

-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
--
-- GNU General Public Licence (version 3 or later)
with core;
use core;
package attribute is
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
type enumeration is (
offense, defense, wisdom, stamina, speed, reach
);
------------------------------------------------------------------------------------------
type definition is record
base : core.point;
name : core.unstring;
text : core.unstring;
end record;
type points is array (enumeration) of core.point;
type bonus is array (enumeration) of natural;
------------------------------------------------------------------------------------------
count : constant natural := enumeration'pos (enumeration'last) + 1;
default : constant points := (others => (1, 12));
description : constant array (enumeration) of definition := (
offense => ((1, 12), +("Offense"), +("Offense attribute determines your damage modifier when attacking.")),
defense => ((1, 12), +("Defense"), +("D-FENS attribute determines how much damage your reflect and receive.")),
wisdom => ((1, 12), +("Wisdom"), +("Wisdom attribute determines how much mana your chad has.")),
stamina => ((1, 12), +("Stamina"), +("Stamina attribute determines how fast you recover from being wounded.")),
speed => ((1, 12), +("Speed"), +("Speed attribute determines how far you can walk per turn.")),
reach => ((1, 12), +("Reach"), +("Reach attribute determines your range modifier when shooting or casting."))
);
icon : array (enumeration) of core.sprite;
------------------------------------------------------------------------------------------
procedure draw_points (data : in points; x, y : in integer);
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
end attribute;