@@ -7,15 +7,31 @@ let game_over = false;
7
7
let require_macrons = false ;
8
8
9
9
document . addEventListener ( "DOMContentLoaded" , function ( ) {
10
- answer = WORDS [ Math . floor ( Math . random ( ) * WORDS . length ) ] . toLowerCase ( ) . split ( '' ) ;
10
+ const date = new Date ( ) ;
11
+ const today = date . setHours ( 0 , 0 , 0 , 0 ) ;
12
+ answer = WORDS [ today % WORDS . length ] . toLowerCase ( ) . split ( '' ) ;
13
+
11
14
for ( let i = 0 ; i < answer . length ; i ++ ) {
12
- const letter = require_macrons ? answer [ i ] : modernizeLetter ( answer [ i ] ) ;
13
- answer [ i ] = letter ;
15
+ answer [ i ] = modernizeLetter ( answer [ i ] ) ;
14
16
}
15
17
16
18
drawBoard ( ) ;
17
19
} ) ;
18
20
21
+ function reset ( ) {
22
+ current_guess = [ ] ;
23
+ guesses = [ ] ;
24
+ guess_count = 0 ;
25
+ game_over = false ;
26
+
27
+ answer = WORDS [ Math . floor ( Math . random ( ) * WORDS . length ) ] . toLowerCase ( ) . split ( '' ) ;
28
+ for ( let i = 0 ; i < answer . length ; i ++ ) {
29
+ answer [ i ] = modernizeLetter ( answer [ i ] ) ;
30
+ }
31
+
32
+ drawBoard ( ) ;
33
+ }
34
+
19
35
document . getElementById ( "keyboard-cont" ) . addEventListener ( "click" , function ( event ) {
20
36
const target = event . target
21
37
@@ -66,7 +82,7 @@ document.addEventListener('keyup', function(event) {
66
82
}
67
83
break ;
68
84
default :
69
- const inputLetter = require_macrons ? key : modernizeLetter ( key ) ;
85
+ const inputLetter = modernizeLetter ( key ) ;
70
86
const isValid = / ^ [ a - z æ þ ] $ / i. test ( inputLetter ) ;
71
87
if ( inputLetter . length !== 1 || current_guess . length >= answer . length || ! isValid ) {
72
88
break ;
@@ -82,8 +98,7 @@ function isWordInList(word){
82
98
return WORDS . some ( function ( element , i ) {
83
99
element = element . toLowerCase ( ) . split ( '' )
84
100
for ( var i = 0 ; i < element . length ; i ++ ) {
85
- const inputLetter = require_macrons ? element [ i ] : modernizeLetter ( element [ i ] ) ;
86
- element [ i ] = inputLetter ;
101
+ element [ i ] = modernizeLetter ( element [ i ] ) ;
87
102
}
88
103
89
104
if ( word . join ( '' ) === element . join ( '' ) ) {
@@ -230,33 +245,37 @@ function modernizeLetter(letter) {
230
245
case 'ᵹ' :
231
246
letter = 'g' ;
232
247
break ;
233
- case 'ā' :
234
- letter = 'a' ;
235
- break ;
236
- case 'ē' :
237
- letter = 'e' ;
238
- break ;
239
- case 'ī' :
240
- letter = 'i' ;
241
- break ;
242
- case 'ō' :
243
- letter = 'o' ;
244
- break ;
245
- case 'ū' :
246
- letter = 'u' ;
247
- break ;
248
- case 'ǣ' :
249
- letter = 'æ' ;
250
- break ;
251
- case 'ȳ' :
252
- letter = 'y' ;
253
- break ;
254
248
case 'ð' :
255
249
letter = 'þ' ;
256
250
break ;
257
- default :
258
251
}
259
-
252
+
253
+ if ( ! require_macrons ) {
254
+ switch ( letter ) {
255
+ case 'ā' :
256
+ letter = 'a' ;
257
+ break ;
258
+ case 'ē' :
259
+ letter = 'e' ;
260
+ break ;
261
+ case 'ī' :
262
+ letter = 'i' ;
263
+ break ;
264
+ case 'ō' :
265
+ letter = 'o' ;
266
+ break ;
267
+ case 'ū' :
268
+ letter = 'u' ;
269
+ break ;
270
+ case 'ǣ' :
271
+ letter = 'æ' ;
272
+ break ;
273
+ case 'ȳ' :
274
+ letter = 'y' ;
275
+ break ;
276
+ }
277
+ }
278
+
260
279
return letter ;
261
280
}
262
281
0 commit comments