connect_n 0.0.1 → 0.0.3

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: eba6b2df604ea680c0290001a8346ec7cf7c6f7e7500c789fe4f6187843a2062
4
- data.tar.gz: 5eca8fe9229c34e928b6d4d1b872f99c45be5671bf3b2e2ffc007acd92f4b25e
3
+ metadata.gz: 0d188126a2ef04bac61ad32cb71da78b8dc9f6f26ae8d3eb8be9d02db8f85fde
4
+ data.tar.gz: e3756f136a23d490b14fa9b3df1af5617811eb8a9b21148adcafcd9a29787914
5
5
  SHA512:
6
- metadata.gz: e31f399c619856b9e0f4b5c71c21bb3239bf7892629c59ef4ecc24c1c08aa692a15096b7a9eacf5012152adf567409dae268f45c0f6fc0843f35f40080ad8ccd
7
- data.tar.gz: '0190fb7ad7480f8d4ec5fe21e83bf7e07e8adbf38ebe77fd0aadd4e79a203259a123325afcd93873c16acf898727669a0a04ebb60f6a25791cecf9f48c86a02d'
6
+ metadata.gz: b60c6abf3f69c08d74f79638be898f31a46519549002022b68082bbb24aa85592a058290b0c3fe31631ce7ee81ca13e716e8992c6fdf0ab07008c51b944957fd
7
+ data.tar.gz: 62663742e7361bda0fbaad1c0b03f564c8e233762f8d8fd1664a4250ff08c258e7c70e1335b4e8b9e3ffba2901ff0c8fd4fcd74a3f54736035e2e562bd335dda
@@ -11,13 +11,11 @@ module ConnectN
11
11
  attr_reader :opponent_disc, :min_to_win
12
12
 
13
13
  def initialize(
14
- name: 'Computer',
14
+ board:, opponent_disc:, name: 'Computer',
15
15
  disc: '🧊',
16
16
  min_to_win: 4,
17
17
  difficulty: 0,
18
- delay: 0,
19
- board:,
20
- opponent_disc:
18
+ delay: 0
21
19
  )
22
20
  super(name: name, disc: disc)
23
21
  @min_to_win = min_to_win
@@ -25,7 +23,7 @@ module ConnectN
25
23
  @delay = delay
26
24
  @board = board
27
25
  @opponent_disc = opponent_disc
28
- @scores = { disc => 10000, opponent_disc => -10000 }
26
+ @scores = { disc => 10_000, opponent_disc => -10_000 }
29
27
  end
30
28
 
31
29
  def pick
@@ -91,7 +89,8 @@ module ConnectN
91
89
  row_num, col_num = board_copy.drop_disc(opponent_disc, at_col: pick)
92
90
  score = [
93
91
  score,
94
- minimax(board_copy, opponent_disc, row_num, col_num, moves_counter + 1, alpha, beta, depth - 1, maximizing: true)
92
+ minimax(board_copy, opponent_disc, row_num, col_num, moves_counter + 1, alpha, beta, depth - 1,
93
+ maximizing: true)
95
94
  ].min
96
95
  break if score <= alpha
97
96
 
@@ -8,7 +8,7 @@ module ConnectN
8
8
  class HumanPlayer < Player
9
9
  attr_accessor :save_key
10
10
 
11
- def initialize(name: 'Human', disc: '🔥', save_key: ':w')
11
+ def initialize(name: 'Human', disc: '🔥', save_key: ':w')
12
12
  @save_key = save_key
13
13
  super name: name, disc: disc
14
14
  end
@@ -58,7 +58,7 @@ module ConnectN
58
58
  # amount can be nil if there are more similar discs than min_to_win
59
59
  # in which case it should count as a win
60
60
  amount ||= min_to_win
61
-
61
+
62
62
  # Subtract the dropped disc
63
63
  amount -= 1
64
64
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: connect_n
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lhoussaine (Jee-El) Ghallou
@@ -11,33 +11,33 @@ cert_chain: []
11
11
  date: 2023-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: tty-prompt
14
+ name: tty-box
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.23.1
19
+ version: 0.7.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.23.1
26
+ version: 0.7.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: tty-box
28
+ name: tty-prompt
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.7.0
33
+ version: 0.23.1
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 0.7.0
40
+ version: 0.23.1
41
41
  description: A more general version of connect-4 where you try to connect N similar
42
42
  discs. It comes with several features and a friendly API that allows you to customize
43
43
  the game however you want!
@@ -55,7 +55,7 @@ files:
55
55
  - lib/connect_n/player/player.rb
56
56
  - lib/connect_n/prompt/prompt.rb
57
57
  - lib/connect_n/winnable/winnable.rb
58
- homepage: https://rubygems.org/gems/connect_n
58
+ homepage: https://github.com/Jee-El/connect_n
59
59
  licenses:
60
60
  - MIT
61
61
  metadata: {}
@@ -67,7 +67,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - ">="
69
69
  - !ruby/object:Gem::Version
70
- version: 2.7.0
70
+ version: 3.0.0
71
71
  required_rubygems_version: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="