tic_tac_doh 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1432bf6b0e89bb2ef38b66f21550d7a7d52e9b7c
4
- data.tar.gz: 54b098d8bfe2e4f98e5d600976397f51ca8259e1
3
+ metadata.gz: e10b90e82af068949f73309b6aae63a73c6aaeb3
4
+ data.tar.gz: 017cf3cb2aecf5387686e96eb808ab08a95fbf9f
5
5
  SHA512:
6
- metadata.gz: 79ff8724bf978182c2db1f31503617466d586a0bca732109495810376854bda6fc38cf73ddf5811f40bffc60d619175cac345d189ecd6e8639fb3741c3dd4349
7
- data.tar.gz: 3ab8dc72ce96c4bd0cf4538b9c4bd47e39a76b141aed65a786b71df5ce1fe6fa5d47c1e4f8fded919ee1753443c6bca5e017cdc6a8c099d8d0503b0b55f08e99
6
+ metadata.gz: 166d06be2f90a69f1d0a340399e3d3feb39d3c89817c3dde01f2d86c1a5566d0fdb167b4dd1021dc80bc877750e75c4453931146d6a3df138bbb93feca29167a
7
+ data.tar.gz: 8526283be5f20ed301f73c03c2a57103a7b10956bb8bdeb68220571776f8c673d646c9d45fa16771b70a5e4cb72b2f000af9b31b3286ecc77ea06a5dab72efe6
@@ -1,3 +1,3 @@
1
1
  module TicTacDoh
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/lib/tic_tac_doh.rb CHANGED
@@ -1,4 +1,4 @@
1
- require "tic_tac_doh/version"
1
+ require 'tic_tac_doh/version'
2
2
 
3
3
  module TicTacDoh
4
4
  class Game
@@ -7,20 +7,25 @@ module TicTacDoh
7
7
  # or which turn would have followed if draw
8
8
 
9
9
  attr_reader :players, :grid, :turn
10
+ attr_accessor :players
10
11
 
11
12
  def initialize(args={})
12
13
  @players = []
13
14
  @turn = 1
14
- @players << args[:player1] << args[:player2]
15
- args.fetch(:size, 3).times do
15
+ # @players << args[:player1] << args[:player2]
16
+ args.fetch(:board_size, 3).times do
16
17
  @grid = Array.new(3) {}
17
18
  end
18
19
  end
19
20
 
21
+ def set_board_size(size)
22
+ prepare_grid(size)
23
+ end
24
+
20
25
  def play
21
26
  # puts grid.length
22
27
  # puts players.count
23
- prepare_grid()
28
+ prepare_grid
24
29
  player_turn ||= 0
25
30
  until game_over
26
31
  clear_screen
@@ -36,8 +41,26 @@ module TicTacDoh
36
41
  # puts @turn
37
42
  end
38
43
 
44
+ def add_player(mark)
45
+ if game_over && valid_mark
46
+ players << Player.new(mark: mark)
47
+ true
48
+ else
49
+ false
50
+ end
51
+ end
52
+
39
53
  private
40
54
 
55
+ def valid_mark(mark)
56
+ players.each |player| do
57
+ if player.mark == mark[0]
58
+ false
59
+ end
60
+ end
61
+ true
62
+ end
63
+
41
64
  def prepare_grid(size=grid.length)
42
65
  @grid = []
43
66
  array = []
@@ -117,7 +140,7 @@ module TicTacDoh
117
140
  end
118
141
 
119
142
  def clear_screen
120
- system 'clear' or system 'cls'
143
+ # system 'clear' or system 'cls'
121
144
  end
122
145
 
123
146
  def calculate_cell(cell_number)
@@ -153,7 +176,7 @@ module TicTacDoh
153
176
  end
154
177
 
155
178
  class Player
156
- attr_reader :nickname, :score, :mark
179
+ attr_reader :nickname, :score
157
180
 
158
181
  def initialize(args={})
159
182
  @nickname = args.fetch(:nickname, "Anonymous#{rand(100)}")
@@ -170,5 +193,9 @@ module TicTacDoh
170
193
  def add_to_score(score)
171
194
  @score += score
172
195
  end
196
+
197
+ def mark
198
+ @mark[0]
199
+ end
173
200
  end
174
201
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tic_tac_doh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cuadra Quevedo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-04-24 00:00:00.000000000 Z
11
+ date: 2015-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler