tic_tac_toe_cn 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tic_tac_toe_cn.rb +71 -33
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7bff37b22449fd0fac74d83087e2d7788268b5d1
4
- data.tar.gz: dedf5cbed60f372df8d7c5ee49ced21e4da27c8b
3
+ metadata.gz: 426ec00d588b64a2237667537cdc2574f51cab6d
4
+ data.tar.gz: da152a1b12868f5c9fa5b1f224045dc559ca0153
5
5
  SHA512:
6
- metadata.gz: e740ce038aa599c49edd25cb763aa01bdec1a36c9b9f33eef8f14d623ecf0281a6a0a9005d29325441aeeafa4cf42d43631b9faa45a40824a85ad0527fd92d81
7
- data.tar.gz: e6edb603cd292bc93b7e1f9efb681dabb6191f722135af5b606a71baa4ca30b477b448506380f59a68da91931fe3e93e52f5a49181b13fd060c8f852c9aff19b
6
+ metadata.gz: c5f94aa7c86c006bb98fbca2542f55dba208bf35eebca916e6f906862d1822f9a90e929f900096bc2c4df921f812f5fed2301afa75396fdbacc691a2f7a09546
7
+ data.tar.gz: b2af2e95fde877fc50886fb526c4440f35938f32b7bf63774b3b585bea18f6ffb5f488cf7bbe7faccb2208aca8c9b8bdeb6579967f28c7bb0d44fbdb9fba85a8
@@ -1,46 +1,84 @@
1
1
  class Tic_Tac_Toe
2
2
  def initBoard(board)
3
- pos = 1
4
- for row in 0..2 do
5
- for col in 0..2 do
6
- board[row][col] = pos
7
- pos = pos + 1
8
- end
3
+ pos = 1
4
+ for row in 0..2 do
5
+ for col in 0..2 do
6
+ board[row][col] = pos
7
+ pos = pos + 1
9
8
  end
10
9
  end
11
-
12
- def displayBoard(board)
13
- board.each do |row|
14
- row.each do |space|
15
- print "| #{space} |"
16
- end
17
- puts
10
+ end
11
+
12
+ def displayBoard(board)
13
+ board.each do |row|
14
+ row.each do |space|
15
+ print "| #{space} |"
18
16
  end
17
+ puts
18
+ end
19
+ end
20
+
21
+ def turnPlayed(board,player,move)
22
+ if move < 0 || move > 8
23
+ puts "Wrong move! Try again."
24
+ return false
25
+ end
26
+ col = move % 3
27
+ row = (move - col) / 3
28
+ if board[row][col].to_i.between?(1,9)
29
+ board[row][col] = player
30
+ return true
31
+ else
32
+ puts "Wrong Move! Try again."
33
+ return false
19
34
  end
20
-
21
- def turnPlayed(board,player,move)
22
- if move < 0 || move > 8
23
- puts "Wrong move! Try again."
24
- return false
35
+ end
36
+
37
+
38
+ def winningRows(board)
39
+ gameOver = false
40
+ for row in 0..2 do
41
+ if board[row][0] == board[row][1] && board[row][1] == board[row][2]
42
+ gameOver = true
25
43
  end
26
- col = move % 3
27
- row = (move - col) / 3
28
- if board[row][col].to_i.between?(1,9)
29
- board[row][col] = player
30
- return true
31
- else
32
- puts "Wrong Move! Try again."
33
- return false
44
+ end
45
+ return gameOver
46
+ end
47
+
48
+ def winningCols(board)
49
+ gameOver = false
50
+ for col in 0..2 do
51
+ if board[0][col] == board[1][col] && board[1][col] == board[2][col]
52
+ gameOver = true
34
53
  end
35
54
  end
36
-
37
- def winningRows(board)
38
- gameOver = false
39
- for row in 0..2 do
40
- if board[row][0] == board[row][1] && board[row][1] == board[row][2]
41
- gameOver = true
55
+ return gameOver
56
+ end
57
+
58
+ def winningDiagonals(board)
59
+ gameOver = false
60
+ if board[0][0]==board[1][1] && board[1][1]==board[2][2]
61
+ gameOver = true
62
+ end
63
+ if board[0][2]==board[1][1] && board[1][1]==board[2][0]
64
+ gameOver = true
65
+ end
66
+ return gameOver
67
+ end
68
+
69
+ def fullBoard(board)
70
+ gameOver = false
71
+ count = 0
72
+ board.each do |row|
73
+ row.each do |space|
74
+ if space == "X" || space =="O"
75
+ count = count + 1
42
76
  end
43
77
  end
44
- return gameOver
45
78
  end
79
+ if count == 9
80
+ gameOver = true
81
+ end
82
+ return gameOver
83
+ end
46
84
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tic_tac_toe_cn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Antonio Bethune