bcdice 3.6.0 → 3.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,648 @@
1
+ # frozen_string_literal: true
2
+
3
+ module BCDice
4
+ module GameSystem
5
+ class IfIfIf < Base
6
+ ID = "IfIfIf"
7
+
8
+ # ゲームシステム名
9
+ NAME = "イフ・イフ・イフ"
10
+
11
+ # ゲームシステム名の読みがな
12
+ SORT_KEY = "いふいふいふ"
13
+
14
+ HELP_MESSAGE = <<~TEXT
15
+ 100の質問:HQT
16
+ ハイリスク歪み表:HDT
17
+ ローリスク歪み表:LDT
18
+ 「HQT1」「LDT4」のように、表の後ろに数字を付けることで、10個の表から個別に振ることができます。
19
+ 致命的な歪みの回避:ID
20
+ 改竄判定:IM
21
+ 強制改竄判定:IE
22
+ TEXT
23
+
24
+ def eval_game_system_specific_command(command)
25
+ return check_action(command) || roll_tables(command, TABLES)
26
+ end
27
+
28
+ def check_action(command)
29
+ case command
30
+ when "ID"
31
+ eval_common_command("3TY6")
32
+ when "IE"
33
+ dicearr = @randomizer.roll_barabara(3, 6)
34
+ success = dicearr.count(6) == 3
35
+ success_count = dicearr.count(6)
36
+ if success
37
+ Result.success("(3B6=6) > #{dicearr.join(',')} > 6の数:#{success_count}")
38
+ else
39
+ Result.failure("(3B6=6) > #{dicearr.join(',')} > 6の数:#{success_count} 不足数:#{3 - success_count}")
40
+ end
41
+ when "IM"
42
+ dicearr = @randomizer.roll_barabara(3, 6)
43
+ success_count = dicearr.count(6)
44
+ if success_count == 0
45
+ Result.failure("(3B6=6) > #{dicearr.join(',')} > 6の数:#{success_count} 選べるエンド数:#{success_count + 1}")
46
+ else
47
+ Result.success("(3B6=6) > #{dicearr.join(',')} > 6の数:#{success_count} 選べるエンド数:#{success_count + 1}")
48
+ end
49
+ else
50
+ return nil
51
+ end
52
+ end
53
+
54
+ HQT1 = DiceTable::Table.new(
55
+ "100の質問表その1‐印象質問",
56
+ "1D10",
57
+ [
58
+ "相手の好きなところはどこですか?",
59
+ "相手の苦手なところはどこですか?",
60
+ "相手の尊敬できるところはどこですか?",
61
+ "相手の容姿についてどう思っていますか?",
62
+ "相手の才能についてどう思っていますか?",
63
+ "相手の趣味についてどう思っていますか?",
64
+ "相手の価値観についてどう思っていますか?",
65
+ "相手について理解できないところはどこですか?",
66
+ "相手について心配なところはどこですか?",
67
+ "相手の第一印象と今の印象で変化した点はどこですか?",
68
+ ]
69
+ )
70
+
71
+ HQT2 = DiceTable::Table.new(
72
+ "100の質問表その2‐日常質問",
73
+ "1D10",
74
+ [
75
+ "ふたりの関係性を一言で表すなら?",
76
+ "二人の日常はどんな様子ですか?",
77
+ "「なんの予定もない、一緒にいる休日」の過ごし方はどんな風ですか?",
78
+ "ふたりの最初の出会いはどんな風でしたか?",
79
+ "ふたりで食事をするときは、どんな様子ですか?",
80
+ "ふたりで買い物をするときは、どんな様子ですか?",
81
+ "ふたりで一緒に寝ることはありますか? あるなら、どんな様子ですか?",
82
+ "ふたりで最近ハマっていることってありますか?",
83
+ "相手といると緊張しますか? 安心しますか?",
84
+ "相手への愚痴ってありますか? この際言っちゃいましょう!"
85
+ ]
86
+ )
87
+
88
+ HQT3 = DiceTable::Table.new(
89
+ "100の質問表その3‐汎用思い出質問",
90
+ "1D10",
91
+ [
92
+ "喧嘩した思い出はありますか? 詳しく語ってください!",
93
+ "相手を看病した時の思い出はありますか? 詳しく語ってください!",
94
+ "相手からの贈り物で印象深いものはありますか?",
95
+ "ふたりで約束してることはありますか? 教えてください!",
96
+ "お互いしか知らない秘密はありますか? 教えてください!",
97
+ "相手を泣かせた思い出はありますか? 詳しく語ってください!",
98
+ "ふたりで犬 or 猫を目の前にしたときの思い出はありますか?詳しく語ってください!",
99
+ "ふたりでどこかに閉じ込められた思い出はありますか? 詳しく語ってください!",
100
+ "ふたりで旅(旅行)をした思い出はありますか? 詳しく語ってください!",
101
+ "ふたりでいてドキドキした思い出はありますか? 詳しく語ってください!",
102
+ ]
103
+ )
104
+
105
+ HQT4 = DiceTable::Table.new(
106
+ "100の質問表その4‐情景思い出質問",
107
+ "1D10",
108
+ [
109
+ "ふたりで夜明けを迎えたときの思い出を語ってくれますか?",
110
+ "ふたりで星を見た思い出を語ってくれますか?",
111
+ "ふたりで海に行った思い出を語ってくれますか?",
112
+ "ふたりで暗闇で過ごした思い出を語ってくれますか?",
113
+ "ふたりで炎に巻かれた思い出を語ってくれますか?",
114
+ "ふたりで花畑で過ごした思い出を語ってくれますか?",
115
+ "ふたりで森で過ごした思い出を語ってくれますか?",
116
+ "ふたりで砂漠を歩いた思い出を語ってくれますか?",
117
+ "ふたりで廃墟を歩いた思い出をかたってくれますか?",
118
+ "ふたりで突然雨に降られたときの思い出を語ってくれますか?",
119
+ ]
120
+ )
121
+
122
+ HQT5 = DiceTable::Table.new(
123
+ "100の質問表その5‐内緒の質問(オフレコ推奨)",
124
+ "1D10",
125
+ [
126
+ "相手に絶対に知られたくない秘密ってありますか? 教えてください!",
127
+ "相手に嘘をついていることはありますか? 教えてください!",
128
+ "相手に知られたら引かれそうなことってありますか? 教えてください!",
129
+ "相手に知られたら怒られそうなことってありますか? 教えてください!",
130
+ "相手に知られたら嫌われそうなことってありますか? 教えてください!",
131
+ "相手に関して正直ちょっと引いたことはありますか? どんなことですか?",
132
+ "相手に恋した瞬間は、どんな感じでしたか?",
133
+ "相手について密かに妄想してることはありますか? 教えてください!",
134
+ "相手について「大っぴらに言うのははばかられるけど、好きなところ」ってありますか? 教えてください!",
135
+ "相手に懺悔したいことはありますか? どんなことですか?",
136
+ ]
137
+ )
138
+
139
+ HQT6 = DiceTable::Table.new(
140
+ "100の質問表その6‐ブラック質問1",
141
+ "1D10",
142
+ [
143
+ "相手に嫌われたらどうしますか?",
144
+ "相手を傷つけたことはありますか? どんなことですか?",
145
+ "相手を傷つけたいと思ったことはありますか?",
146
+ "相手と殺し合ったことはありますか? そのときのことを教えてください。",
147
+ "相手を殺したいと思ったことはありますか? そのときのことを教えてください。",
148
+ "相手に嫉妬していることはありますか? どんなことですか?",
149
+ "相手を憎んでいることはありますか? どんなことですか?",
150
+ "相手に自分以外の恋人が出来たらどうしますか?",
151
+ "相手が死んだら自分はどうしますか?",
152
+ "自分が死んだら相手にどうしてもらいたいですか?",
153
+ ]
154
+ )
155
+
156
+ HQT7 = DiceTable::Table.new(
157
+ "100の質問表その7‐ブラック質問2",
158
+ "1D10",
159
+ [
160
+ "相手と出会ってなかったら今頃どうなってたと思いますか?",
161
+ "相手には、あなた以外にどんな人がふさわしいと思いますか?",
162
+ "相手について怖いと思うところはどこですか?",
163
+ "相手と自分の命、どっちのほうが大事ですか?",
164
+ "相手のために、犯罪を犯すことはできますか?",
165
+ "相手が犯罪者になってしまったらどうしますか?",
166
+ "相手が完全な記憶喪失になったらどうしますか?",
167
+ "相手が自分を忘れるのと、自分が相手を忘れるのだと、どちらがマシですか?",
168
+ "相手に「死んでほしい」と言われたらどうしますか?",
169
+ "相手に「殺して欲しい」と頼まれたらどうしますか?",
170
+ ]
171
+ )
172
+
173
+ HQT8 = DiceTable::Table.new(
174
+ "100の質問表その8‐雑談質問",
175
+ "1D10",
176
+ [
177
+ "相手に対して、自分が自慢できるのはどんなところですか?",
178
+ "相手の寝相についてどう思いますか?",
179
+ "ふたりの体格差って、どんな感じですか?",
180
+ "ふたりとも、幽霊って信じてますか?",
181
+ "ふたりは自炊派? 外食派?",
182
+ "ふたりは辛党? 甘党?",
183
+ "お互いの家族構成、知ってますか? 知らないなら教え合いましょう!",
184
+ "相手のファッション(普段の服装)について、どう思いますか?",
185
+ "相手に手料理を食べさせたことはありますか?",
186
+ "相手がコーヒーや紅茶にお砂糖何杯入れるか、知ってますか?",
187
+ ]
188
+ )
189
+
190
+ HQT9 = DiceTable::Table.new(
191
+ "100の質問表その9‐ファンタジー質問",
192
+ "1D10",
193
+ [
194
+ "相手の種族についてどう思いますか?",
195
+ "相手の魔法についてどう思いますか?",
196
+ "相手の戦闘能力についてどう思いますか?",
197
+ "戦場にいるときの相手の雰囲気についてどう思いますか?",
198
+ "相手の特殊能力(戦闘面以外)についてどう思いますか?",
199
+ "ふたりには、なにか二つ名や称号はありますか? それについてどう思いますか?",
200
+ "お互いの身分についてどう思いますか?",
201
+ "ふたりに寿命差はありますか? ある場合は、どう考えていますか?",
202
+ "ふたりで敵に襲われたときの思い出を語ってくれますか?",
203
+ "相手とダンジョンに行った思い出を語ってくれますか?",
204
+ ]
205
+ )
206
+
207
+ HQT10 = DiceTable::Table.new(
208
+ "100の質問表その10‐現代質問",
209
+ "1D10",
210
+ [
211
+ "お互い、どんな学校に通っていますか/通っていましたか?",
212
+ "SNSってやっていますか? お互いのアカウントって知ってますか?",
213
+ "ふたりで映画を見るなら、どんなジャンルですか? そのジャンルは1人で見るときと違いますか?",
214
+ "ふたりでテーマパークに行った思い出はありますか? 詳しく教えてください!",
215
+ "ふたりはよくメールや電話で連絡をとりますか?",
216
+ "お互いの写真って持っていますか? 持っているなら、どんな写真ですか?",
217
+ "ふたりでカラオケに行きますか? 行くならどんな様子ですか?",
218
+ "ふたりで行きたい観光名所はありますか? 具体的な地名で教えてください!",
219
+ "ふたりが好きな季節はいつですか?",
220
+ "目玉焼きに何をかけますか?(塩、醤油、ソース、マヨネーズ……)",
221
+ ]
222
+ )
223
+
224
+ LDT1 = DiceTable::Table.new(
225
+ "ローリスク歪み表:名前、性別、年齢、人称",
226
+ "1D10",
227
+ [
228
+ "ミドルネームが増える",
229
+ "周囲からあだ名で呼ばれるようになる",
230
+ "人に変なあだ名をつける癖ができる",
231
+ "異性装が趣味になる",
232
+ "理由あって異性として生活していることになる",
233
+ "これ以降、外見年齢があまり変わらなくなる",
234
+ "10歳若返る",
235
+ "10歳歳を取る",
236
+ "一人称が変わる",
237
+ "二人称が変わる",
238
+ ]
239
+ )
240
+
241
+ LDT2 = DiceTable::Table.new(
242
+ "ローリスク歪み表:外見的特徴",
243
+ "1D10",
244
+ [
245
+ "片目の色が変化する",
246
+ "両目の色が変化する",
247
+ "髪の色が変化する",
248
+ "髪が癖毛(天然パーマ、猫っ毛など)になる",
249
+ "髪の長さが変わる(長髪なら短髪に、短髪なら長髪に)",
250
+ "他者から「美人」と言われる外見になる",
251
+ "眼鏡キャラになる(伊達眼鏡でも可)",
252
+ "特徴的なファッションになる(ゴスロリ、赤一色、常に白衣など)",
253
+ "身長が10cm大きくなる",
254
+ "身長が10cm小さくなる",
255
+ ]
256
+ )
257
+
258
+ LDT3 = DiceTable::Table.new(
259
+ "ローリスク歪み表:性格",
260
+ "1D10",
261
+ [
262
+ "あらゆることに対する思い切りがよくなる",
263
+ "思考や発想が幼くなる",
264
+ "初対面の人と上手く話せなくなる",
265
+ "感情の起伏が激しくなる",
266
+ "感情を抑えがちになる",
267
+ "泣き虫になる",
268
+ "よく人に甘えるようになる",
269
+ "とてつもなくポジティブになる",
270
+ "天邪鬼になりがちになる",
271
+ "自分を卑下しがちになる",
272
+ ]
273
+ )
274
+
275
+ LDT4 = DiceTable::Table.new(
276
+ "ローリスク歪み表:得意不得意",
277
+ "1D10",
278
+ [
279
+ "得意不得意が逆転する",
280
+ "運動がすごく得意になる",
281
+ "芸術関係(絵、音楽、書道など)が得意になる",
282
+ "感情を隠すのが下手になる",
283
+ "手先が器用になる",
284
+ "料理が壊滅的に下手になる",
285
+ "四則演算が苦手になる",
286
+ "人の真似が上手になる",
287
+ "役に立たない特技ができる",
288
+ "一般的にあり得ない異能(超能力など)に目覚める",
289
+ ]
290
+ )
291
+
292
+ LDT5 = DiceTable::Table.new(
293
+ "ローリスク歪み表:社会的立場",
294
+ "1D10",
295
+ [
296
+ "転校/転職したことになる(元居た学校や職場でなくなる)",
297
+ "自分のファンクラブが出来る",
298
+ "学校/仕事の成績が大幅に向上する",
299
+ "学校/仕事の成績が大幅に低下する",
300
+ "賃金/お小遣いが下がる",
301
+ "他人から妙に頼られるようになる",
302
+ "自分に関する悪い噂が流れるようになる",
303
+ "大金持ちになる",
304
+ "ガラが悪い人々(不良、裏稼業など)と繋がっていることになる",
305
+ "誰もが知っている有名人になる",
306
+ ]
307
+ )
308
+
309
+ LDT6 = DiceTable::Table.new(
310
+ "ローリスク歪み表:パートナーとの関係性や呼び方",
311
+ "1D10",
312
+ [
313
+ "パートナーと恋仲だったことになる",
314
+ "パートナーとお互いに特別な名前で呼び合うようになる",
315
+ "パートナーと寝室が一緒になる",
316
+ "パートナーと家族だったことになる",
317
+ "パートナーとの身体的スキンシップが増える",
318
+ "パートナーと家族ぐるみの付き合いになる",
319
+ "自分がパートナーに精神的に依存する",
320
+ "パートナーが自分に精神的に依存する",
321
+ "パートナーを傷つけたくてたまらなくなる",
322
+ "パートナーが好きで好きでたまらなくなる",
323
+ ]
324
+ )
325
+
326
+ LDT7 = DiceTable::Table.new(
327
+ "ローリスク歪み表:現在の生活",
328
+ "1D10",
329
+ [
330
+ "近づくと赤ちゃんがギャン泣きする体質になる",
331
+ "義理の家族がある",
332
+ "仕事や学業などに忙殺される生活になる",
333
+ "体調を崩しがちになる(貧血、流行病など)",
334
+ "家族以外の誰かと同居していることになる(シェアハウス、同棲など)",
335
+ "何らかの嗜好品(酒、煙草、甘味など)がやめられなくなる",
336
+ "住居が雨漏りするようになる",
337
+ "住居に心霊現象が発生するようになる",
338
+ "近所の猫に嫌われる",
339
+ "金遣いが荒くなる",
340
+ ]
341
+ )
342
+
343
+ LDT8 = DiceTable::Table.new(
344
+ "ローリスク歪み表:過去",
345
+ "1D10",
346
+ [
347
+ "昔いじめられていたことになる",
348
+ "以前なにかで表彰されたことになる",
349
+ "以前グレていた時期があったことになる",
350
+ "誰かにお金を借りていたことになる",
351
+ "幼い頃、家出したことがあったことになる",
352
+ "以前誰かに告白して、フラれたことになる",
353
+ "幼い頃、体が弱かったことになる",
354
+ "以前すごく中二病だったことになる",
355
+ "南国で親父に〇〇(任意の特殊技能)を習っていたことになる",
356
+ "誰かとの約束を忘れる",
357
+ ]
358
+ )
359
+
360
+ LDT9 = DiceTable::Table.new(
361
+ "ローリスク歪み表:自由欄1",
362
+ "1D10",
363
+ [
364
+ "性癖が歪む",
365
+ "ドジっ子属性がつく",
366
+ "人の声が聞き取りにくくなる",
367
+ "落ちている硬貨に必ず気づくようになる",
368
+ "人の顔を覚えるのが苦手になる",
369
+ "とても寒がりになる",
370
+ "血を見るのが怖くなる",
371
+ "ピーマンが苦手になる",
372
+ "動物にやけに好かれるようになる",
373
+ "暗いところが怖くなる",
374
+ ]
375
+ )
376
+
377
+ LDT10 = DiceTable::Table.new(
378
+ "ローリスク歪み表:自由欄2",
379
+ "1D10",
380
+ [
381
+ "寝床に入ると数秒で寝落ちするようになる",
382
+ "全裸でないと寝られなくなる",
383
+ "見えないはずのものが見える様になる",
384
+ "財布を忘れがちになる",
385
+ "子供を見ると可愛がらざるを得なくなる",
386
+ "夜眠れなくなる",
387
+ "特徴的な口癖ができる",
388
+ "掃除好きになる",
389
+ "お年寄りにやけに好かれるようになる",
390
+ "スリルを感じるのが快感になる",
391
+ ]
392
+ )
393
+
394
+ HDT1 = DiceTable::Table.new(
395
+ "ハイリスク歪み表:名前、性別、年齢、人称",
396
+ "1D10",
397
+ [
398
+ "名前の綴り、あるいは漢字が変化する",
399
+ "名前の音が変わる",
400
+ "名無しとなり、誰も元の名前を思い出せなくなる",
401
+ "生まれた時から異性だったことになる",
402
+ "後天的に性別が異性に変化する",
403
+ "これ以降一切歳をとらなくなる",
404
+ "外見年齢が歳をとる",
405
+ "外見年齢が幼くなる",
406
+ "一人称が変化する",
407
+ "二人称が変化する",
408
+ ]
409
+ )
410
+
411
+ HDT2 = DiceTable::Table.new(
412
+ "ハイリスク歪み表:外見的特徴",
413
+ "1D10",
414
+ [
415
+ "片目の色が変化する",
416
+ "両目の色が変化する",
417
+ "髪の色が変化する",
418
+ "全身から色素が抜け落ちる(アルビノ化)",
419
+ "角が生える/もとが有角の場合は角を失う",
420
+ "体の一部が獣のようになる/元が獣型の場合はヒトの形となる",
421
+ "翼が生える/元が有翼の場合は翼を失う",
422
+ "体の一部が人形のようになる/元が人形の場合は人と変わらぬ姿になる",
423
+ "体の何処かに大きな傷が出来る",
424
+ "体の何処かを欠損する",
425
+ ]
426
+ )
427
+
428
+ HDT3 = DiceTable::Table.new(
429
+ "ハイリスク歪み表:性格",
430
+ "1D10",
431
+ [
432
+ "性格が攻撃的になる",
433
+ "思考や発想が幼くなる",
434
+ "疑心暗鬼になる",
435
+ "感情の起伏が激しくなる",
436
+ "感情の起伏が無くなる",
437
+ "泣き虫になる",
438
+ "よく人に甘えるようになる",
439
+ "とてつもなくポジティブになる",
440
+ "倫理観が欠如する",
441
+ "特定の感情を喪失する",
442
+ ]
443
+ )
444
+
445
+ HDT4 = DiceTable::Table.new(
446
+ "ハイリスク歪み表:得意不得意",
447
+ "1D10",
448
+ [
449
+ "得意不得意が逆転する",
450
+ "戦闘能力を失う/高負荷の運動ができなくなる",
451
+ "芸術関係(絵、音楽、書道など)が得意になる",
452
+ "感情を隠すのが下手になる",
453
+ "感覚が異様に鋭敏になる",
454
+ "料理が壊滅的に下手になる",
455
+ "四則演算が苦手になる",
456
+ "特異な才能が開花する",
457
+ "才能をひとつ失う",
458
+ "一般的にあり得ない異能(超能力など)に目覚める",
459
+ ]
460
+ )
461
+
462
+ HDT5 = DiceTable::Table.new(
463
+ "ハイリスク歪み表:社会的立場",
464
+ "1D10",
465
+ [
466
+ "職を失う",
467
+ "周囲から崇められる立場になる",
468
+ "学校/仕事の成績が大幅に向上する",
469
+ "戸籍上死者になる",
470
+ "借金まみれになる",
471
+ "多くの人に慕われる人気者になる",
472
+ "犯罪者として扱われる",
473
+ "大金持ちになる",
474
+ "何らかの組織に追われる身になる",
475
+ "誰もが知っている有名人になる",
476
+ ]
477
+ )
478
+
479
+ HDT6 = DiceTable::Table.new(
480
+ "ハイリスク歪み表:パートナーとの関係性や呼び方",
481
+ "1D10",
482
+ [
483
+ "パートナーと恋仲だったことになる",
484
+ "パートナーとお互いに特別な名前で呼び合うようになる",
485
+ "パートナーに憎まれる",
486
+ "パートナーと家族だったことになる",
487
+ "パートナーから忘れられる",
488
+ "パートナーの言葉に逆らえなくなる",
489
+ "自分がパートナーに精神的に依存する",
490
+ "パートナーが自分に精神的に依存する",
491
+ "パートナーを傷つけたくてたまらなくなる",
492
+ "パートナーが好きで好きでたまらなくなる",
493
+ ]
494
+ )
495
+
496
+ HDT7 = DiceTable::Table.new(
497
+ "ハイリスク歪み表:現在の生活",
498
+ "1D10",
499
+ [
500
+ "住居が崩壊する",
501
+ "身に覚えがない子供ができる",
502
+ "仕事や学業などに忙殺される生活になる",
503
+ "体調を崩しがちになる(貧血、流行病など)",
504
+ "住んでいる町(村、国)が滅びる",
505
+ "何らかの嗜好品(酒、煙草、甘味など)がやめられなくなる",
506
+ "故郷が滅びたことになる",
507
+ "パートナー以外の人がいる場所が怖くなる",
508
+ "住んでいる場所が戦場になる",
509
+ "不治の病にかかる",
510
+ ]
511
+ )
512
+
513
+ HDT8 = DiceTable::Table.new(
514
+ "ハイリスク歪み表:過去",
515
+ "1D10",
516
+ [
517
+ "かつて誰かを殺したことになる",
518
+ "過去の功績がひとつなくなる",
519
+ "過去のすべての記憶を失う",
520
+ "かつてパートナーを傷つけたことがある",
521
+ "幼い頃、自分以外の家族全員が死亡した",
522
+ "以前誰かに告白して、フラれたことになる",
523
+ "犯罪歴ができる",
524
+ "大切な思い出がひとつなかったことになる",
525
+ "悲しい思い出がひとつ増える",
526
+ "誰かとの約束を忘れる",
527
+ ]
528
+ )
529
+
530
+ HDT9 = DiceTable::Table.new(
531
+ "ハイリスク歪み表:自由欄1",
532
+ "1D10",
533
+ [
534
+ "パートナー以外の人の顔が塗りつぶされて見える",
535
+ "色覚を失う",
536
+ "声を失う",
537
+ "誰かと目を合わせることが怖くなる",
538
+ "零した涙が宝石になる",
539
+ "体の一部に植物が生える",
540
+ "血を見るのが怖くなる",
541
+ "血を見ることに悦びを覚えるようになる",
542
+ "動物にやけに好かれるようになる",
543
+ "人に触れるのが怖くなる",
544
+ ]
545
+ )
546
+
547
+ HDT10 = DiceTable::Table.new(
548
+ "ハイリスク歪み表:自由欄2",
549
+ "1D10",
550
+ [
551
+ "人の血を啜りたくなる",
552
+ "失明する",
553
+ "見えないはずのものが見える様になる",
554
+ "水に浸かると人魚になってしまう",
555
+ "鏡や写真にうつらなくなる",
556
+ "夜眠れなくなる",
557
+ "影が無くなる",
558
+ "味覚が鈍くなる",
559
+ "痛覚が鈍くなる",
560
+ "意味もなく急に涙があふれるようになる",
561
+ ]
562
+ )
563
+
564
+ TABLES = {
565
+ "HQT" => DiceTable::ChainTable.new(
566
+ "100の質問",
567
+ "1D10",
568
+ [
569
+ HQT1,
570
+ HQT2,
571
+ HQT3,
572
+ HQT4,
573
+ HQT5,
574
+ HQT6,
575
+ HQT7,
576
+ HQT8,
577
+ HQT9,
578
+ HQT10,
579
+ ]
580
+ ),
581
+ "LDT" => DiceTable::ChainTable.new(
582
+ "ローリスク歪み表",
583
+ "1D10",
584
+ [
585
+ LDT1,
586
+ LDT2,
587
+ LDT3,
588
+ LDT4,
589
+ LDT5,
590
+ LDT6,
591
+ LDT7,
592
+ LDT8,
593
+ LDT9,
594
+ LDT10,
595
+ ]
596
+ ),
597
+ "HDT" => DiceTable::ChainTable.new(
598
+ "ハイリスク歪み表",
599
+ "1D10",
600
+ [
601
+ HDT1,
602
+ HDT2,
603
+ HDT3,
604
+ HDT4,
605
+ HDT5,
606
+ HDT6,
607
+ HDT7,
608
+ HDT8,
609
+ HDT9,
610
+ HDT10,
611
+ ]
612
+ ),
613
+ "HQT1" => HQT1,
614
+ "HQT2" => HQT2,
615
+ "HQT3" => HQT3,
616
+ "HQT4" => HQT4,
617
+ "HQT5" => HQT5,
618
+ "HQT6" => HQT6,
619
+ "HQT7" => HQT7,
620
+ "HQT8" => HQT8,
621
+ "HQT9" => HQT9,
622
+ "HQT10" => HQT10,
623
+ "HDT1" => HDT1,
624
+ "HDT2" => HDT2,
625
+ "HDT3" => HDT3,
626
+ "HDT4" => HDT4,
627
+ "HDT5" => HDT5,
628
+ "HDT6" => HDT6,
629
+ "HDT7" => HDT7,
630
+ "HDT8" => HDT8,
631
+ "HDT9" => HDT9,
632
+ "HDT10" => HDT10,
633
+ "LDT1" => LDT1,
634
+ "LDT2" => LDT2,
635
+ "LDT3" => LDT3,
636
+ "LDT4" => LDT4,
637
+ "LDT5" => LDT5,
638
+ "LDT6" => LDT6,
639
+ "LDT7" => LDT7,
640
+ "LDT8" => LDT8,
641
+ "LDT9" => LDT9,
642
+ "LDT10" => LDT10,
643
+ }.freeze
644
+
645
+ register_prefix('ID', 'IE', 'IM', TABLES.keys)
646
+ end
647
+ end
648
+ end