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.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +1 -1
- data/.rubocop.yml +12 -0
- data/.rubocop_todo.yml +1 -0
- data/CHANGELOG.md +34 -0
- data/Gemfile +6 -3
- data/Rakefile +52 -18
- data/bcdice.gemspec +2 -0
- data/i18n/Amadeus/ja_jp.yml +386 -0
- data/i18n/Amadeus/ko_kr.yml +148 -0
- data/i18n/Cthulhu/ja_jp.yml +11 -0
- data/i18n/Cthulhu/ko_kr.yml +11 -0
- data/i18n/Cthulhu/zh_hant.yml +11 -0
- data/i18n/DetatokoSaga/ja_jp.yml +74 -0
- data/i18n/DetatokoSaga/ko_kr.yml +74 -0
- data/i18n/DoubleCross/ja_jp.yml +53 -0
- data/i18n/DoubleCross/ko_kr.yml +53 -0
- data/i18n/Dracurouge/ja_jp.yml +1374 -0
- data/i18n/Dracurouge/ko_kr.yml +295 -0
- data/i18n/Fiasco/ja_jp.yml +10 -0
- data/i18n/Fiasco/ko_kr.yml +10 -0
- data/i18n/FutariSousa/ja_jp.yml +720 -0
- data/i18n/FutariSousa/ko_kr.yml +746 -0
- data/i18n/Insane/ja_jp.yml +454 -0
- data/i18n/Insane/ko_kr.yml +502 -0
- data/i18n/Kamigakari/ja_jp.yml +276 -0
- data/i18n/Kamigakari/ko_kr.yml +204 -0
- data/i18n/KillDeathBusiness/ja_jp.yml +1092 -0
- data/i18n/KillDeathBusiness/ko_kr.yml +1062 -0
- data/i18n/LogHorizon/ja_jp.yml +3082 -0
- data/i18n/LogHorizon/ko_kr.yml +923 -0
- data/i18n/MagicaLogia/ja_jp.yml +564 -0
- data/i18n/MonotoneMuseum/ja_jp.yml +525 -0
- data/i18n/MonotoneMuseum/ko_kr.yml +89 -0
- data/i18n/Nechronica/ja_jp.yml +57 -0
- data/i18n/Nechronica/ko_kr.yml +14 -0
- data/i18n/StratoShout/ja_jp.yml +160 -0
- data/i18n/StratoShout/ko_kr.yml +160 -0
- data/i18n/ja_jp.yml +5 -0
- data/i18n/ko_kr.yml +7 -0
- data/i18n/zh_hant.yml +3 -0
- data/lib/bcdice/arithmetic/node.rb +154 -0
- data/lib/bcdice/base.rb +87 -101
- data/lib/bcdice/common_command.rb +2 -0
- data/lib/bcdice/common_command/add_dice.rb +5 -41
- data/lib/bcdice/common_command/add_dice/node.rb +92 -16
- data/lib/bcdice/common_command/add_dice/parser.rb +374 -274
- data/lib/bcdice/common_command/add_dice/parser.y +153 -0
- data/lib/bcdice/common_command/add_dice/randomizer.rb +25 -33
- data/lib/bcdice/common_command/barabara_dice.rb +6 -47
- data/lib/bcdice/common_command/barabara_dice/node.rb +84 -0
- data/lib/bcdice/common_command/barabara_dice/parser.rb +336 -0
- data/lib/bcdice/common_command/barabara_dice/parser.y +107 -0
- data/lib/bcdice/common_command/calc.rb +7 -30
- data/lib/bcdice/common_command/calc/node.rb +30 -0
- data/lib/bcdice/common_command/calc/parser.rb +271 -0
- data/lib/bcdice/common_command/calc/parser.y +79 -0
- data/lib/bcdice/common_command/choice.rb +137 -19
- data/lib/bcdice/common_command/d66_dice.rb +48 -34
- data/lib/bcdice/common_command/lexer.rb +46 -0
- data/lib/bcdice/common_command/repeat.rb +102 -0
- data/lib/bcdice/common_command/reroll_dice.rb +8 -158
- data/lib/bcdice/common_command/reroll_dice/node.rb +198 -0
- data/lib/bcdice/common_command/reroll_dice/parser.rb +421 -0
- data/lib/bcdice/common_command/reroll_dice/parser.y +158 -0
- data/lib/bcdice/common_command/upper_dice.rb +10 -129
- data/lib/bcdice/common_command/upper_dice/node.rb +181 -0
- data/lib/bcdice/common_command/upper_dice/parser.rb +412 -0
- data/lib/bcdice/common_command/upper_dice/parser.y +143 -0
- data/lib/bcdice/common_command/version.rb +9 -17
- data/lib/bcdice/deprecated/checker.rb +78 -0
- data/lib/bcdice/dice_table/d66_grid_table.rb +8 -0
- data/lib/bcdice/dice_table/d66_table.rb +10 -0
- data/lib/bcdice/dice_table/sai_fic_skill_table.rb +75 -17
- data/lib/bcdice/dice_table/sai_fic_skill_table/category.rb +25 -0
- data/lib/bcdice/dice_table/sai_fic_skill_table/skill.rb +23 -0
- data/lib/bcdice/dice_table/table.rb +8 -0
- data/lib/bcdice/game_system.rb +7 -1
- data/lib/bcdice/game_system/AFF2e.rb +1 -1
- data/lib/bcdice/game_system/AceKillerGene.rb +2 -2
- data/lib/bcdice/game_system/Airgetlamh.rb +3 -3
- data/lib/bcdice/game_system/Alsetto.rb +1 -1
- data/lib/bcdice/game_system/Alshard.rb +1 -1
- data/lib/bcdice/game_system/AlterRaise.rb +2 -2
- data/lib/bcdice/game_system/Amadeus.rb +46 -507
- data/lib/bcdice/game_system/Amadeus_Korean.rb +12 -456
- data/lib/bcdice/game_system/AnimaAnimus.rb +1 -1
- data/lib/bcdice/game_system/Arianrhod.rb +0 -1
- data/lib/bcdice/game_system/ArsMagica.rb +1 -1
- data/lib/bcdice/game_system/Avandner.rb +1 -1
- data/lib/bcdice/game_system/BBN.rb +1 -1
- data/lib/bcdice/game_system/BadLife.rb +1 -1
- data/lib/bcdice/game_system/BarnaKronika.rb +1 -1
- data/lib/bcdice/game_system/BeastBindTrinity.rb +1 -2
- data/lib/bcdice/game_system/BeginningIdol.rb +2 -3
- data/lib/bcdice/game_system/BeginningIdol_Korean.rb +2 -3
- data/lib/bcdice/game_system/BladeOfArcana.rb +2 -2
- data/lib/bcdice/game_system/BlindMythos.rb +1 -1
- data/lib/bcdice/game_system/BloodCrusade.rb +0 -1
- data/lib/bcdice/game_system/BloodMoon.rb +0 -1
- data/lib/bcdice/game_system/CardRanker.rb +1 -2
- data/lib/bcdice/game_system/ChaosFlare.rb +1 -1
- data/lib/bcdice/game_system/Chill.rb +1 -1
- data/lib/bcdice/game_system/CodeLayerd.rb +1 -1
- data/lib/bcdice/game_system/ColossalHunter.rb +1 -2
- data/lib/bcdice/game_system/Comes.rb +50 -0
- data/lib/bcdice/game_system/CrashWorld.rb +1 -1
- data/lib/bcdice/game_system/Cthulhu.rb +94 -97
- data/lib/bcdice/game_system/Cthulhu7th.rb +108 -67
- data/lib/bcdice/game_system/Cthulhu7th_ChineseTraditional.rb +1 -1
- data/lib/bcdice/game_system/Cthulhu7th_Korean.rb +1 -1
- data/lib/bcdice/game_system/CthulhuTech.rb +8 -14
- data/lib/bcdice/game_system/Cthulhu_ChineseTraditional.rb +7 -190
- data/lib/bcdice/game_system/Cthulhu_Korean.rb +5 -186
- data/lib/bcdice/game_system/DarkBlaze.rb +9 -5
- data/lib/bcdice/game_system/DarkDaysDrive.rb +17 -15
- data/lib/bcdice/game_system/DarkSouls.rb +1 -1
- data/lib/bcdice/game_system/DeadlineHeroes.rb +2 -2
- data/lib/bcdice/game_system/DemonParasite.rb +1 -2
- data/lib/bcdice/game_system/DetatokoSaga.rb +48 -149
- data/lib/bcdice/game_system/DetatokoSaga_Korean.rb +6 -274
- data/lib/bcdice/game_system/DiceOfTheDead.rb +9 -6
- data/lib/bcdice/game_system/DoubleCross.rb +102 -81
- data/lib/bcdice/game_system/DoubleCross_Korean.rb +13 -330
- data/lib/bcdice/game_system/Dracurouge.rb +376 -1678
- data/lib/bcdice/game_system/Dracurouge_Korean.rb +16 -271
- data/lib/bcdice/game_system/EarthDawn.rb +1 -1
- data/lib/bcdice/game_system/EarthDawn3.rb +1 -1
- data/lib/bcdice/game_system/EarthDawn4.rb +1 -1
- data/lib/bcdice/game_system/Elysion.rb +3 -4
- data/lib/bcdice/game_system/EmbryoMachine.rb +1 -1
- data/lib/bcdice/game_system/Emoklore.rb +131 -0
- data/lib/bcdice/game_system/EndBreaker.rb +1 -2
- data/lib/bcdice/game_system/EtrianOdysseySRS.rb +1 -1
- data/lib/bcdice/game_system/Fiasco.rb +87 -70
- data/lib/bcdice/game_system/Fiasco_Korean.rb +7 -95
- data/lib/bcdice/game_system/FilledWith.rb +462 -566
- data/lib/bcdice/game_system/FullMetalPanic.rb +1 -1
- data/lib/bcdice/game_system/FutariSousa.rb +103 -938
- data/lib/bcdice/game_system/FutariSousa_Korean.rb +7 -948
- data/lib/bcdice/game_system/{Gurps.rb → GURPS.rb} +184 -217
- data/lib/bcdice/game_system/Garako.rb +131 -39
- data/lib/bcdice/game_system/GardenOrder.rb +2 -2
- data/lib/bcdice/game_system/GehennaAn.rb +1 -1
- data/lib/bcdice/game_system/GeishaGirlwithKatana.rb +1 -1
- data/lib/bcdice/game_system/GoblinSlayer.rb +1 -1
- data/lib/bcdice/game_system/GoldenSkyStories.rb +1 -1
- data/lib/bcdice/game_system/Gorilla.rb +1 -1
- data/lib/bcdice/game_system/GranCrest.rb +2 -3
- data/lib/bcdice/game_system/GundogRevised.rb +1 -1
- data/lib/bcdice/game_system/GundogZero.rb +1 -1
- data/lib/bcdice/game_system/GurpsFW.rb +2 -3
- data/lib/bcdice/game_system/HarnMaster.rb +2 -2
- data/lib/bcdice/game_system/HatsuneMiku.rb +1 -2
- data/lib/bcdice/game_system/HouraiGakuen.rb +1 -1
- data/lib/bcdice/game_system/HuntersMoon.rb +1 -2
- data/lib/bcdice/game_system/Illusio.rb +2 -2
- data/lib/bcdice/game_system/Insane.rb +90 -717
- data/lib/bcdice/game_system/Insane_Korean.rb +7 -719
- data/lib/bcdice/game_system/Kamigakari.rb +47 -242
- data/lib/bcdice/game_system/Kamigakari_Korean.rb +6 -394
- data/lib/bcdice/game_system/KanColle.rb +3 -3
- data/lib/bcdice/game_system/KemonoNoMori.rb +1 -1
- data/lib/bcdice/game_system/KillDeathBusiness.rb +162 -1144
- data/lib/bcdice/game_system/KillDeathBusiness_Korean.rb +6 -1459
- data/lib/bcdice/game_system/KurayamiCrying.rb +1 -1
- data/lib/bcdice/game_system/LiveraDoll.rb +2 -2
- data/lib/bcdice/game_system/LogHorizon.rb +350 -3379
- data/lib/bcdice/game_system/LogHorizon_Korean.rb +55 -1357
- data/lib/bcdice/game_system/LostRecord.rb +0 -1
- data/lib/bcdice/game_system/LostRoyal.rb +1 -2
- data/lib/bcdice/game_system/MagicaLogia.rb +158 -1044
- data/lib/bcdice/game_system/MeikyuDays.rb +1 -2
- data/lib/bcdice/game_system/MeikyuKingdom.rb +4 -4
- data/lib/bcdice/game_system/MeikyuKingdomBasic.rb +4 -5
- data/lib/bcdice/game_system/MetalHead.rb +1 -1
- data/lib/bcdice/game_system/MetalHeadExtream.rb +2 -2
- data/lib/bcdice/game_system/MetallicGuardian.rb +1 -1
- data/lib/bcdice/game_system/MonotoneMuseum.rb +38 -239
- data/lib/bcdice/game_system/MonotoneMuseum_Korean.rb +10 -270
- data/lib/bcdice/game_system/NSSQ.rb +159 -0
- data/lib/bcdice/game_system/Nechronica.rb +34 -73
- data/lib/bcdice/game_system/Nechronica_Korean.rb +11 -128
- data/lib/bcdice/game_system/NeverCloud.rb +1 -1
- data/lib/bcdice/game_system/NightWizard.rb +1 -1
- data/lib/bcdice/game_system/NightWizard3rd.rb +1 -1
- data/lib/bcdice/game_system/NinjaSlayer.rb +12 -11
- data/lib/bcdice/game_system/NjslyrBattle.rb +1 -1
- data/lib/bcdice/game_system/OneWayHeroics.rb +1 -2
- data/lib/bcdice/game_system/OracleEngine.rb +1 -1
- data/lib/bcdice/game_system/OrgaRain.rb +2 -2
- data/lib/bcdice/game_system/Paradiso.rb +1 -1
- data/lib/bcdice/game_system/Paranoia.rb +1 -1
- data/lib/bcdice/game_system/ParanoiaRebooted.rb +1 -1
- data/lib/bcdice/game_system/ParasiteBlood.rb +1 -1
- data/lib/bcdice/game_system/Peekaboo.rb +22 -122
- data/lib/bcdice/game_system/Postman.rb +2 -2
- data/lib/bcdice/game_system/PulpCthulhu.rb +3 -3
- data/lib/bcdice/game_system/Raisondetre.rb +2 -2
- data/lib/bcdice/game_system/RecordOfLodossWar.rb +1 -1
- data/lib/bcdice/game_system/RecordOfSteam.rb +1 -1
- data/lib/bcdice/game_system/RokumonSekai2.rb +1 -1
- data/lib/bcdice/game_system/RuinBreakers.rb +296 -0
- data/lib/bcdice/game_system/Ryutama.rb +1 -1
- data/lib/bcdice/game_system/SRS.rb +1 -2
- data/lib/bcdice/game_system/SamsaraBallad.rb +1 -1
- data/lib/bcdice/game_system/Satasupe.rb +1 -2
- data/lib/bcdice/game_system/ScreamHighSchool.rb +2 -2
- data/lib/bcdice/game_system/SevenFortressMobius.rb +1 -1
- data/lib/bcdice/game_system/ShadowRun5.rb +2 -2
- data/lib/bcdice/game_system/SharedFantasia.rb +1 -1
- data/lib/bcdice/game_system/ShinMegamiTenseiKakuseihen.rb +1 -1
- data/lib/bcdice/game_system/ShinkuuGakuen.rb +2 -2
- data/lib/bcdice/game_system/ShinobiGami.rb +1 -2
- data/lib/bcdice/game_system/ShoujoTenrankai.rb +2 -2
- data/lib/bcdice/game_system/Skynauts.rb +1 -1
- data/lib/bcdice/game_system/SteamPunkers.rb +1 -1
- data/lib/bcdice/game_system/StellarKnights.rb +1 -2
- data/lib/bcdice/game_system/SterileLife.rb +1 -1
- data/lib/bcdice/game_system/StrangerOfSwordCity.rb +1 -2
- data/lib/bcdice/game_system/StratoShout.rb +44 -247
- data/lib/bcdice/game_system/StratoShout_Korean.rb +6 -282
- data/lib/bcdice/game_system/Strave.rb +2 -2
- data/lib/bcdice/game_system/SwordWorld.rb +8 -9
- data/lib/bcdice/game_system/SwordWorld2_0.rb +2 -3
- data/lib/bcdice/game_system/SwordWorld2_5.rb +2 -3
- data/lib/bcdice/game_system/TherapieSein.rb +1 -1
- data/lib/bcdice/game_system/TokumeiTenkousei.rb +1 -1
- data/lib/bcdice/game_system/TokyoGhostResearch.rb +2 -2
- data/lib/bcdice/game_system/Torg.rb +2 -2
- data/lib/bcdice/game_system/Torg1_5.rb +1 -1
- data/lib/bcdice/game_system/TorgEternity.rb +1 -1
- data/lib/bcdice/game_system/TrinitySeven.rb +1 -1
- data/lib/bcdice/game_system/TunnelsAndTrolls.rb +1 -1
- data/lib/bcdice/game_system/TwilightGunsmoke.rb +1 -2
- data/lib/bcdice/game_system/UnsungDuet.rb +139 -0
- data/lib/bcdice/game_system/Utakaze.rb +1 -1
- data/lib/bcdice/game_system/VampireTheMasquerade5th.rb +1 -1
- data/lib/bcdice/game_system/Villaciel.rb +1 -2
- data/lib/bcdice/game_system/Warhammer.rb +1 -1
- data/lib/bcdice/game_system/Warhammer4.rb +329 -0
- data/lib/bcdice/game_system/WitchQuest.rb +1 -1
- data/lib/bcdice/game_system/WorldOfDarkness.rb +1 -1
- data/lib/bcdice/game_system/YankeeYogSothoth.rb +15 -15
- data/lib/bcdice/game_system/YearZeroEngine.rb +1 -1
- data/lib/bcdice/game_system/ZettaiReido.rb +1 -1
- data/lib/bcdice/game_system/filled_with/cook_tables.rb +119 -0
- data/lib/bcdice/game_system/filled_with/lot_tables.rb +155 -0
- data/lib/bcdice/loader.rb +6 -8
- data/lib/bcdice/preprocessor.rb +15 -40
- data/lib/bcdice/repl.rb +1 -1
- data/lib/bcdice/result.rb +83 -0
- data/lib/bcdice/translate.rb +11 -0
- data/lib/bcdice/version.rb +1 -1
- metadata +80 -4
@@ -1,8 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "bcdice/game_system/DetatokoSaga"
|
4
|
+
|
3
5
|
module BCDice
|
4
6
|
module GameSystem
|
5
|
-
class DetatokoSaga_Korean <
|
7
|
+
class DetatokoSaga_Korean < DetatokoSaga
|
6
8
|
# ゲームシステムの識別子
|
7
9
|
ID = 'DetatokoSaga:Korean'
|
8
10
|
|
@@ -26,285 +28,15 @@ module BCDice
|
|
26
28
|
・기력 배드엔딩표 WBET (WillBadEndTable)
|
27
29
|
INFO_MESSAGE_TEXT
|
28
30
|
|
29
|
-
|
30
|
-
'\d+DS.*', '\d+JD.*',
|
31
|
-
'SST', 'StrengthStigmaTable',
|
32
|
-
'WST', 'WillStigmaTable',
|
33
|
-
'SBET', 'StrengthBadEndTable',
|
34
|
-
'WBET', 'WillBadEndTable'
|
35
|
-
])
|
31
|
+
register_prefix_from_super_class()
|
36
32
|
|
37
33
|
def initialize(command)
|
38
34
|
super(command)
|
39
35
|
|
40
|
-
@
|
41
|
-
@enabled_d66 = true
|
42
|
-
@d66_sort_type = D66SortType::ASC
|
43
|
-
end
|
44
|
-
|
45
|
-
def eval_game_system_specific_command(command)
|
46
|
-
debug("eval_game_system_specific_command begin string", command)
|
47
|
-
|
48
|
-
result = checkRoll(command)
|
49
|
-
return result unless result.empty?
|
50
|
-
|
51
|
-
result = checkJudgeValue(command)
|
52
|
-
return result unless result.empty?
|
53
|
-
|
54
|
-
debug("각종표로서 처리")
|
55
|
-
return rollTableCommand(command)
|
56
|
-
end
|
57
|
-
|
58
|
-
# 통상판정 xDS or xDSy or xDS>=z or xDSy>=z
|
59
|
-
def checkRoll(string)
|
60
|
-
debug("checkRoll begin string", string)
|
61
|
-
|
62
|
-
return '' unless /^(\d+)DS(\d+)?((>=)(\d+))?$/i =~ string
|
63
|
-
|
64
|
-
target = 8
|
65
|
-
|
66
|
-
skill = Regexp.last_match(1).to_i
|
67
|
-
flag = Regexp.last_match(2).to_i
|
68
|
-
target = Regexp.last_match(5).to_i unless Regexp.last_match(5).nil?
|
69
|
-
|
70
|
-
result = "판정! 스킬레벨:#{skill} 플래그:#{flag} 목표치:#{target}"
|
71
|
-
|
72
|
-
total, rollText = getRollResult(skill)
|
73
|
-
result += " > #{total}[#{rollText}] > 판정치:#{total}"
|
74
|
-
|
75
|
-
success = getSuccess(total, target)
|
76
|
-
result += " > #{success}"
|
77
|
-
|
78
|
-
result += getCheckFlagResult(total, flag)
|
79
|
-
|
80
|
-
return result
|
81
|
-
end
|
82
|
-
|
83
|
-
def getRollResult(skill)
|
84
|
-
diceCount = skill + 1
|
85
|
-
diceCount = 3 if skill == 0
|
86
|
-
|
87
|
-
dice = @randomizer.roll_barabara(diceCount, 6)
|
88
|
-
diceText = dice.join(',')
|
89
|
-
|
90
|
-
dice = dice.sort
|
91
|
-
dice = dice.reverse if skill != 0
|
92
|
-
|
93
|
-
total = dice[0] + dice[1]
|
94
|
-
|
95
|
-
return total, diceText
|
96
|
-
end
|
97
|
-
|
98
|
-
def getSuccess(check, target)
|
99
|
-
if check >= target
|
100
|
-
return "목표치 이상!【성공】"
|
101
|
-
end
|
102
|
-
|
103
|
-
return "목표치 미달… 【실패】"
|
104
|
-
end
|
105
|
-
|
106
|
-
def getCheckFlagResult(total, flag)
|
107
|
-
if total > flag
|
108
|
-
return ""
|
109
|
-
end
|
110
|
-
|
111
|
-
willText = getDownWill(flag)
|
112
|
-
result = ", 플래그 이하! 【기력#{willText}점 감소】"
|
113
|
-
result += " 【판정치 변경 불가】"
|
114
|
-
|
115
|
-
return result
|
36
|
+
@locale = :ko_kr
|
116
37
|
end
|
117
38
|
|
118
|
-
|
119
|
-
if flag >= 10
|
120
|
-
return "6"
|
121
|
-
end
|
122
|
-
|
123
|
-
dice = @randomizer.roll_once(6)
|
124
|
-
return "1D6->#{dice}"
|
125
|
-
end
|
126
|
-
|
127
|
-
# 스킬판정치 xJD or xJDy or xJDy+z or xJDy-z or xJDy/z
|
128
|
-
def checkJudgeValue(string)
|
129
|
-
debug("checkJudgeValue begin string", string)
|
130
|
-
|
131
|
-
return '' unless %r{^(\d+)JD(\d+)?(([+]|[-]|[/])(\d+))?$}i =~ string
|
132
|
-
|
133
|
-
skill = Regexp.last_match(1).to_i
|
134
|
-
flag = Regexp.last_match(2).to_i
|
135
|
-
operator = Regexp.last_match(4)
|
136
|
-
value = Regexp.last_match(5).to_i
|
137
|
-
|
138
|
-
result = "판정! 스킬레벨:#{skill} 플래그:#{flag}"
|
139
|
-
|
140
|
-
modifyText = getModifyText(operator, value)
|
141
|
-
result += " 수정치:#{modifyText}" unless modifyText.empty?
|
142
|
-
|
143
|
-
total, rollText = getRollResult(skill)
|
144
|
-
result += " > #{total}[#{rollText}]#{modifyText}"
|
145
|
-
|
146
|
-
totalResult = getTotalResultValue(total, value, operator)
|
147
|
-
result += " > #{totalResult}"
|
148
|
-
|
149
|
-
result += getCheckFlagResult(total, flag)
|
150
|
-
|
151
|
-
return result
|
152
|
-
end
|
153
|
-
|
154
|
-
def getModifyText(operator, value)
|
155
|
-
return '' if value == 0
|
156
|
-
|
157
|
-
operatorText =
|
158
|
-
case operator
|
159
|
-
when "+"
|
160
|
-
"+"
|
161
|
-
when "-"
|
162
|
-
"-"
|
163
|
-
when "/"
|
164
|
-
"÷"
|
165
|
-
else
|
166
|
-
return ""
|
167
|
-
end
|
168
|
-
|
169
|
-
return "#{operatorText}#{value}"
|
170
|
-
end
|
171
|
-
|
172
|
-
def getTotalResultValue(total, value, operator)
|
173
|
-
case operator
|
174
|
-
when "+"
|
175
|
-
return "#{total}+#{value} > 판정치:#{total + value}"
|
176
|
-
when "-"
|
177
|
-
return "#{total}-#{value} > 판정치:#{total - value}"
|
178
|
-
when "/"
|
179
|
-
return getTotalResultValueWhenSlash(total, value)
|
180
|
-
else
|
181
|
-
return "판정치:#{total}"
|
182
|
-
end
|
183
|
-
end
|
184
|
-
|
185
|
-
def getTotalResultValueWhenSlash(total, value)
|
186
|
-
return "0으로는 나누어지지 않습니다" if value == 0
|
187
|
-
|
188
|
-
quotient = ((1.0 * total) / value).ceil
|
189
|
-
|
190
|
-
result = "#{total}÷#{value} > 판정치:#{quotient}"
|
191
|
-
return result
|
192
|
-
end
|
193
|
-
|
194
|
-
####################
|
195
|
-
# 각종표
|
196
|
-
|
197
|
-
def rollTableCommand(command)
|
198
|
-
command = command.upcase
|
199
|
-
|
200
|
-
debug("eval_game_system_specific_command command", command)
|
201
|
-
|
202
|
-
name = ''
|
203
|
-
text = ''
|
204
|
-
total = 0
|
205
|
-
|
206
|
-
case command.upcase
|
207
|
-
when "SST", "StrengthStigmaTable".upcase
|
208
|
-
name, text, total = choiceStrengthStigmaTable()
|
209
|
-
when "WST", "WillStigmaTable".upcase
|
210
|
-
name, text, total = choiceWillStigmaTable()
|
211
|
-
when "SBET", "StrengthBadEndTable".upcase
|
212
|
-
name, text, total = choiceStrengthBadEndTable()
|
213
|
-
when "WBET", "WillBadEndTable".upcase
|
214
|
-
name, text, total = choiceWillBadEndTable()
|
215
|
-
else
|
216
|
-
return
|
217
|
-
end
|
218
|
-
|
219
|
-
result = "#{name}(#{total}) > #{text}"
|
220
|
-
|
221
|
-
return result
|
222
|
-
end
|
223
|
-
|
224
|
-
# ##표 목록
|
225
|
-
|
226
|
-
def choiceStrengthStigmaTable()
|
227
|
-
name = "체력 낙인표"
|
228
|
-
table = [
|
229
|
-
"당신은 【낙인】을 2개 받는다. 이 표를 다시 2번 굴려 받을 【낙인】을 정한다(그 경우, 다시 이 눈이 나와도 【낙인】은 늘어나지 않는다).",
|
230
|
-
"【상처】 심한 상처를 입었다. 어떻게든 싸울 수는 있지만…….",
|
231
|
-
"【출혈】 피가 흘러넘쳐, 눈이 흐릿하다…….",
|
232
|
-
"【쇠약】 몸이 약해져, 그 마음마저도 시들어버릴 거 같다.",
|
233
|
-
"【고통】 아픔과 괴로움, 한심함. 눈에서 눈물이 새어 나온다.",
|
234
|
-
"【충격】 날려져서, 벽이나 나무에 부딪힌다. 빨리 일어서지 않으면.",
|
235
|
-
"【피로】 당신의 얼굴에 피로의 색이 강해진다……이 싸움이 힘겨워졌다.",
|
236
|
-
"【노호】 성가신 공격에 분노의 함성을 지른다. 분노가 싸움을 어렵게 할까?",
|
237
|
-
"【부상】 상처를 입었다…….",
|
238
|
-
"【경상】 당신의 피부에 상처가 남았다. 이것만이라면 아무렇지도 않다.",
|
239
|
-
"기적적으로 당신은 【낙인】을 받지 않았다.",
|
240
|
-
]
|
241
|
-
|
242
|
-
text, total = get_table_by_2d6(table)
|
243
|
-
return name, text, total
|
244
|
-
end
|
245
|
-
|
246
|
-
def choiceWillStigmaTable()
|
247
|
-
name = "기력 낙인표"
|
248
|
-
|
249
|
-
table = [
|
250
|
-
"당신은 【낙인】을 2개 받는다. 이 표를 다시 2번 굴려 받을 【낙인】을 정한다(그 경우, 다시 이 눈이 나와도 【낙인】은 늘어나지 않는다).",
|
251
|
-
"【절망】 어떻게 하지 못하는 상황. 희망은 사라지고……무릎을 꿇을 수밖에 없다.",
|
252
|
-
"【통곡】 너무도 부조리함에, 어린아이처럼 울음을 터트릴 수밖에 없다.",
|
253
|
-
"【후회】 이럴 생각은 아니었는데. 하지만 현실은 비정했다.",
|
254
|
-
"【공포】 공포에 사로잡혔다! 적이, 자신의 손이, 무서워서 참을 수 없다!",
|
255
|
-
"【갈등】 정말로 이걸로 괜찮은 걸까? 몇 번이고 자신에게 의문이 일어난다…….",
|
256
|
-
"【증오】 분노와 증오에 사로잡힌 당신은, 본래의 힘을 발휘할 수 있을까?",
|
257
|
-
"【망연】 이것은 현실인가? 몽롱한 정신으로 당신은 생각한다.",
|
258
|
-
"【주저】 망설임을 가졌다. 그것은 싸울 의지를 둔하게 할 것인가?",
|
259
|
-
"【악몽】 이제부터 때때로, 당신은 이 순간을 악몽으로 볼 것이다.",
|
260
|
-
"기적적으로 당신은 【낙인】을 받지 않았다.",
|
261
|
-
]
|
262
|
-
|
263
|
-
text, total = get_table_by_2d6(table)
|
264
|
-
return name, text, total
|
265
|
-
end
|
266
|
-
|
267
|
-
def choiceStrengthBadEndTable()
|
268
|
-
name = "체력 배드엔딩표"
|
269
|
-
|
270
|
-
table = [
|
271
|
-
"【사망】 당신은 죽었다. 다음 세션에 참가하기 위해서는, 클래스 1개를 『몬스터』나 『암흑』으로 클래스 체인지해야만 한다.",
|
272
|
-
"【목숨 구걸】 당신은 공포를 느껴, 목숨을 구걸했다! 다음 세션 개시 시에, 클래스 1개가 『자코』로 변경된다!",
|
273
|
-
"【망각】 당신은 기억을 잃고, 우두커니 섰다. 다음 세션에 참가하기 위해서는, 클래스 1개를 변경해야만 한다.",
|
274
|
-
"【비극】 당신의 공격은 적이 아니라 아군을 맞췄다! 모든 것이 끝날 때까지 당신은 우두커니 서 있게 된다. 임의의 아군의 【체력】을 1D6점 감소시킨다.",
|
275
|
-
"【폭주】 당신은 이성을 잃고, 충동에 따라 폭주한다! 같은 씬에 있는 전원의 【체력】을 1D6점 감소시킨다.",
|
276
|
-
"【전락】 당신은 단애절벽에서 떨어진다.",
|
277
|
-
"【포로】 당신은 적에게 사로잡혔다.",
|
278
|
-
"【도주】 당신은 겁에 질려, 동료를 버리고 도망쳤다.",
|
279
|
-
"【중상】 당신은 어찌할 수 없는 상처를 입고, 쓰러졌다.",
|
280
|
-
"【기절】 당신은 의식을 잃었다. 그리고 정신이 들면 모든 것이 끝나있었다.",
|
281
|
-
"그래도 아직 일어선다! 당신은 배드엔드를 맞이하지 않았다. 체력의 【낙인】을 1개 지워도 좋다.",
|
282
|
-
]
|
283
|
-
|
284
|
-
text, total = get_table_by_2d6(table)
|
285
|
-
return name, text, total
|
286
|
-
end
|
287
|
-
|
288
|
-
def choiceWillBadEndTable()
|
289
|
-
name = "기력 배드엔딩표"
|
290
|
-
|
291
|
-
table = [
|
292
|
-
"【자해】 당신은 스스로 죽음을 골랐다. 다음 세션에 참가하기 위해서는 클래스 1개를 『암흑』으로 클래스 체인지해야만 한다.",
|
293
|
-
"【타락】 당신은 마음속의 어둠에 먹혔다. 다음 세션 개시 시에, 클래스 1개가 『암흑』이나 『몬스터』로 변경된다!",
|
294
|
-
"【예속】 당신은 적의 말에 거스를 수 없다. 다음 세션에 당신의 스탠스는 『종속』이 된다.",
|
295
|
-
"【배반】 배반의 충동. 임의의 아군의 【체력】을 1D6점 감소시키고, 그 자리에서 도망친다.",
|
296
|
-
"【폭주】 당신은 이성을 잃고, 충동에 따라 폭주한다! 같은 씬에 있는 전원의 【체력】을 1D6점 감소시킨다.",
|
297
|
-
"【저주】 마음의 어둠이 현재화한 것인가. 적의 원한인가. 저주에 삼켜진 당신은, 그저 고통에 몸부림칠 수밖에 없다.",
|
298
|
-
"【포로】 당신은 적에게 사로잡혀, 그 자리에서 끌려갔다.",
|
299
|
-
"【도주】 당신은 겁에 질려, 동료를 버리고 도망쳤다.",
|
300
|
-
"【방심】 당신은 그저 멍하니 서 있을 수밖에 없다. 정신을 차렸을 때, 모든 것은 끝나있었다.",
|
301
|
-
"【기절】 당신은 의식을 잃었다. 그리고 정신이 들면 모든 것이 끝나있었다.",
|
302
|
-
"그래도 아직 포기하지 않아! 당신은 배드엔드를 맞이하지 않았다. 기력의 【낙인】을 1개 지워도 좋다.",
|
303
|
-
]
|
304
|
-
|
305
|
-
text, total = get_table_by_2d6(table)
|
306
|
-
return name, text, total
|
307
|
-
end
|
39
|
+
TABLES = translate_tables(:ko_kr)
|
308
40
|
end
|
309
41
|
end
|
310
42
|
end
|
@@ -21,13 +21,12 @@ module BCDice
|
|
21
21
|
(上記二つは最初からシークレットダイスで行われます)
|
22
22
|
INFO_MESSAGE_TEXT
|
23
23
|
|
24
|
-
register_prefix(
|
24
|
+
register_prefix('(ZMB|BIO).*')
|
25
25
|
|
26
26
|
def initialize(command)
|
27
27
|
super(command)
|
28
28
|
|
29
29
|
@sort_add_dice = true
|
30
|
-
@enabled_d66 = true
|
31
30
|
@d66_sort_type = D66SortType::ASC
|
32
31
|
end
|
33
32
|
|
@@ -35,14 +34,18 @@ module BCDice
|
|
35
34
|
case command
|
36
35
|
when /^BIO(\d+)?$/
|
37
36
|
roll_times = (Regexp.last_match(1) || 1).to_i
|
38
|
-
@is_secret = true
|
39
37
|
|
40
|
-
|
38
|
+
Result.new.tap do |r|
|
39
|
+
r.secret = true
|
40
|
+
r.text = checkInfection(roll_times)
|
41
|
+
end
|
41
42
|
when /^ZMB(\+(\d+))?$/
|
42
43
|
value = Regexp.last_match(2).to_i
|
43
|
-
@is_secret = true
|
44
44
|
|
45
|
-
|
45
|
+
Result.new.tap do |r|
|
46
|
+
r.secret = true
|
47
|
+
r.text = rollZombie(value)
|
48
|
+
end
|
46
49
|
end
|
47
50
|
end
|
48
51
|
|
@@ -30,10 +30,12 @@ module BCDice
|
|
30
30
|
・D66ダイスあり
|
31
31
|
INFO_MESSAGE_TEXT
|
32
32
|
|
33
|
-
register_prefix(
|
33
|
+
register_prefix('\d+DX.*', 'ET')
|
34
34
|
|
35
35
|
# 成功判定コマンドのノード
|
36
36
|
class DX
|
37
|
+
include Translate
|
38
|
+
|
37
39
|
# ノードを初期化する
|
38
40
|
# @param [Integer] num ダイス数
|
39
41
|
# @param [Integer] critical_value クリティカル値
|
@@ -47,6 +49,8 @@ module BCDice
|
|
47
49
|
|
48
50
|
@modifier_str = Format.modifier(@modifier)
|
49
51
|
@expression = node_expression()
|
52
|
+
|
53
|
+
@locale = :ja_jp
|
50
54
|
end
|
51
55
|
|
52
56
|
# 成功判定を行う
|
@@ -54,11 +58,11 @@ module BCDice
|
|
54
58
|
# @return [String] 判定結果
|
55
59
|
def execute(randomizer)
|
56
60
|
if @critical_value < 2
|
57
|
-
return "(#{@expression}) >
|
61
|
+
return "(#{@expression}) > #{translate('DoubleCross.DX.invalid_critical')}"
|
58
62
|
end
|
59
63
|
|
60
64
|
if @num < 1
|
61
|
-
return "(#{@expression}) >
|
65
|
+
return "(#{@expression}) > #{translate('DoubleCross.DX.auto_failure')}"
|
62
66
|
end
|
63
67
|
|
64
68
|
# 出目のグループの配列
|
@@ -99,8 +103,7 @@ module BCDice
|
|
99
103
|
# @return [String]
|
100
104
|
def result_str(value_groups)
|
101
105
|
fumble = value_groups[0].values.all? { |value| value == 1 }
|
102
|
-
|
103
|
-
sum = value_groups.map(&:max).reduce(0, &:+)
|
106
|
+
sum = value_groups.map(&:max).sum
|
104
107
|
achieved_value = fumble ? 0 : (sum + @modifier)
|
105
108
|
|
106
109
|
parts = [
|
@@ -118,7 +121,7 @@ module BCDice
|
|
118
121
|
# @param [Boolean] fumble ファンブルしたか
|
119
122
|
# @return [String]
|
120
123
|
def achieved_value_with_if_fumble(achieved_value, fumble)
|
121
|
-
fumble ? "#{achieved_value} (
|
124
|
+
fumble ? "#{achieved_value} (#{translate('fumble')})" : achieved_value.to_s
|
122
125
|
end
|
123
126
|
|
124
127
|
# 達成値と目標値を比較した結果を返す
|
@@ -130,11 +133,11 @@ module BCDice
|
|
130
133
|
|
131
134
|
# ファンブル時は自動失敗
|
132
135
|
# [3rd ルールブック1 pp. 186-187]
|
133
|
-
return
|
136
|
+
return translate("failure") if fumble
|
134
137
|
|
135
138
|
# 達成値が目標値以上ならば行為判定成功
|
136
139
|
# [3rd ルールブック1 p. 187]
|
137
|
-
return achieved_value >= @target_value ?
|
140
|
+
return achieved_value >= @target_value ? translate("success") : translate("failure")
|
138
141
|
end
|
139
142
|
end
|
140
143
|
|
@@ -173,9 +176,7 @@ module BCDice
|
|
173
176
|
# クリティカルの発生数を返す
|
174
177
|
# @return [Integer]
|
175
178
|
def num_of_critical_occurrences
|
176
|
-
@values
|
177
|
-
.select { |value| critical?(value) }
|
178
|
-
.length
|
179
|
+
@values.count { |value| critical?(value) }
|
179
180
|
end
|
180
181
|
|
181
182
|
private
|
@@ -195,13 +196,16 @@ module BCDice
|
|
195
196
|
return '' if target == '?'
|
196
197
|
return '' unless cmp_op == :>=
|
197
198
|
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
199
|
+
result =
|
200
|
+
if dice_list.count(1) == dice_list.size
|
201
|
+
translate("fumble")
|
202
|
+
elsif total >= target
|
203
|
+
translate("success")
|
204
|
+
else
|
205
|
+
translate("failure")
|
206
|
+
end
|
207
|
+
|
208
|
+
return " > #{result}"
|
205
209
|
end
|
206
210
|
|
207
211
|
# ダイスボット固有コマンドの処理を行う
|
@@ -266,7 +270,7 @@ module BCDice
|
|
266
270
|
|
267
271
|
target_value = m[4]&.to_i
|
268
272
|
|
269
|
-
return DX.new(num, critical_value, modifier, target_value)
|
273
|
+
return self.class::DX.new(num, critical_value, modifier, target_value)
|
270
274
|
end
|
271
275
|
|
272
276
|
# 疾風怒濤式の成功判定コマンドの正規表現マッチ情報からノードを作る
|
@@ -279,7 +283,7 @@ module BCDice
|
|
279
283
|
|
280
284
|
target_value = m[4]&.to_i
|
281
285
|
|
282
|
-
return DX.new(num, critical_value, modifier, target_value)
|
286
|
+
return self.class::DX.new(num, critical_value, modifier, target_value)
|
283
287
|
end
|
284
288
|
|
285
289
|
# 感情表を振る
|
@@ -288,8 +292,8 @@ module BCDice
|
|
288
292
|
#
|
289
293
|
# @return [String]
|
290
294
|
def roll_emotion_table
|
291
|
-
pos_result = POSITIVE_EMOTION_TABLE.roll(@randomizer)
|
292
|
-
neg_result = NEGATIVE_EMOTION_TABLE.roll(@randomizer)
|
295
|
+
pos_result = self.class::POSITIVE_EMOTION_TABLE.roll(@randomizer)
|
296
|
+
neg_result = self.class::NEGATIVE_EMOTION_TABLE.roll(@randomizer)
|
293
297
|
|
294
298
|
positive = @randomizer.roll_once(2) == 1
|
295
299
|
pos_neg_text =
|
@@ -299,75 +303,92 @@ module BCDice
|
|
299
303
|
[pos_result.content, "○#{neg_result.content}"]
|
300
304
|
end
|
301
305
|
|
306
|
+
name = translate("DoubleCross.ET.name")
|
302
307
|
output_parts = [
|
303
|
-
"
|
308
|
+
"#{name}(#{pos_result.sum}-#{neg_result.sum})",
|
304
309
|
pos_neg_text.join(' - ')
|
305
310
|
]
|
306
311
|
|
307
312
|
return output_parts.join(' > ')
|
308
313
|
end
|
309
314
|
|
315
|
+
class << self
|
316
|
+
private
|
317
|
+
|
318
|
+
# @param locale [Symbol]
|
319
|
+
# @return [RangeTable]
|
320
|
+
def positive_emotion_table(locale)
|
321
|
+
DiceTable::RangeTable.new(
|
322
|
+
I18n.translate("DoubleCross.ET.positive.name", locale: locale),
|
323
|
+
"1D100",
|
324
|
+
[
|
325
|
+
# [0, '傾倒(けいとう)'],
|
326
|
+
[1..5, I18n.translate("DoubleCross.ET.positive.items.1_5", locale: locale)],
|
327
|
+
[6..10, I18n.translate("DoubleCross.ET.positive.items.6_10", locale: locale)],
|
328
|
+
[11..15, I18n.translate("DoubleCross.ET.positive.items.11_15", locale: locale)],
|
329
|
+
[16..20, I18n.translate("DoubleCross.ET.positive.items.16_20", locale: locale)],
|
330
|
+
[21..25, I18n.translate("DoubleCross.ET.positive.items.21_25", locale: locale)],
|
331
|
+
[26..30, I18n.translate("DoubleCross.ET.positive.items.26_30", locale: locale)],
|
332
|
+
[31..35, I18n.translate("DoubleCross.ET.positive.items.31_35", locale: locale)],
|
333
|
+
[36..40, I18n.translate("DoubleCross.ET.positive.items.36_40", locale: locale)],
|
334
|
+
[41..45, I18n.translate("DoubleCross.ET.positive.items.41_45", locale: locale)],
|
335
|
+
[46..50, I18n.translate("DoubleCross.ET.positive.items.46_50", locale: locale)],
|
336
|
+
[51..55, I18n.translate("DoubleCross.ET.positive.items.51_55", locale: locale)],
|
337
|
+
[56..60, I18n.translate("DoubleCross.ET.positive.items.56_60", locale: locale)],
|
338
|
+
[61..65, I18n.translate("DoubleCross.ET.positive.items.61_65", locale: locale)],
|
339
|
+
[66..70, I18n.translate("DoubleCross.ET.positive.items.66_70", locale: locale)],
|
340
|
+
[71..75, I18n.translate("DoubleCross.ET.positive.items.71_75", locale: locale)],
|
341
|
+
[76..80, I18n.translate("DoubleCross.ET.positive.items.76_80", locale: locale)],
|
342
|
+
[81..85, I18n.translate("DoubleCross.ET.positive.items.81_85", locale: locale)],
|
343
|
+
[86..90, I18n.translate("DoubleCross.ET.positive.items.86_90", locale: locale)],
|
344
|
+
[91..95, I18n.translate("DoubleCross.ET.positive.items.91_95", locale: locale)],
|
345
|
+
[96..100, I18n.translate("DoubleCross.ET.positive.items.96_100", locale: locale)],
|
346
|
+
# [101, '懐旧(かいきゅう)'],
|
347
|
+
# [102, '任意(にんい)'],
|
348
|
+
]
|
349
|
+
)
|
350
|
+
end
|
351
|
+
|
352
|
+
# @param locale [Symbol]
|
353
|
+
# @return [RangeTable]
|
354
|
+
def negative_emotion_table(locale)
|
355
|
+
DiceTable::RangeTable.new(
|
356
|
+
I18n.translate("DoubleCross.ET.negative.name", locale: locale),
|
357
|
+
"1D100",
|
358
|
+
[
|
359
|
+
# [0, '侮蔑(ぶべつ)'],
|
360
|
+
[1..5, I18n.translate("DoubleCross.ET.negative.items.1_5", locale: locale)],
|
361
|
+
[6..10, I18n.translate("DoubleCross.ET.negative.items.6_10", locale: locale)],
|
362
|
+
[11..15, I18n.translate("DoubleCross.ET.negative.items.11_15", locale: locale)],
|
363
|
+
[16..20, I18n.translate("DoubleCross.ET.negative.items.16_20", locale: locale)],
|
364
|
+
[21..25, I18n.translate("DoubleCross.ET.negative.items.21_25", locale: locale)],
|
365
|
+
[26..30, I18n.translate("DoubleCross.ET.negative.items.26_30", locale: locale)],
|
366
|
+
[31..35, I18n.translate("DoubleCross.ET.negative.items.31_35", locale: locale)],
|
367
|
+
[36..40, I18n.translate("DoubleCross.ET.negative.items.36_40", locale: locale)],
|
368
|
+
[41..45, I18n.translate("DoubleCross.ET.negative.items.41_45", locale: locale)],
|
369
|
+
[46..50, I18n.translate("DoubleCross.ET.negative.items.46_50", locale: locale)],
|
370
|
+
[51..55, I18n.translate("DoubleCross.ET.negative.items.51_55", locale: locale)],
|
371
|
+
[56..60, I18n.translate("DoubleCross.ET.negative.items.56_60", locale: locale)],
|
372
|
+
[61..65, I18n.translate("DoubleCross.ET.negative.items.61_65", locale: locale)],
|
373
|
+
[66..70, I18n.translate("DoubleCross.ET.negative.items.66_70", locale: locale)],
|
374
|
+
[71..75, I18n.translate("DoubleCross.ET.negative.items.71_75", locale: locale)],
|
375
|
+
[76..80, I18n.translate("DoubleCross.ET.negative.items.76_80", locale: locale)],
|
376
|
+
[81..85, I18n.translate("DoubleCross.ET.negative.items.81_85", locale: locale)],
|
377
|
+
[86..90, I18n.translate("DoubleCross.ET.negative.items.86_90", locale: locale)],
|
378
|
+
[91..95, I18n.translate("DoubleCross.ET.negative.items.91_95", locale: locale)],
|
379
|
+
[96..100, I18n.translate("DoubleCross.ET.negative.items.96_100", locale: locale)],
|
380
|
+
# [101, '無関心(むかんしん)'],
|
381
|
+
# [102, '任意(にんい)'],
|
382
|
+
]
|
383
|
+
).freeze
|
384
|
+
end
|
385
|
+
end
|
386
|
+
|
310
387
|
# 感情表(ポジティブ)
|
311
|
-
POSITIVE_EMOTION_TABLE =
|
312
|
-
'感情表(ポジティブ)',
|
313
|
-
'1D100',
|
314
|
-
[
|
315
|
-
# [0, '傾倒(けいとう)'],
|
316
|
-
[1..5, '好奇心(こうきしん)'],
|
317
|
-
[6..10, '憧憬(どうけい)'],
|
318
|
-
[11..15, '尊敬(そんけい)'],
|
319
|
-
[16..20, '連帯感(れんたいかん)'],
|
320
|
-
[21..25, '慈愛(じあい)'],
|
321
|
-
[26..30, '感服(かんぷく)'],
|
322
|
-
[31..35, '純愛(じゅんあい)'],
|
323
|
-
[36..40, '友情(ゆうじょう)'],
|
324
|
-
[41..45, '慕情(ぼじょう)'],
|
325
|
-
[46..50, '同情(どうじょう)'],
|
326
|
-
[51..55, '遺志(いし)'],
|
327
|
-
[56..60, '庇護(ひご)'],
|
328
|
-
[61..65, '幸福感(こうふくかん)'],
|
329
|
-
[66..70, '信頼(しんらい)'],
|
330
|
-
[71..75, '執着(しゅうちゃく)'],
|
331
|
-
[76..80, '親近感(しんきんかん)'],
|
332
|
-
[81..85, '誠意(せいい)'],
|
333
|
-
[86..90, '好意(こうい)'],
|
334
|
-
[91..95, '有為(ゆうい)'],
|
335
|
-
[96..100, '尽力(じんりょく)'],
|
336
|
-
# [101, '懐旧(かいきゅう)'],
|
337
|
-
# [102, '任意(にんい)'],
|
338
|
-
]
|
339
|
-
).freeze
|
388
|
+
POSITIVE_EMOTION_TABLE = positive_emotion_table(:ja_jp).freeze
|
340
389
|
|
341
390
|
# 感情表(ネガティブ)
|
342
|
-
NEGATIVE_EMOTION_TABLE =
|
343
|
-
'感情表(ネガティブ)',
|
344
|
-
'1D100',
|
345
|
-
[
|
346
|
-
# [0, '侮蔑(ぶべつ)'],
|
347
|
-
[1..5, '食傷(しょくしょう)'],
|
348
|
-
[6..10, '脅威(きょうい)'],
|
349
|
-
[11..15, '嫉妬(しっと)'],
|
350
|
-
[16..20, '悔悟(かいご)'],
|
351
|
-
[21..25, '恐怖(きょうふ)'],
|
352
|
-
[26..30, '不安(ふあん)'],
|
353
|
-
[31..35, '劣等感(れっとうかん)'],
|
354
|
-
[36..40, '疎外感(そがいかん)'],
|
355
|
-
[41..45, '恥辱(ちじょく)'],
|
356
|
-
[46..50, '憐憫(れんびん)'],
|
357
|
-
[51..55, '偏愛(へんあい)'],
|
358
|
-
[56..60, '憎悪(ぞうお)'],
|
359
|
-
[61..65, '隔意(かくい)'],
|
360
|
-
[66..70, '嫌悪(けんお)'],
|
361
|
-
[71..75, '猜疑心(さいぎしん)'],
|
362
|
-
[76..80, '厭気(いやけ)'],
|
363
|
-
[81..85, '不信感(ふしんかん)'],
|
364
|
-
[86..90, '不快感(ふかいかん)'],
|
365
|
-
[91..95, '憤懣(ふんまん)'],
|
366
|
-
[96..100, '敵愾心(てきがいしん)'],
|
367
|
-
# [101, '無関心(むかんしん)'],
|
368
|
-
# [102, '任意(にんい)'],
|
369
|
-
]
|
370
|
-
).freeze
|
391
|
+
NEGATIVE_EMOTION_TABLE = negative_emotion_table(:ja_jp).freeze
|
371
392
|
end
|
372
393
|
end
|
373
394
|
end
|