38 lines
1.7 KiB
Ada
38 lines
1.7 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
package effect is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type operation_index is (
|
|
idle,
|
|
offense, defense, wisdom, stamina, speed, reach,
|
|
alchemy, archery, architecture, athletics, diplomacy, estates,
|
|
exploration, leadership, logistics, medicine, mercantile, mysticism,
|
|
necromancy, resistance, skirmish, sorcery, tactics, thaumaturgy,
|
|
gold, wood, stone, metal, leather, gem,
|
|
take_material
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
type value is record
|
|
operation : operation_index;
|
|
modifier : integer;
|
|
amount : natural;
|
|
permanent : boolean;
|
|
duration : natural;
|
|
end record;
|
|
|
|
none : constant value := (idle, 0, 0, false, 0);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
procedure apply (data : in value);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end effect;
|