rubicure 0.0.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.
data/config/girls.yml ADDED
@@ -0,0 +1,430 @@
1
+ # unmarked
2
+ cure_black: &cure_black
3
+ human_name: 美墨なぎさ
4
+ precure_name: キュアブラック
5
+ transform_message: |
6
+ デュアル・オーロラ・ウェイブ!!
7
+ 光の使者、キュアブラック!
8
+ ふたりはプリキュア!
9
+ 闇の力のしもべ達よ!
10
+ とっととお家に帰りなさい!
11
+ extra_names:
12
+ cure_white: &cure_white
13
+ human_name: 雪城ほのか
14
+ precure_name: キュアホワイト
15
+ transform_message: |
16
+ デュアル・オーロラ・ウェイブ!!
17
+ 光の使者、キュアホワイト!
18
+ ふたりはプリキュア!
19
+ 闇の力のしもべ達よ!
20
+ とっととお家に帰りなさい!
21
+ extra_names:
22
+ black:
23
+ <<: *cure_black
24
+ white:
25
+ <<: *cure_white
26
+
27
+ # max_heart
28
+ shiny_luminous: &shiny_luminous
29
+ human_name: 九条ひかり
30
+ precure_name: シャイニールミナス
31
+ transform_message: |
32
+ ルミナス・シャイニングストリーム!
33
+ 輝く命、シャイニールミナス!
34
+ 光の心と光の意志、すべてを一つにするために!
35
+ extra_names:
36
+ luminous:
37
+ <<: *shiny_luminous
38
+
39
+ # splash_star
40
+ cure_bloom: &cure_bloom
41
+ human_name: 日向咲
42
+ precure_name: キュアブルーム
43
+ transform_message: |
44
+ デュアル・スピリチュアル・パワー!
45
+ 花開け大地に!
46
+ 輝く金の花! キュアブルーム!
47
+ ふたりはプリキュア!
48
+ 聖なる泉を汚す者よ!
49
+ 阿漕な真似はお止めなさい!
50
+ extra_names:
51
+ - キュアブライト
52
+ cure_egret: &cure_egret
53
+ human_name: 美翔舞
54
+ precure_name: キュアイーグレット
55
+ transform_message: |
56
+ デュアル・スピリチュアル・パワー!
57
+ 羽ばたけ空に!
58
+ 煌めく銀の翼! キュアイーグレット!
59
+ ふたりはプリキュア!
60
+ 聖なる泉を汚す者よ!
61
+ 阿漕な真似はお止めなさい!
62
+ extra_names:
63
+ - キュアウィンディ
64
+ bloom:
65
+ <<: *cure_bloom
66
+ egret:
67
+ <<: *cure_egret
68
+
69
+ # yes
70
+ cure_dream: &cure_dream
71
+ human_name: 夢原のぞみ
72
+ precure_name: キュアドリーム
73
+ transform_message: |
74
+ プリキュア!メタモルフォーゼ!
75
+ 大いなる希望の力、キュアドリーム!
76
+ 希望の力と未来の光!
77
+ 華麗に羽ばたく5つの心!
78
+ Yes!プリキュア5!
79
+ extra_names:
80
+ cure_rouge: &cure_rouge
81
+ human_name: 夏木りん
82
+ precure_name: キュアルージュ
83
+ transform_message: |
84
+ プリキュア!メタモルフォーゼ!
85
+ 情熱の赤い炎、キュアルージュ!
86
+ 希望の力と未来の光!
87
+ 華麗に羽ばたく5つの心!
88
+ Yes!プリキュア5!
89
+ extra_names:
90
+ cure_lemonade: &cure_lemonade
91
+ human_name: 春日野うらら
92
+ precure_name: キュアレモネード
93
+ transform_message: |
94
+ プリキュア!メタモルフォーゼ!
95
+ はじけるレモンの香り、キュアレモネード!
96
+ 希望の力と未来の光!
97
+ 華麗に羽ばたく5つの心!
98
+ Yes!プリキュア5!
99
+ extra_names:
100
+ cure_mint: &cure_mint
101
+ human_name: 秋元こまち
102
+ precure_name: キュアミント
103
+ transform_message: |
104
+ プリキュア!メタモルフォーゼ!
105
+ 安らぎの緑の大地、キュアミント!
106
+ 希望の力と未来の光!
107
+ 華麗に羽ばたく5つの心!
108
+ Yes!プリキュア5!
109
+ extra_names:
110
+ cure_aqua: &cure_aqua
111
+ human_name: 水無月かれん
112
+ precure_name: キュアアクア
113
+ transform_message: |
114
+ プリキュア!メタモルフォーゼ!
115
+ 知性の青き泉、キュアアクア!
116
+ 希望の力と未来の光!
117
+ 華麗に羽ばたく5つの心!
118
+ Yes!プリキュア5!
119
+ extra_names:
120
+ dream:
121
+ <<: *cure_dream
122
+ rouge:
123
+ <<: *cure_rouge
124
+ lemonade:
125
+ <<: *cure_lemonade
126
+ mint:
127
+ <<: *cure_mint
128
+ aqua:
129
+ <<: *cure_aqua
130
+
131
+ # yes_gogo
132
+ milky_rose: &milky_rose
133
+ human_name: 美々野くるみ
134
+ precure_name: ミルキィローズ
135
+ transform_message: |
136
+ スカイローズ・トランスレイト!
137
+ 青いバラは秘密のしるし! ミルキィローズ!
138
+ extra_names:
139
+ rose:
140
+ <<: *milky_rose
141
+
142
+ # flesh
143
+ cure_peach: &cure_peach
144
+ human_name: 桃園ラブ
145
+ precure_name: キュアピーチ
146
+ transform_message: |
147
+ チェインジ!プリキュア・ビートアップ!
148
+ ピンクのハートは愛あるしるし!
149
+ もぎたてフレッシュ、キュアピーチ!
150
+ レッツプリキュア!
151
+ extra_names:
152
+ - キュアエンジェルピーチ
153
+ cure_berry: &cure_berry
154
+ human_name: 蒼乃美希
155
+ precure_name: キュアベリー
156
+ transform_message: |
157
+ チェインジ!プリキュア・ビートアップ!
158
+ ブルーのハートは希望のしるし!
159
+ つみたてフレッシュ、キュアベリー!
160
+ レッツプリキュア!
161
+ extra_names:
162
+ - キュアエンジェルベリー
163
+ cure_pine: &cure_pine
164
+ human_name: 山吹祈里
165
+ precure_name: キュアパイン
166
+ transform_message: |
167
+ チェインジ!プリキュア・ビートアップ!
168
+ イエローハートは祈りのしるし!
169
+ とれたてフレッシュ、キュアパイン!
170
+ レッツプリキュア!
171
+ extra_names:
172
+ - キュアエンジェルパイン
173
+ cure_passion: &cure_passion
174
+ human_name: 東せつな
175
+ precure_name: キュアパッション
176
+ transform_message: |
177
+ チェインジ!プリキュア・ビートアップ!
178
+ 真っ赤なハートは幸せの証!
179
+ 熟れたてフレッシュ、キュアパッション!
180
+ レッツプリキュア!
181
+ extra_names:
182
+ - キュアエンジェルパッション
183
+ peach:
184
+ <<: *cure_peach
185
+ berry:
186
+ <<: *cure_berry
187
+ pine:
188
+ <<: *cure_pine
189
+ passion:
190
+ <<: *cure_passion
191
+
192
+ # heart_catch
193
+ cure_blossom: &cure_blossom
194
+ human_name: 花咲つぼみ
195
+ precure_name: キュアブロッサム
196
+ transform_message: |
197
+ (プリキュアの種、いくですぅ!)
198
+ プリキュア!オープンマイハート!
199
+ 大地に咲く一輪の花! キュアブロッサム!
200
+ ハートキャッチ、プリキュア!
201
+ extra_names:
202
+ - スーパーキュアブロッサム
203
+ cure_marine: &cure_marine
204
+ human_name: 来海えりか
205
+ precure_name: キュアマリン
206
+ transform_message: |
207
+ (プリキュアの種、いくですぅ!)
208
+ プリキュア!オープンマイハート!
209
+ 海風に揺れる一輪の花! キュアマリン!
210
+ ハートキャッチ、プリキュア!
211
+ extra_names:
212
+ - スーパーキュアマリン
213
+ cure_sunshine: &cure_sunshine
214
+ human_name: 明堂院いつき
215
+ precure_name: キュアサンシャイン
216
+ transform_message: |
217
+ (プリキュアの種、いくですぅ!)
218
+ プリキュア!オープンマイハート!
219
+ 陽の光浴びる一輪の花! キュアサンシャイン!
220
+ ハートキャッチ、プリキュア!
221
+ extra_names:
222
+ - スーパーキュアサンシャイン
223
+ cure_moonlight: &cure_moonlight
224
+ human_name: 月影ゆり
225
+ precure_name: キュアムーンライト
226
+ transform_message: |
227
+ (プリキュアの種、いくですぅ!)
228
+ プリキュア!オープンマイハート!
229
+ 月光に冴える一輪の花 キュアムーンライト!
230
+ ハートキャッチ、プリキュア!
231
+ extra_names:
232
+ - スーパーキュアムーンライト
233
+ blossom:
234
+ <<: *cure_blossom
235
+ marine:
236
+ <<: *cure_marine
237
+ sunshine:
238
+ <<: *cure_sunshine
239
+ moonlight:
240
+ <<: *cure_moonlight
241
+
242
+ # suite
243
+ cure_melody: &cure_melody
244
+ human_name: 北条響
245
+ precure_name: キュアメロディ
246
+ transform_message: |
247
+ レッツプレイ!プリキュアモジュレーション!!
248
+ 爪弾くは荒ぶる調べ! キュアメロディ!
249
+ 響け4人の組曲!スイートプリキュア!
250
+ extra_names:
251
+ - クレッシェンドメロディ
252
+ cure_rhythm: &cure_rhythm
253
+ human_name: 南野奏
254
+ precure_name: キュアリズム
255
+ transform_message: |
256
+ レッツプレイ!プリキュアモジュレーション!!
257
+ 爪弾くはたおやかな調べ! キュアリズム!
258
+ 響け4人の組曲!スイートプリキュア!
259
+ extra_names:
260
+ - クレッシェンドリズム
261
+ cure_beat: &cure_beat
262
+ human_name: 黒川エレン
263
+ precure_name: キュアビート
264
+ transform_message: |
265
+ レッツプレイ!プリキュアモジュレーション!!
266
+ 爪弾くは魂の調べ! キュアビート!
267
+ 響け4人の組曲!スイートプリキュア!
268
+ extra_names:
269
+ - クレッシェンドビート
270
+ cure_muse: &cure_muse
271
+ human_name: 調辺アコ
272
+ precure_name: キュアミューズ
273
+ transform_message: |
274
+ レッツプレイ!プリキュアモジュレーション!!
275
+ 爪弾くは女神の調べ! キュアミューズ!
276
+ 響け4人の組曲!スイートプリキュア!
277
+ extra_names:
278
+ - クレッシェンドミューズ
279
+ melody:
280
+ <<: *cure_melody
281
+ rhythm:
282
+ <<: *cure_rhythm
283
+ beat:
284
+ <<: *cure_beat
285
+ muse:
286
+ <<: *cure_muse
287
+
288
+ # smile
289
+ cure_happy: &cure_happy
290
+ human_name: 星空みゆき
291
+ precure_name: キュアハッピー
292
+ transform_message: |
293
+ (レディ?)
294
+ プリキュア・スマイルチャージ!
295
+ (ゴー!ゴー!レッツ・ゴー!ハッピー!!)
296
+ キラキラ輝く未来の光! キュアハッピー!
297
+ 5つの光が導く未来!
298
+ 輝け!スマイルプリキュア!
299
+ extra_names:
300
+ - プリンセスハッピー
301
+ - ウルトラハッピー
302
+ cure_sunny: &cure_sunny
303
+ human_name: 日野あかね
304
+ precure_name: キュアサニー
305
+ transform_message: |
306
+ (レディ?)
307
+ プリキュア・スマイルチャージ!
308
+ (ゴー!ゴー!レッツ・ゴー!サニー!!)
309
+ 太陽サンサン熱血パワー! キュアサニー!
310
+ 5つの光が導く未来!
311
+ 輝け!スマイルプリキュア!
312
+ extra_names:
313
+ - プリンセスサニー
314
+ - ウルトラサニー
315
+ cure_peace: &cure_peace
316
+ human_name: 黄瀬やよい
317
+ precure_name: キュアピース
318
+ transform_message: |
319
+ (レディ?)
320
+ プリキュア・スマイルチャージ!
321
+ (ゴー!ゴー!レッツ・ゴー!ピース!!)
322
+ ピカピカピカリンジャンケンポン! キュアピース!
323
+ 5つの光が導く未来!
324
+ 輝け!スマイルプリキュア!
325
+ extra_names:
326
+ - プリンセスピース
327
+ - ウルトラピース
328
+ cure_march: &cure_march
329
+ human_name: 緑川なお
330
+ precure_name: キュアマーチ
331
+ transform_message: |
332
+ (レディ?)
333
+ プリキュア・スマイルチャージ!
334
+ (ゴー!ゴー!レッツ・ゴー!マーチ!!)
335
+ 勇気リンリン直球勝負! キュアマーチ!
336
+ 5つの光が導く未来!
337
+ 輝け!スマイルプリキュア!
338
+ extra_names:
339
+ - プリンセスマーチ
340
+ - ウルトラマーチ
341
+ cure_beauty: &cure_beauty
342
+ human_name: 青木れいか
343
+ precure_name: キュアビューティ
344
+ transform_message: |
345
+ (レディ?)
346
+ プリキュア・スマイルチャージ!
347
+ (ゴー!ゴー!レッツ・ゴー!ビューティ!!)
348
+ しんしんと降り積もる清き心! キュアビューティ!
349
+ 5つの光が導く未来!
350
+ 輝け!スマイルプリキュア!
351
+ extra_names:
352
+ - プリンセスビューティ
353
+ - ウルトラビューティ
354
+ happy:
355
+ <<: *cure_happy
356
+ sunny:
357
+ <<: *cure_sunny
358
+ peace:
359
+ <<: *cure_peace
360
+ march:
361
+ <<: *cure_march
362
+ beauty:
363
+ <<: *cure_beauty
364
+
365
+ # dokidoki
366
+ cure_heart: &cure_heart
367
+ human_name: 相田マナ
368
+ precure_name: キュアハート
369
+ transform_message: |
370
+ プリキュアラブリンク!
371
+ L! O! V! E!
372
+ みなぎる愛! キュアハート!
373
+ 響け愛の鼓動!ドキドキプリキュア!
374
+ 愛を無くした悲しいジコチューさん、
375
+ このキュアハートがあなたのドキドキ取り戻してみせる!
376
+ extra_names:
377
+ cure_diamond: &cure_diamond
378
+ human_name: 菱川六花
379
+ precure_name: キュアダイヤモンド
380
+ transform_message: |-
381
+ プリキュアラブリンク!
382
+ L! O! V! E!
383
+ 英知の光! キュアダイヤモンド!
384
+ 響け愛の鼓動!ドキドキプリキュア!
385
+ 人の思いを踏みにじるなんて許せない、
386
+ このキュアダイヤモンドがあなたの頭を冷やしてあげる!
387
+ extra_names:
388
+ cure_rosetta: &cure_rosetta
389
+ human_name: 四葉ありす
390
+ precure_name: キュアロゼッタ
391
+ transform_message: |
392
+ プリキュアラブリンク!
393
+ L! O! V! E!
394
+ ひだまりポカポカ キュアロゼッタ!
395
+ 響け愛の鼓動!ドキドキプリキュア!
396
+ 世界を制するのは愛だけです、
397
+ さぁ、あなたも私と愛を育んでくださいな
398
+ extra_names:
399
+ cure_sword: &cure_sword
400
+ human_name: 剣崎真琴
401
+ precure_name: キュアソード
402
+ transform_message: |
403
+ プリキュアラブリンク!
404
+ L! O! V! E!
405
+ 勇気の刃! キュアソード!
406
+ 響け愛の鼓動!ドキドキプリキュア!
407
+ このキュアソードが愛の剣で
408
+ あなたの野望を断ち切ってみせる!
409
+ extra_names:
410
+ cure_ace: &cure_ace
411
+ human_name: 円亜久里
412
+ precure_name: キュアエース
413
+ transform_message: |
414
+ プリキュアドレスアップ!
415
+ (キュピラッパー!)
416
+ 愛の切り札! キュアエース!
417
+ 響け愛の鼓動!ドキドキプリキュア!
418
+ 美しさは正義の証し、ウインク一つで、
419
+ あなたのハートを射抜いて差し上げますわ
420
+ extra_names:
421
+ heart:
422
+ <<: *cure_heart
423
+ diamond:
424
+ <<: *cure_diamond
425
+ rosetta:
426
+ <<: *cure_rosetta
427
+ sword:
428
+ <<: *cure_sword
429
+ ace:
430
+ <<: *cure_ace
data/config/series.yml ADDED
@@ -0,0 +1,133 @@
1
+ unmarked: &unmarked
2
+ title: ふたりはプリキュア
3
+ started_date: 2004-02-01
4
+ ended_date: 2005-01-30
5
+ girls:
6
+ - cure_black
7
+ - cure_white
8
+ futari_wa_pretty_cure:
9
+ <<: *unmarked
10
+
11
+ max_heart: &max_heart
12
+ title: ふたりはプリキュア Max Heart
13
+ started_date: 2005-02-06
14
+ ended_date: 2006-01-29
15
+ girls:
16
+ - cure_black
17
+ - cure_white
18
+ - shiny_luminous
19
+ futari_wa_pretty_cure_max_heart:
20
+ <<: *max_heart
21
+
22
+ splash_star: &splash_star
23
+ title: ふたりはプリキュア Splash Star
24
+ started_date: 2006-02-05
25
+ ended_date: 2007-01-28
26
+ girls:
27
+ - cure_bloom
28
+ - cure_egret
29
+ futari_wa_pretty_cure_splash_star:
30
+ <<: *splash_star
31
+
32
+ "yes": &yes
33
+ title: Yes! プリキュア5
34
+ started_date: 2007-02-04
35
+ ended_date: 2008-01-27
36
+ girls:
37
+ - cure_dream
38
+ - cure_rouge
39
+ - cure_lemonade
40
+ - cure_mint
41
+ - cure_aqua
42
+ yes_precure_five:
43
+ <<: *yes
44
+ yes_precure5:
45
+ <<: *yes
46
+
47
+ yes_gogo: &yes_gogo
48
+ title: Yes! プリキュア5 Go Go!
49
+ started_date: 2008-02-03
50
+ ended_date: 2009-01-25
51
+ girls:
52
+ - cure_dream
53
+ - cure_rouge
54
+ - cure_lemonade
55
+ - cure_mint
56
+ - cure_aqua
57
+ - milky_rose
58
+ yes_precure_five_gogo:
59
+ <<: *yes_gogo
60
+ yes_precure5_gogo:
61
+ <<: *yes_gogo
62
+
63
+ flesh: &flesh
64
+ title: フレッシュプリキュア!
65
+ started_date: 2009-02-01
66
+ ended_date: 2010-01-31
67
+ girls:
68
+ - cure_peach
69
+ - cure_berry
70
+ - cure_pine
71
+ - cure_passion
72
+ flesh_precure:
73
+ <<: *flesh
74
+
75
+ heart_catch: &heart_catch
76
+ title: ハートキャッチプリキュア!
77
+ started_date: 2010-02-07
78
+ ended_date: 2011-01-30
79
+ girls:
80
+ - cure_blossom
81
+ - cure_marine
82
+ - cure_sunshine
83
+ - cure_moonlight
84
+ heart_catch_precure:
85
+ <<: *heart_catch
86
+
87
+ suite: &suite
88
+ title: スイートプリキュア♪
89
+ started_date: 2011-02-06
90
+ ended_date: 2012-01-29
91
+ girls:
92
+ - cure_melody
93
+ - cure_rhythm
94
+ - cure_beat
95
+ - cure_muse
96
+ suite_precure:
97
+ <<: *suite
98
+
99
+ smile: &smile
100
+ title: スマイルプリキュア!
101
+ started_date: 2012-02-05
102
+ ended_date: 2013-01-27
103
+ girls:
104
+ - cure_happy
105
+ - cure_sunny
106
+ - cure_peace
107
+ - cure_march
108
+ - cure_beauty
109
+ smile_precure:
110
+ <<: *smile
111
+
112
+ dokidoki: &dokidoki
113
+ title: ドキドキ!プリキュア
114
+ started_date: 2013-02-03
115
+ ended_date: 2014-01-26
116
+ girls:
117
+ - cure_heart
118
+ - cure_diamond
119
+ - cure_rosetta
120
+ - cure_sword
121
+ - cure_ace
122
+ dokidoki_precure:
123
+ <<: *dokidoki
124
+
125
+ #happiness_charge: &happiness_charge
126
+ # title: ハピネスチャージプリキュア!
127
+ # started_date: 2014-02-
128
+ # ended_date: 2015-01-
129
+ # girls:
130
+ # - cure_lovely
131
+ # - cure_princess
132
+ #happiness_charge_precure:
133
+ # <<: *happiness_charge
@@ -0,0 +1,46 @@
1
+ module Rubicure
2
+ require "singleton"
3
+
4
+ class Core
5
+ include Singleton
6
+
7
+ def method_missing(name, *args)
8
+ unmarked_precure = Rubicure::Series::find(:unmarked)
9
+
10
+ if Rubicure::Series::valid?(name)
11
+ Rubicure::Series::find(name)
12
+ elsif unmarked_precure.respond_to?(name)
13
+ unmarked_precure.send(name, *args)
14
+ else
15
+ super
16
+ end
17
+ end
18
+
19
+ # @return [Series] current precure
20
+ # @raise not onair!
21
+ def now
22
+ current_time = Time.now
23
+ Rubicure::Series.names.each do |name|
24
+ series = Rubicure::Series.find(name)
25
+ return series if series.on_air?(current_time)
26
+ end
27
+ raise "Not on air precure!"
28
+ end
29
+
30
+ alias :current :now
31
+
32
+ # @return [Array<Rubicure::Girl>]
33
+ def all_stars
34
+ unless @all_stars
35
+ @all_stars = []
36
+ Rubicure::Girl.names.each do |girl_name|
37
+ @all_stars << Rubicure::Girl.find(girl_name)
38
+ end
39
+
40
+ @all_stars.uniq!{|girl| girl.precure_name }
41
+ end
42
+
43
+ @all_stars
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,86 @@
1
+ module Rubicure
2
+ class Girl
3
+ attr_reader :human_name, :precure_name, :transform_message, :extra_names, :current_state, :state_names
4
+
5
+ @@cache = {}
6
+ @@config = nil
7
+
8
+ def initialize(human_name: nil, precure_name: nil, transform_message: nil, extra_names: [])
9
+ @human_name = human_name
10
+ @precure_name = precure_name
11
+ @transform_message = transform_message
12
+ @extra_names = extra_names || []
13
+ @current_state = 0
14
+ @state_names = [@human_name, @precure_name]
15
+ @state_names += @extra_names unless @extra_names.empty?
16
+ end
17
+
18
+ # @return [String] name of current form
19
+ def name
20
+ @state_names[@current_state]
21
+ end
22
+
23
+ # human -> precure ( -> extra forms ) -> human ...
24
+ # @return [Rubicure::Girl] self
25
+ def transform!
26
+ @current_state += 1
27
+ @current_state = 0 unless @current_state < @state_names.length
28
+
29
+ puts @transform_message if @current_state == 1
30
+
31
+ self
32
+ end
33
+
34
+ def humanize
35
+ @current_state = 0
36
+ end
37
+
38
+ # @param girl_name [Symbol]
39
+ # @return [Rubicure::Girl]
40
+ def self.find(girl_name)
41
+ raise "unknown girl: #{girl_name}" unless valid?(girl_name)
42
+
43
+ unless @@cache[girl_name]
44
+ girl_config = config[girl_name] || {}
45
+ @@cache[girl_name] = Rubicure::Girl.new(girl_config)
46
+ end
47
+
48
+ @@cache[girl_name]
49
+ end
50
+
51
+ # @return [Array<Symbol>]
52
+ def self.names
53
+ config.keys
54
+ end
55
+
56
+ # @return [Array<Symbol>]
57
+ def self.uniq_names
58
+ uniq_names = []
59
+ config.each do |name, series|
60
+ uniq_names << name unless uniq_names.any?{|uniq_name| config[uniq_name][:precure_name] == series[:precure_name] }
61
+ end
62
+ uniq_names
63
+ end
64
+
65
+ # @return [Hash] content of config/girls.yml
66
+ def self.config
67
+ unless @@config
68
+ config_file = "#{File.dirname(__FILE__)}/../../config/girls.yml"
69
+ @@config = YAML.load_file(config_file).deep_symbolize_keys
70
+ end
71
+ @@config
72
+ end
73
+
74
+ # @return [Hash] content of config/precure.yml
75
+ def self.reload_config!
76
+ @@cache = {}
77
+ @@config = nil
78
+ config
79
+ end
80
+
81
+ # @param [Symbol] girl_name
82
+ def self.valid?(girl_name)
83
+ names.include?(girl_name)
84
+ end
85
+ end
86
+ end