53 lines
1.5 KiB
Ada
53 lines
1.5 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
with core;
|
|
|
|
package effect is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type operation_index is (
|
|
idle,
|
|
add,
|
|
subtract,
|
|
multiply,
|
|
divide,
|
|
increment,
|
|
decrement
|
|
);
|
|
|
|
type operator_index is (
|
|
attribute,
|
|
skill,
|
|
resource
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
type value is record
|
|
operation : operation_index;
|
|
operator : operator_index;
|
|
modifier : integer;
|
|
permanent : boolean;
|
|
duration : natural;
|
|
end record;
|
|
|
|
none : value;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
--~count : constant natural := enumeration'pos (enumeration'last) + 1;
|
|
|
|
--~trait : constant array (enumeration) of information := (
|
|
--~((others => null), (others => (others => 0))),
|
|
--~((others => null), (others => (others => 0))),
|
|
--~((others => null), (others => (others => 0))),
|
|
--~((others => null), (others => (others => 0)))
|
|
--~);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end effect;
|