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