54 lines
2.3 KiB
Ada
54 lines
2.3 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
with core;
|
|
use core;
|
|
|
|
package resource is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type enumeration is (
|
|
gold, wood, stone, metal, leather, gem
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
type definition is record
|
|
base : core.point;
|
|
name : core.unstring;
|
|
text : core.unstring;
|
|
end record;
|
|
|
|
type points is array (enumeration) of core.point;
|
|
type price is array (enumeration) of natural;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
|
|
|
description : constant array (enumeration) of definition := (
|
|
gold => ((24, 480), +("Gold"), +("Gold is precious yellowish shiny metal, valued since ancient times.")),
|
|
wood => ((12, 240), +("Wood"), +("Wood is just bundle of lignin and cellulose, nothing more.")),
|
|
stone => ((12, 240), +("Stone"), +("Stone is essential building block for most constructions in this world.")),
|
|
metal => ((12, 240), +("Metal"), +("Metal as a resource is mixture of commonly found metalic elements.")),
|
|
leather => ((12, 240), +("Leather"), +("Leather is general purpose resource, used for armours and decorations.")),
|
|
gem => ((12, 240), +("Gem"), +("Gem as a resource is same as metal, just mixture of various gems."))
|
|
);
|
|
|
|
icon : array (enumeration) of core.sprite;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
procedure configure;
|
|
|
|
procedure draw_points (data : in points; x, y : in integer);
|
|
|
|
procedure save_points (here : in core.io.file_type; data : in points);
|
|
procedure load_points (here : in core.io.file_type; data : out points);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end resource;
|