codebreaker_kub 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 368897134f5e57306064d5dcc9b5ad197a11e77070d3b1923b8c9250160af688
4
- data.tar.gz: 918822ffa12cd59fa3744487b0b22415d98fc09c2e38d6f4e6fb7dbfd9d9daa7
3
+ metadata.gz: 4ca339901e4380146ff8f4454ad542b513fd422331f53f9ddd8a14efdb2e72c5
4
+ data.tar.gz: 7b349065f626cdc2b54fcebfbc6601ea0d66a4d66fe42309b2d7cc61d7e02783
5
5
  SHA512:
6
- metadata.gz: 2caf1d95e69d331e6de3d39f65007d5d3402388f550475cda78a53b8504a1d65f65ed3e63d72380a199163a4d731d4906c46c57de31443bb2cc0b6cb83d2dba6
7
- data.tar.gz: 58b74baba40482c14d058334ba18cc57b490c468c97e68f7c39dacc0ef52b22dda652637dc37724a291a697970e02e485bd3e966893fbd5fff70c26adc17b030
6
+ metadata.gz: 197df5af39c7c1e49b9d689f0042cd820a42c7ab9fae406331a9b17dc2f07ff07738700349c85053165f0add09262f630f4103416bd7c1e16509604888aa1b28
7
+ data.tar.gz: 96974c45577b6193a2e0d86e217e95ee0869cb1a821883d1a9fa038ba004ff9eaf4e4072a13e3cc44c159f54ee7616070e7a0019cd17659c9d9dc6b6debc7da8
data/Gemfile CHANGED
@@ -2,6 +2,3 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in codebreaker.gemspec
4
4
  gemspec
5
-
6
- gem 'rake', '~> 12.0'
7
- gem 'rspec', '~> 3.0'
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- codebreaker_kub (0.1.6)
4
+ codebreaker_kub (0.1.7)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -65,7 +65,7 @@ DEPENDENCIES
65
65
  fasterer (~> 0.8)
66
66
  i18n (~> 1.8)
67
67
  rake (~> 12.0)
68
- rspec (~> 3.0)
68
+ rspec (~> 3.9)
69
69
  rubocop (~> 0.87)
70
70
  simplecov (~> 0.18)
71
71
 
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
28
28
 
29
29
  spec.add_development_dependency 'fasterer', '~>0.8'
30
30
  spec.add_development_dependency 'i18n', '~>1.8'
31
+ spec.add_development_dependency 'rake', '~> 12.0'
31
32
  spec.add_development_dependency 'rspec', '~>3.9'
32
33
  spec.add_development_dependency 'rubocop', '~>0.87'
33
34
  spec.add_development_dependency 'simplecov', '~>0.18'
@@ -19,6 +19,7 @@
19
19
  wrong_difficulty: "There is no such level. Select from available, please"
20
20
  get_hint: "You can choose get hint - puts 'hint'"
21
21
  no_hints: "You have no hints"
22
+ enter_guess: "Enter your guess, please"
22
23
  wrong_input: "Your input is invalid or there is no such command."
23
24
  win: "YOU WIN!"
24
25
  lose: "You lose, sorry("
@@ -1,10 +1,17 @@
1
1
  module Codebreaker
2
2
  class Game
3
3
  attr_accessor :input_code, :code, :name, :difficulties, :difficulty, :hints_left, :attempts_left
4
-
4
+ attr_reader :minuse, :plus, :none
5
5
  def initialize
6
6
  @difficulties = Codebreaker::Loader.load('difficulties')
7
7
  @code = generate_code
8
+ symbols
9
+ end
10
+
11
+ def symbols(minuse = '-', plus = '+', none = '')
12
+ @minuse = minuse
13
+ @plus = plus
14
+ @none = none
8
15
  end
9
16
 
10
17
  def game_option(name, difficulty)
@@ -50,11 +57,13 @@ module Codebreaker
50
57
  def check_input(code = @code.chars)
51
58
  input = @input_code.chars
52
59
  minuses = (code & input).map { |element| [code.count(element), input.count(element)].min }.sum
53
- result = '-' * minuses
60
+ result = @minuse * minuses
54
61
  input.each.with_index do |element, index|
55
- result.sub!('-', '+') if element == code[index]
62
+ result.sub!(@minuse, @plus) if element == code[index]
56
63
  end
57
- result
64
+ return result unless result.empty?
65
+
66
+ @none
58
67
  end
59
68
 
60
69
  def generate_code
@@ -68,6 +68,10 @@ module Codebreaker
68
68
  puts I18n.t(:wrong_difficulty)
69
69
  end
70
70
 
71
+ def enter_guess
72
+ puts I18n.t(:enter_guess)
73
+ end
74
+
71
75
  def wrong_input
72
76
  puts I18n.t(:wrong_input)
73
77
  end
@@ -1,3 +1,3 @@
1
1
  module Codebreaker
2
- VERSION = '0.1.7'.freeze
2
+ VERSION = '0.1.8'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codebreaker_kub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - katia kub
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-11 00:00:00.000000000 Z
11
+ date: 2020-07-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fasterer
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.8'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '12.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '12.0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rspec
43
57
  requirement: !ruby/object:Gem::Requirement