codebreaker 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: 8e997e8109940f1f1d2238e2e2dbbffc4e2a35fc
4
- data.tar.gz: 855436525a704c861eb589d10c5fd7728b3d0f50
3
+ metadata.gz: 241319fc0716b6b0de0e0df85f38e19f5bf39fd5
4
+ data.tar.gz: c3ec2476cb640c1e3468f979be338658c7cc6710
5
5
  SHA512:
6
- metadata.gz: cff0128c018e93a89af53ddd81ce15b70d51dc625ee102789dff9472bff16647e31c3c707a44e86fc4e9ce6028adcb12e9489899ef7e95e43533c68a44612251
7
- data.tar.gz: 97fa34fd321d3b9c7b742522cbff842a7e31c9606bcb0fad0487c46cb29b9a0e5a2d9fd4dfc74c2e424a352711fd8d03acd4ef9f633dd0f47a87c2034538e827
6
+ metadata.gz: 38ec7f355f8a30c9fc2c6ed8bd3b0a062e7cfd6f5acb15b56490c8003705f9de5daa21f5dab5662435ce961014ae70a1e2d280fb29b603886cd673a21a9e4058
7
+ data.tar.gz: b8b21d7f73e3289d0202bfccd5f6c06008323805ae68ba2db43ce5a55a25b6a741f277af1b71c0a99fc69a9241ea9f58b950cbc89ba5af63927be495f3dade6f
@@ -2,6 +2,9 @@ module Codebreaker
2
2
  class Game
3
3
  HINTS_COUNT = 2
4
4
  DEF_MAX_SCORE = 500
5
+ CODE_LENGTH = 4
6
+ ROUND_PENALTY = 10
7
+ HINT_PENALTY = 50
5
8
 
6
9
  attr_reader :round_number
7
10
 
@@ -12,14 +15,13 @@ module Codebreaker
12
15
  end
13
16
 
14
17
  def start
15
- 4.times {
18
+ CODE_LENGTH.times {
16
19
  @secret_code += (Random.rand(6) + 1).to_s
17
20
  } if @secret_code.empty?
18
- @round_number += 1
19
21
  end
20
22
 
21
23
  def check (gues)
22
- raise ArgumentError, 'argument length must be equal 4' unless gues.to_s.length == 4
24
+ raise ArgumentError, 'argument length must be equal 4' unless gues.to_s.length == CODE_LENGTH
23
25
  raise ArgumentError, 'argument must contain only numbers from 1 to 6' unless gues.to_s[/[1-6]{4}/] == gues.to_s
24
26
 
25
27
  pluses = minuses = ''
@@ -34,12 +36,13 @@ module Codebreaker
34
36
  end
35
37
  end
36
38
 
37
- gues_array.each_with_index do |val, index|
39
+ gues_array.each do |val|
38
40
  if (sc_array.include?(val))
39
41
  sc_array[sc_array.find_index(val)] = '-'
40
42
  minuses += '-'
41
43
  end
42
44
  end
45
+ @round_number += 1
43
46
 
44
47
  result = pluses + minuses
45
48
  end
@@ -51,16 +54,7 @@ module Codebreaker
51
54
  end
52
55
 
53
56
  def score
54
- DEF_MAX_SCORE - @hints_used*50 - @round_number*10
55
- end
56
-
57
- def save
58
-
57
+ DEF_MAX_SCORE - @hints_used*HINT_PENALTY - @round_number*ROUND_PENALTY
59
58
  end
60
-
61
- def getScoreBoard
62
-
63
- end
64
-
65
59
  end
66
60
  end
@@ -1,3 +1,3 @@
1
1
  module Codebreaker
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codebreaker
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
  - Vasiliy Burlaka
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-05-25 00:00:00.000000000 Z
11
+ date: 2015-05-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler