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
------------------------------------------------------------------------------------------
type animal_list is (
2023-10-15 12:56:21 -04:00
animal_pig , animal_cow , animal_chicken , animal_sheep , animal_boar , animal_goat , animal_auroch , animal_duck ,
animal_dog , animal_cat , animal_rabbit , animal_hamster , animal_horse , animal_donkey , animal_camel , animal_elephant ,
animal_owl , animal_hawk , animal_pigeon , animal_vulture , animal_crow , animal_pheasant , animal_sparrow , animal_albatross ,
animal_sardine , animal_herring , animal_catfish , animal_carp , animal_whale , animal_shark , animal_squid , animal_sawfish ,
animal_worm , animal_bee , animal_centipede , animal_spider , animal_frog , animal_rat , animal_bat , animal_mole ,
animal_wolf , animal_fox , animal_bear , animal_mammoth , animal_elk , animal_moose , animal_deer , animal_peebles ,
animal_lion , animal_hyena , animal_bison , animal_zebra , animal_giraffe , animal_crocodile , animal_monkey , animal_gnu ,
animal_caribou , animal_seal , animal_morse , animal_penguin , animal_turtle , animal_cayman , animal_otter , animal_snake ,
animal_lizard , animal_daeodon , animal_slime , animal_axolotl , animal_hedgehog , animal_caterpillar , animal_crab , animal_scorpion ,
animal_giant_lizard , animal_giant_centipede , animal_giant_spider , animal_giant_sloth ,
animal_giant_owl , animal_giant_scorpion , animal_giant_axolotl , animal_giant_worm
2023-10-15 09:08:31 -04:00
) ;
type animal_mark is mod 72 ;
------------------------------------------------------------------------------------------
2023-10-15 13:35:03 -04:00
type animal_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:35:03 -04:00
type animal_variable_type is new core . variable_type with
2023-10-15 09:08:31 -04:00
record
health : natural := 0 ;
end record ;
type animal_constant_list is array ( animal_list ) of animal_constant_type ;
type animal_variable_list is array ( animal_mark ) of animal_variable_type ;
------------------------------------------------------------------------------------------
animal_constant_data : constant animal_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
) ;
animal_variable_data : animal_variable_list ;
------------------------------------------------------------------------------------------
end animal ;