diff --git a/source/ai.ads b/source/ai.ads index 822ec37..e02ce0a 100644 --- a/source/ai.ads +++ b/source/ai.ads @@ -8,6 +8,11 @@ package ai is none, walk, talk, find ); + subtype string_16 is string (1 .. 16); + + type name_limit is mod 400; + type clan_limit is mod 120; + type action_data is record base : natural; @@ -15,6 +20,12 @@ package ai is name : core.short_string; end record; + type agent_data is + record + name : name_limit; + clan : clan_limit; + end record; + ------------------------------------------------------------------------------------------ procedure action_none; @@ -22,14 +33,14 @@ package ai is procedure action_talk; procedure action_find; - action_list : constant array (action) of action_data := ( + action_array : constant array (action) of action_data := ( (000000, action_none'access, "idle "), (000001, action_walk'access, "walking "), (000300, action_talk'access, "talking "), (050060, action_find'access, "finding ") ); - global_male_name_list : constant array (1 .. 400) of string (1 .. 16) := ( + male_name_array : constant array (name_limit) of string_16 := ( "Unumis ", "Aardappel ", "Aaron ", "Abel ", "Abgar ", "Abiathar ", "Abijah ", "Abraham ", "Abram ", "Absolom ", "Adam ", "Adonijah ", "Ael ", "Aghasi ", "Aidan ", "Ajnak ", "Aknunbi ", "Alexan ", "Alishan ", "Alvedos ", "Aman ", "Amaras ", "Amariah ", "Amoz ", @@ -82,7 +93,7 @@ package ai is "Zachariah ", "Zahn ", "Zareh ", "Zarmayr ", "Zaven ", "Zebadiah ", "Zedekiah ", "Zinthel " ); - global_female_name_list : constant array (1 .. 400) of string (1 .. 16) := ( + female_name_array : constant array (name_limit) of string_16 := ( "Haen ", "Abigail ", "Abishai ", "Adah ", "Adina ", "Adriel ", "Aednat ", "Aelena ", "Aghavni ", "Aghvor ", "Ai ", "Ailish ", "Alik ", "Alin ", "Amanor ", "Amanthia ", "Amaroch ", "Amenora ", "Anahit ", "Anea ", "Anelia ", "Angela ", "Angine ", "Ani ", @@ -135,7 +146,7 @@ package ai is "Zepyur ", "Zilpah ", "Zina ", "Zipporah ", "Zod ", "Zophea ", "Zora ", "Zuanai " ); - global_clan_name_list : constant array (1 .. 120) of string (1 .. 16) := ( + clan_name_array : constant array (clan_limit) of string_16 := ( "Aldheln ", "Abedol ", "Adonis ", "Amelin ", "Ankonih ", "Aoshin ", "Ariel ", "Arma ", "Arthel ", "Ashal ", "Astrid ", "Avdotiya ", "Barkur ", "Bavakiel ", "Bednudan ", "Calarian ", "Chleayan ", "Cinnkhan ", "Dairin ", "Daok ", "Daudroht ", "Deakan ", "Degerynn ", "Demenokt ",