teyvatdb 0.1.18 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +4 -1
  4. data/lib/genshin_data/artifact_sets/artifact_data.rb +946 -295
  5. data/lib/genshin_data/artifact_sets.rb +2 -2
  6. data/lib/genshin_data/characters/character_data.rb +1143 -1126
  7. data/lib/genshin_data/characters.rb +4 -2
  8. data/lib/genshin_data/materials/development/elite_monster_drops_data.rb +605 -598
  9. data/lib/genshin_data/materials/development/gems_data.rb +331 -324
  10. data/lib/genshin_data/materials/development/general_data.rb +103 -96
  11. data/lib/genshin_data/materials/development/local_specialty_data.rb +506 -499
  12. data/lib/genshin_data/materials/development/monster_loot_drops_data.rb +441 -434
  13. data/lib/genshin_data/materials/development/talent_books_data.rb +506 -500
  14. data/lib/genshin_data/materials/development/weapon_material_data.rb +672 -665
  15. data/lib/genshin_data/materials/development/weapon_refinement_material_data.rb +129 -122
  16. data/lib/genshin_data/materials/development/weekly_boss_drops_data.rb +283 -276
  17. data/lib/genshin_data/materials/development/world_boss_drops_data.rb +330 -327
  18. data/lib/genshin_data/materials/development.rb +61 -56
  19. data/lib/genshin_data/materials/standard/cooking_material_data.rb +561 -554
  20. data/lib/genshin_data/materials/standard/crafting_material_data.rb +130 -123
  21. data/lib/genshin_data/materials/standard/fishing_material_data.rb +452 -445
  22. data/lib/genshin_data/materials/standard/forging_material_data.rb +191 -184
  23. data/lib/genshin_data/materials/standard/furniture_material_data.rb +251 -244
  24. data/lib/genshin_data/materials/standard.rb +37 -32
  25. data/lib/genshin_data/materials.rb +13 -7
  26. data/lib/genshin_data/nations/nation_data.rb +55 -52
  27. data/lib/genshin_data/talent_books/talent_book_data.rb +147 -0
  28. data/lib/genshin_data/talent_books.rb +14 -0
  29. data/lib/genshin_data/weapons/weapon_data/bows.rb +369 -364
  30. data/lib/genshin_data/weapons/weapon_data/catalysts.rb +359 -354
  31. data/lib/genshin_data/weapons/weapon_data/claymores.rb +359 -354
  32. data/lib/genshin_data/weapons/weapon_data/polearms.rb +262 -257
  33. data/lib/genshin_data/weapons/weapon_data/swords.rb +399 -395
  34. data/lib/genshin_data/weapons/weapon_data.rb +10 -7
  35. data/lib/genshin_data/weapons.rb +2 -1
  36. data/lib/genshin_data.rb +16 -5
  37. data/lib/genshin_object/artifact_set.rb +2 -2
  38. data/lib/genshin_object/material_family.rb +15 -0
  39. data/lib/genshin_object/schedule.rb +42 -0
  40. data/lib/genshin_object/talent_book.rb +6 -0
  41. data/lib/genshin_object/weapon_material_family.rb +6 -0
  42. data/lib/genshin_object.rb +8 -5
  43. data/lib/teyvatdb/version.rb +1 -1
  44. data/lib/teyvatdb.rb +3 -3
  45. metadata +8 -2
@@ -1,57 +1,60 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module GenshinData::Nations
4
- module NationData
5
- def self.all
6
- self.constants.map { |x| "GenshinData::Nations::NationData::#{x}".constantize }
3
+ module GenshinData
4
+ module Nations
5
+ # Defined Nation Information
6
+ module NationData
7
+ def self.all
8
+ constants.map { |x| GenshinData::Nations::NationData.const_get(x) }
9
+ end
10
+
11
+ FONTAINE = GenshinObject::Nation.new(
12
+ order: 5,
13
+ name: "fontaine",
14
+ pretty_name: "Fontaine"
15
+ ).freeze
16
+
17
+ INAZUMA = GenshinObject::Nation.new(
18
+ order: 3,
19
+ name: "inazuma",
20
+ pretty_name: "Inazuma"
21
+ ).freeze
22
+
23
+ LIYUE = GenshinObject::Nation.new(
24
+ order: 2,
25
+ name: "liyue",
26
+ pretty_name: "Liyue"
27
+ ).freeze
28
+
29
+ MONDSTADT = GenshinObject::Nation.new(
30
+ order: 1,
31
+ name: "mondstadt",
32
+ pretty_name: "Mondstadt"
33
+ ).freeze
34
+
35
+ NATLAN = GenshinObject::Nation.new(
36
+ order: 6,
37
+ name: "natlan",
38
+ pretty_name: "Natlan"
39
+ ).freeze
40
+
41
+ SNEZHNAYA = GenshinObject::Nation.new(
42
+ order: 7,
43
+ name: "snezhnaya",
44
+ pretty_name: "Snezhnaya"
45
+ ).freeze
46
+
47
+ SUMERU = GenshinObject::Nation.new(
48
+ order: 4,
49
+ name: "sumeru",
50
+ pretty_name: "Sumeru"
51
+ ).freeze
52
+
53
+ UNKNOWN = GenshinObject::Nation.new(
54
+ order: 8,
55
+ name: "unknown",
56
+ pretty_name: "Unknown"
57
+ ).freeze
7
58
  end
8
-
9
- FONTAINE = GenshinObject::Nation.new(
10
- order: 5,
11
- name: "fontaine",
12
- pretty_name: "Fontaine"
13
- ).freeze
14
-
15
- INAZUMA = GenshinObject::Nation.new(
16
- order: 3,
17
- name: "inazuma",
18
- pretty_name: "Inazuma"
19
- ).freeze
20
-
21
- LIYUE = GenshinObject::Nation.new(
22
- order: 2,
23
- name: "liyue",
24
- pretty_name: "Liyue"
25
- ).freeze
26
-
27
- MONDSTADT = GenshinObject::Nation.new(
28
- order: 1,
29
- name: "mondstadt",
30
- pretty_name: "Mondstadt"
31
- ).freeze
32
-
33
- NATLAN = GenshinObject::Nation.new(
34
- order: 6,
35
- name: "natlan",
36
- pretty_name: "Natlan"
37
- ).freeze
38
-
39
- SNEZHNAYA = GenshinObject::Nation.new(
40
- order: 7,
41
- name: "snezhnaya",
42
- pretty_name: "Snezhnaya"
43
- ).freeze
44
-
45
- SUMERU = GenshinObject::Nation.new(
46
- order: 4,
47
- name: "sumeru",
48
- pretty_name: "Sumeru"
49
- ).freeze
50
-
51
- UNKNOWN = GenshinObject::Nation.new(
52
- order: 8,
53
- name: "unknown",
54
- pretty_name: "Unknown"
55
- ).freeze
56
59
  end
57
60
  end
@@ -0,0 +1,147 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GenshinData
4
+ module TalentBooks
5
+ # Definitons for all in game Talent Book Types
6
+ module TalentBookData
7
+ def self.all
8
+ constants.map { |x| GenshinData::TalentBooks::TalentBookData.const_get(x) }
9
+ end
10
+
11
+ ADMONITION = GenshinObject::TalentBook.new(
12
+ family: :admonition,
13
+ name: "Admonition",
14
+ nation_name: :sumeru,
15
+ schedule: GenshinObject::Schedule.new(
16
+ mon_thurs: true
17
+ )
18
+ )
19
+
20
+ BALLAD = GenshinObject::TalentBook.new(
21
+ family: :ballad,
22
+ name: "Ballad",
23
+ nation_name: :mondstadt,
24
+ schedule: GenshinObject::Schedule.new(
25
+ wed_sat: true
26
+ )
27
+ )
28
+
29
+ DILIGENCE = GenshinObject::TalentBook.new(
30
+ family: :diligence,
31
+ name: "Diligence",
32
+ nation_name: :inazuma,
33
+ schedule: GenshinObject::Schedule.new(
34
+ tues_fri: true
35
+ )
36
+ )
37
+
38
+ ELEGANCE = GenshinObject::TalentBook.new(
39
+ family: :elegance,
40
+ name: "Elegance",
41
+ nation_name: :inazuma,
42
+ schedule: GenshinObject::Schedule.new(
43
+ tues_fri: true
44
+ )
45
+ )
46
+
47
+ EQUITY = GenshinObject::TalentBook.new(
48
+ family: :equity,
49
+ name: "Equity",
50
+ nation_name: :fontaine,
51
+ schedule: GenshinObject::Schedule.new(
52
+ mon_thurs: true
53
+ )
54
+ )
55
+
56
+ FREEDOM = GenshinObject::TalentBook.new(
57
+ family: :freedom,
58
+ name: "Freedom",
59
+ nation_name: :mondstadt,
60
+ schedule: GenshinObject::Schedule.new(
61
+ mon_thurs: true
62
+ )
63
+ )
64
+
65
+ GOLD = GenshinObject::TalentBook.new(
66
+ family: :gold,
67
+ name: "Gold",
68
+ nation_name: :liyue,
69
+ schedule: GenshinObject::Schedule.new(
70
+ wed_sat: true
71
+ )
72
+ )
73
+
74
+ INGENUITY = GenshinObject::TalentBook.new(
75
+ family: :ingenuity,
76
+ name: "Ingenuity",
77
+ nation_name: :sumeru,
78
+ schedule: GenshinObject::Schedule.new(
79
+ tues_fri: true
80
+ )
81
+ )
82
+
83
+ JUSTICE = GenshinObject::TalentBook.new(
84
+ family: :justice,
85
+ name: "Justice",
86
+ nation_name: :fontaine,
87
+ schedule: GenshinObject::Schedule.new(
88
+ tues_fri: true
89
+ )
90
+ )
91
+
92
+ LIGHT = GenshinObject::TalentBook.new(
93
+ family: :light,
94
+ name: "Light",
95
+ nation_name: :inazuma,
96
+ schedule: GenshinObject::Schedule.new(
97
+ wed_sat: true
98
+ )
99
+ )
100
+
101
+ ORDER = GenshinObject::TalentBook.new(
102
+ family: :order,
103
+ name: "Order",
104
+ nation_name: :fontaine,
105
+ schedule: GenshinObject::Schedule.new(
106
+ wed_sat: true
107
+ )
108
+ )
109
+
110
+ PRAXIS = GenshinObject::TalentBook.new(
111
+ family: :praxis,
112
+ name: "Praxis",
113
+ nation_name: :sumeru,
114
+ schedule: GenshinObject::Schedule.new(
115
+ wed_sat: true
116
+ )
117
+ )
118
+
119
+ PROSPERITY = GenshinObject::TalentBook.new(
120
+ family: :prosperity,
121
+ name: "Prosperity",
122
+ nation_name: :liyue,
123
+ schedule: GenshinObject::Schedule.new(
124
+ mon_thurs: true
125
+ )
126
+ )
127
+
128
+ RESISTANCE = GenshinObject::TalentBook.new(
129
+ family: :resistance,
130
+ name: "resistance",
131
+ nation_name: :mondstadt,
132
+ schedule: GenshinObject::Schedule.new(
133
+ tues_fri: true
134
+ )
135
+ )
136
+
137
+ TRANSIENCE = GenshinObject::TalentBook.new(
138
+ family: :transience,
139
+ name: "Transience",
140
+ nation_name: :inazuma,
141
+ schedule: GenshinObject::Schedule.new(
142
+ mon_thurs: true
143
+ )
144
+ )
145
+ end
146
+ end
147
+ end
@@ -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