This commit is contained in:
ipvg 2024-07-26 22:56:50 -04:00
parent 3c751c6a2f
commit 34afc69172

View File

@ -136,20 +136,33 @@ int availability(string[,] animals) {
return slots;
}
string get_input(string text = "Please enter your text: ", bool integer = false) {
string get_input(string text = "Please enter your text: ",
bool integer = false,
string[]? opts = null) {
bool invalid = true;
while (invalid) {
print(text, false);
string? usr_in = Console.ReadLine();
if (!string.IsNullOrEmpty(usr_in) && usr_in.Trim() != "") {
if (integer) {
string resp = usr_in.Trim();
if (integer) {
int temp_int;
if (int.TryParse(resp, out temp_int)) {
return resp;
}
} else if (opts != null) {
resp = resp.ToLower();
if (opts.Contains(resp)) {
return resp;
} else {
return usr_in.Trim();
print($"Please enter a valid option (", false);
foreach (string opt in opts) {
print($" {opt} ", false);
}
print(")");
}
} else {
return resp;
}
}
}
@ -159,7 +172,7 @@ string get_input(string text = "Please enter your text: ", bool integer = false)
void add_new_pet(string[,] animals, int slots) {
int at_indx = max_pets - slots;
string id = $"{rand_str(abcd)}{rand_int(nums)}";
string specie = get_input("Enter pet specie: ");
string specie = get_input("Enter pet specie: ", false, species);
string name = get_input("Enter the pet name (? if unknown): ");
int age = Int32.Parse(get_input("Enter pet age (-1 if unknown): ", true));
string desc = get_input("Enter the physical description (? if unknown): ");
@ -182,7 +195,9 @@ void ask_new_pet() {
if (slots > 0) {
bool another = false;
do {
string resp = get_input("Do you want to enter info for another pet?: ");
string resp = get_input(
"Do you want to enter info for another pet?: "
);
bool invalid = true;
if (resp != "") {
while (invalid) {