greed_game 0.0.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.
data/.gitignore ADDED
@@ -0,0 +1,19 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
18
+ # Ignore all copies of files
19
+ *~
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --colour --format documentation
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use 1.9.3-head@greed_game-gem
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in greed_game.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2012 natalili
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,97 @@
1
+ # GreedGame
2
+
3
+ = Playing Greed
4
+
5
+ Greed is a dice game played among 2 or more players, using 5
6
+ six-sided dice.
7
+
8
+ == Playing Greed
9
+
10
+ Each player takes a turn consisting of one or more rolls of the dice.
11
+ On the first roll of the game, a player rolls all five dice which are
12
+ scored according to the following:
13
+
14
+ Three 1's => 1000 points
15
+ Three 6's => 600 points
16
+ Three 5's => 500 points
17
+ Three 4's => 400 points
18
+ Three 3's => 300 points
19
+ Three 2's => 200 points
20
+ One 1 => 100 points
21
+ One 5 => 50 points
22
+
23
+ A single die can only be counted once in each roll. For example,
24
+ a "5" can only count as part of a triplet (contributing to the 500
25
+ points) or as a single 50 points, but not both in the same roll.
26
+
27
+ Example Scoring
28
+
29
+ Throw Score
30
+ --------- ------------------
31
+ 5 1 3 4 1 50 + 2 * 100 = 250
32
+ 1 1 1 3 1 1000 + 100 = 1100
33
+ 2 4 4 5 4 400 + 50 = 450
34
+
35
+ The dice not contributing to the score are called the non-scoring
36
+ dice. "3" and "4" are non-scoring dice in the first example. "3" is
37
+ a non-scoring die in the second, and "2" is a non-score die in the
38
+ final example.
39
+
40
+ After a player rolls and the score is calculated, the scoring dice are
41
+ removed and the player has the option of rolling again using only the
42
+ non-scoring dice. If all of the thrown dice are scoring, then the
43
+ player may roll all 5 dice in the next roll.
44
+
45
+ The player may continue to roll as long as each roll scores points. If
46
+ a roll has zero points, then the player loses not only their turn, but
47
+ also accumulated score for that turn. If a player decides to stop
48
+ rolling before rolling a zero-point roll, then the accumulated points
49
+ for the turn is added to his total score.
50
+
51
+ == Getting "In The Game"
52
+
53
+ Before a player is allowed to accumulate points, they must get at
54
+ least 300 points in a single turn. Once they have achieved 300 points
55
+ in a single turn, the points earned in that turn and each following
56
+ turn will be counted toward their total score.
57
+
58
+ == End Game
59
+
60
+ Once a player reaches 3000 (or more) points, the game enters the final
61
+ round where each of the other players gets one more turn. The winner
62
+ is the player with the highest score after the final round.
63
+
64
+ ## Installation
65
+
66
+ Add this line to your application's Gemfile:
67
+
68
+ gem 'greed_game'
69
+
70
+ And then execute:
71
+
72
+ $ bundle
73
+
74
+ Or install it yourself as:
75
+
76
+ $ gem install greed_game
77
+
78
+ ## Usage
79
+
80
+ 1. Include this gem in class.
81
+ 2. Create class's object:
82
+ `game = My_class.new("player1", "player2",...)`
83
+ "player1", "player2",... - player's names
84
+ 3. Begin the game:
85
+ `game.in_progress`
86
+ 4. Get a winner:
87
+ `game.finished`
88
+ 5. `next_roll?` method can accept/reject (return true/false) it next roll
89
+
90
+
91
+ ## Contributing
92
+
93
+ 1. Fork it
94
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
95
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
96
+ 4. Push to the branch (`git push origin my-new-feature`)
97
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env rake
2
+ require "bundler/gem_tasks"
@@ -0,0 +1,19 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/greed_game/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["natalili"]
6
+ gem.email = ["natali.li@list.ru"]
7
+ gem.description = %q{Greed is a dice game played among 2 or more players, using 5 six-sided dice.}
8
+ gem.summary = %q{Greed is a dice game}
9
+ gem.homepage = ""
10
+
11
+ gem.files = `git ls-files`.split($\)
12
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
+ gem.name = "greed_game"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = GreedGame::VERSION
17
+
18
+ gem.add_development_dependency "rspec"
19
+ end
@@ -0,0 +1,8 @@
1
+ class DiceSet
2
+ def roll(argument)
3
+ @values = Array.new(argument){ rand(6)+1 }
4
+ end
5
+ def values
6
+ @values
7
+ end
8
+ end
@@ -0,0 +1,94 @@
1
+ class Player
2
+
3
+ attr_reader :score_roll, :score_total
4
+ attr_accessor :name
5
+
6
+ def initialize(name)
7
+ @name = name
8
+ @score_roll = 0
9
+ @score_total = 0
10
+ end
11
+
12
+ def calculate_non_scoring_dice(dice)
13
+ @count = dice.count
14
+ dice.uniq.each do |n|
15
+ if n == 1
16
+ @count = @count - dice.count(1)
17
+ elsif n == 5
18
+ @count = @count - dice.count(5)
19
+ else
20
+ @count = @count - 3 if dice.count(n) >= 3
21
+ end
22
+ end
23
+ @count
24
+ end
25
+
26
+ def calculate_dice_for_next_roll(dice)
27
+ calculate_non_scoring_dice(dice)
28
+ if @count == 0 and dice.count > 0
29
+ @count = 5
30
+ elsif @count == dice.count
31
+ @count = 0
32
+ end
33
+ @count = 0 unless next_roll?
34
+ @count
35
+ end
36
+
37
+ def next_roll?
38
+ if @count > 0
39
+ puts "Player #{name}, You have #{@score} score and You can use #{@count} dice. \n" +
40
+ "If You want do roll, enter 'y'"
41
+ answer = STDIN.gets.chop!
42
+ answer == "y"
43
+ else
44
+ false
45
+ end
46
+ end
47
+
48
+ def score(dice)
49
+ @score = 0
50
+ dice.uniq.each do |n|
51
+ if n == 1
52
+ c = dice.count(1)
53
+ @score += 100 * dice.count(1) if c < 3
54
+ @score += 1000 + 100 * (c - 3) if c >= 3
55
+ elsif n == 5
56
+ c = dice.count(5)
57
+ @score += 50 * c if c < 3
58
+ @score += 5 * 100 + 50 * (c - 3) if c >= 3
59
+ else
60
+ c = dice.count(n)
61
+ @score += n * 100 if c >= 3
62
+ end
63
+ end
64
+ @score
65
+ end
66
+
67
+ def calculate_score_roll(score)
68
+ score == 0 ? @score_roll = 0 : @score_roll += score
69
+ @score = 0
70
+ @score_roll
71
+ end
72
+
73
+ def calculate_score_total(score_roll)
74
+ if @score_total == 0
75
+ @score_total += score_roll if score_roll >= 300
76
+ else
77
+ @score_total += score_roll
78
+ end
79
+ @score_roll = 0
80
+ @score_total
81
+ end
82
+
83
+ def roll(dices)
84
+ while dices > 0
85
+ dice_set = DiceSet.new
86
+ dice_roll = dice_set.roll(dices)
87
+ score = score(dice_roll)
88
+ dices = calculate_dice_for_next_roll(dice_roll)
89
+ score_roll = calculate_score_roll(score)
90
+ calculate_score_total(score_roll) if dices == 0
91
+ end
92
+ end
93
+
94
+ end
@@ -0,0 +1,3 @@
1
+ module GreedGame
2
+ VERSION = "0.0.1"
3
+ end
data/lib/greed_game.rb ADDED
@@ -0,0 +1,47 @@
1
+ require "greed_game/version"
2
+ require "greed_game/dice_set"
3
+ require "greed_game/player"
4
+
5
+ module GreedGame
6
+
7
+ def self.name
8
+ "Greed Game"
9
+ end
10
+
11
+ def initialize(*names)
12
+ raise "It should be 2 or more players in the game" if names.size < 2
13
+ @dices = 5
14
+ @players = Array.new
15
+ names.each do |name|
16
+ @players << Player.new(name)
17
+ end
18
+ end
19
+
20
+ def in_progress
21
+ max_score = 0
22
+ last_round = false
23
+ while max_score < 3000 or not last_round
24
+ @players.each do |player|
25
+ player.roll(@dices)
26
+ end
27
+ player_whith_max_score = @players.max_by {|players| players.score_total }
28
+ last_round = true if max_score >= 3000
29
+ max_score = player_whith_max_score.score_total
30
+ end
31
+ @winner = Array.new
32
+ @players.each do |player|
33
+ @winner << player if player.score_total == max_score
34
+ end
35
+ @winner
36
+ end
37
+
38
+ def finished
39
+ if @winner.count == 1
40
+ text = "#{@winner[0].name} is winner"
41
+ else
42
+ text = "Winner is absent"
43
+ end
44
+ text
45
+ end
46
+
47
+ end
@@ -0,0 +1,45 @@
1
+ require 'spec_helper'
2
+
3
+ describe DiceSet do
4
+ before(:each) {@dice = DiceSet.new; @dice.roll(5)}
5
+
6
+
7
+ it "should create a dice set" do
8
+ @dice.should_not be_nil
9
+ end
10
+
11
+ it "should be an array" do
12
+ @dice.values.should be_is_a(Array)
13
+ end
14
+
15
+ it "should have valid array size" do
16
+ @dice.values.size.should == 5
17
+ end
18
+
19
+ it "should return a set of integers between 1 and 6" do
20
+ @dice.values.each do |value|
21
+ value.should >= 1 && value.should <= 6
22
+ end
23
+ end
24
+
25
+ it "values should not change unless dice explicitly rolled" do
26
+ first_time = @dice.values
27
+ second_time = @dice.values
28
+ second_time.should == first_time
29
+ end
30
+
31
+ it "rolls should change dice values" do
32
+ first_time = @dice.values
33
+ @dice.roll(5)
34
+ second_time = @dice.values
35
+ second_time.should_not == first_time
36
+ end
37
+
38
+ it "should can roll different numbers of dice" do
39
+ @dice.values.size.should == 5
40
+ @dice.roll(3)
41
+ @dice.values.size.should == 3
42
+ @dice.roll(1)
43
+ @dice.values.size.should == 1
44
+ end
45
+ end
@@ -0,0 +1,77 @@
1
+ require 'spec_helper'
2
+
3
+ describe GreedGame do
4
+ before(:each) do
5
+ class Game
6
+ include GreedGame
7
+ end
8
+ @game = Game.new("player1", "player2")
9
+ end
10
+
11
+ context "#name" do
12
+ it "shuld return gem name" do
13
+ GreedGame.name.should == "Greed Game"
14
+ end
15
+ end
16
+
17
+ context "New" do
18
+ it "should create game with 2 or more players" do
19
+ @game.instance_variable_get(:@players).size.should == 2
20
+ @game = Game.new("player1", "player2", "player3")
21
+ @game.instance_variable_get(:@players).size.should == 3
22
+ end
23
+
24
+ it "should rise exception with 1 player" do
25
+ expect { Game.new("player1") }.to raise_error('It should be 2 or more players in the game')
26
+ end
27
+
28
+ it "should use 5 dices" do
29
+ @game.instance_variable_get(:@dices).should == 5
30
+ end
31
+
32
+ it "should have score total is zero" do
33
+ @game.instance_variable_get(:@players).max_by {|players| players.score_total }.score_total. should == 0
34
+ end
35
+ end
36
+
37
+ context "In progress" do
38
+ before(:each) {@game.instance_variable_get(:@players)[0].stub!(:next_roll?).and_return(false)
39
+ @game.instance_variable_get(:@players)[1].stub!(:next_roll?).and_return(false)}
40
+
41
+ it "should have a player with score total is more 3000" do
42
+ @game.in_progress
43
+ @game.instance_variable_get(:@players).max_by {|players| players.score_total }.score_total. should >= 3000
44
+ end
45
+
46
+ it "should return array with winners" do
47
+ @game.in_progress.should_not == []
48
+ @game.instance_variable_get(:@winner).count.should > 0
49
+ end
50
+
51
+ it "should return player with maximal score total" do
52
+ @game.instance_variable_get(:@players)[0].stub!(:score_total).and_return(30000)
53
+ @game.in_progress[0].name.should == "player1"
54
+ @game.instance_variable_get(:@winner)[0].name.should == "player1"
55
+ @game.instance_variable_get(:@winner).count.should == 1
56
+ end
57
+ end
58
+
59
+ context "Finished" do
60
+
61
+ it "should return who is winner if one player have maximal score total" do
62
+ @game.instance_variable_set(:@winner , Array.new << Player.new("player1"))
63
+ @game.finished.should == "player1 is winner"
64
+ end
65
+
66
+ it "should return 'Winner is absent' if array with winners is empty" do
67
+ @game.instance_variable_set(:@winner, Array.new)
68
+ @game.finished.should == "Winner is absent"
69
+ end
70
+
71
+ it "should return 'Winner is absent' if more than one player have maximal score total" do
72
+ @game.instance_variable_set(:@winner, @game.instance_variable_get(:@players))
73
+ @game.finished.should == "Winner is absent"
74
+ end
75
+
76
+ end
77
+ end
@@ -0,0 +1,234 @@
1
+ require 'spec_helper'
2
+
3
+ describe Player do
4
+ before(:each) {@player = Player.new("player1")}
5
+
6
+ context "New" do
7
+
8
+ it "should have a name" do
9
+ @player.instance_variables.include?(:@name).should == true
10
+ end
11
+
12
+ it "should return a name" do
13
+ @player.name.should == "player1"
14
+ end
15
+
16
+ it "should set name" do
17
+ @player.name = "Player 1"
18
+ @player.name.should == "Player 1"
19
+ end
20
+
21
+ it "should have a current roll's score" do
22
+ @player.instance_variables.include?(:@score_roll).should == true
23
+ end
24
+
25
+ it "should have zero roll's score" do
26
+ @player.score_roll.should == 0
27
+ end
28
+
29
+ it "should rise exception if roll's score is set" do
30
+ expect { @player.score_roll = 300 }.to raise_error(NoMethodError)
31
+ end
32
+
33
+ it "should have total score" do
34
+ @player.instance_variables.include?(:@score_total).should == true
35
+ end
36
+
37
+ it "should have zero total score" do
38
+ @player.score_total.should == 0
39
+ end
40
+
41
+ it "should rise exception if total score is set" do
42
+ expect { @player.score_total = 3000 }.to raise_error(NoMethodError)
43
+ end
44
+ end
45
+
46
+ context "Calculate non-scoring dices" do
47
+
48
+ it "should be zero if dices are absent" do
49
+ @player.calculate_non_scoring_dice([]).should == 0
50
+ end
51
+
52
+ it "should be zero if all of the thrown dices are scoring" do
53
+ @player.calculate_non_scoring_dice([5]).should == 0
54
+ @player.calculate_non_scoring_dice([1]).should == 0
55
+ @player.calculate_non_scoring_dice([2,2,2]).should == 0
56
+ @player.calculate_non_scoring_dice([3,3,3]).should == 0
57
+ @player.calculate_non_scoring_dice([4,4,4]).should == 0
58
+ @player.calculate_non_scoring_dice([6,6,6]).should == 0
59
+ @player.calculate_non_scoring_dice([1,5,3,3,3]).should == 0
60
+ end
61
+
62
+ it "should return the count of 2s, 3s, 4s, and 6s" do
63
+ @player.calculate_non_scoring_dice([2,3,4,6]).should == 4
64
+ end
65
+
66
+ it "should return the count of non-scoring dices for mixed dice sets" do
67
+ @player.calculate_non_scoring_dice([2,2,2,3,4]).should == 2
68
+ @player.calculate_non_scoring_dice([1,5,6,4,2]).should == 3
69
+ end
70
+
71
+ end
72
+
73
+ context "Calculate count of dices for next roll" do
74
+ before(:each) {@player.stub!(:next_roll?).and_return(true)}
75
+
76
+ it "should be zero if dices are absent" do
77
+ @player.calculate_dice_for_next_roll([]).should == 0
78
+ end
79
+
80
+ it "should be 5 if all of the thrown dices are scoring" do
81
+ @player.calculate_dice_for_next_roll([1]).should == 5
82
+ @player.calculate_dice_for_next_roll([3,3,3]).should == 5
83
+ @player.calculate_dice_for_next_roll([5,5,4,4,4]).should == 5
84
+ end
85
+
86
+ it "should be zero for 2s, 3s, 4s, and 6s" do
87
+ @player.calculate_dice_for_next_roll([2,3,4,6,4]).should == 0
88
+ end
89
+
90
+ it "should return the count of dices for mixed dice sets" do
91
+ @player.calculate_dice_for_next_roll([3,2,2,2]).should == 1
92
+ @player.calculate_dice_for_next_roll([4,2,5,1,1]).should == 2
93
+ end
94
+
95
+ end
96
+
97
+ context "Next roll?" do
98
+
99
+ it "should return false if player not have dices for next roll" do
100
+ @player.instance_variable_set("@count", 0)
101
+ @player.should_not be_next_roll
102
+ end
103
+
104
+ it "should return true if player enter 'y'" do
105
+ @player.instance_variable_set("@count", 1)
106
+ STDIN.stub!(:gets).and_return("y\n")
107
+ @player.should be_next_roll
108
+ end
109
+
110
+ it "should return false if player enter not 'y'" do
111
+ @player.instance_variable_set("@count", 1)
112
+ STDIN.stub!(:gets).and_return("")
113
+ @player.should_not be_next_roll
114
+ end
115
+
116
+ end
117
+
118
+ describe "Score" do
119
+ context "For dice" do
120
+
121
+ it "should be zero if dices are absent" do
122
+ @player.score([]).should == 0
123
+ end
124
+
125
+ it "should be 50 for single roll of 5" do
126
+ @player.score([5]).should == 50
127
+ end
128
+
129
+ it "should be 100 for single roll of 1" do
130
+ @player.score([1]).should == 100
131
+ end
132
+
133
+ it "should return the sum of individual scores for multiple 1s and 5s" do
134
+ @player.score([1,5,5,1]).should == 300
135
+ end
136
+
137
+ it "should be zero for single 2s, 3s, 4s, and 6s" do
138
+ @player.score([2,3,4,6]).should == 0
139
+ end
140
+
141
+ it "should be 1000 for a triple 1" do
142
+ @player.score([1,1,1]).should == 1000
143
+ end
144
+
145
+ it "should return 100x for other triples" do
146
+ @player.score([2,2,2]).should == 200
147
+ @player.score([3,3,3]).should == 300
148
+ @player.score([4,4,4]).should == 400
149
+ @player.score([5,5,5]).should == 500
150
+ @player.score([6,6,6]).should == 600
151
+ end
152
+
153
+ it "should return sum for mixed dice sets" do
154
+ @player.score([2,5,2,2,3]).should == 250
155
+ @player.score([5,5,5,5]).should == 550
156
+ end
157
+
158
+ end
159
+
160
+ context "Roll's" do
161
+
162
+ it "should be zero for new player" do
163
+ @player.score_roll.should == 0
164
+ end
165
+
166
+ it "should be zero if score is zero" do
167
+ @player.calculate_score_roll(0).should == 0
168
+ @player.score_roll.should == 0
169
+ end
170
+
171
+ it "should increase by score for dice" do
172
+ score = @player.score([1])
173
+ expect { @player.calculate_score_roll(score) }.to change{ @player.score_roll }.by(score)
174
+ end
175
+
176
+ it "should set zero for score" do
177
+ @player.calculate_score_roll(0)
178
+ @player.instance_variable_get("@score").should == 0
179
+ @player.calculate_score_roll(100)
180
+ @player.instance_variable_get("@score").should == 0
181
+ end
182
+
183
+ end
184
+
185
+ context "Total" do
186
+
187
+ it "should be zero for new player" do
188
+ @player.score_total.should == 0
189
+ end
190
+
191
+ it "should not increase if total score is zero and roll's score less than 300" do
192
+ expect { @player.calculate_score_total(250) }.to_not change{ @player.score_total }
193
+ end
194
+
195
+ it "should increase if total score is zero and roll's score equal 300" do
196
+ expect { @player.calculate_score_total(300) }.to change{ @player.score_total }.by(300)
197
+ end
198
+
199
+ it "should increase if total score is zero and roll's score more than 300" do
200
+ expect { @player.calculate_score_total(400) }.to change{ @player.score_total }.by(400)
201
+ end
202
+
203
+ it "should increase if total score more than zero and roll's score more than zero" do
204
+ @player.instance_variable_set(:@score_total, 500)
205
+ expect{ @player.calculate_score_total(200) }.to change{ @player.score_total }.from(500).to(700)
206
+ end
207
+
208
+ it "should set zero for roll's score" do
209
+ @player.calculate_score_total(0)
210
+ @player.instance_variable_get("@score_roll").should == 0
211
+ @player.calculate_score_total(300)
212
+ @player.instance_variable_get("@score_roll").should == 0
213
+ end
214
+
215
+ end
216
+ end
217
+
218
+ context "Roll" do
219
+
220
+ it "should not increase score total if dices are absent" do
221
+ dices = 0
222
+ expect { @player.roll(dices) }.to_not change{ @player.score_total }
223
+ end
224
+
225
+ it "should increase score total if amount dices more than zero" do
226
+ dices = 5
227
+ @player.instance_variable_set(:@score_total, 500)
228
+ @player.stub!(:calculate_dice_for_next_roll).and_return(0)
229
+ @player.stub!(:calculate_score_roll).and_return(200)
230
+ expect{ @player.roll(dices) }.to change{ @player.score_total }.from(500).to(700)
231
+ end
232
+
233
+ end
234
+ end
@@ -0,0 +1,5 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
3
+ require 'greed_game'
4
+ require 'greed_game/dice_set'
5
+ require 'greed_game/player'
metadata ADDED
@@ -0,0 +1,77 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: greed_game
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - natalili
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-08-26 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: &77735400 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *77735400
25
+ description: Greed is a dice game played among 2 or more players, using 5 six-sided
26
+ dice.
27
+ email:
28
+ - natali.li@list.ru
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - .gitignore
34
+ - .rspec
35
+ - .rvmrc
36
+ - Gemfile
37
+ - LICENSE
38
+ - README.md
39
+ - Rakefile
40
+ - greed_game.gemspec
41
+ - lib/greed_game.rb
42
+ - lib/greed_game/dice_set.rb
43
+ - lib/greed_game/player.rb
44
+ - lib/greed_game/version.rb
45
+ - spec/dice_set_spec.rb
46
+ - spec/greed_game_spec.rb
47
+ - spec/player_spec.rb
48
+ - spec/spec_helper.rb
49
+ homepage: ''
50
+ licenses: []
51
+ post_install_message:
52
+ rdoc_options: []
53
+ require_paths:
54
+ - lib
55
+ required_ruby_version: !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ! '>='
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ required_rubygems_version: !ruby/object:Gem::Requirement
62
+ none: false
63
+ requirements:
64
+ - - ! '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ requirements: []
68
+ rubyforge_project:
69
+ rubygems_version: 1.8.15
70
+ signing_key:
71
+ specification_version: 3
72
+ summary: Greed is a dice game
73
+ test_files:
74
+ - spec/dice_set_spec.rb
75
+ - spec/greed_game_spec.rb
76
+ - spec/player_spec.rb
77
+ - spec/spec_helper.rb