2024-04-25 00:27:13 -04:00
|
|
|
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
|
|
--
|
|
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
|
2024-02-15 21:03:09 -05:00
|
|
|
with core;
|
|
|
|
|
|
|
|
package resource is
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-26 16:05:48 -04:00
|
|
|
type enumeration is (
|
2024-05-07 03:58:41 -04:00
|
|
|
gold, wood, stone, metal, leather, gem
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-27 10:01:54 -04:00
|
|
|
type information is record
|
2024-02-15 21:03:09 -05:00
|
|
|
name : core.short_string;
|
2024-05-23 03:34:45 -04:00
|
|
|
base : core.point;
|
2024-03-13 18:32:59 -04:00
|
|
|
text : core.long_string;
|
2024-02-15 21:03:09 -05:00
|
|
|
end record;
|
|
|
|
|
2024-05-23 02:58:30 -04:00
|
|
|
type points is array (enumeration) of core.point;
|
2024-05-23 03:34:45 -04:00
|
|
|
type price is array (enumeration) of natural;
|
2024-02-16 09:59:19 -05:00
|
|
|
|
2024-02-15 21:03:09 -05:00
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-04-26 16:05:48 -04:00
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
2024-02-19 16:20:38 -05:00
|
|
|
|
2024-04-26 16:05:48 -04:00
|
|
|
trait : constant array (enumeration) of information := (
|
2024-05-23 03:34:45 -04:00
|
|
|
gold => ("Gold ", (24, 480), "Gold is precious yellowish shiny metal, valued since ancient times. "),
|
|
|
|
wood => ("Wood ", (12, 240), "Wood is just bundle of lignin and cellulose, nothing more. "),
|
|
|
|
stone => ("Stone ", (12, 240), "Stone is essential building block for most constructions in this world. "),
|
|
|
|
metal => ("Metal ", (12, 240), "Metal as a resource is mixture of commonly found metalic elements. "),
|
|
|
|
leather => ("Leather ", (12, 240), "Leather is general purpose resource, used for armours and decorations. "),
|
|
|
|
gem => ("Gem ", (12, 240), "Gem as a resource is same as metal, just mixture of various gems. ")
|
2024-02-15 21:03:09 -05:00
|
|
|
);
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
|
2024-02-16 06:24:49 -05:00
|
|
|
procedure configure;
|
|
|
|
|
2024-05-11 03:03:28 -04:00
|
|
|
procedure draw_points (data : in points; x, y : in integer);
|
2024-05-11 00:49:15 -04:00
|
|
|
|
2024-05-25 03:53:53 -04:00
|
|
|
procedure save_points (here : in core.io.file_type; data : in points);
|
|
|
|
procedure load_points (here : in core.io.file_type; data : out points);
|
2024-05-25 03:19:58 -04:00
|
|
|
|
2024-02-15 21:03:09 -05:00
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
end resource;
|