2023-10-15 09:08:31 -04:00
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- Copyright (c) 2023 - Ognjen 'xolatile' Milan Robovic
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- Xabina is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either
-- version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
-- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- Experimental minimal terminal rogue-like game in Ada programming language. I used to write a lot of Ada programs some time ago, then went in full C and assembly mode, and came
-- back to Ada, but realized that I keep my folders messy... Since it's bothersome to find my old Ada projects and share them here, I decided that the most easy thing to do is to
-- write a new program in Ada, a tiny game. Work in progress, it's messy and ugly for now...
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
with core ;
package animal is
------------------------------------------------------------------------------------------
2023-10-15 13:52:26 -04:00
type list is (
pig , cow , chicken , sheep , boar , goat , auroch , duck ,
dog , cat , rabbit , hamster , horse , donkey , camel , elephant ,
owl , hawk , pigeon , vulture , crow , pheasant , sparrow , albatross ,
sardine , herring , catfish , carp , whale , shark , squid , sawfish ,
worm , bee , centipede , spider , frog , rat , bat , mole ,
wolf , fox , bear , mammoth , elk , moose , deer , peebles ,
lion , hyena , bison , zebra , giraffe , crocodile , monkey , gnu ,
caribou , seal , morse , penguin , turtle , cayman , otter , snake ,
lizard , daeodon , slime , axolotl , hedgehog , caterpillar , crab , scorpion ,
giant_lizard , giant_centipede , giant_spider , giant_sloth ,
giant_owl , giant_scorpion , giant_axolotl , giant_worm
2023-10-15 09:08:31 -04:00
) ;
2023-10-15 13:52:26 -04:00
type mark is mod 72 ;
2023-10-15 09:08:31 -04:00
------------------------------------------------------------------------------------------
2023-10-15 13:52:26 -04:00
type constant_type is new core . constant_type with
2023-10-15 09:08:31 -04:00
record
health_limit : natural := 0 ;
attack_range : natural := 0 ;
defense_range : natural := 0 ;
end record ;
2023-10-15 13:52:26 -04:00
type variable_type is new core . variable_type with
2023-10-15 09:08:31 -04:00
record
health : natural := 0 ;
end record ;
2023-10-15 13:52:26 -04:00
type constant_list is array ( list ) of constant_type ;
type variable_list is array ( mark ) of variable_type ;
2023-10-15 09:08:31 -04:00
------------------------------------------------------------------------------------------
2023-10-15 13:52:26 -04:00
constant_data : constant constant_list := (
2023-10-15 13:35:03 -04:00
( core . animal , "Pig " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Cow " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Chicken " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Sheep " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Boar " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Goat " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Auroch " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Duck " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Dog " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Cat " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Rabbit " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Hamster " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Horse " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Donkey " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Camel " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Elephant " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Owl " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Hawk " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Pigeon " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Vulture " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Crow " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Pheasant " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Sparrow " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Albatross " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Sardine " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Herring " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Catfish " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Carp " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Whale " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Shark " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Squid " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Sawfish " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Worm " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Bee " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Centipede " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Spider " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Frog " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Rat " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Bat " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Mole " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Wolf " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Fox " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Bear " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Mammoth " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Elk " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Moose " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Deer " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Peebles " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Lion " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Hyena " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Bison " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Zebra " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giraffe " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Crocodile " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Monkey " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Gnu " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Caribou " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Seal " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Morse " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Penguin " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Turtle " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Cayman " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Otter " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Snake " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Lizard " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Daeodon " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Slime " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Axolotl " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Hedgehog " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Caterpillar " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Crab " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Scorpion " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Lizard " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Centipede " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Spider " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Sloth " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Owl " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Scorpion " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Axolotl " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 ) ,
( core . animal , "Giant Worm " , ' a ' , core . colour . green , core . effect . normal , 11 , 11 , 11 )
2023-10-15 09:08:31 -04:00
) ;
2023-10-15 13:52:26 -04:00
variable_data : variable_list ;
2023-10-15 09:08:31 -04:00
------------------------------------------------------------------------------------------
end animal ;