codebreaker_kub 0.1.7 → 0.1.8

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
  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