codebreaker_kub 0.1.9 → 0.2.1

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: 785cfab5d2e074a0914b08aff16f83623f895eeaf4348bcc1e87c283b6b2d4da
4
- data.tar.gz: 52cf47e5ea7c5c5421efa0b00d118f64db300e9a77b4c2002aecaa99a4d46ea7
3
+ metadata.gz: f04c487aaa2731e942ffff6cb60ef16d1104251d00bb9983a6e7d91c103b7169
4
+ data.tar.gz: 4b505fe8bfe8a2e60e0f3915db5f3e4afe8175f06812602d4f1d972c9dcb31f4
5
5
  SHA512:
6
- metadata.gz: b01b8c3ccf2b578470405c70511f7f9d816f48f16a690cb44af0d05e4231268701021f0488909738a7893a4efe2cdab271e2f5aa12d079f032c9b7512d375523
7
- data.tar.gz: 379731f286acf3d954d4c336acf7e1d72ba533102a548cbd7e7df66ff69bb100ec8363d9b5f722ff6c4fc1ec1dd26a8396adb776bb04bb7073cbb17a4585767a
6
+ metadata.gz: f4479ce9fa5fc088e8acdacc83756ea2842711fcc410f7885df6a70461906df3d9bbad0c0fe8f54df0ec98afe14d83f7574fbdd9d2b77c7ab7644da3f56481d9
7
+ data.tar.gz: 24ef175cf81346eb5a3eb83553ac0e31ea77cb95e09502c3428e4cba77413d1ec55eeb578502bcd1b423d3e02fc9cceac6f622f15ed7fdfc19c77ce7af205141
@@ -7,9 +7,6 @@ Style/Documentation:
7
7
  Layout/LineLength:
8
8
  Max: 110
9
9
 
10
- Style/FrozenStringLiteralComment:
11
- Enabled: false
12
-
13
10
  Metrics/BlockLength:
14
11
  Enabled: false
15
12
 
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in codebreaker.gemspec
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- codebreaker_kub (0.1.8)
4
+ codebreaker_kub (0.1.9)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
  require 'rspec/core/rake_task'
3
5
 
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'codebreaker'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'lib/codebreaker/version'
2
4
 
3
5
  Gem::Specification.new do |spec|
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'codebreaker/game'
2
4
  require_relative 'codebreaker/loader'
3
5
  require_relative 'codebreaker/output'
@@ -1,5 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Codebreaker
2
4
  class Game
5
+ CODE_LENGTH = 4
6
+ CODE_RANGE = (1..6).freeze
3
7
  attr_accessor :input_code, :code, :name, :difficulties, :difficulty, :hints_left, :attempts_left
4
8
  attr_reader :minuse, :plus, :none
5
9
  def initialize
@@ -67,11 +71,12 @@ module Codebreaker
67
71
  end
68
72
 
69
73
  def generate_code
70
- Array.new(4) { rand(1..6) }.join
74
+ Array.new(CODE_LENGTH) { rand(CODE_RANGE) }.join
71
75
  end
72
76
 
73
77
  def generate_hint
74
- @code.chars.shuffle.pop
78
+ hint_code = @code.chars.shuffle
79
+ hint_code.pop
75
80
  end
76
81
 
77
82
  def difficulty_option
@@ -86,8 +91,7 @@ module Codebreaker
86
91
  hints: difficulty_option[:hints],
87
92
  code: @code,
88
93
  used_attempts: difficulty_option[:attempts] - @attempts_left,
89
- used_hints: difficulty_option[:hints] - @hints_left,
90
- win: win?
94
+ used_hints: difficulty_option[:hints] - @hints_left
91
95
  }
92
96
  end
93
97
  end
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Codebreaker
2
4
  module Loader
3
5
  PATH = File.join(File.dirname(__FILE__), 'data/').freeze
4
- EXTENCTION = '.yml'.freeze
6
+ EXTENCTION = '.yml'
5
7
  def self.load(file_name)
6
8
  file_name = PATH + file_name + EXTENCTION.to_s
7
9
  if File.exist?(file_name)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Codebreaker
2
4
  class Output
3
5
  attr_reader :stats
@@ -1,7 +1,11 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Codebreaker
2
4
  module Validation
5
+ MIN_NAME_LENGTH = 3
6
+ MAX_NAME_LENGTH = 20
3
7
  def name_is_valid?(name)
4
- name.instance_of?(String) && name.length.between?(3, 20)
8
+ name.instance_of?(String) && name.length.between?(MIN_NAME_LENGTH, MAX_NAME_LENGTH)
5
9
  end
6
10
 
7
11
  def input_is_valid?(input)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Codebreaker
2
- VERSION = '0.1.9'.freeze
4
+ VERSION = '0.2.1'
3
5
  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.9
4
+ version: 0.2.1
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-13 00:00:00.000000000 Z
11
+ date: 2020-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fasterer