Commit Graph

20 Commits

Author SHA1 Message Date
9167877b29 Formatting and code style enhancements have been made to enhance the user experience. 2022-02-16 17:52:42 -06:00
86280a4b55 Implement hard mode, plus customization
game:
- New flag `--hard`: Select from 3 levels of difficulty:
  - Greenie: only check greens
  - Hard: classic Wordle* hard mode
  - Grayless: All hints are checked, even gray letters
- New flag: `--nokeyboard` disables the keyboard
- Improved customization:
  - Box characters, colors, and keyboard layouts moved into wordlists!
  - Support for non-English alpha characters to be determined. It should work though, I think.
  - Most things are no longer hardcoded! The main function is still a bit of a spaghetti mess right now, though. To be fixed!

dummy:
- New customization parameters:
  - `"boxes"`: Strings to be printed when assembling the share string (from least to most significant order)
  - `"colors"`: Text colors, to be printed on-screen. Order: Gray, Yellow, Green, Text Color, Keyboard background
  - `"keyboard"`: The keyboard layout. One string per line, of keyboard.
2022-02-16 17:51:57 -06:00
b874cfc101 Refactor everything:
- F STRINGS????????????
- Enforce relativity
- Rename things for better
- Separate the cheating from the game playing
- Remove most hardcoded constants
- Introduce new wordlist 'format' (lol python, who needs json)
- Test things fairly extensively
2022-02-16 12:28:21 -06:00
dff087128c Make the keyboard THICC
g:
- Thiccen keyboard
- Clean up keeb function
- Add option to not center the game

ui:
- Stop screaming
2022-02-16 03:41:02 -06:00
a22248a2a5 fix some bugs
ui: Keep track of size (why else pass it in?)

g: minor cleanup, print share information AFTER game space!
2022-02-16 02:39:59 -06:00
f8bd727cbb Draw the rest of the owl
everything:
- indent to 3 spaces; 2 is too few, 4 is too many

ui:
- Create UI helper functions
- Hook print and input to move the cursor around the screen (fun!)
- Support partial screen clearing
- Support moving relatively and absolutely
- Save and load cursor position before input or print

w:
- Clarify with comments

w2:
- Import the NYT wordlist

c:
- Capitalize constants

g:
- Handle sigint gracefully (WHY)
- improve the user experience through popup messages
- Auto-color-coded keyboard (to the tune of TMNT)
- Classic gamemode, uses Wordle Classic solutions
- Additional pass for marking gray letters (on the keyboard)
- Move printing the intro Wordle #* string into own function
- Move the game board into the middle of the screen
2022-02-16 02:21:58 -06:00
c5a5c44ca1 w: official solutions are provided solely for the purpose of compatibility with the canonical Wordle client 2022-02-14 20:56:50 -06:00
5cfd666654 g:
- (c) notice
- colorful text
- use wordbox to print letters in boxes
- better(?) formatting on printed strings
- use more descriptive variable names
2022-02-14 20:56:02 -06:00
1b214b33f0 c: Colorful text for ANSI terminals 2022-02-14 20:53:08 -06:00
800b0e7f75 Update license (lol) 2022-02-14 20:52:35 -06:00
a499cbcc78 g: Potentially fix letter colorification in the case of duplicated letters 2022-02-14 01:56:37 -06:00
923569a944 Changes I guess 2022-02-12 11:38:44 -06:00
b1acbea3b1 Fix 'liosa' bug (--word lossy) 2022-02-12 11:01:30 -06:00
50aa484baa Eponymous Wardle.py 2022-02-12 10:50:25 -06:00
bee9d3b348 Uhh, changes I guess 2022-02-12 10:45:33 -06:00
9cdf72981c Add new options: nonsense mode (don't check spelling), force WOTD 2022-02-12 10:11:32 -06:00
020f87e19c Remove duplicated code, mark todo 2022-02-12 06:26:48 -06:00
aa26089386 Answer lookup: Add 'no peeking' mode; don't show answers at or beyond today's Wordle. (Trivial to work around, but allows for narrow searches.) 2022-02-12 06:22:45 -06:00
5452552875 Add [w]ord list and [g]ame 2022-02-12 05:33:23 -06:00
1af0f056f8 Initial commit 2022-02-12 11:23:24 +00:00