Compare commits

...
2 Commits
+9 -9
View File
@@ -191,10 +191,9 @@ function hard_mode_check() {
if [[ -n "${greens[i]}" ]]; then
[[ "${greens[i]}" != "${GUESS:i:1}" ]] && return 3
fi
if [[ " ${yellows[*]} " =~ ${GUESS:i:1} ]]; then
unset 'yellows[i]'
color_check "${GUESS:i:1}" $i && return 4
if [[ -n "${yellows[i]}" ]]; then
[[ "${yellows[i]}" == "${GUESS:i:1}" ]] && return 4
fi
done
@@ -219,7 +218,6 @@ function check_guess() {
declare -r _answer="${ANSWER}"
declare chars=""
declare -ga greens=()
declare -ga yellows=()
for (( i=0; i<WIDTH; i++ )); do
@@ -232,10 +230,8 @@ function check_guess() {
declare _char=${_guess:$c:1}
if [[ "${_char}" == "${_answer:$c:1}" ]]; then
green_count=$(( green_count+1 ))
greens[c]="${_char}"
BOARD[$_row,$c]="${BOLD}${LETTER}${GREEN} ${_char} "
[[ "${#greens[*]}" -eq 5 ]] && return 5
continue
fi
@@ -243,10 +239,14 @@ function check_guess() {
chars="${chars/${_char}/}"
yellows[c]="${_char}"
BOARD[$_row,$c]="${BOLD}${LETTER}${YELLOW} ${_char} "
else
POOL="${POOL/${_char}/_}"
continue
fi
[[ " ${yellows[*]} " =~ ${_char} ]] && continue
[[ " ${greens[*]} " =~ ${_char} ]] && continue
POOL="${POOL/${_char}/_}"
done
[[ "${#greens[*]}" == 5 ]] && return 5
}
function reveal_row() {