|
25 | 25 | cols = "80" /></textarea><br/>
|
26 | 26 | </fieldset>
|
27 | 27 | <fieldset>
|
28 |
| - <legend>current fen:</legend> |
29 |
| - <textarea id = "current" |
30 |
| - rows = "1" |
31 |
| - cols = "80" /></textarea><br/> |
32 |
| - </fieldset> |
33 |
| - </fieldset> |
34 |
| - <fieldset> |
35 |
| - <legend>new fen:</legend> |
| 28 | + <legend>position</legend> |
36 | 29 | <textarea id = "fen"
|
37 | 30 | rows = "1"
|
38 | 31 | cols = "80" /></textarea>
|
39 | 32 | <button type="button"
|
40 |
| - onclick="setNewFen()"><b>set</b></button> |
| 33 | + onclick="setNewFen()"><b>set</b></button><br/> |
| 34 | + <button type="button" |
| 35 | + onclick="initialBoard()"><b>initial</b></button> |
| 36 | + <button type="button" |
| 37 | + onclick="emptyBoard()"><b>empty</b></button> |
41 | 38 | </fieldset>
|
42 | 39 | </div>
|
43 | 40 |
|
|
59 | 56 | }
|
60 | 57 | })
|
61 | 58 | // Initialize FEN display
|
| 59 | + let previousfen = ground.getFen() |
62 | 60 | updateFen();
|
63 | 61 | // Get a pointer to the "real" console.
|
64 | 62 | let nodeConsole = require('console');
|
|
84 | 82 |
|
85 | 83 | setInterval(() => {
|
86 | 84 | // refresh fen
|
87 |
| - updateFen(); |
| 85 | + refreshFen(); |
88 | 86 | konsole.log(getMask())
|
89 | 87 | }, 250)
|
90 | 88 |
|
|
104 | 102 | document.getElementById("chessbot").addEventListener("keyup", function(e){
|
105 | 103 | if(e.keyCode == 13){sendBot(); clearBot();}
|
106 | 104 | });
|
| 105 | + // Set up and maintain FEN position |
107 | 106 | function setNewFen() {
|
108 | 107 | var newfen = document.getElementById("fen").value;
|
109 | 108 | ground.set({fen: newfen});
|
110 | 109 | updateFen();
|
111 | 110 | }
|
| 111 | + function updateCurrentFen(fen) { |
| 112 | + previousfen = fen; |
| 113 | + } |
112 | 114 | function updateFen() {
|
113 |
| - var currentfen = ground.getFen(); |
114 |
| - document.getElementById("current").value = currentfen; |
| 115 | + var newfen = ground.getFen(); |
| 116 | + updateCurrentFen(newfen); |
| 117 | + document.getElementById("fen").value = newfen; |
| 118 | + } |
| 119 | + function refreshFen() { |
| 120 | + var currentfen = ground.getFen(); |
| 121 | + if (!(currentfen == previousfen)) { |
| 122 | + updateFen(); |
| 123 | + } |
| 124 | + } |
| 125 | + function initialBoard() { |
| 126 | + ground.set({fen: 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR'}); |
| 127 | + } |
| 128 | + function emptyBoard() { |
| 129 | + ground.set({fen: '8/8/8/8/8/8/8/8/8'}); |
115 | 130 | }
|
116 | 131 | </script>
|
117 | 132 | </body>
|
|
0 commit comments