add colour to keyboard
This commit is contained in:
1 parent
7621938f04
commit
437d46e975
1 file changed
+13
-1
@@ -33,6 +33,7 @@ function main() {
|
||||
declare -g ANSWER
|
||||
declare -g POOL='QWERTYUIOPASDFGHJKLZXCVBNM'
|
||||
declare -Ag YELLOWS
|
||||
declare -Ag KEYS
|
||||
ANSWER=$(select_random_word)
|
||||
|
||||
set_options "$@"
|
||||
@@ -262,7 +263,12 @@ function render_keyboard() {
|
||||
elif [[ $i == 19 ]]; then
|
||||
echo -en "${NEWLINE} "
|
||||
fi
|
||||
echo -n "${POOL:$i:1} "
|
||||
declare key="${POOL:$i:1}"
|
||||
if [[ -n "${KEYS[$key]}" ]]; then
|
||||
echo -n "${KEYS[$key]}${BOLD}${LETTER}${key}${RESET} "
|
||||
else
|
||||
echo -n "${key} "
|
||||
fi
|
||||
done
|
||||
echo -en "${NEWLINE}"
|
||||
}
|
||||
@@ -333,6 +339,7 @@ function check_guess() {
|
||||
|
||||
if [[ "${_char}" == "${_answer:$c:1}" ]]; then
|
||||
greens[c]="${_char}"
|
||||
KEYS[$_char]="${GREEN}"
|
||||
BOARD[$_row,$c]="${GREEN}${BOLD}${LETTER} ${_char} ${UNBOLD}"
|
||||
continue
|
||||
fi
|
||||
@@ -341,6 +348,7 @@ function check_guess() {
|
||||
chars="${chars/${_char}/}"
|
||||
yellows[c]="${_char}" # volatile - stores previous row yellows
|
||||
YELLOWS[$_row,$c]="${_char}" # stores all yellow from all rounds
|
||||
[[ "${KEYS[$_char]}" != "${GREEN}" ]] && KEYS[$_char]="${YELLOW}"
|
||||
BOARD[$_row,$c]="${YELLOW}${BOLD}${LETTER} ${_char} ${UNBOLD}"
|
||||
fi
|
||||
[[ "${ANSWER}" =~ ${_char} ]] && continue
|
||||
@@ -384,6 +392,10 @@ function save_game() {
|
||||
echo "YELLOWS[$key]='${YELLOWS[$key]}'" >> "${PROGRESS_FILE}"
|
||||
done
|
||||
|
||||
for key in "${!KEYS[@]}"; do
|
||||
echo "KEYS[$key]='${KEYS[$key]}'" >> "${PROGRESS_FILE}"
|
||||
done
|
||||
|
||||
{
|
||||
echo "ROW=${ROW}"
|
||||
echo "POOL=${POOL}"
|
||||
|
||||
Reference in new issue
Block a user