new_super_codebreaker_2021 0.3.4 → 0.3.5

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: 157dbae0333bd8d36649060482f89ea9f7327d475f948e8fef0aeac1eb0dd64d
4
- data.tar.gz: d1819c81e8c1c84eafafeb1d0cce41bf8a714d1e3bfa36e7d2bdebe931b61f73
3
+ metadata.gz: 1a82b958460bacd3f2058c0358f7d03934b817439cb09a35ce7afd9665cd579a
4
+ data.tar.gz: fa3eb2c2f1f60f4a3005c6aa3c91b9cfe01e189794ddc0372264234862855718
5
5
  SHA512:
6
- metadata.gz: 94d7ff189e12b46cee85e11ffc6a2c3cde3346d922e4525d864be652d426851aec4580d9bb2dec84cb34dcb9fd2d3119a4c7f8e2f38f89494357c4ca2c894dab
7
- data.tar.gz: b0e22fee9f1104399f138e6042d8321d98ff88805809f26750dd5b0b934e10a9e63ea6f46560d438710134ed7f0c707fd2e43b14d4d5656245ebce1eb391446a
6
+ metadata.gz: 313ff20be1e825b6665c27e2faccf4285a4b24fe7f69bb63b7fed3b703f3e36767c9d5e9d5bee94a318debb68fd7393b3c52107d28b5c5a9d0bae78027070ded
7
+ data.tar.gz: d2fdecb7035dec146a97fe2faa0d931a53d6154063f9733c9ba88cdcafc721e70aa6321569f1033b3149fe214dd14909e5a5ff34ca072834fdc8371c2504733d
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source "https://rubygems.org"
3
+ source 'https://rubygems.org'
4
4
 
5
5
  # Specify your gem's dependencies in new_super_codebreaker_2021.gemspec
6
6
  gemspec
data/Rakefile CHANGED
@@ -1,10 +1,8 @@
1
- # frozen_string_literal: true
2
-
3
- require "bundler/gem_tasks"
4
- require "rubocop/rake_task"
1
+ require 'bundler/gem_tasks'
2
+ require 'rubocop/rake_task'
5
3
 
6
4
  begin
7
- require "rspec/core/rake_task"
5
+ require 'rspec/core/rake_task'
8
6
  RSpec::Core::RakeTask.new(:spec)
9
7
  rescue LoadError
10
8
  # Ignored
data/bin/console CHANGED
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- require "bundler/setup"
5
- require "new_super_codebreaker_2021"
4
+ require 'bundler/setup'
5
+ require 'new_super_codebreaker_2021'
6
6
 
7
7
  # You can add fixtures and/or initialization code here to make experimenting
8
8
  # with your gem easier. You can also use a different console, if you like.
@@ -11,5 +11,5 @@ require "new_super_codebreaker_2021"
11
11
  # require "pry"
12
12
  # Pry.start
13
13
 
14
- require "irb"
14
+ require 'irb'
15
15
  IRB.start(__FILE__)
data/lib/db_methods.rb CHANGED
@@ -1,10 +1,8 @@
1
- # frozen_string_literal: true
2
-
3
1
  module DBMethods
4
2
  def save(user, file)
5
3
  rating = load_file(file)
6
4
  rating.push(user)
7
- File.open(file, "w") do |filename|
5
+ File.open(file, 'w') do |filename|
8
6
  YAML.dump(rating, filename)
9
7
  end
10
8
  end
data/lib/game.rb CHANGED
@@ -1,8 +1,8 @@
1
- require "yaml"
2
- require_relative "validate"
3
- require_relative "show_content"
4
- require_relative "db_methods"
5
- require_relative "user"
1
+ require 'yaml'
2
+ require_relative 'validate'
3
+ require_relative 'show_content'
4
+ require_relative 'db_methods'
5
+ require_relative 'user'
6
6
  module NewSuperCodebreaker2021
7
7
  class Game
8
8
  include Validate
@@ -15,12 +15,12 @@ module NewSuperCodebreaker2021
15
15
  AFTER_GAME_COMMANDS = %i[start save exit].freeze
16
16
  YES_NO_COMMANDS = %i[yes no].freeze
17
17
 
18
- def chose_com(command)
18
+ def chose_command(command)
19
19
  START_COMMANDS.include?(command.to_sym) ? command.to_sym : false
20
20
  end
21
21
 
22
22
  def take_name(input_name)
23
- if input_name == "exit"
23
+ if input_name == 'exit'
24
24
  :exit
25
25
  else
26
26
  validate_name(input_name)
@@ -36,7 +36,12 @@ module NewSuperCodebreaker2021
36
36
  end
37
37
 
38
38
  def user_guess(code)
39
- GUESS_COMMANDS.include?(code.to_s.to_sym) ? code.to_s.to_sym : validate_user_code(code)
39
+ if code.to_i != 0
40
+ validate_user_code(code)
41
+ elsif GUESS_COMMANDS.include?(code.to_sym)
42
+ code.to_sym
43
+ else false
44
+ end
40
45
  end
41
46
 
42
47
  def take_hint(user, code, used_hints)
@@ -50,11 +55,17 @@ module NewSuperCodebreaker2021
50
55
  end
51
56
 
52
57
  def after_game_commands(command)
53
- AFTER_GAME_COMMANDS.include?(command.to_sym) ? command.to_sym : false
58
+ if command.to_i.zero? && AFTER_GAME_COMMANDS.include?(command.to_sym)
59
+ command.to_sym
60
+ else false
61
+ end
54
62
  end
55
63
 
56
64
  def attempt_to_start(command)
57
- YES_NO_COMMANDS.include?(command.to_sym) ? command.to_sym : false
65
+ if command.to_i.zero? && YES_NO_COMMANDS.include?(command.to_sym)
66
+ command.to_sym
67
+ else false
68
+ end
58
69
  end
59
70
 
60
71
  def compare_codes(secret_code, user_code)
@@ -69,7 +80,7 @@ module NewSuperCodebreaker2021
69
80
  u_char = []
70
81
  user_code.each_index do |i|
71
82
  if secret_code[i] == user_code[i]
72
- matches.unshift("+")
83
+ matches.unshift('+')
73
84
  u_char << user_code[i]
74
85
  end
75
86
  end
@@ -78,7 +89,7 @@ module NewSuperCodebreaker2021
78
89
 
79
90
  def number_in_secret_code(secret_code, user_code, matches, u_char)
80
91
  user_code.each do |element|
81
- matches.push("-") if secret_code.include?(element) && !u_char.include?(element)
92
+ matches.push('-') if secret_code.include?(element) && !u_char.include?(element)
82
93
  end
83
94
  matches
84
95
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NewSuperCodebreaker2021
4
- VERSION = "0.3.4"
4
+ VERSION = '0.3.5'
5
5
  end
@@ -1,5 +1,5 @@
1
- require_relative "new_super_codebreaker_2021/version"
2
- require "game"
1
+ require_relative 'new_super_codebreaker_2021/version'
2
+ require 'game'
3
3
 
4
4
  module NewSuperCodebreaker2021
5
5
  class Error < StandardError; end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: new_super_codebreaker_2021
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nazar Dakhno
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-29 00:00:00.000000000 Z
11
+ date: 2021-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fasterer