bcdice 3.0.0.pre.alpha.1 → 3.0.0.pre.alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +1 -1
  3. data/.rubocop.yml +12 -0
  4. data/.rubocop_todo.yml +1 -0
  5. data/CHANGELOG.md +34 -0
  6. data/Gemfile +6 -3
  7. data/Rakefile +52 -18
  8. data/bcdice.gemspec +2 -0
  9. data/i18n/Amadeus/ja_jp.yml +386 -0
  10. data/i18n/Amadeus/ko_kr.yml +148 -0
  11. data/i18n/Cthulhu/ja_jp.yml +11 -0
  12. data/i18n/Cthulhu/ko_kr.yml +11 -0
  13. data/i18n/Cthulhu/zh_hant.yml +11 -0
  14. data/i18n/DetatokoSaga/ja_jp.yml +74 -0
  15. data/i18n/DetatokoSaga/ko_kr.yml +74 -0
  16. data/i18n/DoubleCross/ja_jp.yml +53 -0
  17. data/i18n/DoubleCross/ko_kr.yml +53 -0
  18. data/i18n/Dracurouge/ja_jp.yml +1374 -0
  19. data/i18n/Dracurouge/ko_kr.yml +295 -0
  20. data/i18n/Fiasco/ja_jp.yml +10 -0
  21. data/i18n/Fiasco/ko_kr.yml +10 -0
  22. data/i18n/FutariSousa/ja_jp.yml +720 -0
  23. data/i18n/FutariSousa/ko_kr.yml +746 -0
  24. data/i18n/Insane/ja_jp.yml +454 -0
  25. data/i18n/Insane/ko_kr.yml +502 -0
  26. data/i18n/Kamigakari/ja_jp.yml +276 -0
  27. data/i18n/Kamigakari/ko_kr.yml +204 -0
  28. data/i18n/KillDeathBusiness/ja_jp.yml +1092 -0
  29. data/i18n/KillDeathBusiness/ko_kr.yml +1062 -0
  30. data/i18n/LogHorizon/ja_jp.yml +3082 -0
  31. data/i18n/LogHorizon/ko_kr.yml +923 -0
  32. data/i18n/MagicaLogia/ja_jp.yml +564 -0
  33. data/i18n/MonotoneMuseum/ja_jp.yml +525 -0
  34. data/i18n/MonotoneMuseum/ko_kr.yml +89 -0
  35. data/i18n/Nechronica/ja_jp.yml +57 -0
  36. data/i18n/Nechronica/ko_kr.yml +14 -0
  37. data/i18n/StratoShout/ja_jp.yml +160 -0
  38. data/i18n/StratoShout/ko_kr.yml +160 -0
  39. data/i18n/ja_jp.yml +5 -0
  40. data/i18n/ko_kr.yml +7 -0
  41. data/i18n/zh_hant.yml +3 -0
  42. data/lib/bcdice/arithmetic/node.rb +154 -0
  43. data/lib/bcdice/base.rb +87 -101
  44. data/lib/bcdice/common_command.rb +2 -0
  45. data/lib/bcdice/common_command/add_dice.rb +5 -41
  46. data/lib/bcdice/common_command/add_dice/node.rb +92 -16
  47. data/lib/bcdice/common_command/add_dice/parser.rb +374 -274
  48. data/lib/bcdice/common_command/add_dice/parser.y +153 -0
  49. data/lib/bcdice/common_command/add_dice/randomizer.rb +25 -33
  50. data/lib/bcdice/common_command/barabara_dice.rb +6 -47
  51. data/lib/bcdice/common_command/barabara_dice/node.rb +84 -0
  52. data/lib/bcdice/common_command/barabara_dice/parser.rb +336 -0
  53. data/lib/bcdice/common_command/barabara_dice/parser.y +107 -0
  54. data/lib/bcdice/common_command/calc.rb +7 -30
  55. data/lib/bcdice/common_command/calc/node.rb +30 -0
  56. data/lib/bcdice/common_command/calc/parser.rb +271 -0
  57. data/lib/bcdice/common_command/calc/parser.y +79 -0
  58. data/lib/bcdice/common_command/choice.rb +137 -19
  59. data/lib/bcdice/common_command/d66_dice.rb +48 -34
  60. data/lib/bcdice/common_command/lexer.rb +46 -0
  61. data/lib/bcdice/common_command/repeat.rb +102 -0
  62. data/lib/bcdice/common_command/reroll_dice.rb +8 -158
  63. data/lib/bcdice/common_command/reroll_dice/node.rb +198 -0
  64. data/lib/bcdice/common_command/reroll_dice/parser.rb +421 -0
  65. data/lib/bcdice/common_command/reroll_dice/parser.y +158 -0
  66. data/lib/bcdice/common_command/upper_dice.rb +10 -129
  67. data/lib/bcdice/common_command/upper_dice/node.rb +181 -0
  68. data/lib/bcdice/common_command/upper_dice/parser.rb +412 -0
  69. data/lib/bcdice/common_command/upper_dice/parser.y +143 -0
  70. data/lib/bcdice/common_command/version.rb +9 -17
  71. data/lib/bcdice/deprecated/checker.rb +78 -0
  72. data/lib/bcdice/dice_table/d66_grid_table.rb +8 -0
  73. data/lib/bcdice/dice_table/d66_table.rb +10 -0
  74. data/lib/bcdice/dice_table/sai_fic_skill_table.rb +75 -17
  75. data/lib/bcdice/dice_table/sai_fic_skill_table/category.rb +25 -0
  76. data/lib/bcdice/dice_table/sai_fic_skill_table/skill.rb +23 -0
  77. data/lib/bcdice/dice_table/table.rb +8 -0
  78. data/lib/bcdice/game_system.rb +7 -1
  79. data/lib/bcdice/game_system/AFF2e.rb +1 -1
  80. data/lib/bcdice/game_system/AceKillerGene.rb +2 -2
  81. data/lib/bcdice/game_system/Airgetlamh.rb +3 -3
  82. data/lib/bcdice/game_system/Alsetto.rb +1 -1
  83. data/lib/bcdice/game_system/Alshard.rb +1 -1
  84. data/lib/bcdice/game_system/AlterRaise.rb +2 -2
  85. data/lib/bcdice/game_system/Amadeus.rb +46 -507
  86. data/lib/bcdice/game_system/Amadeus_Korean.rb +12 -456
  87. data/lib/bcdice/game_system/AnimaAnimus.rb +1 -1
  88. data/lib/bcdice/game_system/Arianrhod.rb +0 -1
  89. data/lib/bcdice/game_system/ArsMagica.rb +1 -1
  90. data/lib/bcdice/game_system/Avandner.rb +1 -1
  91. data/lib/bcdice/game_system/BBN.rb +1 -1
  92. data/lib/bcdice/game_system/BadLife.rb +1 -1
  93. data/lib/bcdice/game_system/BarnaKronika.rb +1 -1
  94. data/lib/bcdice/game_system/BeastBindTrinity.rb +1 -2
  95. data/lib/bcdice/game_system/BeginningIdol.rb +2 -3
  96. data/lib/bcdice/game_system/BeginningIdol_Korean.rb +2 -3
  97. data/lib/bcdice/game_system/BladeOfArcana.rb +2 -2
  98. data/lib/bcdice/game_system/BlindMythos.rb +1 -1
  99. data/lib/bcdice/game_system/BloodCrusade.rb +0 -1
  100. data/lib/bcdice/game_system/BloodMoon.rb +0 -1
  101. data/lib/bcdice/game_system/CardRanker.rb +1 -2
  102. data/lib/bcdice/game_system/ChaosFlare.rb +1 -1
  103. data/lib/bcdice/game_system/Chill.rb +1 -1
  104. data/lib/bcdice/game_system/CodeLayerd.rb +1 -1
  105. data/lib/bcdice/game_system/ColossalHunter.rb +1 -2
  106. data/lib/bcdice/game_system/Comes.rb +50 -0
  107. data/lib/bcdice/game_system/CrashWorld.rb +1 -1
  108. data/lib/bcdice/game_system/Cthulhu.rb +94 -97
  109. data/lib/bcdice/game_system/Cthulhu7th.rb +108 -67
  110. data/lib/bcdice/game_system/Cthulhu7th_ChineseTraditional.rb +1 -1
  111. data/lib/bcdice/game_system/Cthulhu7th_Korean.rb +1 -1
  112. data/lib/bcdice/game_system/CthulhuTech.rb +8 -14
  113. data/lib/bcdice/game_system/Cthulhu_ChineseTraditional.rb +7 -190
  114. data/lib/bcdice/game_system/Cthulhu_Korean.rb +5 -186
  115. data/lib/bcdice/game_system/DarkBlaze.rb +9 -5
  116. data/lib/bcdice/game_system/DarkDaysDrive.rb +17 -15
  117. data/lib/bcdice/game_system/DarkSouls.rb +1 -1
  118. data/lib/bcdice/game_system/DeadlineHeroes.rb +2 -2
  119. data/lib/bcdice/game_system/DemonParasite.rb +1 -2
  120. data/lib/bcdice/game_system/DetatokoSaga.rb +48 -149
  121. data/lib/bcdice/game_system/DetatokoSaga_Korean.rb +6 -274
  122. data/lib/bcdice/game_system/DiceOfTheDead.rb +9 -6
  123. data/lib/bcdice/game_system/DoubleCross.rb +102 -81
  124. data/lib/bcdice/game_system/DoubleCross_Korean.rb +13 -330
  125. data/lib/bcdice/game_system/Dracurouge.rb +376 -1678
  126. data/lib/bcdice/game_system/Dracurouge_Korean.rb +16 -271
  127. data/lib/bcdice/game_system/EarthDawn.rb +1 -1
  128. data/lib/bcdice/game_system/EarthDawn3.rb +1 -1
  129. data/lib/bcdice/game_system/EarthDawn4.rb +1 -1
  130. data/lib/bcdice/game_system/Elysion.rb +3 -4
  131. data/lib/bcdice/game_system/EmbryoMachine.rb +1 -1
  132. data/lib/bcdice/game_system/Emoklore.rb +131 -0
  133. data/lib/bcdice/game_system/EndBreaker.rb +1 -2
  134. data/lib/bcdice/game_system/EtrianOdysseySRS.rb +1 -1
  135. data/lib/bcdice/game_system/Fiasco.rb +87 -70
  136. data/lib/bcdice/game_system/Fiasco_Korean.rb +7 -95
  137. data/lib/bcdice/game_system/FilledWith.rb +462 -566
  138. data/lib/bcdice/game_system/FullMetalPanic.rb +1 -1
  139. data/lib/bcdice/game_system/FutariSousa.rb +103 -938
  140. data/lib/bcdice/game_system/FutariSousa_Korean.rb +7 -948
  141. data/lib/bcdice/game_system/{Gurps.rb → GURPS.rb} +184 -217
  142. data/lib/bcdice/game_system/Garako.rb +131 -39
  143. data/lib/bcdice/game_system/GardenOrder.rb +2 -2
  144. data/lib/bcdice/game_system/GehennaAn.rb +1 -1
  145. data/lib/bcdice/game_system/GeishaGirlwithKatana.rb +1 -1
  146. data/lib/bcdice/game_system/GoblinSlayer.rb +1 -1
  147. data/lib/bcdice/game_system/GoldenSkyStories.rb +1 -1
  148. data/lib/bcdice/game_system/Gorilla.rb +1 -1
  149. data/lib/bcdice/game_system/GranCrest.rb +2 -3
  150. data/lib/bcdice/game_system/GundogRevised.rb +1 -1
  151. data/lib/bcdice/game_system/GundogZero.rb +1 -1
  152. data/lib/bcdice/game_system/GurpsFW.rb +2 -3
  153. data/lib/bcdice/game_system/HarnMaster.rb +2 -2
  154. data/lib/bcdice/game_system/HatsuneMiku.rb +1 -2
  155. data/lib/bcdice/game_system/HouraiGakuen.rb +1 -1
  156. data/lib/bcdice/game_system/HuntersMoon.rb +1 -2
  157. data/lib/bcdice/game_system/Illusio.rb +2 -2
  158. data/lib/bcdice/game_system/Insane.rb +90 -717
  159. data/lib/bcdice/game_system/Insane_Korean.rb +7 -719
  160. data/lib/bcdice/game_system/Kamigakari.rb +47 -242
  161. data/lib/bcdice/game_system/Kamigakari_Korean.rb +6 -394
  162. data/lib/bcdice/game_system/KanColle.rb +3 -3
  163. data/lib/bcdice/game_system/KemonoNoMori.rb +1 -1
  164. data/lib/bcdice/game_system/KillDeathBusiness.rb +162 -1144
  165. data/lib/bcdice/game_system/KillDeathBusiness_Korean.rb +6 -1459
  166. data/lib/bcdice/game_system/KurayamiCrying.rb +1 -1
  167. data/lib/bcdice/game_system/LiveraDoll.rb +2 -2
  168. data/lib/bcdice/game_system/LogHorizon.rb +350 -3379
  169. data/lib/bcdice/game_system/LogHorizon_Korean.rb +55 -1357
  170. data/lib/bcdice/game_system/LostRecord.rb +0 -1
  171. data/lib/bcdice/game_system/LostRoyal.rb +1 -2
  172. data/lib/bcdice/game_system/MagicaLogia.rb +158 -1044
  173. data/lib/bcdice/game_system/MeikyuDays.rb +1 -2
  174. data/lib/bcdice/game_system/MeikyuKingdom.rb +4 -4
  175. data/lib/bcdice/game_system/MeikyuKingdomBasic.rb +4 -5
  176. data/lib/bcdice/game_system/MetalHead.rb +1 -1
  177. data/lib/bcdice/game_system/MetalHeadExtream.rb +2 -2
  178. data/lib/bcdice/game_system/MetallicGuardian.rb +1 -1
  179. data/lib/bcdice/game_system/MonotoneMuseum.rb +38 -239
  180. data/lib/bcdice/game_system/MonotoneMuseum_Korean.rb +10 -270
  181. data/lib/bcdice/game_system/NSSQ.rb +159 -0
  182. data/lib/bcdice/game_system/Nechronica.rb +34 -73
  183. data/lib/bcdice/game_system/Nechronica_Korean.rb +11 -128
  184. data/lib/bcdice/game_system/NeverCloud.rb +1 -1
  185. data/lib/bcdice/game_system/NightWizard.rb +1 -1
  186. data/lib/bcdice/game_system/NightWizard3rd.rb +1 -1
  187. data/lib/bcdice/game_system/NinjaSlayer.rb +12 -11
  188. data/lib/bcdice/game_system/NjslyrBattle.rb +1 -1
  189. data/lib/bcdice/game_system/OneWayHeroics.rb +1 -2
  190. data/lib/bcdice/game_system/OracleEngine.rb +1 -1
  191. data/lib/bcdice/game_system/OrgaRain.rb +2 -2
  192. data/lib/bcdice/game_system/Paradiso.rb +1 -1
  193. data/lib/bcdice/game_system/Paranoia.rb +1 -1
  194. data/lib/bcdice/game_system/ParanoiaRebooted.rb +1 -1
  195. data/lib/bcdice/game_system/ParasiteBlood.rb +1 -1
  196. data/lib/bcdice/game_system/Peekaboo.rb +22 -122
  197. data/lib/bcdice/game_system/Postman.rb +2 -2
  198. data/lib/bcdice/game_system/PulpCthulhu.rb +3 -3
  199. data/lib/bcdice/game_system/Raisondetre.rb +2 -2
  200. data/lib/bcdice/game_system/RecordOfLodossWar.rb +1 -1
  201. data/lib/bcdice/game_system/RecordOfSteam.rb +1 -1
  202. data/lib/bcdice/game_system/RokumonSekai2.rb +1 -1
  203. data/lib/bcdice/game_system/RuinBreakers.rb +296 -0
  204. data/lib/bcdice/game_system/Ryutama.rb +1 -1
  205. data/lib/bcdice/game_system/SRS.rb +1 -2
  206. data/lib/bcdice/game_system/SamsaraBallad.rb +1 -1
  207. data/lib/bcdice/game_system/Satasupe.rb +1 -2
  208. data/lib/bcdice/game_system/ScreamHighSchool.rb +2 -2
  209. data/lib/bcdice/game_system/SevenFortressMobius.rb +1 -1
  210. data/lib/bcdice/game_system/ShadowRun5.rb +2 -2
  211. data/lib/bcdice/game_system/SharedFantasia.rb +1 -1
  212. data/lib/bcdice/game_system/ShinMegamiTenseiKakuseihen.rb +1 -1
  213. data/lib/bcdice/game_system/ShinkuuGakuen.rb +2 -2
  214. data/lib/bcdice/game_system/ShinobiGami.rb +1 -2
  215. data/lib/bcdice/game_system/ShoujoTenrankai.rb +2 -2
  216. data/lib/bcdice/game_system/Skynauts.rb +1 -1
  217. data/lib/bcdice/game_system/SteamPunkers.rb +1 -1
  218. data/lib/bcdice/game_system/StellarKnights.rb +1 -2
  219. data/lib/bcdice/game_system/SterileLife.rb +1 -1
  220. data/lib/bcdice/game_system/StrangerOfSwordCity.rb +1 -2
  221. data/lib/bcdice/game_system/StratoShout.rb +44 -247
  222. data/lib/bcdice/game_system/StratoShout_Korean.rb +6 -282
  223. data/lib/bcdice/game_system/Strave.rb +2 -2
  224. data/lib/bcdice/game_system/SwordWorld.rb +8 -9
  225. data/lib/bcdice/game_system/SwordWorld2_0.rb +2 -3
  226. data/lib/bcdice/game_system/SwordWorld2_5.rb +2 -3
  227. data/lib/bcdice/game_system/TherapieSein.rb +1 -1
  228. data/lib/bcdice/game_system/TokumeiTenkousei.rb +1 -1
  229. data/lib/bcdice/game_system/TokyoGhostResearch.rb +2 -2
  230. data/lib/bcdice/game_system/Torg.rb +2 -2
  231. data/lib/bcdice/game_system/Torg1_5.rb +1 -1
  232. data/lib/bcdice/game_system/TorgEternity.rb +1 -1
  233. data/lib/bcdice/game_system/TrinitySeven.rb +1 -1
  234. data/lib/bcdice/game_system/TunnelsAndTrolls.rb +1 -1
  235. data/lib/bcdice/game_system/TwilightGunsmoke.rb +1 -2
  236. data/lib/bcdice/game_system/UnsungDuet.rb +139 -0
  237. data/lib/bcdice/game_system/Utakaze.rb +1 -1
  238. data/lib/bcdice/game_system/VampireTheMasquerade5th.rb +1 -1
  239. data/lib/bcdice/game_system/Villaciel.rb +1 -2
  240. data/lib/bcdice/game_system/Warhammer.rb +1 -1
  241. data/lib/bcdice/game_system/Warhammer4.rb +329 -0
  242. data/lib/bcdice/game_system/WitchQuest.rb +1 -1
  243. data/lib/bcdice/game_system/WorldOfDarkness.rb +1 -1
  244. data/lib/bcdice/game_system/YankeeYogSothoth.rb +15 -15
  245. data/lib/bcdice/game_system/YearZeroEngine.rb +1 -1
  246. data/lib/bcdice/game_system/ZettaiReido.rb +1 -1
  247. data/lib/bcdice/game_system/filled_with/cook_tables.rb +119 -0
  248. data/lib/bcdice/game_system/filled_with/lot_tables.rb +155 -0
  249. data/lib/bcdice/loader.rb +6 -8
  250. data/lib/bcdice/preprocessor.rb +15 -40
  251. data/lib/bcdice/repl.rb +1 -1
  252. data/lib/bcdice/result.rb +83 -0
  253. data/lib/bcdice/translate.rb +11 -0
  254. data/lib/bcdice/version.rb +1 -1
  255. metadata +80 -4
@@ -1,8 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "bcdice/game_system/FutariSousa"
4
+
3
5
  module BCDice
4
6
  module GameSystem
5
- class FutariSousa_Korean < Base
7
+ class FutariSousa_Korean < FutariSousa
6
8
  # ゲームシステムの識別子
7
9
  ID = 'FutariSousa:Korean'
8
10
 
@@ -37,958 +39,15 @@ module BCDice
37
39
  호칭표A・B NCT66・NCT10
38
40
  MESSAGETEXT
39
41
 
42
+ register_prefix_from_super_class()
43
+
40
44
  def initialize(command)
41
45
  super(command)
42
46
 
43
- @enabled_d66 = true
44
- @d66_sort_type = D66SortType::ASC
45
-
46
- @success_threshold = 4 # 成功の目標値(固定)
47
- @special_dice = 6 # スペシャルとなる出目(ダイスの種別によらず固定)
48
- end
49
-
50
- register_prefix(
51
- ['(\d+)?DT', '(\d+)?AS', 'SHRD', 'SHFM', 'SHBT', 'SHPI', 'SHEG', 'SHWP', 'SHDS', 'SHFT', 'SHIN', 'SHEM', 'EVS', 'EVW', 'EVN', 'EVC', 'EVV', 'OBT', 'ACT', 'EWT', 'WMT', 'BGDD', 'BGDG', 'BGDM', 'BGAJ', 'BGAP', 'BGAI', 'HT', 'BT', 'GRT', 'MIT', 'JBT66', 'JBT10', 'FST66', 'FST10', 'FLT66', 'FLT10', 'LDT66', 'LDT10', 'NCT66', 'NCT10',]
52
- )
53
-
54
- def eval_game_system_specific_command(command)
55
- output = '1'
56
- type = ""
57
- diceText = ""
58
-
59
- case command
60
- when /^(\d+)?DT$/i
61
- type = command
62
- count = (Regexp.last_match(1) || 2).to_i
63
- output, diceText = get_dt(count)
64
- when /^(\d+)?AS$/i
65
- type = command
66
- count = (Regexp.last_match(1) || 2).to_i
67
- output, diceText = get_as(count)
68
- when 'SHRD'
69
- type = '이상한 버릇 결정표'
70
- output, diceText = get_strange_habit_random
71
- when 'SHFM'
72
- type = '이상한 버릇・지껄이다표'
73
- output, diceText = get_strange_habit_from_mouth
74
- when 'SHBT'
75
- type = '이상한 버릇・강압적인 수사표'
76
- output, diceText = get_strange_habit_bull_through
77
- when 'SHPI'
78
- type = '이상한 버릇・시치미 떼기표'
79
- output, diceText = get_strange_habit_play_innocent
80
- when 'SHEG'
81
- type = '이상한 버릇・사건에 몰두표'
82
- output, diceText = get_strange_habit_engrossed
83
- when 'SHWP'
84
- type = '이상한 버릇・파트너와……표'
85
- output, diceText = get_strange_habit_with_partner
86
- when 'SHDS'
87
- type = '이상한 버릇・무언가 하고 있다표'
88
- output, diceText = get_strange_habit_do_something
89
- when 'SHFT'
90
- type = '이상한 버릇・기상천외표'
91
- output, diceText = get_strange_habit_fantastic
92
- when 'SHIN'
93
- type = '이상한 버릇・갑작스런 번뜩임표'
94
- output, diceText = get_strange_habit_inspiration
95
- when 'SHEM'
96
- type = '이상한 버릇・희노애락표'
97
- output, diceText = get_strange_habit_emotion
98
- when 'EVS'
99
- type = '현장에서/이벤트표'
100
- output, diceText = get_event_scene
101
- when 'EVW'
102
- type = '어째서?/이벤트표'
103
- output, diceText = get_event_why
104
- when 'EVN'
105
- type = '협력자와 함께/이벤트표'
106
- output, diceText = get_event_npc
107
- when 'EVC'
108
- type = '상대쪽에서/이벤트표'
109
- output, diceText = get_event_coming
110
- when 'EVV'
111
- type = 'VS용의자/이벤트표'
112
- output, diceText = get_event_vs
113
- when 'OBT'
114
- type = '조사의 장애표'
115
- output, diceText = get_obstruction_table
116
- when 'ACT'
117
- type = '변조표'
118
- output, diceText = get_abnormal_condition
119
- when 'EWT'
120
- type = '목격자표'
121
- output, diceText = get_eyewitness_table
122
- when 'WMT'
123
- type = '미제사건표'
124
- output, diceText = get_wrapped_in_mystery_table
125
- when 'BGDD'
126
- type = '탐정・운명의 혈통 배경표'
127
- output, diceText = get_background_detective_destiny
128
- when 'BGDG'
129
- type = '탐정・천성의 재능 배경표'
130
- output, diceText = get_background_detective_genius
131
- when 'BGDM'
132
- type = '탐정・마니아 배경표'
133
- output, diceText = get_background_detective_mania
134
- when 'BGAJ'
135
- type = '조수・정의로운 사람 배경표'
136
- output, diceText = get_background_assistant_justice
137
- when 'BGAP'
138
- type = '조수・정렬적인 사람 배경표'
139
- output, diceText = get_background_assistant_passion
140
- when 'BGAI'
141
- type = '조수・말려든 사람 배경표'
142
- output, diceText = get_background_assistant_involved
143
- when 'HT'
144
- type = '신장표'
145
- output, diceText = get_height_table
146
- when 'BT'
147
- type = '아지트표'
148
- output, diceText = get_base_table
149
- when 'GRT'
150
- type = '관계표'
151
- output, diceText = get_guest_relation_table
152
- when 'MIT'
153
- type = '추억의 물건 결정표'
154
- output, diceText = get_memorial_item_table
155
- when 'JBT66'
156
- type = '직업표A'
157
- output, diceText = get_job_table_66
158
- when 'JBT10'
159
- type = '직업표B'
160
- output, diceText = get_job_table_10
161
- when 'FST66'
162
- type = '패션 특징표A'
163
- output, diceText = get_fashion_table_66
164
- when 'FST10'
165
- type = '패션 특징표B'
166
- output, diceText = get_fashion_table_10
167
- when 'FLT66'
168
- type = '감정표A'
169
- output, diceText = get_feeling_table_66
170
- when 'FLT10'
171
- type = '감정표B'
172
- output, diceText = get_feeling_table_10
173
- when 'LDT66'
174
- type = '좋아하는 것/싫어하는 것표A'
175
- output, diceText = get_like_dislike_table_66
176
- when 'LDT10'
177
- type = '좋아하는 것/싫어하는 것표B'
178
- output, diceText = get_like_dislike_table_10
179
- when 'NCT66'
180
- type = '호칭표A'
181
- output, diceText = get_name_to_call_table_66
182
- when 'NCT10'
183
- type = '호칭표B'
184
- output, diceText = get_name_to_call_table_10
185
- end
186
-
187
- return "#{type}(#{diceText}) > #{output}"
188
- end
189
-
190
- # DT
191
- def get_dt(count)
192
- diceList = @randomizer.roll_barabara(count, 10)
193
-
194
- output = get_dt_result(diceList)
195
- diceText = diceList.join(",")
196
-
197
- return output, diceText
198
- end
199
-
200
- def get_dt_result(diceList)
201
- max = diceList.max
202
-
203
- return "펌블(변조를 받고, 조수의 마음고생이 1점 상승)" if max <= 1
204
- return "스페셜(조수의 여유를 1점 획득)" if diceList.include?(@special_dice)
205
- return "성공" if max >= @success_threshold
206
-
207
- return "실패"
208
- end
209
-
210
- # AS
211
- def get_as(count)
212
- diceList = @randomizer.roll_barabara(count, 6)
213
-
214
- output = get_as_result(diceList)
215
- diceText = diceList.join(",")
216
-
217
- return output, diceText
218
- end
219
-
220
- def get_as_result(diceList)
221
- max = diceList.max
222
-
223
- return "펌블(변조를 받고, 조수의 마음고생이 1점 상승)" if max <= 1
224
- return "스페셜(여유 2점과, 탐정의 조수를 향한 감정을 획득)" if diceList.include?(@special_dice)
225
- return "성공(여유 1점과, 탐정의 조수를 향한 감정을 획득)" if max >= @success_threshold
226
-
227
- return "실패"
228
- end
229
-
230
- def getTableResult(table, dice)
231
- number, text, command = table.assoc(dice)
232
-
233
- if command.respond_to?(:call)
234
- text += command.call(self)
235
- end
236
-
237
- return number, text
238
- end
239
-
240
- def getAddRoll(command)
241
- return command if /^\s/.match(command)
242
-
243
- text = eval_game_system_specific_command(command)
244
- return " > #{command} is NOT found." if text.nil?
245
-
246
- return " > \n #{command} > #{text}"
247
- end
248
-
249
- # 異常な癖決定表(이상한 버릇 결정표)
250
- def get_strange_habit_random
251
- table = [
252
- [1, '「이상한 버릇・지껄이다표」를 사용한다.'],
253
- [2, '「이상한 버릇・강압적인 수사표」를 사용한다.'],
254
- [3, '「이상한 버릇・시치미 떼기표」를 사용한다.'],
255
- [4, '「이상한 버릇・사건에 몰두표」를 사용한다.'],
256
- [5, '「이상한 버릇・파트너와……표」를 사용한다.'],
257
- [6, '「이상한 버릇・무언가 하고 있다표」를 사용한다.'],
258
- [7, '「이상한 버릇・기상천외표」를 사용한다.'],
259
- [8, '「이상한 버릇・갑작스런 번뜩임표」를 사용한다.'],
260
- [9, '「이상한 버릇・희노애락표」를 사용한다.'],
261
- [10, '원하는「이상한 버릇표」를 사용한다.'],
262
- ]
263
- diceText = @randomizer.roll_once(10)
264
- output = get_table_by_number(diceText, table)
265
- return output, diceText
266
- end
267
-
268
- def get_strange_habit_from_mouth
269
- table = [
270
- [1, '맹렬하게 감사인사를 한다.'],
271
- [2, '빈정거리는 투로 말해버린다.'],
272
- [3, '상대의 말을 긍정한 뒤 부정한다.'],
273
- [4, '히죽히죽 웃으며 사과한다.'],
274
- [5, '상대의 말을 듣지 않고 자신만 말한다.'],
275
- [6, '「이렇게는 생각할 수 없을까요?」'],
276
- [7, '「아니면, 뭔가 숨기고 있는 거라도 있나요?」'],
277
- [8, '「묘하네요.」'],
278
- [9, '「대충 알겠어요.」'],
279
- [10, '「잠자코 있어.」'],
280
- ]
281
- diceText = @randomizer.roll_once(10)
282
- output = get_table_by_number(diceText, table)
283
- return output, diceText
284
- end
285
-
286
- def get_strange_habit_bull_through
287
- table = [
288
- [1, '마음대로 수사대상의 가방이나 서랍을 연다.'],
289
- [2, '경찰의 수사에 끼어든다.'],
290
- [3, '수사를 위해 해킹이나 불법침입을 한다.'],
291
- [4, '허가 받지 않은 곳에 들어간다.'],
292
- [5, '경찰의 수사를 엿보거나 엿듣는다.'],
293
- [6, '증거품을 허가 없이 해체한다.'],
294
- [7, '수사대상을 속여 정보를 캐낸다.'],
295
- [8, '마음대로 관계자의 소지품을 만진다.'],
296
- [9, '증거품을 마음대로 들고 다닌다.'],
297
- [10, '마음대로 감식을 시작한다.'],
298
- ]
299
- diceText = @randomizer.roll_once(10)
300
- output = get_table_by_number(diceText, table)
301
- return output, diceText
302
- end
303
-
304
- def get_strange_habit_play_innocent
305
- table = [
306
- [1, '자신의 신분을 속이고 관계자에게 이야기를 듣는다'],
307
- [2, '정보를 숨기며 이야기를 듣는다'],
308
- [3, '파트너와 연기를 하며 정보를 캐내려 한다'],
309
- [4, '행인인 척하며 관계자의 이야기를 엿듣는다.'],
310
- [5, '우연을 가장해 증거품을 손에 넣어버린다.'],
311
- [6, '부자연스럽게 시치미를 뗀다.'],
312
- [7, '관계자를 화나게 하는 연기를 하여 정보를 끌어낸다.'],
313
- [8, '완곡하게 관계자를 위협한다'],
314
- [9, '물건을 잃어버렸다고 말하며 현장이나 증거품을 뒤진다.'],
315
- [10, '관계자에게 유도 신문을 한다.'],
316
- ]
317
- diceText = @randomizer.roll_once(10)
318
- output = get_table_by_number(diceText, table)
319
- return output, diceText
320
- end
321
-
322
- def get_strange_habit_engrossed
323
- table = [
324
- [1, '파트너의 몸을 사용해 사건을 재현하려고 한다'],
325
- [2, '수수께끼를 푸는 것이 즐거워서 웃어 버린다'],
326
- [3, '먹지도 자지도 않고 수사를 하다 갑자기 쓰러진다'],
327
- [4, '생각을 하느라 누구의 목소리도 들리지 않는다.'],
328
- [5, '사건의 관계도를 가까운 벽이나 바닥에 그리기 시작한다'],
329
- [6, '사건에 관계되는 말을 계속해서 말해나간다.'],
330
- [7, '사건 해결 이외의 것은 전혀 생각하고 있지 않다.'],
331
- [8, '사건의 흐름을 중얼중얼 말하기 시작한다.'],
332
- [9, '사건 현장을 파고들어 조사를 한다.'],
333
- [10, '식사중이라도, 상관 없이 사건 이야기를 한다.'],
334
- ]
335
- diceText = @randomizer.roll_once(10)
336
- output = get_table_by_number(diceText, table)
337
- return output, diceText
338
- end
339
-
340
- def get_strange_habit_with_partner
341
- table = [
342
- [1, '파트너의 신뢰에 응석부린다.'],
343
- [2, '파트너를 두고 먼저 가버린다.'],
344
- [3, '파트너에게 사건에 대해 어떻게 생각하는지 질문한다.'],
345
- [4, '파트너에게 자랑한다.'],
346
- [5, '파트너에게 사건에 관한 퀴즈를 낸다.'],
347
- [6, '파트너와 사소한 일로 싸움을 한다.'],
348
- [7, '파트너에게 선생님 행세를 한다.'],
349
- [8, '파트너가 따라오는 전제로 멋대로 움직인다.'],
350
- [9, '파트너에 대해서 친절하고 정중하게 사건을 설명한다.'],
351
- [10, '파트너의 귓가에 갑자기 말하기 시작한다.'],
352
- ]
353
- diceText = @randomizer.roll_once(10)
354
- output = get_table_by_number(diceText, table)
355
- return output, diceText
356
- end
357
-
358
- def get_strange_habit_do_something
359
- table = [
360
- [1, '많은 양의 책을 읽고 있다.'],
361
- [2, '좋아하는 음악을 큰 소리로 틀고 있다.'],
362
- [3, '어떤 수식을 풀고 있다.'],
363
- [4, '많은 양의 좋아하는 음식을 계속 먹고 있다.'],
364
- [5, '계속 컴퓨터나 스마트폰 등의 화면과 마주보며 조사하고 있다.'],
365
- [6, '작은 수수께끼를 풀고 있다.'],
366
- [7, '체스나 장기 등을 두고 있다.'],
367
- [8, '찻집 자리에 앉아 무언가를 기다리고 있다.'],
368
- [9, '계속 잠들어 있다가 갑자기 일어난다.'],
369
- [10, '잠시 아무 것도 하지 않는다.'],
370
- ]
371
- diceText = @randomizer.roll_once(10)
372
- output = get_table_by_number(diceText, table)
373
- return output, diceText
374
- end
375
-
376
- def get_strange_habit_fantastic
377
- table = [
378
- [1, '그만두라는 말을 듣고 있는 일을 한다.'],
379
- [2, '잠시 사라졌다가 돌아온다.'],
380
- [3, '예상치 못한 곳(땅 속이나 공중 등)에서 등장한다.'],
381
- [4, '뭔가 생각나서 갑자기 달리기 시작한다.'],
382
- [5, '한심한 자신을 비난한다.'],
383
- [6, '모르는 사이에 사건의 수수께끼를 하나 풀고 있었다.'],
384
- [7, '사건에 대해 알아차린 모양이지만 누구에게도 가르쳐 주지 않는다.'],
385
- [8, '두고 가는 편지나 메일로 보고를 하면 모습이 보이지 않는다.'],
386
- [9, '시계를 보고 갑자기 움직인다.'],
387
- [10, '사건과는 관계 없을 것 같은 신문의 기사를 읽고 있다.'],
388
- ]
389
- diceText = @randomizer.roll_once(10)
390
- output = get_table_by_number(diceText, table)
391
- return output, diceText
392
- end
393
-
394
- def get_strange_habit_inspiration
395
- table = [
396
- [1, '식사를 하고 있으면 갑자기 수수께끼가 풀린다.'],
397
- [2, '조수와의 아무렇지도 않은 대화에서 갑자기 수수께끼가 풀린다.'],
398
- [3, '들려온 대화로부터 갑자기 수수께끼가 풀린다.'],
399
- [4, '목욕을 하고 있으면 갑자기 수수께끼가 풀린다.'],
400
- [5, '꿈 속에서 갑자기 수수께끼가 풀린다.'],
401
- [6, '바람이 불어 날아온 물건으로 수수께끼가 풀린다.'],
402
- [7, '책을 읽다가 사건의 힌트가 발견된다.'],
403
- [8, '현장을 다시 방문하니 번뜩인다.'],
404
- [9, '자료를 확인하는 중에 번뜩인다.'],
405
- [10, '관계자와 대화를 나누는 중에 번뜩이다.'],
406
- ]
407
- diceText = @randomizer.roll_once(10)
408
- output = get_table_by_number(diceText, table)
409
- return output, diceText
410
- end
411
-
412
- def get_strange_habit_emotion
413
- table = [
414
- [1, '갑자기 운다.'],
415
- [2, '갑자기 화낸다.'],
416
- [3, '갑자기 웃기 시작한다.'],
417
- [4, '갑자기 하이텐션이 된다.'],
418
- [5, '갑자기 기뻐한다.'],
419
- [6, '갑자기 소리친다.'],
420
- [7, '갑자기 히죽거리기 시작한다.'],
421
- [8, '갑자기 이 사건의 슬픔을 말한다.'],
422
- [9, '담담하게 일을 진행한다.'],
423
- [10, '로봇처럼 정해진 것만 한다.'],
424
- ]
425
- diceText = @randomizer.roll_once(10)
426
- output = get_table_by_number(diceText, table)
427
- return output, diceText
428
- end
429
-
430
- # イベント表
431
- def get_event_scene
432
- table = [
433
- "신경쓰이는 것(P.165)\n 사건이 일어난 현장은 아직 남아 있다.\n 여기서 일어난 '무언가'는 안개 저편에 숨겨져 있었다.\n 그 안개에 손을 뻗는 자들이 있다.",
434
- "거북해하다(P.166)\n 한 형사가 현장을 열심히 둘러보고 있다.\n 이 사건의 담당을 맡은 오사카베 마사요시(刑部正義)라는 남자다.\n 그는 PC들의 얼굴을 보자마자 얼굴을 찡그린다. 환영받지 못하고 있다.",
435
- "탐문(P.167)\n PC들은 현장 부근을 지나다니거나 사건을 목격한 인물이 없는지 찾아다녔다.\n 그러나 어디서 무엇을 물어도 그럴 듯한 단서는 없다.\n 슬슬 다리에 피로가 쌓이기 시작했다.",
436
- "완고한 관계자(P.168)\n 사건 현장에 어떤 인물이 나타났다.\n PC들은, 신묘한 얼굴로 현장을 바라보던 그 인물이 궁금해 말을 건다.\n 그 인물은 자신을 피해자의 관계자라고 자칭했다…….",
437
- "현장을 철저히 조사!(P.169)\n 사건 현장에 남겨진 증거는 거의 찾아냈다.\n ……과연 정말 그럴까?\n 모든 각도에서 조사와 검증을 하여 현장에 남겨진 것은 없는지 찾아보게 됐다.",
438
- "도망친 인물(P.170)\n 매우 빠르게 누군가가 현장에서 도망치고 있다.\n 그 인물의 달리는 모습이나 초조해하는 모습은 평범하지 않았다.\n 이건, 무언가를 알고 있다. 혹은 무언가를 가지고 떠났을 가능성이 있다.\n PC들은 쫓기 시작했다.",
439
- ]
440
- return get_table_by_1d6(table)
441
- end
442
-
443
- def get_event_why
444
- table = [
445
- "이동 루트(P.171)\n 이 길을 지나갔을 때, 그 사람은 무슨 생각을 했을까?\n 이 길을 지나갔을 때, 그 사람은 무엇을 해야 했을까?\n 사건관계자들의 행적에는 사건에 이어지는 무언가가 남아 있다.\n 그렇게 믿으며, 길을 걷는다.",
446
- "자신이라면……(P.172)\n 탐정과 조수가 사건에 대해 이야기를 나누고 있었다.\n 이야기의 주제는,「 이 상황에서 자신이 범인이라면 어떻게 할 것인가.」\n 그 가정은 힌트를 줄 수도 있다.",
447
- "수수께끼의 메시지(P.173)\n 그것은, 수수께끼의 말이었다.\n 단순한 문자열일 수도 있고 뜻 모를 말일 수도 있다.\n 사건과 관련된 장소에 있었다고 해서, 사건에 관련되어 있다고는 할 수 없다.\n 하지만, 이것은 사건에 연루되어 있다. 그렇게 직감이 고하고 있다.",
448
- "사건 복습(P.174)\n 화이트보드, 칠판, 노트.\n 뭐든지 간에 쓸 것이 필요하다.\n 지금부터 사건에 대해 정리하는 거니까.",
449
- "수상한 인물은?(P.175)\n PC들은 한 인물을 쫓고 있다.\n 그 인물은 사건에 이어지는 무언가를 가지고 있다. 그런 확신이 들었다.\n 자, 그는 어떤 사람일까?",
450
- "피해자의 시점(P.176)\n 피해자의 몸에 무슨 일이 일어났는가.\n 피해자는 무엇을 보았는가.\n 그 힌트는 피해자 자신이 알 것이다.",
451
- ]
452
- return get_table_by_1d6(table)
453
- end
454
-
455
- def get_event_npc
456
- table = [
457
- "사건의 영상(P.177)\n PC들은 눈을 가늘게 뜨고 영상을 바라보고 있다.\n 그것은 공교롭게도 현장에서 찍힌 것이었다.\n 과연 진실은 이 영상 속에 담겨있는 것일까?",
458
- "특이한 목격자(P.178)\n PC들은 수사 결과, 사건에 관한 무언가를 봤다는 목격자를 발견한다.\n 그러나 그 사람은 목격증언을 꺼렸다. 왜 그럴까?",
459
- "전문가(P.179)\n 조사 중, 아무래도 전문적인 지식이 필요한 곳이 나온다.\n 지금이 그 때이고 PC들은 어떻게 할지 고민하고 있었다.",
460
- "정보상(P.180)\n 메일 소프트웨어에 연락이 왔다.\n 연락해온 곳은 이 일대에서 유명한 정보상이었다.\n 그 정보상에게 걸리면 얻을 수 없는 정보는 없다고 한다.\n 자, 어떻게 할까?",
461
- "관계자와 함께(P.181)\n 사건관계자 중 한명이 갑자기 협력을 제안했다.\n 아무래도 그 사람도 이 사건에 대해서는 생각하는 구석이 있는 것 같다.",
462
- "아마추어 추리(P.182)\n 사건관계자 앞에서, 게스트 NPC가 추리를 선보이고 있다.\n 하지만 그 추리는 구멍투성이고…….",
463
- ]
464
- return get_table_by_1d6(table)
465
- end
466
-
467
- def get_event_coming
468
- table = [
469
- "수상한 전화(P.183)\n 갑자기 전화가 울렸다.\n 그 전화는 조사를 진전시키게 될까…….\n 동시에, 새로운 수수께끼를 남겼다.",
470
- "지금은 여가를(P.184)\n 행운은 누워서 기다려라.\n 쥐구멍에도 볕 들 날이 있다.\n 라는 걸로, 일단은 아지트에 있다.\n 과연 상황이 나아질까?",
471
- "길에서 딱(P.185)\n 개도 쏘다니면 몽둥이에 맞는다.\n 이 말에는 행운을 만난다는 의미도, 봉변을 당한다는 의미도 있다.\n 그럼, 탐정과 조수가 걸으면 무엇에 해당할까?",
472
- "번뜩이는 순간(P.186)\n 우연한 계기로 탐정은 번뜩이는 수가 있다.\n 이번엔 대체 무엇이 계기였을까?",
473
- "지인으로부터(P.187)\n 사건 수사의 단서를 가져온 것은, 지인이었다.\n 역시 친구밖에 없다.\n 라고 말하고 싶은 참인데…….",
474
- "PC들의 위기(P.188)\n 수사는 갑자기 멈췄다.\n 그 원인은 알고 있다.\n 원인을 제거하지 않으면 사건 조사는 할 수 없다.",
475
- ]
476
- return get_table_by_1d6(table)
477
- end
478
-
479
- def get_event_vs
480
- table = [
481
- "용의자의 거짓말(P.189)\n 사람은 뭔가 떳떳하지 못한 일이 있을 때 거짓말을 한다.\n 이 용의자는 거짓말을 하고 있다.\n 그렇다면, 무엇을 숨기고 있을까?",
482
- "흔들림(P.190)\n 그 용의자는 뭔가를 숨기고 있었다.\n 눈에 띄는 거짓말을 하고 있는 것은 아니다.\n 그렇지만 무언가 숨기고 있다. 탐정에겐, 그렇게 보였다.",
483
- "외모로부터의 추리(P.191)\n 조금만 이야기를 했다.\n 조금만 그 모습을 보았다.\n 조금만, 그 사람을 알았다.\n 그것만으로 탐정이라는 생물은 열을 안다. 원래 그런 것이다.",
484
- "직접 묻다(P.192)\n 여기서 탐정과 조수는 대담한 수를 썼다.\n 용의자를 상대로 사건의 구체적인 부분까지 파고드는 질문을 한 것이다.\n 그것에 대해 용의자는…….",
485
- "위협 받다(P.193)\n 아무래도 우리는 위협을 받는 것 같다.",
486
- "술래가 없는 사이에(P.194)\n 그 용의자를 찾아갔을 때 우연히 자리를 비우고 있었다.\n 이건 기회다.\n 그렇게 생각하는 것이 바로 탐정의 슬픈 천성이다.",
487
- ]
488
- return get_table_by_1d6(table)
47
+ @locale = :ko_kr
489
48
  end
490
49
 
491
- # 調査の障害表(조사의 장애표)
492
- def get_obstruction_table
493
- table = [
494
- [11, '탐정과 조수가 경찰에게 마크당한다.'],
495
- [12, '탐정의 변덕'],
496
- [13, '탐정의 의욕'],
497
- [14, '탐정의 기행을 견딜 수 없게 되다.'],
498
- [15, '탐정이 기이한 의심을 받다.'],
499
- [16, '탐정이 피곤하다.'],
500
- [22, '탐정과 조수가 수상한 인물로 오인받는다.'],
501
- [23, '조수가 파트너에게 신뢰받지 못한다고 생각한다.'],
502
- [24, '조수가 탐정에게 따라갈 수 없다.'],
503
- [25, '조수의 수고가 어느 때보다 크다.'],
504
- [26, '조수의 수사만이 잘 안 된다.'],
505
- [33, '수사를 위한 자금이 없다.'],
506
- [34, '세상의 눈이 매섭다.'],
507
- [35, '경찰로부터 역겹다고 여겨진다.'],
508
- [36, '관계자가 협력해주지 않는다.'],
509
- [44, '수사해서는 안 된다고 압력이 들어온다.'],
510
- [45, '범인에 의한 방해'],
511
- [46, '범인에 의한 이면공작'],
512
- [55, '화분이나 철골 등 부자연스럽게 위험한 물건이 날아온다.'],
513
- [56, '누군가가 탐정과 조수에게 덤벼든다.'],
514
- [66, '우연이 겹쳐서 잘 안 된다.'],
515
- ]
516
-
517
- return get_table_by_d66_swap(table)
518
- end
519
-
520
- # 変調表(변조표)
521
- def get_abnormal_condition
522
- table = [
523
- '엇갈림',
524
- '탐정의 폭주',
525
- '다툼',
526
- '미아',
527
- '나쁜 소문',
528
- '주목의 대상',
529
- ]
530
- return get_table_by_1d6(table)
531
- end
532
-
533
- # 目撃者表(목격자표)
534
- def get_eyewitness_table
535
- table = [
536
- "놀이 상대를 원하는 젊은이. 판정기능:≪유행≫",
537
- "기억력이 나쁜 사람. 판정기능:없음",
538
- "바쁜 사람. 판정기능:≪비즈니스≫",
539
- "범인의 지인. 판정기능:≪설득≫",
540
- "탐정(경찰)을 싫어하는 사람. 판정기능:≪거짓말≫",
541
- "반사회주의자. 판정기능:≪돌파≫",
542
- ]
543
- return get_table_by_1d6(table)
544
- end
545
-
546
- # 迷宮入り表(미제사건표)
547
- def get_wrapped_in_mystery_table
548
- table = [
549
- [1, '진범이 아닌 인간이 범인이 되어, 실형을 받고 말았다. 그 증거는 없지만 그렇게 직감할 수 있다.'],
550
- [2, '해결되지 않은 채 시간이 흐르고, 이윽고 사건은 잊혀졌다. 탐정과 조수, 그리고 사건관계자들만 기억한다.'],
551
- [3, '피해자 유족과 관계자들은 슬픔에 잠겨 있다. 탐정과 조수는 그저 잠자코 보고만 있을 뿐이다. 그때, 범인을 잡았다면…….'],
552
- [4, '경찰에 의해 범인이 검거되었다고 하지만, 그 사람이 정말로 범인인지 어떤지는 알 수 없다. 탐정도, 뭐라고 말할 수 없는 것 같다.'],
553
- [5, '증거가 없어져 버렸다. 그것만 있다면, 사건의 조사를 재개할 수 있을 텐데……. 범인의 소행인지조차 알 수 없다.'],
554
- [6, '관계자가 없어져 버렸다. 그 후 소식도 묘연하다. 도대체 무슨 생각을 하며 사라진 것일까? 어쨌든, 조사는 할 수 없게 되었다.'],
555
- [7, '관계자에게 미움 받아, 접근 조차 할 수 없게 되었다. 탐정과 조수는 모두 출입금지가 되어 버린 것 같다. 이래서는 조사를 할 수 없다.'],
556
- [8, '조수는 때때로 피해자의 관계자와 만나고 있다. 그들의 말을 듣고 그들의 감정을 받아들이는 것 같다.'],
557
- [9, '탐정과 조수는 기회를 발견하고 사건을 재조사하고 있다. 그러나 확실한 증거는 찾지 못한 채 시간이 흘러간다.'],
558
- [10, '탐정은 직감으로 진범을 밝혀냈다. 하지만 진범을 잡기 위한 증거가 없다. 범인을 고발하지 못해 이를 갈았다.'],
559
- ]
560
-
561
- diceText = @randomizer.roll_once(10)
562
- output = get_table_by_number(diceText, table)
563
- return output, diceText
564
- end
565
-
566
- # 背景表(배경표)
567
- def get_background_detective_destiny
568
- table = [
569
- [1, '『명탐정인 조상(실재)』자신의 조상에 저명한 탐정이 있다. 그 이름을 대면 누구나 알 만한 대인물이다. 자신은 그 피를 진하게 잇고 있는 것 같고, 탐정으로서의 재능을 마음껏 발휘하고 있다.'],
570
- [2, '『명탐정인 조상(허구)』자신의 조상은 저명한 탐정이다. 그러나 그 활약은 픽션으로 알려져 있다. 그 인물은 실존하지 않는다고 말하지지만… 그것은 사실이 아니다. 자신이 그 피를 잇고 있으니까.'],
571
- [3, '『부모가 세계적인 탐정』자신의 부모는 세계적으로 알려진 명탐정이다. 숱한 난사건도 해결했다. 자신에게도 그 피가 흐르고 있어 사건에 대한 날카로운 통찰력을 이어받게 되었다.'],
572
- [4, '『마을의 명탐정』자신의 부모는, 마을에서는 잘 알려진 명탐정이다. 마을 사람들에게 사랑받고 의지가 되는 존재였다. 자신도 그 피를 잇고 있는지 탐정으로서 활동할 힘이 있다.'],
573
- [5, '『추리작가』자신을 키운 인물은 저명한 추리작가였다. 그 사고능력은 자신에게도 계승되었고, 트릭을 파헤치는 힘은 탐정 수준에 있다고 해도 좋을 것이다.'],
574
- [6, '『양부모』자신을 키워 준 인물은, 사건을 해결로 이끈 적이 있는 인물이다. 그 사람의 가르침을 받고 자신은 탐정의 재능을 꽃피웠다.'],
575
- [7, '『타락한 명탐정』일찍이, 자신의 부모는 모든 사건을 해결하여, 명탐정으로 유명했다. 그러나 지금은 뛰어난 사고능력을 악용해 사람들을 장기말마냥 다룬다. 능력을 이어받은 자신도 언젠가는 그렇게 될까?'],
576
- [8, '『대악인의 피』세상을 떠들썩하게 했던 대악당과 대괴도. 그 피가 자신에게도 흐르고 있다. 그러므로 악인의 사고를 추적할 수 있으며 결과적으로 명탐정처럼 행동한다.'],
577
- [9, '『숨겨진 핏줄』무슨 이유에서인지, 자신의 뿌리는 말소되어 있다. 내가 누구인지조차 모른다. 단지, 자신에게는 사건을 해결할 수 있는 힘이 있고, 그것이 뿌리와 관계가 있다고 직감할 수 있다.'],
578
- [10, '『클론』자신은 유명한 명탐정의 DNA에서 태어난 존재다. 그래서인지 명탐정의 힘은 타고난 것이었다.'],
579
- ]
580
- diceText = @randomizer.roll_once(10)
581
- output = get_table_by_number(diceText, table)
582
-
583
- return output, diceText
584
- end
585
-
586
- def get_background_detective_genius
587
- table = [
588
- [1, '『초엘리트』자신은 엘리트로 활약하기 위해 모든 분야의 훈련을 받았다. 그리고 원하는 대로 우수한 사람이 되었다.'],
589
- [2, '『순간기억능력』본 것은 모두 머릿속에 입력된다. 그리고, 절대로 잊지 않는다. 자신은 그런 능력을 갖추고 있다.'],
590
- [3, '『지식의 샘』머리 속에 있는 서랍 속에는 온갖 지식이 담겨 있다. 즉, 모르는 게 없다는 얘기다.'],
591
- [4, '『스파르타 교육』엄격한 교육을 받았고, 그 결과 지식을 얻을 수 있었다. 그 대신, 조금 별난 사고방식이 되어 버렸지만……. 별 것 아닐 것이다.'],
592
- [5, '『이미 명탐정』이미 수많은 사건을 해결하고 있는 천재이다. 숱한 난사건도 자신의 수완으로 해결해 왔다. 그 옆에는 파트너의 모습도 있었다.'],
593
- [6, '『동경하는 등』자신에게는 동경하고 있는 상대가 있었다. 그 존재를 따라잡기 위해 노력했고 지금의 능력을 얻었다. 그 인물은, 지금은…….'],
594
- [7, '『라이벌』자신과 겨루던 라이벌이 있다. 능력으로는 거의 호각이었다. 경쟁 속에서, 자신의 능력은 연마되어 간 것이다.'],
595
- [8, '『과거의 명탐정』이전에는, 모든 사건을 해결로 이끈 천재였다. 그러나 지금은 사건 해결에 소극적이다. 사건을 멀리하고 싶은 무언가가 있었던 것이다.'],
596
- [9, '『고립된 명탐정』자신은 천재적인 능력을 가지고 수많은 사건을 해결한 명탐정이다. 그 때문에 소외되고, 두려운 존재로 여겨져, 세간이나 조직 속에서 고립되었다.'],
597
- [10, '『인공 명탐정』자신은 누군가에게 연금되어 탐정 지식을 주입당한 「인공 명탐정」이다. 명탐정이 되도록 길러진 자신은 그 능력을 기대한 대로 발휘할 수 있다.'],
598
- ]
599
- diceText = @randomizer.roll_once(10)
600
- output = get_table_by_number(diceText, table)
601
-
602
- return output, diceText
603
- end
604
-
605
- def get_background_detective_mania
606
- table = [
607
- [1, '『서스펜스 마니아』자신은 서스펜스물의 픽션이나, 실존하는 사건에 대해서 매우 큰 관심을 가지고 있다. 쌓아온 트릭의 지식을 활용할 수 있는 기회를 노리고 있다.'],
608
- [2, '『시체 마니아』자기는 시체에 대해 큰 관심을 갖고 있다. 시체의 상태나 상세정보를 아는 것으로써, 강한 흥분을 느끼는 성질인 것이다. 난처한 일이다.'],
609
- [3, '『과학 마니아』과학에 의해 해명되지 못할 것은 없다. 나는 그렇게 생각하고 있으며 이를 위해 능력을 닦아 왔다. 사람이 일으키는 사건이라도, 과학은 모든 것을 내다볼 수 있을 것이다.'],
610
- [4, '『이른바 오타쿠』게임이나 만화 등에서 얻은 지식이란 의외로 바보 취급할 수 없다. 자신은 게임을 통해 다양한 지식을 쌓아왔으며 이를 응용함으로써 모든 사건을 해결한다.'],
611
- [5, '『인간 마니아』자신은 인간을 좋아한다. 그래서 관찰도 하고 있다. 행동에 당사자도 모르는 이유가 있다는 것도 알고 있다. 사건도, 왜 그런 일을 저질렀는지에 관심이 있다.'],
612
- [6, '『서적 마니아』책에는 모든 것이 적혀 있다. 적어도 자신은 그렇게 생각하고 있고, 그 증거로 책의 지식을 응용함으로써 어려운 사건도 해결할 수 있다. 종이 속의 명탐정처럼.'],
613
- [7, '『오컬트 마니아』오컬트나 초상현상을 믿는다. 그래서 가짜를 알아보는 법도 알며, 용서할 수 없다고 느끼고 있다. 그것이, 어찌된 영문인지 난사건 해결로도 연결된다. 신기하다.'],
614
- [8, '『탐정 마니아』동서고금, 다양한 탐정이 있다. 그에 대해 조사해 가는 동안, 자신 또한 탐정으로서의 능력이 갖추어졌다.'],
615
- [9, '『폭주하는 지식욕』자신은 한 가지 일에 마니아이지만, 그로부터 파생된 것의 지식도 잘 알고 있다. 자신의 지식욕은, 거기서부터 또다시 파생된 것까지 이른다.'],
616
- [10, '『정의의 마니아』자신이 신봉하고 있는 무언가(서적, 과학 등)가 사건에 연루되면 좌불안석이다. 마니아로서 그 수수께끼를 풀어야 한다.'],
617
- ]
618
- diceText = @randomizer.roll_once(10)
619
- output = get_table_by_number(diceText, table)
620
-
621
- return output, diceText
622
- end
623
-
624
- def get_background_assistant_justice
625
- table = [
626
- '『착한 사람』자신은 다른 사람으로부터 곧잘 좋은 사람이라는 말을 듣는다. 그렇기 때문에 다른 사람의 부탁을 받고 사건에 얽히는 일이 잦았다. 그래니 남의 고민을 해결할 수 있는 능력이 있는 파트너와 함께 있다.',
627
- '『용서할 수 없다』자신은 사건의 피해자에 이입하는 타입이다. 피해자의 심정을 생각하면 참담하면서도 범인을 용서할 수 없다는 생각이 든다. 그래서 범인을 쫓기 위해 파트너가 필요하다.',
628
- '『납득하고 싶다』자신이 사건에 대해 깊이 관여하는 것은, 자신이 납득하길 원하기 때문이다. 사건을 통해 어떤 해답을 찾기 위해 정의를 행하고 있다. 파트너는 이를 위해 필요한 사람이다.',
629
- '『이용하고 있다』어떤 수단을 써서라도 사건을 해결하는 것이 옳다고 자신은 생각하고 있다. 그것을 위한 도구로서 파트너를 쓰고 있을 뿐이다.',
630
- '『믿을 수 있는 협력자』파트너를 의지할 수 있는 협력자라고 느끼고 있다. 파트너는 자신이 곤란할 때, 방황할 때, 대답을 해주는 사람이라고 생각한다. 상대가 어떻게 생각하든 그것은 변하지 않는다.',
631
- '『정의의 동지』파트너도 함께 정의를 위해 사건 해결을 해주고 있다. 자신은 그렇게 느끼고 있다. 그렇게 믿고 있을 뿐일지도 모르지만, 그 믿음은 멈출 수 없다. 어쩌면 자신이 파트너를 휘두르고 있는지도 모르겠다.',
632
- ]
633
- return get_table_by_1d6(table)
634
- end
635
-
636
- def get_background_assistant_passion
637
- table = [
638
- '『능력에 반했다』자신은 파트너의 사건에 관한 능력에 반했다. 그 예리한 통찰력과 추리력, 지식의 깊이. 모든 것이 자신을 매료시키고 있다.',
639
- '『인품에 반했다』자신이 파트너와 손을 잡고 있는 것은 인격적인 면이 크다. 언뜻 보기 힘든 대목도 있지만 감춰진 본질에 자신은 푹 빠져 있다.',
640
- '『첫눈에 반했다』처음 만났을 때부터 파트너가 마음에 걸렸다. 그 능력도 그렇지만 직감적인 것을 느꼈던 것이다. 그래서 같이 있는다.',
641
- '『마음이 맞았다』자신과 파트너는 마음이 잘 맞는다. 두 사람이면 흥을 돋울 수 있고, 두 사람이면 뭐든지 할 수 있다. 그렇게 생각한다……자신이 그렇게 생각하는 것일 뿐일지도 모르지만.',
642
- '『대립』자신과 파트너는 대립하고 있다. 그래도 함께 있는 것은 파트너를 이해하기 위해서다…… 언젠가, 파트너를 쓰러뜨릴 수단을 찾기 위해서.',
643
- '『내버려둘 수 없다』파트너를 내버려두면 무슨 짓을 할지 모른다. 그러니까 자신이 지켜보고 있어야 돼. 그렇게 느꼈다.',
644
- ]
645
- return get_table_by_1d6(table)
646
- end
647
-
648
- def get_background_assistant_involved
649
- table = [
650
- '『일방적으로 마음에 들었다』파트너가 일방적으로 좋아한다. 어쩌다 그랬는지는 모르겠지만 그런 것 같다. 함께 있는 것은 자신의 의지가 아니지만…….',
651
- '『리액션 요원』파트너에 의하면, 자신에게 리액션을 기대하고 있는 것 같다. 사건을 해결했을 때나, 어떤 놀라움이 있었을 때에 보이는 반응이 즐겁다던가.',
652
- '『과거의 빚』과거, 파트너에게 비밀이나 약점을 잡혔다. 그 이후, 파트너가 부려먹고 있다. 아직 도망치지 못했다.',
653
- '『필요한 인재』파트너에게 자신이 필요하다고 부탁받았다. 그래서, 함께 사건을 해결하고 있다. 왜 자신이 필요한지는 아직 모른다.',
654
- '『친한 사람』파트너에게 자신은 친근한 인물이다. 소꿉친구와 친구, 친척 등. 그래서 옛날부터 휘둘리고 있고 앞으로도 계속 휘둘릴 것이다.',
655
- '『우연의 연속』파트너가 사건에 직면할 때마다 마침 그 자리에 있다. 그러다 보니 어느새 친해져 있었다. 지금은 함께 있는 일도 많다.',
656
- ]
657
- return get_table_by_1d6(table)
658
- end
659
-
660
- # 身長表(신장표)
661
- def get_height_table
662
- table = [
663
- '매우 크다',
664
- '큰 편',
665
- '평균적',
666
- '작은 편',
667
- '매우 작다',
668
- '파트너보다 조금 크다/조금 작다',
669
- ]
670
-
671
- return get_table_by_1d6(table)
672
- end
673
-
674
- # たまり場表(아지트표)
675
- def get_base_table
676
- table = [
677
- [1, 'PC가 일하고 있는 직장'],
678
- [2, '조용한 분위기의 찻집'],
679
- [3, '떠들썩한 분위기의 술집'],
680
- [4, '탐정활동을 위해 빌린 사무소'],
681
- [5, 'PC 중 한쪽의 집'],
682
- [6, '단골 음식점'],
683
- [7, '이동에 쓰이는 차 안'],
684
- [8, '지인에게 양도받은 창고'],
685
- [9, '언제나 파트너와 만나는 교차점'],
686
- [10, '둘만 알고 있는 비밀장소'],
687
- ]
688
- diceText = @randomizer.roll_once(10)
689
- output = get_table_by_number(diceText, table)
690
- return output, diceText
691
- end
692
-
693
- # 関係表()
694
- def get_guest_relation_table
695
- table = [
696
- [11, '옛날 친구'],
697
- [12, '친구(友人)'],
698
- [13, '친구(親友)'],
699
- [14, '안면이 있다'],
700
- [15, '전우'],
701
- [16, '악연'],
702
- [22, '과거에 무언가 있었다'],
703
- [23, '사촌'],
704
- [24, '친구의 친구'],
705
- [25, '먼 친척'],
706
- [26, '이웃'],
707
- [33, '민폐를 끼쳤다'],
708
- [34, '스승'],
709
- [35, '인터넷으로 알게 되었다'],
710
- [36, '우연히 알게 되었다'],
711
- [44, '전에 딱 한 번 만났다'],
712
- [45, '파트너의 일로 상담 받았다'],
713
- [46, '파트너에 대해 질문 받았다'],
714
- [55, '소꿉친구'],
715
- [56, '파트너를 쫓고 있다'],
716
- [66, '일방적으로 알려져 있다'],
717
- ]
718
- return get_table_by_d66_swap(table)
719
- end
720
-
721
- # 思い出の品決定表(추억의 물건 결정표)
722
- def get_memorial_item_table
723
- table = [
724
- [11, '아지트에 계속 놓여 있는 배달피자상자'],
725
- [12, '같이 해결한 사건의 파일'],
726
- [13, '두 사람이 만난 계기가 된 책'],
727
- [14, '둘이서 놀았던 체스판이나 장기판'],
728
- [15, '두 사람의 추억이 쌓인 게임기'],
729
- [16, '두 사람이 찍힌 사진'],
730
- [22, '두 사람의 수사노트'],
731
- [23, '같이 사용한 청소도구'],
732
- [24, '피해자로부터 받은 인형'],
733
- [25, '둘이서 같이 앉은 소파'],
734
- [26, '언제나 앉아있는 의자'],
735
- [33, '자주 사용하는 전화기'],
736
- [34, '둘의 시간을 새긴 시계'],
737
- [35, '언제나 놓여있는 책상'],
738
- [36, '사건 해설을 한 화이트보드나 칠판'],
739
- [44, '어째선지 있는 인체모형'],
740
- [45, '좋아하는 컵'],
741
- [46, '사건해결에 쓴 소도구'],
742
- [55, '같이 마시기로 약속한 술이나 주스'],
743
- [56, '좋아하는 요리'],
744
- [66, '둘만의 비밀교환일기'],
745
- ]
746
- return get_table_by_d66_swap(table)
747
- end
748
-
749
- # 職業表A(직업표A)
750
- def get_job_table_66
751
- table = [
752
- [11, '파트너와 같음'],
753
- [12, '프리터'],
754
- [13, '학생(우수)'],
755
- [14, '학생(보통)'],
756
- [15, '학생(불성실)'],
757
- [16, '교사,강사'],
758
- [22, '파트너와 같음'],
759
- [23, '회사원'],
760
- [24, '주부'],
761
- [25, '자영업자'],
762
- [26, '딜레탕트'],
763
- [33, '파트너와 같음'],
764
- [34, '형사(신입)'],
765
- [35, '형사(엘리트)'],
766
- [36, '공무원'],
767
- [44, '파트너와 같음'],
768
- [45, '탐정조수'],
769
- [46, '탐정'],
770
- [55, '파트너와 같음'],
771
- [56, '무직'],
772
- [66, '파트너와 같음'],
773
- ]
774
-
775
- return get_table_by_d66_swap(table)
776
- end
777
-
778
- # 職業表B(직업표B)
779
- def get_job_table_10
780
- table = [
781
- [1, '딜레탕트'],
782
- [2, '형사'],
783
- [3, '탐정(유명)'],
784
- [4, '탐정(인기없음)'],
785
- [5, '탐정조수'],
786
- [6, '연구자'],
787
- [7, '자영업자'],
788
- [8, '회사원'],
789
- [9, '작가'],
790
- [10, '학생'],
791
- ]
792
-
793
- diceText = @randomizer.roll_once(10)
794
- output = get_table_by_number(diceText, table)
795
- return output, diceText
796
- end
797
-
798
- # ファッション特徴表A(패션특징표A)
799
- def get_fashion_table_66
800
- table = [
801
- [11, '고급지향'],
802
- [12, '정장'],
803
- [13, '캐주얼 웨어(평상복)'],
804
- [14, '포멀 웨어(정장)'],
805
- [15, '스포츠웨어'],
806
- [16, '합리적임'],
807
- [22, '선글라스'],
808
- [23, '와이셔츠'],
809
- [24, '티셔츠'],
810
- [25, '목걸이'],
811
- [26, '모자'],
812
- [33, '밀리터리'],
813
- [34, '피어스'],
814
- [35, '추리닝'],
815
- [36, '붙임머리'],
816
- [44, '일본전통옷'],
817
- [45, '반지'],
818
- [46, '초커'],
819
- [55, '샌들'],
820
- [56, '점퍼'],
821
- [66, '패션에 구애받지 않는다'],
822
- ]
823
- return get_table_by_d66_swap(table)
824
- end
825
-
826
- # ファッション特徴表B(패션특징표B)
827
- def get_fashion_table_10
828
- table = [
829
- [1, '정장'],
830
- [2, '인버네스'],
831
- [3, '백의'],
832
- [4, '글로브'],
833
- [5, '파이프'],
834
- [6, '조끼'],
835
- [7, '일본전통옷'],
836
- [8, '컬러풀한 색 사용'],
837
- [9, '파트너와 같음'],
838
- [10, '패션에 구애받지 않는다'],
839
- ]
840
-
841
- diceText = @randomizer.roll_once(10)
842
- output = get_table_by_number(diceText, table)
843
- return output, diceText
844
- end
845
-
846
- # 好きなもの/嫌いなもの表A(좋아하는 것/싫어하는 것표A)
847
- def get_like_dislike_table_66
848
- table = [
849
- [11, '시체'],
850
- [12, '개'],
851
- [13, '고양이'],
852
- [14, '서스펜스'],
853
- [15, '이야기'],
854
- [16, '아이돌'],
855
- [22, '범죄'],
856
- [23, '오컬트'],
857
- [24, '건강'],
858
- [25, '정크푸드'],
859
- [26, '고급식사'],
860
- [33, '패션'],
861
- [34, '권력'],
862
- [35, '명예'],
863
- [36, '우정'],
864
- [44, '간식'],
865
- [45, '고향'],
866
- [46, '가족'],
867
- [55, '경찰'],
868
- [56, '음악'],
869
- [66, '총'],
870
- ]
871
-
872
- return get_table_by_d66_swap(table)
873
- end
874
-
875
- # 好きなもの/嫌いなもの表B(좋아하는 것/싫어하는 것표B)
876
- def get_like_dislike_table_10
877
- table = [
878
- [1, '범죄'],
879
- [2, '수수께끼'],
880
- [3, '탐정'],
881
- [4, '파트너'],
882
- [5, '파트너가 좋아하는 것'],
883
- [6, '파트너가 싫어하는 것'],
884
- [7, '딱히 없음'],
885
- [8, '체스나 장기 등의 보드게임'],
886
- [9, '인간'],
887
- [10, '모르는 것'],
888
- ]
889
-
890
- diceText = @randomizer.roll_once(10)
891
- output = get_table_by_number(diceText, table)
892
- return output, diceText
893
- end
894
-
895
- # 感情表A(감정표A)
896
- def get_feeling_table_66
897
- table = [
898
- [11, '얼굴'],
899
- [12, '분위기'],
900
- [13, '외관'],
901
- [14, '수사방법'],
902
- [15, '행동거지'],
903
- [16, '냄새'],
904
- [22, '존재 그 자체'],
905
- [23, '말투'],
906
- [24, '취미(취향)'],
907
- [25, '왠지 모르게'],
908
- [26, '타인을 향한 태도'],
909
- [33, '금전감각'],
910
- [34, '생활습관'],
911
- [35, '기능'],
912
- [36, '복장'],
913
- [44, '말할 타이밍'],
914
- [45, '윤리관'],
915
- [46, '자신을 향한 태도'],
916
- [55, '거리감'],
917
- [56, '자신과의 관계'],
918
- [66, '생활습관'],
919
- ]
920
-
921
- return get_table_by_d66_swap(table)
922
- end
923
-
924
- # 感情表B(감정표B)
925
- def get_feeling_table_10
926
- table = [
927
- [1, '인간성'],
928
- [2, '취미(취향)'],
929
- [3, '기능'],
930
- [4, '왠지 모르게'],
931
- [5, '감각'],
932
- [6, '분위기'],
933
- [7, '자신이 모르는 점'],
934
- [8, '자신이 잘 알고 있는 점'],
935
- [9, '자신을 향한 태도'],
936
- [10, '자신과의 관계'],
937
- ]
938
- diceText = @randomizer.roll_once(10)
939
- output = get_table_by_number(diceText, table)
940
- return output, diceText
941
- end
942
-
943
- # 呼び名表A(호칭표A)
944
- def get_name_to_call_table_66
945
- table = [
946
- [11, '달링, 허니'],
947
- [12, '이름'],
948
- [13, '~군(くん)'],
949
- [14, '~씨(さん)'],
950
- [15, '~쨩(ちゃん)'],
951
- [16, '~님(様), ~공(殿)'],
952
- [22, '~선배, ~후배'],
953
- [23, '파트너(相棒)'],
954
- [24, '당신(あんた)'],
955
- [25, '당신(あなた)'],
956
- [26, '선생(님)'],
957
- [33, '물건으로 비유한다.'],
958
- [34, '네놈/자네(貴様)、귀하(貴殿)'],
959
- [35, '너(てめえ、おまえ)'],
960
- [36, '별명'],
961
- [44, '유(ユー)'],
962
- [45, '자네(お前さん)'],
963
- [46, '탐정군, 탐정씨'],
964
- [55, '친구'],
965
- [56, '파트너와 같다.'],
966
- [66, '매번 호칭이 바뀐다.'],
967
- ]
968
-
969
- return get_table_by_d66_swap(table)
970
- end
971
-
972
- # 呼び名表B(호칭표B)
973
- def get_name_to_call_table_10
974
- table = [
975
- [1, '이름'],
976
- [2, '~군(くん)'],
977
- [3, '~씨(さん)'],
978
- [4, '~쨩(ちゃん)'],
979
- [5, '~님(様), ~공(殿)'],
980
- [6, '파트너(相棒)'],
981
- [7, '당신(あんた、あなた)'],
982
- [8, '너(キミ)'],
983
- [9, '사랑하는~'],
984
- [10, '별명'],
985
- ]
986
-
987
- diceText = @randomizer.roll_once(10)
988
- output = get_table_by_number(diceText, table)
989
-
990
- return output, diceText
991
- end
50
+ TABLES = translate_tables(:ko_kr)
992
51
  end
993
52
  end
994
53
  end