ika3 1.0.0 → 1.1.0
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 +4 -4
- data/.rubocop.yml +5 -6
- data/Gemfile +2 -2
- data/Gemfile.lock +31 -26
- data/config/special_weapons.yml +56 -0
- data/ika3.gemspec +1 -1
- data/lib/ika3/version.rb +1 -1
- data/lib/ika3/weapons.rb +26 -3
- data/sig/ika3/schedule.rbs +2 -2
- data/sig/ika3/weapon.rbs +12 -7
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 86383c0eb5f100a657f05f0aaba2ae54e38110b9efe6b21e11163390ad46d880
|
4
|
+
data.tar.gz: d78a670bbd8d884539f268d746cd116a026f6e007066ffadf8d5f336fbd1528f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d4415279ca2ff1808a3575b052d7adb679b841d276a886031185d8df5d83569a3e3d8ef24e8ed0efec796dd1fbeb2de7fdff3803bd86ffaf4e02b8cd2ae41314
|
7
|
+
data.tar.gz: 0b77f4bce907b88e535a8730cf6e28e7011ac755895c5b6256c482352796e3aa676c5fcd4113297ed578273ec0e7afe48e496172ba4b953e25a5e5ace94e59f8
|
data/.rubocop.yml
CHANGED
@@ -1,11 +1,14 @@
|
|
1
1
|
require:
|
2
2
|
- rubocop-rspec
|
3
3
|
- rubocop-rake
|
4
|
-
- rubocop-rbs
|
4
|
+
- rubocop-on-rbs
|
5
5
|
|
6
6
|
AllCops:
|
7
7
|
NewCops: enable
|
8
|
-
TargetRubyVersion: 3.
|
8
|
+
TargetRubyVersion: 3.1
|
9
|
+
|
10
|
+
RBS:
|
11
|
+
Enabled: true
|
9
12
|
|
10
13
|
Layout/LineLength:
|
11
14
|
Exclude:
|
@@ -23,9 +26,5 @@ RSpec/ExampleLength:
|
|
23
26
|
Max: 15
|
24
27
|
CountAsOne: ["array", "hash", "heredoc"]
|
25
28
|
|
26
|
-
Rbs/MethodSignature:
|
27
|
-
Exclude:
|
28
|
-
- 'lib/ika3/schedule.rb'
|
29
|
-
|
30
29
|
Style/Documentation:
|
31
30
|
Enabled: false
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,52 +1,55 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
ika3 (1.
|
4
|
+
ika3 (1.1.0)
|
5
5
|
activesupport (>= 6.0.0)
|
6
6
|
faraday (>= 2.7.0)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
|
-
activesupport (7.
|
11
|
+
activesupport (7.2.2)
|
12
12
|
base64
|
13
|
+
benchmark (>= 0.3)
|
13
14
|
bigdecimal
|
14
|
-
concurrent-ruby (~> 1.0, >= 1.
|
15
|
+
concurrent-ruby (~> 1.0, >= 1.3.1)
|
15
16
|
connection_pool (>= 2.2.5)
|
16
17
|
drb
|
17
18
|
i18n (>= 1.6, < 2)
|
19
|
+
logger (>= 1.4.2)
|
18
20
|
minitest (>= 5.1)
|
19
|
-
|
20
|
-
tzinfo (~> 2.0)
|
21
|
+
securerandom (>= 0.3)
|
22
|
+
tzinfo (~> 2.0, >= 2.0.5)
|
21
23
|
ast (2.4.2)
|
22
24
|
base64 (0.2.0)
|
25
|
+
benchmark (0.4.0)
|
23
26
|
bigdecimal (3.1.8)
|
24
27
|
concurrent-ruby (1.3.4)
|
25
28
|
connection_pool (2.4.1)
|
26
29
|
csv (3.3.0)
|
27
30
|
diff-lcs (1.5.1)
|
28
31
|
drb (2.2.1)
|
29
|
-
faraday (2.
|
32
|
+
faraday (2.12.0)
|
30
33
|
faraday-net_http (>= 2.0, < 3.4)
|
34
|
+
json
|
31
35
|
logger
|
32
36
|
faraday-net_http (3.3.0)
|
33
37
|
net-http
|
34
38
|
ffi (1.17.0-x86_64-linux-gnu)
|
35
|
-
fileutils (1.7.
|
36
|
-
i18n (1.14.
|
39
|
+
fileutils (1.7.3)
|
40
|
+
i18n (1.14.6)
|
37
41
|
concurrent-ruby (~> 1.0)
|
38
|
-
json (2.
|
42
|
+
json (2.8.1)
|
39
43
|
language_server-protocol (3.17.0.3)
|
40
44
|
listen (3.9.0)
|
41
45
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
42
46
|
rb-inotify (~> 0.9, >= 0.9.10)
|
43
|
-
logger (1.6.
|
47
|
+
logger (1.6.1)
|
44
48
|
minitest (5.25.1)
|
45
|
-
|
46
|
-
net-http (0.4.1)
|
49
|
+
net-http (0.5.0)
|
47
50
|
uri
|
48
51
|
parallel (1.26.3)
|
49
|
-
parser (3.3.
|
52
|
+
parser (3.3.6.0)
|
50
53
|
ast (~> 2.4.1)
|
51
54
|
racc
|
52
55
|
racc (1.8.1)
|
@@ -55,7 +58,7 @@ GEM
|
|
55
58
|
rb-fsevent (0.11.2)
|
56
59
|
rb-inotify (0.11.1)
|
57
60
|
ffi (~> 1.0)
|
58
|
-
rbs (3.
|
61
|
+
rbs (3.6.1)
|
59
62
|
logger
|
60
63
|
regexp_parser (2.9.2)
|
61
64
|
rspec (3.13.0)
|
@@ -71,7 +74,7 @@ GEM
|
|
71
74
|
diff-lcs (>= 1.2.0, < 2.0)
|
72
75
|
rspec-support (~> 3.13.0)
|
73
76
|
rspec-support (3.13.0)
|
74
|
-
rubocop (1.
|
77
|
+
rubocop (1.68.0)
|
75
78
|
json (~> 2.3)
|
76
79
|
language_server-protocol (>= 3.17.0)
|
77
80
|
parallel (~> 1.10)
|
@@ -81,18 +84,19 @@ GEM
|
|
81
84
|
rubocop-ast (>= 1.32.2, < 2.0)
|
82
85
|
ruby-progressbar (~> 1.7)
|
83
86
|
unicode-display_width (>= 2.4.0, < 3.0)
|
84
|
-
rubocop-ast (1.
|
87
|
+
rubocop-ast (1.33.1)
|
85
88
|
parser (>= 3.3.1.0)
|
89
|
+
rubocop-on-rbs (1.1.0)
|
90
|
+
rbs (~> 3.5)
|
91
|
+
rubocop (~> 1.61)
|
92
|
+
zlib
|
86
93
|
rubocop-rake (0.6.0)
|
87
94
|
rubocop (~> 1.0)
|
88
|
-
rubocop-
|
89
|
-
rbs
|
90
|
-
rubocop
|
91
|
-
rubocop-rspec (3.0.5)
|
95
|
+
rubocop-rspec (3.2.0)
|
92
96
|
rubocop (~> 1.61)
|
93
97
|
ruby-progressbar (1.13.0)
|
94
98
|
securerandom (0.3.1)
|
95
|
-
steep (1.
|
99
|
+
steep (1.8.3)
|
96
100
|
activesupport (>= 5.1)
|
97
101
|
concurrent-ruby (>= 1.1.10)
|
98
102
|
csv (>= 3.0.9)
|
@@ -103,7 +107,7 @@ GEM
|
|
103
107
|
logger (>= 1.3.0)
|
104
108
|
parser (>= 3.1)
|
105
109
|
rainbow (>= 2.2.2, < 4.0)
|
106
|
-
rbs (
|
110
|
+
rbs (~> 3.6.0)
|
107
111
|
securerandom (>= 0.1)
|
108
112
|
strscan (>= 1.0.0)
|
109
113
|
terminal-table (>= 2, < 4)
|
@@ -114,8 +118,9 @@ GEM
|
|
114
118
|
rbs (>= 1.8.1)
|
115
119
|
tzinfo (2.0.6)
|
116
120
|
concurrent-ruby (~> 1.0)
|
117
|
-
unicode-display_width (2.
|
118
|
-
uri (0.
|
121
|
+
unicode-display_width (2.6.0)
|
122
|
+
uri (1.0.1)
|
123
|
+
zlib (3.1.1)
|
119
124
|
|
120
125
|
PLATFORMS
|
121
126
|
x86_64-linux
|
@@ -126,9 +131,9 @@ DEPENDENCIES
|
|
126
131
|
rbs
|
127
132
|
rspec (~> 3.13)
|
128
133
|
rubocop
|
134
|
+
rubocop-on-rbs (~> 1.1)
|
129
135
|
rubocop-rake (~> 0.6.0)
|
130
|
-
rubocop-
|
131
|
-
rubocop-rspec (~> 3.0)
|
136
|
+
rubocop-rspec (~> 3.2)
|
132
137
|
steep
|
133
138
|
typeprof
|
134
139
|
|
@@ -0,0 +1,56 @@
|
|
1
|
+
big_bubbler: &big_bubbler
|
2
|
+
name: グレートバリア
|
3
|
+
|
4
|
+
booyah_bomb: &booyah_bomb
|
5
|
+
name: ナイスダマ
|
6
|
+
|
7
|
+
crab_tank: &crab_tank
|
8
|
+
name: カニタンク
|
9
|
+
|
10
|
+
ink_storm: &ink_storm
|
11
|
+
name: アメフラシ
|
12
|
+
|
13
|
+
ink_vac: &ink_vac
|
14
|
+
name: キューインキ
|
15
|
+
|
16
|
+
inkjet: &inkjet
|
17
|
+
name: ジェットパック
|
18
|
+
|
19
|
+
killer_wall_5_1: &killer_wall_5_1
|
20
|
+
name: メガホンレーザー5.1ch
|
21
|
+
|
22
|
+
kraken_royale: &kraken_royale
|
23
|
+
name: テイオウイカ
|
24
|
+
|
25
|
+
reefslider: &reefslider
|
26
|
+
name: サメライド
|
27
|
+
|
28
|
+
splattercolor_screen: &splattercolor_screen
|
29
|
+
name: スミナガシート
|
30
|
+
|
31
|
+
super_chump: &super_chump
|
32
|
+
name: デコイチラシ
|
33
|
+
|
34
|
+
tacticooler: &tacticooler
|
35
|
+
name: エナジースタンド
|
36
|
+
|
37
|
+
tenta_missiles: &tenta_missiles
|
38
|
+
name: マルチミサイル
|
39
|
+
|
40
|
+
triple_inkstrike: &triple_inkstrike
|
41
|
+
name: トリプルトルネード
|
42
|
+
|
43
|
+
triple_splashdown: &triple_splashdown
|
44
|
+
name: ウルトラチャクチ
|
45
|
+
|
46
|
+
trizooka: &trizooka
|
47
|
+
name: ウルトラショット
|
48
|
+
|
49
|
+
ultra_stamp: &ultra_stamp
|
50
|
+
name: ウルトラハンコ
|
51
|
+
|
52
|
+
wave_breaker: &wave_breaker
|
53
|
+
name: ホップソナー
|
54
|
+
|
55
|
+
zipcaster: &zipcaster
|
56
|
+
name: ショクワンダー
|
data/ika3.gemspec
CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
|
|
12
12
|
spec.description = 'Splatoon3 weapons information library. This gem provide weapon name, sub, and special. not official'
|
13
13
|
spec.homepage = 'https://github.com/YutaGoto/ika3'
|
14
14
|
spec.license = 'MIT'
|
15
|
-
spec.required_ruby_version = '>= 3.
|
15
|
+
spec.required_ruby_version = '>= 3.1.0'
|
16
16
|
|
17
17
|
spec.metadata['homepage_uri'] = spec.homepage
|
18
18
|
spec.metadata['source_code_uri'] = 'https://github.com/YutaGoto/ika3'
|
data/lib/ika3/version.rb
CHANGED
data/lib/ika3/weapons.rb
CHANGED
@@ -41,12 +41,20 @@ module Ika3
|
|
41
41
|
weapons.map { |weapon| W.new(weapon) }
|
42
42
|
end
|
43
43
|
|
44
|
+
def filter_by_special(special_name)
|
45
|
+
raise "unknown special weapon: #{special_name}" unless special_weapons.values.include?(special_name)
|
46
|
+
|
47
|
+
weapons = config.values.filter { |weapon| weapon[:special] == special_name }
|
48
|
+
weapons.map { |weapon| W.new(weapon) }
|
49
|
+
end
|
50
|
+
|
44
51
|
def reload_config!
|
45
52
|
@cache = {}
|
46
53
|
@config = nil
|
47
54
|
@sub_weapons = nil
|
48
55
|
config
|
49
56
|
config_sub_weapons
|
57
|
+
config_special_weapons
|
50
58
|
end
|
51
59
|
|
52
60
|
private
|
@@ -75,21 +83,36 @@ module Ika3
|
|
75
83
|
@sub_weapon_hash
|
76
84
|
end
|
77
85
|
|
86
|
+
def special_weapons
|
87
|
+
@special_weapon_hash ||= {}
|
88
|
+
if @special_weapon_hash.empty?
|
89
|
+
config_special_weapons.each do |key, value|
|
90
|
+
@special_weapon_hash[key] = value[:name]
|
91
|
+
end
|
92
|
+
end
|
93
|
+
@special_weapon_hash
|
94
|
+
end
|
95
|
+
|
78
96
|
def config
|
79
|
-
@config ||=
|
97
|
+
@config ||= load_yaml("#{File.dirname(__FILE__)}/../../config/weapons.yml").deep_symbolize_keys
|
80
98
|
@config
|
81
99
|
end
|
82
100
|
|
83
101
|
def config_sub_weapons
|
84
|
-
@sub_weapons ||=
|
102
|
+
@sub_weapons ||= load_yaml("#{File.dirname(__FILE__)}/../../config/sub_weapons.yml").deep_symbolize_keys
|
85
103
|
@sub_weapons
|
86
104
|
end
|
87
105
|
|
106
|
+
def config_special_weapons
|
107
|
+
@special_weapons ||= load_yaml("#{File.dirname(__FILE__)}/../../config/special_weapons.yml").deep_symbolize_keys
|
108
|
+
@special_weapons
|
109
|
+
end
|
110
|
+
|
88
111
|
def valid?(weapon_key)
|
89
112
|
names.include?(weapon_key)
|
90
113
|
end
|
91
114
|
|
92
|
-
def
|
115
|
+
def load_yaml(file)
|
93
116
|
YAML.safe_load_file(file, aliases: true)
|
94
117
|
end
|
95
118
|
end
|
data/sig/ika3/schedule.rbs
CHANGED
data/sig/ika3/weapon.rbs
CHANGED
@@ -5,18 +5,23 @@ module Ika3
|
|
5
5
|
self.@weapon_hash: Hash[untyped, untyped]
|
6
6
|
self.@sub_weapon_hash: Hash[untyped, untyped]
|
7
7
|
self.@sub_weapons: untyped
|
8
|
+
self.@special_weapon_hash: Hash[untyped, untyped]
|
9
|
+
self.@special_weapons: untyped
|
8
10
|
|
9
11
|
def self.find: (Symbol weapon_key) -> W
|
10
12
|
def self.find_by_name: (String weapon_name) -> W
|
11
13
|
def self.filter_by_sub: (String sub_name) -> Array[W]
|
12
|
-
def self.
|
13
|
-
def self.
|
14
|
-
def self.
|
15
|
-
def self.
|
16
|
-
def self.
|
17
|
-
def self.
|
14
|
+
def self.filter_by_special: (String special_name) -> Array[W]
|
15
|
+
def self.reload_config!: () -> nil
|
16
|
+
def self.names: () -> Array[Symbol]
|
17
|
+
def self.weapons: () -> Hash[untyped, untyped]
|
18
|
+
def self.sub_weapons: () -> Hash[untyped, untyped]
|
19
|
+
def self.special_weapons: () -> Hash[untyped, untyped]
|
20
|
+
def self.config: () -> untyped
|
21
|
+
def self.config_sub_weapons: () -> untyped
|
22
|
+
def self.config_special_weapons: () -> untyped
|
18
23
|
def self.valid?: (Symbol weapon_key) -> bool
|
19
|
-
def self.
|
24
|
+
def self.load_yaml: (String file) -> untyped
|
20
25
|
|
21
26
|
class W
|
22
27
|
@name: String
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ika3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- YutaGoto
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-09
|
11
|
+
date: 2024-11-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -57,6 +57,7 @@ files:
|
|
57
57
|
- README.md
|
58
58
|
- Rakefile
|
59
59
|
- Steepfile
|
60
|
+
- config/special_weapons.yml
|
60
61
|
- config/sub_weapons.yml
|
61
62
|
- config/weapons.yml
|
62
63
|
- ika3.gemspec
|
@@ -87,14 +88,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
87
88
|
requirements:
|
88
89
|
- - ">="
|
89
90
|
- !ruby/object:Gem::Version
|
90
|
-
version: 3.
|
91
|
+
version: 3.1.0
|
91
92
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
92
93
|
requirements:
|
93
94
|
- - ">="
|
94
95
|
- !ruby/object:Gem::Version
|
95
96
|
version: '0'
|
96
97
|
requirements: []
|
97
|
-
rubygems_version: 3.5.
|
98
|
+
rubygems_version: 3.5.16
|
98
99
|
signing_key:
|
99
100
|
specification_version: 4
|
100
101
|
summary: Splatoon3 weapons information library.
|