teyvatdb 0.2.0 → 0.2.1

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: 503d17848851709316677d0091915b41081ad4d9cf4b37b1d64d1c0085d76d57
4
- data.tar.gz: ba6d813ad087821595ef6d02e21cc68ec9f7836998d18b48eed5e3acf0a2bfe2
3
+ metadata.gz: 3eb3cfd912c143c5d0677ac1dcbcf15bf0705a3fc0121fcac2445b5204a38684
4
+ data.tar.gz: 7e4998903b237dcd764b11a5defd9b0f2f499660cb0923a2dc52b1f04e1c7302
5
5
  SHA512:
6
- metadata.gz: afce95daea55ba1060e7c5d09938f3d9d34ec8e8550f512371c00f0edb2ff125a41ec1e6882e452226f28fd71edbf72fa46adb7a2f8a80f743b123dfd77643c6
7
- data.tar.gz: 062fce013b04895af964897b69aeb3eb63cd2b5328c9fc43c7b4b7aab904868acdbff5e0315b6304e2343ddfcdb910a243e087597820bdb937158f7961088473
6
+ metadata.gz: b236180fa676c5866496bcf4860ae282ec8cccd1ce30574a3fc703f36056ad3dfd5c782325c6a98141bc014d0a5f3bc581837fab36c198e9b7cb7a02499de9bc
7
+ data.tar.gz: 8133b38b5fe48fba1e8222c0d2be08a5c0b5da9b62657bc4ece7cb891cd707218cdaf63e3c7f3840a3ed8db24084b78a83690005d467371b99f2f53caaed1281
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- teyvatdb (0.2.0)
4
+ teyvatdb (0.2.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -13,7 +13,7 @@ module GenshinData
13
13
  kamera_key: "DvalinsClaw",
14
14
  name: "Dvalin's Claw",
15
15
  rarity: 5,
16
- family: nil,
16
+ family: :stormterror_loot,
17
17
  inventory_type: :development_material,
18
18
  source_category: :boss_loot,
19
19
  source_sub_category: :stormterror_drop,
@@ -24,7 +24,7 @@ module GenshinData
24
24
  kamera_key: "DvalinsPlume",
25
25
  name: "Dvalin's Plume",
26
26
  rarity: 5,
27
- family: nil,
27
+ family: :stormterror_loot,
28
28
  inventory_type: :development_material,
29
29
  source_category: :boss_loot,
30
30
  source_sub_category: :stormterror_drop,
@@ -35,7 +35,7 @@ module GenshinData
35
35
  kamera_key: "DvalinsSigh",
36
36
  name: "Dvalin's Sigh",
37
37
  rarity: 5,
38
- family: nil,
38
+ family: :stormterror_loot,
39
39
  inventory_type: :development_material,
40
40
  source_category: :boss_loot,
41
41
  source_sub_category: :stormterror_drop,
@@ -46,7 +46,7 @@ module GenshinData
46
46
  kamera_key: "RingOfBoreas",
47
47
  name: "Ring of Boreas",
48
48
  rarity: 5,
49
- family: nil,
49
+ family: :wolf_lord_loot,
50
50
  inventory_type: :development_material,
51
51
  source_category: :boss_loot,
52
52
  source_sub_category: :wolf_lord_drop,
@@ -57,7 +57,7 @@ module GenshinData
57
57
  kamera_key: "SpiritLocketOfBoreas",
58
58
  name: "Spirit Locket of Boreas",
59
59
  rarity: 5,
60
- family: nil,
60
+ family: :wolf_lord_loot,
61
61
  inventory_type: :development_material,
62
62
  source_category: :boss_loot,
63
63
  source_sub_category: :wolf_lord_drop,
@@ -68,7 +68,7 @@ module GenshinData
68
68
  kamera_key: "TailOfBoreas",
69
69
  name: "Tail of Boreas",
70
70
  rarity: 5,
71
- family: nil,
71
+ family: :wolf_lord_loot,
72
72
  inventory_type: :development_material,
73
73
  source_category: :boss_loot,
74
74
  source_sub_category: :wolf_lord_drop,
@@ -79,7 +79,7 @@ module GenshinData
79
79
  kamera_key: "ShadowOfTheWarrior",
80
80
  name: "Shadow of the Warrior",
81
81
  rarity: 5,
82
- family: nil,
82
+ family: :childe_loot,
83
83
  inventory_type: :development_material,
84
84
  source_category: :boss_loot,
85
85
  source_sub_category: :childe_drop,
@@ -90,7 +90,7 @@ module GenshinData
90
90
  kamera_key: "ShardOfAFoulLegacy",
91
91
  name: "Shard of a Foul Legacy",
92
92
  rarity: 5,
93
- family: nil,
93
+ family: :childe_loot,
94
94
  inventory_type: :development_material,
95
95
  source_category: :boss_loot,
96
96
  source_sub_category: :childe_drop,
@@ -101,7 +101,7 @@ module GenshinData
101
101
  kamera_key: "TuskOfMonocerosCaeli",
102
102
  name: "Tusk of Monoceros Caeli",
103
103
  rarity: 5,
104
- family: nil,
104
+ family: :childe_loot,
105
105
  inventory_type: :development_material,
106
106
  source_category: :boss_loot,
107
107
  source_sub_category: :childe_drop,
@@ -112,7 +112,7 @@ module GenshinData
112
112
  kamera_key: "AshenHeart",
113
113
  name: "Ashen Heart",
114
114
  rarity: 5,
115
- family: nil,
115
+ family: :signora_loot,
116
116
  inventory_type: :development_material,
117
117
  source_category: :boss_loot,
118
118
  source_sub_category: :signora_drop,
@@ -123,7 +123,7 @@ module GenshinData
123
123
  kamera_key: "HellfireButterfly",
124
124
  name: "Hellfire Butterfly",
125
125
  rarity: 5,
126
- family: nil,
126
+ family: :signora_loot,
127
127
  inventory_type: :development_material,
128
128
  source_category: :boss_loot,
129
129
  source_sub_category: :signora_drop,
@@ -134,7 +134,7 @@ module GenshinData
134
134
  kamera_key: "MoltenMoment",
135
135
  name: "Molten Moment",
136
136
  rarity: 5,
137
- family: nil,
137
+ family: :signora_loot,
138
138
  inventory_type: :development_material,
139
139
  source_category: :boss_loot,
140
140
  source_sub_category: :signora_drop,
@@ -145,7 +145,7 @@ module GenshinData
145
145
  kamera_key: "BloodjadeBranch",
146
146
  name: "Bloodjade Branch",
147
147
  rarity: 5,
148
- family: nil,
148
+ family: :azhdaha_loot,
149
149
  inventory_type: :development_material,
150
150
  source_category: :boss_loot,
151
151
  source_sub_category: :azhdaha_drop,
@@ -156,7 +156,7 @@ module GenshinData
156
156
  kamera_key: "DragonLordsCrown",
157
157
  name: "Dragon Lord's Crown",
158
158
  rarity: 5,
159
- family: nil,
159
+ family: :azhdaha_loot,
160
160
  inventory_type: :development_material,
161
161
  source_category: :boss_loot,
162
162
  source_sub_category: :azhdaha_drop,
@@ -167,7 +167,7 @@ module GenshinData
167
167
  kamera_key: "GildedScale",
168
168
  name: "Gilded Scale",
169
169
  rarity: 5,
170
- family: nil,
170
+ family: :azhdaha_loot,
171
171
  inventory_type: :development_material,
172
172
  source_category: :boss_loot,
173
173
  source_sub_category: :azhdaha_drop,
@@ -178,7 +178,7 @@ module GenshinData
178
178
  kamera_key: "MudraOfTheMaleficGeneral",
179
179
  name: "Mudra of the Malefic General",
180
180
  rarity: 5,
181
- family: nil,
181
+ family: :guardian_of_eternity_loot,
182
182
  inventory_type: :development_material,
183
183
  source_category: :boss_loot,
184
184
  source_sub_category: :guardian_of_eternity_drop,
@@ -189,7 +189,7 @@ module GenshinData
189
189
  kamera_key: "TearsOfTheCalamitousGod",
190
190
  name: "Tears of the Calamitous God",
191
191
  rarity: 5,
192
- family: nil,
192
+ family: :guardian_of_eternity_loot,
193
193
  inventory_type: :development_material,
194
194
  source_category: :boss_loot,
195
195
  source_sub_category: :guardian_of_eternity_drop,
@@ -200,7 +200,7 @@ module GenshinData
200
200
  kamera_key: "TheMeaningOfAeons",
201
201
  name: "The Meaning of Aeons",
202
202
  rarity: 5,
203
- family: nil,
203
+ family: :guardian_of_eternity_loot,
204
204
  inventory_type: :development_material,
205
205
  source_category: :boss_loot,
206
206
  source_sub_category: :guardian_of_eternity_drop,
@@ -211,7 +211,7 @@ module GenshinData
211
211
  kamera_key: "DakasBell",
212
212
  name: "Daka's Bell",
213
213
  rarity: 5,
214
- family: nil,
214
+ family: :scaramouche_loot,
215
215
  inventory_type: :development_material,
216
216
  source_category: :boss_loot,
217
217
  source_sub_category: :scaramouche_drop,
@@ -222,7 +222,7 @@ module GenshinData
222
222
  kamera_key: "MirrorOfMushin",
223
223
  name: "Mirror of Mushin",
224
224
  rarity: 5,
225
- family: nil,
225
+ family: :scaramouche_loot,
226
226
  inventory_type: :development_material,
227
227
  source_category: :boss_loot,
228
228
  source_sub_category: :scaramouche_drop,
@@ -233,7 +233,7 @@ module GenshinData
233
233
  kamera_key: "PuppetStrings",
234
234
  name: "Puppet Strings",
235
235
  rarity: 5,
236
- family: nil,
236
+ family: :scaramouche_loot,
237
237
  inventory_type: :development_material,
238
238
  source_category: :boss_loot,
239
239
  source_sub_category: :scaramouche_drop,
@@ -244,10 +244,10 @@ module GenshinData
244
244
  kamera_key: "Everamber",
245
245
  name: "Everamber",
246
246
  rarity: 5,
247
- family: nil,
247
+ family: :guardian_of_apeps_oasis_loot,
248
248
  inventory_type: :development_material,
249
249
  source_category: :boss_loot,
250
- source_sub_category: :realm_of_beginnings_drop,
250
+ source_sub_category: :guardian_of_apeps_oasis_drop,
251
251
  nation_name: :sumeru
252
252
  ).freeze
253
253
 
@@ -255,10 +255,10 @@ module GenshinData
255
255
  kamera_key: "PrimordialGreenbloom",
256
256
  name: "Primordial Greenbloom",
257
257
  rarity: 5,
258
- family: nil,
258
+ family: :guardian_of_apeps_oasis_loot,
259
259
  inventory_type: :development_material,
260
260
  source_category: :boss_loot,
261
- source_sub_category: :realm_of_beginnings_drop,
261
+ source_sub_category: :guardian_of_apeps_oasis_drop,
262
262
  nation_name: :sumeru
263
263
  ).freeze
264
264
 
@@ -266,10 +266,10 @@ module GenshinData
266
266
  kamera_key: "WorldspanFern",
267
267
  name: "Worldspan Fern",
268
268
  rarity: 5,
269
- family: nil,
269
+ family: :guardian_of_apeps_oasis_loot,
270
270
  inventory_type: :development_material,
271
271
  source_category: :boss_loot,
272
- source_sub_category: :realm_of_beginnings_drop,
272
+ source_sub_category: :guardian_of_apeps_oasis_drop,
273
273
  nation_name: :sumeru
274
274
  ).freeze
275
275
 
@@ -277,7 +277,7 @@ module GenshinData
277
277
  kamera_key: "LightlessSilkString",
278
278
  name: "Lightless Silk String",
279
279
  rarity: 5,
280
- family: nil,
280
+ family: :all_devouring_narwhal_loot,
281
281
  inventory_type: :development_material,
282
282
  source_category: :boss_loot,
283
283
  source_sub_category: :all_devouring_narwhal_drop,
@@ -288,7 +288,7 @@ module GenshinData
288
288
  kamera_key: "LightlessEyeOfTheMaelstrom",
289
289
  name: "Lightless Eye of the Maelstrom",
290
290
  rarity: 5,
291
- family: nil,
291
+ family: :all_devouring_narwhal_loot,
292
292
  inventory_type: :development_material,
293
293
  source_category: :boss_loot,
294
294
  source_sub_category: :all_devouring_narwhal_drop,
@@ -299,7 +299,7 @@ module GenshinData
299
299
  kamera_key: "LightlessMass",
300
300
  name: "Lightless Mass",
301
301
  rarity: 5,
302
- family: nil,
302
+ family: :all_devouring_narwhal_loot,
303
303
  inventory_type: :development_material,
304
304
  source_category: :boss_loot,
305
305
  source_sub_category: :all_devouring_narwhal_drop,
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ # Data representation for Talent Books
5
+ module TalentBooks
6
+ require_relative "talent_books/talent_book_data"
7
+
8
+ class << self
9
+ def all
10
+ GenshinData::TalentBooks::TalentBookData.all
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ module WeeklyBosses
5
+ # Module for accessing weekly boss data
6
+ module WeeklyBossData
7
+ def self.all
8
+ constants.map { |x| GenshinData::WeeklyBosses::WeeklyBossData.const_get(x) }
9
+ end
10
+
11
+ STORMTERROR = GenshinObject::WeeklyBoss.new(
12
+ name: "Stormterror",
13
+ domain_name: "Confront Stormterror",
14
+ nation_name: :mondstadt,
15
+ material_family: :stormterror_loot
16
+ )
17
+
18
+ WOLF_LORD = GenshinObject::WeeklyBoss.new(
19
+ name: "Lupus Boreas, Dominator of Wolves",
20
+ domain_name: "Wolvendom Arena",
21
+ nation_name: :mondstadt,
22
+ material_family: :stormterror_loot
23
+ )
24
+
25
+ CHILD = GenshinObject::WeeklyBoss.new(
26
+ name: "Childe of the Fatui",
27
+ domain_name: "Enter the Golden House",
28
+ nation_name: :liyue,
29
+ material_family: :childe_loot
30
+ )
31
+
32
+ AZHDAHA = GenshinObject::WeeklyBoss.new(
33
+ name: "Azhdaha",
34
+ domain_name: "Beneath the Dragon-Queller",
35
+ nation_name: :liyue,
36
+ material_family: :azhdaha_loot
37
+ )
38
+
39
+ SIGNORA = GenshinObject::WeeklyBoss.new(
40
+ name: "Signora",
41
+ domain_name: "Narukami Island: Tenshukaku",
42
+ nation_name: :inazuma,
43
+ material_family: :signora_loot
44
+ )
45
+
46
+ GUARDIAN_OF_ETERNITY = GenshinObject::WeeklyBoss.new(
47
+ name: "Guardian of Eternity",
48
+ domain_name: "End of the Oneiric Euthymia",
49
+ nation_name: :inazuma,
50
+ material_family: :guardian_of_eternity_loot
51
+ )
52
+
53
+ SCARAMOUCHE = GenshinObject::WeeklyBoss.new(
54
+ name: "Shouki no Kami, The Prodigal",
55
+ domain_name: "Joururi Workshop",
56
+ nation_name: :sumeru,
57
+ material_family: :scaramouche_loot
58
+ )
59
+
60
+ GUARDIAN_OF_APEPS_OASIS = GenshinObject::WeeklyBoss.new(
61
+ name: "Guardian of Apep's Oasis",
62
+ domain_name: "The Realm of Beginnings",
63
+ nation_name: :sumeru,
64
+ material_family: :guardian_of_apeps_oasis_loot
65
+ )
66
+
67
+ ALL_DEVOURING_NARWHAL = GenshinObject::WeeklyBoss.new(
68
+ name: "All-Devouring Narwhal",
69
+ domain_name: "Shadow of Another World",
70
+ nation_name: :fontaine,
71
+ material_family: :all_devouring_narwhal_loot
72
+ )
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ # Module for accessing weapon data
5
+ module WeeklyBosses
6
+ require_relative "weekly_bosses/weekly_boss_data"
7
+
8
+ class << self
9
+ def all
10
+ WeeklyBossData.all
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,186 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ module WorldBosses
5
+ # Module for accessing weekly boss data
6
+ module WorldBossData
7
+ def self.all
8
+ constants.map { |x| GenshinData::WorldBosses::WorldBossData.const_get(x) }
9
+ end
10
+
11
+ AEONBLIGHT_DRAKE = GenshinObject::WorldBoss.new(
12
+ name: "Aeonblight Drake",
13
+ nation_name: :sumeru,
14
+ boss_material: "PerpetualCaliber"
15
+ )
16
+
17
+ ALGORITHM_OF_SEMI_INTRANSIENT_MATRIX_OF_OVERSEER_NETWORK = GenshinObject::WorldBoss.new(
18
+ name: "Algorithm of Semi-Intransient Matrix of Overseer Network",
19
+ nation_name: :sumeru,
20
+ boss_material: "LightGuidingTetrahedron"
21
+ )
22
+
23
+ ANEMO_HYPOSTASIS = GenshinObject::WorldBoss.new(
24
+ name: "Anemo Hypostasis",
25
+ nation_name: :mondstadt,
26
+ boss_material: "HurricaneSeed"
27
+ )
28
+
29
+ CORAL_DEFENDERS = GenshinObject::WorldBoss.new(
30
+ name: "Coral Defenders",
31
+ nation_name: :inazuma,
32
+ boss_material: "DragonheirsFalseFin"
33
+ )
34
+
35
+ CRYO_HYPOSTASIS = GenshinObject::WorldBoss.new(
36
+ name: "Cryo Hypostasis",
37
+ nation_name: :mondstadt,
38
+ boss_material: "CrystallineBloom"
39
+ )
40
+
41
+ CRYO_REGISVINE = GenshinObject::WorldBoss.new(
42
+ name: "Cryo Regisvine",
43
+ nation_name: :mondstadt,
44
+ boss_material: "HoarfrostCore"
45
+ )
46
+
47
+ DENDRO_HYPOSTASIS = GenshinObject::WorldBoss.new(
48
+ name: "Dendro Hypostasis",
49
+ nation_name: :sumeru,
50
+ boss_material: "QuelledCreeper"
51
+ )
52
+
53
+ ELECTRO_HYPOSTASIS = GenshinObject::WorldBoss.new(
54
+ name: "Electro Hypostasis",
55
+ nation_name: :mondstadt,
56
+ boss_material: "LightningPrism"
57
+ )
58
+
59
+ ELECTRO_REGISVINE = GenshinObject::WorldBoss.new(
60
+ name: "Electro Regisvine",
61
+ nation_name: :sumeru,
62
+ boss_material: "ThunderclapFruitcore"
63
+ )
64
+
65
+ EMPEROR_OF_FIRE_AND_IRON = GenshinObject::WorldBoss.new(
66
+ name: "Emperor of Fire and Iron",
67
+ nation_name: :fontaine,
68
+ boss_material: "EmperorsResolution"
69
+ )
70
+
71
+ GEO_HYPOSTASIS = GenshinObject::WorldBoss.new(
72
+ name: "Geo Hypostasis",
73
+ nation_name: :liyue,
74
+ boss_material: "BasaltPillar"
75
+ )
76
+
77
+ GOLDEN_WOLFLORD = GenshinObject::WorldBoss.new(
78
+ name: "Golden Wolflord",
79
+ nation_name: :inazuma,
80
+ boss_material: "RiftbornRegalia"
81
+ )
82
+
83
+ HYDRO_HYPOSTASIS = GenshinObject::WorldBoss.new(
84
+ name: "Hydro Hypostasis",
85
+ nation_name: :inazuma,
86
+ boss_material: "DewOfRepudiation"
87
+ )
88
+
89
+ HYDRO_TULPA = GenshinObject::WorldBoss.new(
90
+ name: "Hydro Tulpa",
91
+ nation_name: :fontaine,
92
+ boss_material: "WaterThatFailedToTranscend"
93
+ )
94
+
95
+ ICEWIND_SUITE_COPPELIA = GenshinObject::WorldBoss.new(
96
+ name: "Icewind Suite - Coppelia",
97
+ nation_name: :fontaine,
98
+ boss_material: "ArtificedSpareClockworkComponentCoppelia"
99
+ )
100
+
101
+ ICEWIND_SUITE_COPPELIUS = GenshinObject::WorldBoss.new(
102
+ name: "Icewind Suite - Coppelius",
103
+ nation_name: :fontaine,
104
+ boss_material: "ArtificedSpareClockworkComponentCoppelius"
105
+ )
106
+
107
+ INIQUITOUS_BAPTIST = GenshinObject::WorldBoss.new(
108
+ name: "Iniquitous Baptist",
109
+ nation_name: :sumeru,
110
+ boss_material: "EvergloomRing"
111
+ )
112
+
113
+ JADEPLUME_TERRORSHROOM = GenshinObject::WorldBoss.new(
114
+ name: "Jadeplume Terrorshroom",
115
+ nation_name: :sumeru,
116
+ boss_material: "MajesticHookedBeak"
117
+ )
118
+
119
+ MAGUU_KENKI = GenshinObject::WorldBoss.new(
120
+ name: "Maguu Kenki",
121
+ nation_name: :inazuma,
122
+ boss_material: "MarionetteCore"
123
+ )
124
+
125
+ MILLENNIAL_PEARL_SEAHORSE = GenshinObject::WorldBoss.new(
126
+ name: "Millennial Pearl Seahorse",
127
+ nation_name: :fontaine,
128
+ boss_material: "FontemerUnihorn"
129
+ )
130
+
131
+ PERPETUAL_MECHANICAL_ARRAY = GenshinObject::WorldBoss.new(
132
+ name: "Perpetual Mechanical Array",
133
+ nation_name: :inazuma,
134
+ boss_material: "PerpetualHeart"
135
+ )
136
+
137
+ PRIMO_GEOVISHAP = GenshinObject::WorldBoss.new(
138
+ name: "Primo Geovishap",
139
+ nation_name: :liyue,
140
+ boss_material: "JuvenileJade"
141
+ )
142
+
143
+ PROTOTYPE_CAL_BREGUET = GenshinObject::WorldBoss.new(
144
+ name: "Prototype Cal. Breguet",
145
+ nation_name: :fontaine,
146
+ boss_material: "TourbillonDevice"
147
+ )
148
+
149
+ PYRO_HYPOSTASIS = GenshinObject::WorldBoss.new(
150
+ name: "Pyro Hypostasis",
151
+ nation_name: :inazuma,
152
+ boss_material: "SmolderingPearl"
153
+ )
154
+
155
+ PYRO_REGISVINE = GenshinObject::WorldBoss.new(
156
+ name: "Pyro Regisvine",
157
+ nation_name: :liyue,
158
+ boss_material: "EverflameSeed"
159
+ )
160
+
161
+ RHODEIA_OF_LOCH = GenshinObject::WorldBoss.new(
162
+ name: "Rhodeia of Loch",
163
+ nation_name: :liyue,
164
+ boss_material: "CleansingHeart"
165
+ )
166
+
167
+ RUIN_SERPENT = GenshinObject::WorldBoss.new(
168
+ name: "Ruin Serpent",
169
+ nation_name: :liyue,
170
+ boss_material: "RunicFang"
171
+ )
172
+
173
+ SETEKH_WENUT = GenshinObject::WorldBoss.new(
174
+ name: "Setekh Wenut",
175
+ nation_name: :sumeru,
176
+ boss_material: "PseudoStamens"
177
+ )
178
+
179
+ THUNDER_MANIFESTATION = GenshinObject::WorldBoss.new(
180
+ name: "Thunder Manifestation",
181
+ nation_name: :inazuma,
182
+ boss_material: "StormBeads"
183
+ )
184
+ end
185
+ end
186
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ # Module for accessing weapon data
5
+ module WorldBosses
6
+ require_relative "world_bosses/world_boss_data"
7
+
8
+ class << self
9
+ def all
10
+ WorldBossData.all
11
+ end
12
+ end
13
+ end
14
+ end
data/lib/genshin_data.rb CHANGED
@@ -2,12 +2,19 @@
2
2
 
3
3
  # Module that handles all data
4
4
  module GenshinData
5
+ require_relative "genshin_data/nations"
6
+
5
7
  require_relative "genshin_data/artifact_sets"
8
+
6
9
  require_relative "genshin_data/characters"
10
+
11
+ require_relative "genshin_data/weapons"
12
+
7
13
  require_relative "genshin_data/materials"
8
- require_relative "genshin_data/nations"
9
14
  require_relative "genshin_data/talent_books"
10
- require_relative "genshin_data/weapons"
15
+
16
+ require_relative "genshin_data/weekly_bosses"
17
+ require_relative "genshin_data/world_bosses"
11
18
 
12
19
  class << self
13
20
  def elements
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinObject
4
+ # Base class to represent bosses
5
+ class Boss
6
+ attr_accessor :name, :nation_name
7
+
8
+ def initialize(name:, nation_name:)
9
+ @name = name
10
+ @nation_name = nation_name
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinObject
4
+ # Class to represent weekly bosses
5
+ class WeeklyBoss < Boss
6
+ attr_accessor :material_family, :domain_name
7
+
8
+ def initialize(name:, nation_name:, domain_name:, material_family:)
9
+ @material_family = material_family
10
+ @domain_name = domain_name
11
+
12
+ super(name:, nation_name:)
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinObject
4
+ # Class to represent world bosses
5
+ class WorldBoss < Boss
6
+ attr_accessor :boss_material
7
+
8
+ def initialize(name:, nation_name:, boss_material:)
9
+ @boss_material = boss_material
10
+
11
+ super(name:, nation_name:)
12
+ end
13
+ end
14
+ end
@@ -3,6 +3,7 @@
3
3
  # Module that handles higher constants and base classes and behavior
4
4
  module GenshinObject
5
5
  require_relative "genshin_object/artifact_set"
6
+ require_relative "genshin_object/boss"
6
7
  require_relative "genshin_object/character"
7
8
  require_relative "genshin_object/material"
8
9
  require_relative "genshin_object/material_family"
@@ -10,4 +11,6 @@ module GenshinObject
10
11
  require_relative "genshin_object/schedule"
11
12
  require_relative "genshin_object/talent_book"
12
13
  require_relative "genshin_object/weapon"
14
+ require_relative "genshin_object/weekly_boss"
15
+ require_relative "genshin_object/world_boss"
13
16
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TeyvatDB
4
- VERSION = "0.2.0"
4
+ VERSION = "0.2.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: teyvatdb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Haberer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-10 00:00:00.000000000 Z
11
+ date: 2024-01-12 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Gem to provide basic genshin data to my other projects
14
14
  email:
@@ -52,6 +52,7 @@ files:
52
52
  - lib/genshin_data/nations/nation_data.rb
53
53
  - lib/genshin_data/talent_books.rb
54
54
  - lib/genshin_data/talent_books/talent_book_data.rb
55
+ - lib/genshin_data/weapon_materials.rb
55
56
  - lib/genshin_data/weapons.rb
56
57
  - lib/genshin_data/weapons/weapon_data.rb
57
58
  - lib/genshin_data/weapons/weapon_data/bows.rb
@@ -59,8 +60,13 @@ files:
59
60
  - lib/genshin_data/weapons/weapon_data/claymores.rb
60
61
  - lib/genshin_data/weapons/weapon_data/polearms.rb
61
62
  - lib/genshin_data/weapons/weapon_data/swords.rb
63
+ - lib/genshin_data/weekly_bosses.rb
64
+ - lib/genshin_data/weekly_bosses/weekly_boss_data.rb
65
+ - lib/genshin_data/world_bosses.rb
66
+ - lib/genshin_data/world_bosses/world_boss_data.rb
62
67
  - lib/genshin_object.rb
63
68
  - lib/genshin_object/artifact_set.rb
69
+ - lib/genshin_object/boss.rb
64
70
  - lib/genshin_object/character.rb
65
71
  - lib/genshin_object/material.rb
66
72
  - lib/genshin_object/material_family.rb
@@ -69,6 +75,8 @@ files:
69
75
  - lib/genshin_object/talent_book.rb
70
76
  - lib/genshin_object/weapon.rb
71
77
  - lib/genshin_object/weapon_material_family.rb
78
+ - lib/genshin_object/weekly_boss.rb
79
+ - lib/genshin_object/world_boss.rb
72
80
  - lib/teyvatdb.rb
73
81
  - lib/teyvatdb/version.rb
74
82
  - sig/teyvatdb.rbs