clause fixes #16

Merged
adam merged 20 commits from dev into main 2026-09-29 22:13:57 +00:00
Showing only changes of commit a3f9ae6a17 - Show all commits
+17 -11
View File
@@ -58,7 +58,7 @@ function main() {
for (( ROW; ROW<HEIGHT; ROW++ )); do
declare GUESS
[[ "${KEYBOARD}" == 1 ]] && render_keyboard
GUESS=$(retrieve_guess)
GUESS=$(retrieve_guess) || { echo -en "${NEWLINE}"; exit 0; }
check_guess "${GUESS}" "${ROW}" ; WIN=$?
# Save before the reveal so quitting or disconnecting can't undo a guess
@@ -243,25 +243,31 @@ function render_board() {
[[ "${BORDER}" == 1 ]] && echo -e "└─────────────────┘"
}
# Exits non-zero at end of input (Ctrl-D) so the caller can quit
function retrieve_guess() {
if [[ -n $1 ]]; then
read -r -p "${CLEAR_UP1}$1: " GUESS
read -r -p "${CLEAR_UP1}$1: " GUESS || exit 1
else
read -r -p "${CLEAR_2END}Enter Guess: " GUESS
read -r -p "${CLEAR_2END}Enter Guess: " GUESS || exit 1
fi
while [[ ${#GUESS} -ne 5 ]] || [[ ! "${GUESS,,}" =~ ^[a-z]{5}$ ]]; do
read -r -p "${CLEAR_UP1}Must be 5 letters: " GUESS
done
read -r -p "${CLEAR_UP1}Must be 5 letters: " GUESS || exit 1
done
declare valid_guess
validate_guess "${GUESS}" ; valid_guess=$?
[[ ${valid_guess} == 1 ]] && GUESS=$(retrieve_guess "Not A Valid Word")
[[ ${valid_guess} == 2 ]] && GUESS=$(retrieve_guess "Not A Valid Guess")
[[ ${valid_guess} == 3 ]] && GUESS=$(retrieve_guess "GREEN Issue")
[[ ${valid_guess} == 4 ]] && GUESS=$(retrieve_guess "YELLOW Issue")
[[ ${valid_guess} == 5 ]] && GUESS=$(retrieve_guess "POOL Issue")
[[ ${valid_guess} == 6 ]] && GUESS=$(retrieve_guess "NEW Issue")
declare message
[[ ${valid_guess} == 1 ]] && message="Not A Valid Word"
[[ ${valid_guess} == 2 ]] && message="Not A Valid Guess"
[[ ${valid_guess} == 3 ]] && message="GREEN Issue"
[[ ${valid_guess} == 4 ]] && message="YELLOW Issue"
[[ ${valid_guess} == 5 ]] && message="POOL Issue"
[[ ${valid_guess} == 6 ]] && message="NEW Issue"
if [[ -n "${message}" ]]; then
GUESS=$(retrieve_guess "${message}") || exit 1
fi
echo -n "${GUESS^^}"
}