File tree Expand file tree Collapse file tree 1 file changed +113
-223
lines changed
Expand file tree Collapse file tree 1 file changed +113
-223
lines changed Original file line number Diff line number Diff line change @@ -69,234 +69,129 @@ fn ReadInt(p: i32*) -> bool {
6969// String literal printing
7070
7171fn PrintEnterMove () {
72- // 'E'
73- Core.PrintChar (69 );
74- // 'n'
75- Core.PrintChar (110 );
76- // 't'
77- Core.PrintChar (116 );
78- // 'e'
79- Core.PrintChar (101 );
80- // 'r'
81- Core.PrintChar (114 );
82- // ' '
83- Core.PrintChar (32 );
84- // 'm'
85- Core.PrintChar (109 );
86- // 'o'
87- Core.PrintChar (111 );
88- // 'v'
89- Core.PrintChar (118 );
90- // 'e'
91- Core.PrintChar (101 );
92- // ' '
93- Core.PrintChar (32 );
94- // '('
95- Core.PrintChar (40 );
96- // '0'
97- Core.PrintChar (48 );
98- // '-'
99- Core.PrintChar (45 );
100- // '8'
101- Core.PrintChar (56 );
102- // ')'
103- Core.PrintChar (41 );
104- // ':'
105- Core.PrintChar (58 );
106- // ' '
107- Core.PrintChar (32 );
72+ Core.PrintChar ('E' );
73+ Core.PrintChar ('n' );
74+ Core.PrintChar ('t' );
75+ Core.PrintChar ('e' );
76+ Core.PrintChar ('r' );
77+ Core.PrintChar (' ' );
78+ Core.PrintChar ('m' );
79+ Core.PrintChar ('o' );
80+ Core.PrintChar ('v' );
81+ Core.PrintChar ('e' );
82+ Core.PrintChar (' ' );
83+ Core.PrintChar ('(' );
84+ Core.PrintChar ('0' );
85+ Core.PrintChar ('-' );
86+ Core.PrintChar ('8' );
87+ Core.PrintChar (')' );
88+ Core.PrintChar (':' );
89+ Core.PrintChar (' ' );
10890}
10991
11092fn PrintInvalidInput () {
111- // 'I'
112- Core.PrintChar (73 );
113- // 'n'
114- Core.PrintChar (110 );
115- // 'v'
116- Core.PrintChar (118 );
117- // 'a'
118- Core.PrintChar (97 );
119- // 'l'
120- Core.PrintChar (108 );
121- // 'i'
122- Core.PrintChar (105 );
123- // 'd'
124- Core.PrintChar (100 );
125- // ' '
126- Core.PrintChar (32 );
127- // 'i'
128- Core.PrintChar (105 );
129- // 'n'
130- Core.PrintChar (110 );
131- // 'p'
132- Core.PrintChar (112 );
133- // 'u'
134- Core.PrintChar (117 );
135- // 't'
136- Core.PrintChar (116 );
137- // '.'
138- Core.PrintChar (46 );
139- // newline
140- Core.PrintChar (10 );
93+ Core.PrintChar ('I' );
94+ Core.PrintChar ('n' );
95+ Core.PrintChar ('v' );
96+ Core.PrintChar ('a' );
97+ Core.PrintChar ('l' );
98+ Core.PrintChar ('i' );
99+ Core.PrintChar ('d' );
100+ Core.PrintChar (' ' );
101+ Core.PrintChar ('i' );
102+ Core.PrintChar ('n' );
103+ Core.PrintChar ('p' );
104+ Core.PrintChar ('u' );
105+ Core.PrintChar ('t' );
106+ Core.PrintChar ('.' );
107+ Core.PrintChar ('\n ' );
141108}
142109
143110fn PrintInvalidMove () {
144- // 'I'
145- Core.PrintChar (73 );
146- // 'n'
147- Core.PrintChar (110 );
148- // 'v'
149- Core.PrintChar (118 );
150- // 'a'
151- Core.PrintChar (97 );
152- // 'l'
153- Core.PrintChar (108 );
154- // 'i'
155- Core.PrintChar (105 );
156- // 'd'
157- Core.PrintChar (100 );
158- // ' '
159- Core.PrintChar (32 );
160- // 'm'
161- Core.PrintChar (109 );
162- // 'o'
163- Core.PrintChar (111 );
164- // 'v'
165- Core.PrintChar (118 );
166- // 'e'
167- Core.PrintChar (101 );
168- // '.'
169- Core.PrintChar (46 );
170- // newline
171- Core.PrintChar (10 );
111+ Core.PrintChar ('I' );
112+ Core.PrintChar ('n' );
113+ Core.PrintChar ('v' );
114+ Core.PrintChar ('a' );
115+ Core.PrintChar ('l' );
116+ Core.PrintChar ('i' );
117+ Core.PrintChar ('d' );
118+ Core.PrintChar (' ' );
119+ Core.PrintChar ('m' );
120+ Core.PrintChar ('o' );
121+ Core.PrintChar ('v' );
122+ Core.PrintChar ('e' );
123+ Core.PrintChar ('.' );
124+ Core.PrintChar ('\n ' );
172125}
173126
174127fn PrintCellOccupied () {
175- // 'C'
176- Core.PrintChar (67 );
177- // 'e'
178- Core.PrintChar (101 );
179- // 'l'
180- Core.PrintChar (108 );
181- // 'l'
182- Core.PrintChar (108 );
183- // ' '
184- Core.PrintChar (32 );
185- // 'o'
186- Core.PrintChar (111 );
187- // 'c'
188- Core.PrintChar (99 );
189- // 'c'
190- Core.PrintChar (99 );
191- // 'u'
192- Core.PrintChar (117 );
193- // 'p'
194- Core.PrintChar (112 );
195- // 'i'
196- Core.PrintChar (105 );
197- // 'e'
198- Core.PrintChar (101 );
199- // 'd'
200- Core.PrintChar (100 );
201- // '.'
202- Core.PrintChar (46 );
203- // newline
204- Core.PrintChar (10 );
128+ Core.PrintChar ('C' );
129+ Core.PrintChar ('e' );
130+ Core.PrintChar ('l' );
131+ Core.PrintChar ('l' );
132+ Core.PrintChar (' ' );
133+ Core.PrintChar ('o' );
134+ Core.PrintChar ('c' );
135+ Core.PrintChar ('c' );
136+ Core.PrintChar ('u' );
137+ Core.PrintChar ('p' );
138+ Core.PrintChar ('i' );
139+ Core.PrintChar ('e' );
140+ Core.PrintChar ('d' );
141+ Core.PrintChar ('.' );
142+ Core.PrintChar ('\n ' );
205143}
206144
207145fn PrintPlayerXWins () {
208- // 'P'
209- Core.PrintChar (80 );
210- // 'l'
211- Core.PrintChar (108 );
212- // 'a'
213- Core.PrintChar (97 );
214- // 'y'
215- Core.PrintChar (121 );
216- // 'e'
217- Core.PrintChar (101 );
218- // 'r'
219- Core.PrintChar (114 );
220- // ' '
221- Core.PrintChar (32 );
222- // 'X'
223- Core.PrintChar (88 );
224- // ' '
225- Core.PrintChar (32 );
226- // 'w'
227- Core.PrintChar (119 );
228- // 'i'
229- Core.PrintChar (105 );
230- // 'n'
231- Core.PrintChar (110 );
232- // 's'
233- Core.PrintChar (115 );
234- // '!'
235- Core.PrintChar (33 );
236- // newline
237- Core.PrintChar (10 );
146+ Core.PrintChar ('P' );
147+ Core.PrintChar ('l' );
148+ Core.PrintChar ('a' );
149+ Core.PrintChar ('y' );
150+ Core.PrintChar ('e' );
151+ Core.PrintChar ('r' );
152+ Core.PrintChar (' ' );
153+ Core.PrintChar ('X' );
154+ Core.PrintChar (' ' );
155+ Core.PrintChar ('w' );
156+ Core.PrintChar ('i' );
157+ Core.PrintChar ('n' );
158+ Core.PrintChar ('s' );
159+ Core.PrintChar ('!' );
160+ Core.PrintChar ('\n ' );
238161}
239162
240163fn PrintPlayerOWins () {
241- // 'P'
242- Core.PrintChar (80 );
243- // 'l'
244- Core.PrintChar (108 );
245- // 'a'
246- Core.PrintChar (97 );
247- // 'y'
248- Core.PrintChar (121 );
249- // 'e'
250- Core.PrintChar (101 );
251- // 'r'
252- Core.PrintChar (114 );
253- // ' '
254- Core.PrintChar (32 );
255- // 'O'
256- Core.PrintChar (79 );
257- // ' '
258- Core.PrintChar (32 );
259- // 'w'
260- Core.PrintChar (119 );
261- // 'i'
262- Core.PrintChar (105 );
263- // 'n'
264- Core.PrintChar (110 );
265- // 's'
266- Core.PrintChar (115 );
267- // '!'
268- Core.PrintChar (33 );
269- // newline
270- Core.PrintChar (10 );
164+ Core.PrintChar ('P' );
165+ Core.PrintChar ('l' );
166+ Core.PrintChar ('a' );
167+ Core.PrintChar ('y' );
168+ Core.PrintChar ('e' );
169+ Core.PrintChar ('r' );
170+ Core.PrintChar (' ' );
171+ Core.PrintChar ('O' );
172+ Core.PrintChar (' ' );
173+ Core.PrintChar ('w' );
174+ Core.PrintChar ('i' );
175+ Core.PrintChar ('n' );
176+ Core.PrintChar ('s' );
177+ Core.PrintChar ('!' );
178+ Core.PrintChar ('\n ' );
271179}
272180
273181fn PrintDraw () {
274- // 'I'
275- Core.PrintChar (73 );
276- // 't'
277- Core.PrintChar (116 );
278- // '\''
279- Core.PrintChar (39 );
280- // 's'
281- Core.PrintChar (115 );
282- // ' '
283- Core.PrintChar (32 );
284- // 'a'
285- Core.PrintChar (97 );
286- // ' '
287- Core.PrintChar (32 );
288- // 'd'
289- Core.PrintChar (100 );
290- // 'r'
291- Core.PrintChar (114 );
292- // 'a'
293- Core.PrintChar (97 );
294- // 'w'
295- Core.PrintChar (119 );
296- // '!'
297- Core.PrintChar (33 );
298- // newline
299- Core.PrintChar (10 );
182+ Core.PrintChar ('I' );
183+ Core.PrintChar ('t' );
184+ Core.PrintChar ('\' ' );
185+ Core.PrintChar ('s' );
186+ Core.PrintChar (' ' );
187+ Core.PrintChar ('a' );
188+ Core.PrintChar (' ' );
189+ Core.PrintChar ('d' );
190+ Core.PrintChar ('r' );
191+ Core.PrintChar ('a' );
192+ Core.PrintChar ('w' );
193+ Core.PrintChar ('!' );
194+ Core.PrintChar ('\n ' );
300195}
301196
302197// Game Logic
@@ -332,21 +227,16 @@ class TicTacToe {
332227 while (i < 9 ) {
333228 let cell: i32 = self.board[i];
334229 if (cell == 0 ) {
335- // '-'
336- Core.PrintChar (45 );
230+ Core.PrintChar ('-' );
337231 } else if (cell == 1 ) {
338- // 'X'
339- Core.PrintChar (88 );
232+ Core.PrintChar ('X' );
340233 } else {
341- // 'O'
342- Core.PrintChar (79 );
234+ Core.PrintChar ('O' );
343235 }
344236 if (i % 3 == 2 ) {
345- // newline
346- Core.PrintChar (10 );
237+ Core.PrintChar ('\n ' );
347238 } else {
348- // space
349- Core.PrintChar (32 );
239+ Core.PrintChar (' ' );
350240 }
351241 i = i + 1 ;
352242 }
@@ -355,7 +245,9 @@ class TicTacToe {
355245 fn CheckWinner[self: Self]() - > i32 {
356246 var i: i32 = 0 ;
357247 while (i < 8 ) {
358- if (self.board[self.wins[i][0 ]] != 0 and self.board[self.wins[i][0 ]] == self.board[self.wins[i][1 ]] and self.board[self.wins[i][1 ]] == self.board[self.wins[i][2 ]]) {
248+ if (self.board[self.wins[i][0 ]] != 0
249+ and self.board[self.wins[i][0 ]] == self.board[self.wins[i][1 ]]
250+ and self.board[self.wins[i][1 ]] == self.board[self.wins[i][2 ]]) {
359251 return self.board[self.wins[i][0 ]];
360252 }
361253 i = i + 1 ;
@@ -380,7 +272,6 @@ class TicTacToe {
380272 self.PrintBoard ();
381273 PrintEnterMove ();
382274
383-
384275 if (not ReadInt (& move)) {
385276 PrintInvalidInput ();
386277 continue ;
@@ -423,7 +314,6 @@ class TicTacToe {
423314 }
424315 }
425316
426-
427317 var board: array (i32 , 9 );
428318 var current_player: i32 ;
429319 var wins: array (array (i32 , 3 ), 8 );
You can’t perform that action at this time.
0 commit comments