2024-06-09 19:24:58 -04:00
|
|
|
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
|
|
--
|
|
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
|
|
|
|
with core, effect, attribute, skill, resource, material;
|
|
|
|
|
|
|
|
package location is
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
type enumeration is (
|
|
|
|
well_of_agility, well_of_knowledge, well_of_strength, old_dwarven_grave, huge_ancient_urn, banana_tree,
|
|
|
|
apple_tree, cherry_tree, lemon_tree, orange_tree, pear_tree, peach_tree,
|
2024-06-10 09:54:22 -04:00
|
|
|
plum_tree, pillars_of_observation
|
2024-06-09 19:24:58 -04:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
type definition is record
|
2024-06-14 17:00:08 -04:00
|
|
|
name : access string := new string'("--");
|
|
|
|
clip : boolean := false;
|
|
|
|
frames : integer := 0;
|
|
|
|
evoke : effect.information := effect.none;
|
2024-06-09 19:24:58 -04:00
|
|
|
end record;
|
|
|
|
|
2024-06-09 20:32:04 -04:00
|
|
|
type information is record
|
2024-06-14 17:00:08 -04:00
|
|
|
index : enumeration := enumeration'first;
|
|
|
|
used : boolean := false;
|
|
|
|
x : integer := 0;
|
|
|
|
y : integer := 0;
|
2024-06-09 20:32:04 -04:00
|
|
|
end record;
|
|
|
|
|
|
|
|
type informations is array (natural range <>) of information;
|
|
|
|
|
2024-06-09 19:24:58 -04:00
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
|
|
|
|
|
|
|
description : constant array (enumeration) of definition := (
|
2024-06-10 09:54:22 -04:00
|
|
|
well_of_agility => (new string'("Well of Agility"), true, 4, (effect.modify_attribute, attribute.enumeration'pos (attribute.speed), 2, false, 0)),
|
|
|
|
well_of_knowledge => (new string'("Well of Knowledge"), true, 4, (effect.modify_attribute, attribute.enumeration'pos (attribute.wisdom), 2, false, 0)),
|
|
|
|
well_of_strength => (new string'("Well of Strength"), true, 4, (effect.modify_attribute, attribute.enumeration'pos (attribute.offense), 2, false, 0)),
|
|
|
|
old_dwarven_grave => (new string'("Old Dwarven Grave"), true, 1, (effect.modify_attribute, attribute.enumeration'pos (attribute.defense), 1, false, 0)),
|
|
|
|
huge_ancient_urn => (new string'("Huge Ancient Urn"), true, 1, (effect.modify_attribute, attribute.enumeration'pos (attribute.offense), 1, false, 0)),
|
2024-06-15 04:54:30 -04:00
|
|
|
banana_tree => (new string'("Banana Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.banana), 4, true, 12)),
|
|
|
|
apple_tree => (new string'("Apple Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.apple), 6, true, 12)),
|
|
|
|
cherry_tree => (new string'("Cherry Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.cherry), 6, true, 12)),
|
|
|
|
lemon_tree => (new string'("Lemon Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.lemon), 6, true, 12)),
|
|
|
|
orange_tree => (new string'("Orange Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.orange), 6, true, 12)),
|
|
|
|
pear_tree => (new string'("Pear Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.pear), 6, true, 12)),
|
|
|
|
peach_tree => (new string'("Peach Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.peach), 6, true, 12)),
|
|
|
|
plum_tree => (new string'("Plum Tree"), true, 4, (effect.append_material, material.enumeration'pos (material.plum), 6, true, 12)),
|
2024-06-10 09:54:22 -04:00
|
|
|
pillars_of_observation => (new string'("Pillars of Observation"), true, 1, (effect.modify_attribute, attribute.enumeration'pos (attribute.reach), 2, false, 0))
|
2024-06-09 19:24:58 -04:00
|
|
|
);
|
|
|
|
|
|
|
|
game : array (enumeration) of core.sprite;
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
end location;
|