bcdice 3.1.3 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +33 -2
- data/i18n/StellarKnights/ja_jp.yml +496 -0
- data/lib/bcdice/common_command/add_dice.rb +1 -1
- data/lib/bcdice/common_command/calc.rb +1 -1
- data/lib/bcdice/dice_table.rb +2 -0
- data/lib/bcdice/dice_table/d66_half_grid_table.rb +33 -0
- data/lib/bcdice/dice_table/d66_one_third_table.rb +34 -0
- data/lib/bcdice/game_system.rb +3 -0
- data/lib/bcdice/game_system/AceKillerGene.rb +1 -1
- data/lib/bcdice/game_system/Ainecadette.rb +68 -0
- data/lib/bcdice/game_system/Airgetlamh.rb +1 -1
- data/lib/bcdice/game_system/Alsetto.rb +1 -1
- data/lib/bcdice/game_system/AlterRaise.rb +2 -2
- data/lib/bcdice/game_system/AngelGear.rb +1 -1
- data/lib/bcdice/game_system/AnimaAnimus.rb +1 -1
- data/lib/bcdice/game_system/Arianrhod.rb +6 -8
- data/lib/bcdice/game_system/Avandner.rb +1 -1
- data/lib/bcdice/game_system/BarnaKronika.rb +1 -1
- data/lib/bcdice/game_system/BattleTech.rb +1 -1
- data/lib/bcdice/game_system/BeginningIdol.rb +5 -5
- data/lib/bcdice/game_system/BeginningIdol_Korean.rb +5 -5
- data/lib/bcdice/game_system/BladeOfArcana.rb +1 -1
- data/lib/bcdice/game_system/BlindMythos.rb +1 -1
- data/lib/bcdice/game_system/BloodCrusade.rb +6 -7
- data/lib/bcdice/game_system/BloodMoon.rb +9 -8
- data/lib/bcdice/game_system/CardRanker.rb +8 -7
- data/lib/bcdice/game_system/ChaosFlare.rb +21 -15
- data/lib/bcdice/game_system/Chill.rb +10 -10
- data/lib/bcdice/game_system/Chill3.rb +9 -9
- data/lib/bcdice/game_system/CrashWorld.rb +1 -1
- data/lib/bcdice/game_system/Cthulhu.rb +1 -1
- data/lib/bcdice/game_system/Cthulhu7th.rb +48 -10
- 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/DarkBlaze.rb +0 -11
- data/lib/bcdice/game_system/DarkDaysDrive.rb +8 -7
- data/lib/bcdice/game_system/DeadlineHeroes.rb +2 -2
- data/lib/bcdice/game_system/DemonParasite.rb +5 -13
- data/lib/bcdice/game_system/DesperateRun.rb +1 -1
- data/lib/bcdice/game_system/DoubleCross.rb +1 -1
- data/lib/bcdice/game_system/Dracurouge.rb +1 -1
- data/lib/bcdice/game_system/EclipsePhase.rb +14 -14
- data/lib/bcdice/game_system/Elric.rb +18 -14
- data/lib/bcdice/game_system/Elysion.rb +1 -1
- data/lib/bcdice/game_system/EmbryoMachine.rb +9 -8
- data/lib/bcdice/game_system/Emoklore.rb +3 -3
- data/lib/bcdice/game_system/Fiasco.rb +1 -1
- data/lib/bcdice/game_system/FilledWith.rb +4 -0
- data/lib/bcdice/game_system/GURPS.rb +17 -28
- data/lib/bcdice/game_system/Garako.rb +1 -1
- data/lib/bcdice/game_system/GardenOrder.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/Gorilla.rb +2 -8
- data/lib/bcdice/game_system/GranCrest.rb +18 -11
- data/lib/bcdice/game_system/Gundog.rb +9 -8
- data/lib/bcdice/game_system/GundogRevised.rb +10 -9
- data/lib/bcdice/game_system/GundogZero.rb +1 -1
- data/lib/bcdice/game_system/GurpsFW.rb +16 -16
- data/lib/bcdice/game_system/HarnMaster.rb +19 -26
- data/lib/bcdice/game_system/HatsuneMiku.rb +1 -1
- data/lib/bcdice/game_system/Hieizan.rb +12 -21
- data/lib/bcdice/game_system/HouraiGakuen.rb +1 -1
- data/lib/bcdice/game_system/HuntersMoon.rb +5 -10
- data/lib/bcdice/game_system/InfiniteFantasia.rb +19 -17
- data/lib/bcdice/game_system/Insane.rb +13 -20
- data/lib/bcdice/game_system/IthaWenUa.rb +8 -15
- data/lib/bcdice/game_system/JamesBond.rb +10 -10
- data/lib/bcdice/game_system/JekyllAndHyde.rb +1 -1
- data/lib/bcdice/game_system/Kamigakari.rb +1 -1
- data/lib/bcdice/game_system/KanColle.rb +4 -9
- data/lib/bcdice/game_system/KemonoNoMori.rb +1 -1
- data/lib/bcdice/game_system/KillDeathBusiness.rb +7 -15
- data/lib/bcdice/game_system/KurayamiCrying.rb +55 -2
- data/lib/bcdice/game_system/MeikyuDays.rb +10 -8
- data/lib/bcdice/game_system/MeikyuKingdom.rb +26 -26
- data/lib/bcdice/game_system/MeikyuKingdomBasic.rb +3 -3
- data/lib/bcdice/game_system/MetalHead.rb +12 -22
- data/lib/bcdice/game_system/MetalHeadExtream.rb +5 -5
- data/lib/bcdice/game_system/MonotoneMuseum.rb +8 -6
- data/lib/bcdice/game_system/Nechronica.rb +28 -21
- data/lib/bcdice/game_system/NinjaSlayer.rb +4 -4
- data/lib/bcdice/game_system/NjslyrBattle.rb +8 -11
- data/lib/bcdice/game_system/OneWayHeroics.rb +1 -1
- data/lib/bcdice/game_system/Paradiso.rb +1 -1
- data/lib/bcdice/game_system/ParasiteBlood.rb +1 -1
- data/lib/bcdice/game_system/Peekaboo.rb +4 -9
- data/lib/bcdice/game_system/Pendragon.rb +7 -7
- data/lib/bcdice/game_system/PhantasmAdventure.rb +8 -8
- data/lib/bcdice/game_system/Postman.rb +1 -1
- data/lib/bcdice/game_system/PulpCthulhu.rb +1 -1
- data/lib/bcdice/game_system/Raisondetre.rb +2 -2
- data/lib/bcdice/game_system/Revulture.rb +123 -0
- data/lib/bcdice/game_system/RuneQuest.rb +8 -8
- data/lib/bcdice/game_system/Ryutama.rb +1 -1
- data/lib/bcdice/game_system/Satasupe.rb +1 -1
- data/lib/bcdice/game_system/ScreamHighSchool.rb +2 -2
- data/lib/bcdice/game_system/SharedFantasia.rb +19 -23
- data/lib/bcdice/game_system/ShinobiGami.rb +14 -6
- data/lib/bcdice/game_system/Skynauts.rb +2 -2
- data/lib/bcdice/game_system/SkynautsBouken.rb +228 -0
- data/lib/bcdice/game_system/StellarKnights.rb +59 -696
- data/lib/bcdice/game_system/SterileLife.rb +1 -1
- data/lib/bcdice/game_system/StratoShout.rb +8 -16
- data/lib/bcdice/game_system/Strave.rb +1 -1
- data/lib/bcdice/game_system/SwordWorld.rb +16 -7
- data/lib/bcdice/game_system/SwordWorld2_0.rb +2 -2
- data/lib/bcdice/game_system/SwordWorld2_5.rb +2 -2
- data/lib/bcdice/game_system/TherapieSein.rb +1 -1
- data/lib/bcdice/game_system/TokyoGhostResearch.rb +1 -1
- data/lib/bcdice/game_system/TrinitySeven.rb +4 -4
- data/lib/bcdice/game_system/TunnelsAndTrolls.rb +1 -1
- data/lib/bcdice/game_system/Utakaze.rb +1 -1
- data/lib/bcdice/game_system/Villaciel.rb +1 -1
- data/lib/bcdice/game_system/WARPS.rb +11 -9
- data/lib/bcdice/game_system/WaresBlade.rb +4 -9
- data/lib/bcdice/game_system/Warhammer.rb +15 -6
- data/lib/bcdice/game_system/Warhammer4.rb +15 -11
- data/lib/bcdice/game_system/WitchQuest.rb +1 -1
- data/lib/bcdice/game_system/YankeeYogSothoth.rb +4 -9
- data/lib/bcdice/game_system/meikyu_kingdom_basic/kingdom_table.rb +1 -1
- data/lib/bcdice/game_system/sword_world/rating_parsed.rb +4 -4
- data/lib/bcdice/game_system/sword_world/rating_parser.rb +1 -1
- data/lib/bcdice/game_system/sword_world/transcendent_test.rb +26 -8
- data/lib/bcdice/repl.rb +1 -1
- data/lib/bcdice/result.rb +26 -0
- data/lib/bcdice/version.rb +1 -1
- metadata +9 -4
data/lib/bcdice/dice_table.rb
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
require "bcdice/dice_table/roll_result"
|
|
4
4
|
require "bcdice/dice_table/chain_table"
|
|
5
5
|
require "bcdice/dice_table/d66_grid_table"
|
|
6
|
+
require "bcdice/dice_table/d66_half_grid_table"
|
|
7
|
+
require "bcdice/dice_table/d66_one_third_table"
|
|
6
8
|
require "bcdice/dice_table/d66_parity_table"
|
|
7
9
|
require "bcdice/dice_table/d66_range_table"
|
|
8
10
|
require "bcdice/dice_table/d66_table"
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "bcdice/dice_table/d66_grid_table"
|
|
4
|
+
|
|
5
|
+
module BCDice
|
|
6
|
+
module DiceTable
|
|
7
|
+
# D66を振って6x6マスの表を参照する
|
|
8
|
+
class D66HalfGridTable < D66GridTable
|
|
9
|
+
# @param key [String]
|
|
10
|
+
# @param locale [Symbol]
|
|
11
|
+
# @return [D66HalfGridTable]
|
|
12
|
+
def self.from_i18n(key, locale)
|
|
13
|
+
table = I18n.t(key, locale: locale, raise: true)
|
|
14
|
+
new(table[:name], table[:items_1_2_3], table[:items_4_5_6])
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# @param [String] name 表の名前
|
|
18
|
+
# @param [Array<String>] items_1_2_3
|
|
19
|
+
# @param [Array<String>] items_4_5_6
|
|
20
|
+
def initialize(name, items_1_2_3, items_4_5_6)
|
|
21
|
+
@name = name
|
|
22
|
+
@items = [
|
|
23
|
+
items_1_2_3,
|
|
24
|
+
items_1_2_3,
|
|
25
|
+
items_1_2_3,
|
|
26
|
+
items_4_5_6,
|
|
27
|
+
items_4_5_6,
|
|
28
|
+
items_4_5_6,
|
|
29
|
+
].freeze
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "bcdice/dice_table/d66_grid_table"
|
|
4
|
+
|
|
5
|
+
module BCDice
|
|
6
|
+
module DiceTable
|
|
7
|
+
# D66を振って6x6マスの表を参照する
|
|
8
|
+
class D66OneThirdTable < D66GridTable
|
|
9
|
+
# @param key [String]
|
|
10
|
+
# @param locale [Symbol]
|
|
11
|
+
# @return [D66OneThirdTable]
|
|
12
|
+
def self.from_i18n(key, locale)
|
|
13
|
+
table = I18n.t(key, locale: locale, raise: true)
|
|
14
|
+
new(table[:name], table[:items_1_2], table[:items_3_4], table[:items_5_6])
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# @param [String] name 表の名前
|
|
18
|
+
# @param [Array<String>] items_1_2
|
|
19
|
+
# @param [Array<String>] items_3_4
|
|
20
|
+
# @param [Array<String>] items_5_6
|
|
21
|
+
def initialize(name, items_1_2, items_3_4, items_5_6)
|
|
22
|
+
@name = name
|
|
23
|
+
@items = [
|
|
24
|
+
items_1_2,
|
|
25
|
+
items_1_2,
|
|
26
|
+
items_3_4,
|
|
27
|
+
items_3_4,
|
|
28
|
+
items_5_6,
|
|
29
|
+
items_5_6,
|
|
30
|
+
].freeze
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
data/lib/bcdice/game_system.rb
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
require "bcdice/game_system/AFF2e"
|
|
4
4
|
require "bcdice/game_system/AceKillerGene"
|
|
5
|
+
require "bcdice/game_system/Ainecadette"
|
|
5
6
|
require "bcdice/game_system/Airgetlamh"
|
|
6
7
|
require "bcdice/game_system/AlchemiaStruggle"
|
|
7
8
|
require "bcdice/game_system/Alsetto"
|
|
@@ -147,6 +148,7 @@ require "bcdice/game_system/PulpCthulhu"
|
|
|
147
148
|
require "bcdice/game_system/Raisondetre"
|
|
148
149
|
require "bcdice/game_system/RecordOfLodossWar"
|
|
149
150
|
require "bcdice/game_system/RecordOfSteam"
|
|
151
|
+
require "bcdice/game_system/Revulture"
|
|
150
152
|
require "bcdice/game_system/RokumonSekai2"
|
|
151
153
|
require "bcdice/game_system/RoleMaster"
|
|
152
154
|
require "bcdice/game_system/RuinBreakers"
|
|
@@ -167,6 +169,7 @@ require "bcdice/game_system/ShinkuuGakuen"
|
|
|
167
169
|
require "bcdice/game_system/ShinobiGami"
|
|
168
170
|
require "bcdice/game_system/ShoujoTenrankai"
|
|
169
171
|
require "bcdice/game_system/Skynauts"
|
|
172
|
+
require "bcdice/game_system/SkynautsBouken"
|
|
170
173
|
require "bcdice/game_system/SteamPunkers"
|
|
171
174
|
require "bcdice/game_system/StellarKnights"
|
|
172
175
|
require "bcdice/game_system/SterileLife"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module BCDice
|
|
4
|
+
module GameSystem
|
|
5
|
+
class Ainecadette < Base
|
|
6
|
+
# ゲームシステムの識別子
|
|
7
|
+
ID = "Ainecadette"
|
|
8
|
+
|
|
9
|
+
# ゲームシステム名
|
|
10
|
+
NAME = "エネカデット"
|
|
11
|
+
|
|
12
|
+
# ゲームシステム名の読みがな
|
|
13
|
+
SORT_KEY = "えねかてつと"
|
|
14
|
+
|
|
15
|
+
# ダイスボットの使い方
|
|
16
|
+
HELP_MESSAGE = <<~MESSAGETEXT
|
|
17
|
+
■ 判定
|
|
18
|
+
- 先輩 (AI) 10面ダイスを2つ振って判定します。『有利』なら【3AI】、『不利』なら【1AI】を使います。
|
|
19
|
+
- 後輩 (CA) 6面ダイスを2つ振って判定します。『有利』なら【3CA】、『不利』なら【1CA】を使います。
|
|
20
|
+
MESSAGETEXT
|
|
21
|
+
|
|
22
|
+
register_prefix('(\d+)?AI', '(\d+)?CA')
|
|
23
|
+
|
|
24
|
+
def eval_game_system_specific_command(command)
|
|
25
|
+
roll_action(command)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
private
|
|
29
|
+
|
|
30
|
+
# 成功の目標値
|
|
31
|
+
SUCCESS_THRESHOLD = 4
|
|
32
|
+
|
|
33
|
+
# スペシャルとなる出目
|
|
34
|
+
SPECIAL_DICE = 6
|
|
35
|
+
|
|
36
|
+
def roll_action(command)
|
|
37
|
+
m = /^(\d+)?(AI|CA)$/.match(command)
|
|
38
|
+
return nil unless m
|
|
39
|
+
|
|
40
|
+
is_senpai = m[2] == "AI"
|
|
41
|
+
|
|
42
|
+
times = m[1]&.to_i || 2
|
|
43
|
+
sides = is_senpai ? 10 : 6
|
|
44
|
+
return nil if times <= 0
|
|
45
|
+
|
|
46
|
+
dice_list = @randomizer.roll_barabara(times, sides)
|
|
47
|
+
max = dice_list.max
|
|
48
|
+
|
|
49
|
+
result =
|
|
50
|
+
if max <= 1
|
|
51
|
+
Result.fumble("ファンブル(もやもやカウンターを2個獲得)")
|
|
52
|
+
elsif dice_list.include?(6)
|
|
53
|
+
me = is_senpai ? "先輩" : "後輩"
|
|
54
|
+
target = is_senpai ? "後輩" : "先輩"
|
|
55
|
+
Result.critical("スペシャル(絆カウンターを1個獲得し、#{target}は#{me}への感情を1つ獲得)")
|
|
56
|
+
elsif max >= SUCCESS_THRESHOLD
|
|
57
|
+
Result.success("成功")
|
|
58
|
+
else
|
|
59
|
+
Result.failure("失敗")
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
result.text = "(#{command}) > [#{dice_list.join(',')}] > #{result.text}"
|
|
63
|
+
|
|
64
|
+
return result
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -35,8 +35,8 @@ module BCDice
|
|
|
35
35
|
MESSAGETEXT
|
|
36
36
|
|
|
37
37
|
register_prefix(
|
|
38
|
-
'EMA
|
|
39
|
-
'TRA
|
|
38
|
+
'EMA', 'PER', 'LOC', 'QUI', 'DEL',
|
|
39
|
+
'TRA', 'SCE', 'STA', 'EMO'
|
|
40
40
|
)
|
|
41
41
|
|
|
42
42
|
def eval_game_system_specific_command(command)
|
|
@@ -25,25 +25,23 @@ module BCDice
|
|
|
25
25
|
@d66_sort_type = D66SortType::NO_SORT
|
|
26
26
|
end
|
|
27
27
|
|
|
28
|
-
def
|
|
28
|
+
def result_nd6(total, _dice_total, dice_list, cmp_op, target)
|
|
29
29
|
n_max = dice_list.count(6)
|
|
30
30
|
|
|
31
31
|
if dice_list.count(1) == dice_list.size
|
|
32
32
|
# 全部1の目ならファンブル
|
|
33
|
-
"
|
|
33
|
+
Result.fumble("ファンブル")
|
|
34
34
|
elsif n_max >= 2
|
|
35
35
|
# 2個以上6の目があったらクリティカル
|
|
36
|
-
"
|
|
36
|
+
Result.critical("クリティカル(+#{n_max}D6)")
|
|
37
37
|
elsif cmp_op != :>= || target == '?'
|
|
38
|
-
|
|
38
|
+
nil
|
|
39
39
|
elsif total >= target
|
|
40
|
-
"
|
|
40
|
+
Result.success("成功")
|
|
41
41
|
else
|
|
42
|
-
"
|
|
42
|
+
Result.failure("失敗")
|
|
43
43
|
end
|
|
44
44
|
end
|
|
45
|
-
|
|
46
|
-
alias check_2D6 check_nD6
|
|
47
45
|
end
|
|
48
46
|
end
|
|
49
47
|
end
|
|
@@ -26,7 +26,7 @@ module BCDice
|
|
|
26
26
|
セット数が1以上の時はセット数も表示し、攻撃判定の場合は命中部位も表示します。
|
|
27
27
|
INFO_MESSAGE_TEXT
|
|
28
28
|
|
|
29
|
-
register_prefix('\d+BK', '\d+BA', '\d+BKC
|
|
29
|
+
register_prefix('\d+BK', '\d+BA', '\d+BKC', '\d+BAC', '\d+R6')
|
|
30
30
|
|
|
31
31
|
def initialize(command)
|
|
32
32
|
super(command)
|
|
@@ -34,7 +34,7 @@ module BCDice
|
|
|
34
34
|
・CDx:メック戦士意識維持表。ダメージ値xで判定 例)CD3
|
|
35
35
|
MESSAGETEXT
|
|
36
36
|
|
|
37
|
-
register_prefix('\d*SRM
|
|
37
|
+
register_prefix('\d*SRM', '\d*LRM', '\d*BT', 'PPC', 'CT', 'DW', 'CD')
|
|
38
38
|
|
|
39
39
|
# 致命的命中が発生しない上限値
|
|
40
40
|
NO_CRITICAL_HIT_LIMIT = 7
|
|
@@ -55,13 +55,13 @@ module BCDice
|
|
|
55
55
|
INFO_MESSAGE_TEXT
|
|
56
56
|
|
|
57
57
|
register_prefix(
|
|
58
|
-
'[1-7]*PD
|
|
58
|
+
'[1-7]*PD',
|
|
59
59
|
'HW',
|
|
60
60
|
'BWT',
|
|
61
61
|
'LWT',
|
|
62
62
|
'TWT',
|
|
63
63
|
'CWT',
|
|
64
|
-
'LO
|
|
64
|
+
'LO',
|
|
65
65
|
'SU',
|
|
66
66
|
'WI',
|
|
67
67
|
'NA',
|
|
@@ -88,7 +88,7 @@ module BCDice
|
|
|
88
88
|
'NUR',
|
|
89
89
|
'GUR',
|
|
90
90
|
'BUR',
|
|
91
|
-
'BT
|
|
91
|
+
'BT',
|
|
92
92
|
'SGT',
|
|
93
93
|
'RS',
|
|
94
94
|
'SH',
|
|
@@ -110,7 +110,7 @@ module BCDice
|
|
|
110
110
|
'NCH',
|
|
111
111
|
'GCH',
|
|
112
112
|
'PCH',
|
|
113
|
-
'IT
|
|
113
|
+
'IT',
|
|
114
114
|
'ACT',
|
|
115
115
|
'ACB',
|
|
116
116
|
'ACE',
|
|
@@ -124,7 +124,7 @@ module BCDice
|
|
|
124
124
|
'RU',
|
|
125
125
|
'\d{2}C',
|
|
126
126
|
'BU',
|
|
127
|
-
'\d+S?A
|
|
127
|
+
'\d+S?A',
|
|
128
128
|
'SIP',
|
|
129
129
|
'BVT',
|
|
130
130
|
'LVT',
|
|
@@ -53,13 +53,13 @@ module BCDice
|
|
|
53
53
|
INFO_MESSAGE_TEXT
|
|
54
54
|
|
|
55
55
|
register_prefix(
|
|
56
|
-
'[1-7]*PD
|
|
56
|
+
'[1-7]*PD',
|
|
57
57
|
'HW',
|
|
58
58
|
'BWT',
|
|
59
59
|
'LWT',
|
|
60
60
|
'TWT',
|
|
61
61
|
'CWT',
|
|
62
|
-
'LO
|
|
62
|
+
'LO',
|
|
63
63
|
'SU',
|
|
64
64
|
'WI',
|
|
65
65
|
'NA',
|
|
@@ -85,7 +85,7 @@ module BCDice
|
|
|
85
85
|
'NUR',
|
|
86
86
|
'GUR',
|
|
87
87
|
'BUR',
|
|
88
|
-
'BT
|
|
88
|
+
'BT',
|
|
89
89
|
'SGT',
|
|
90
90
|
'RS',
|
|
91
91
|
'SH',
|
|
@@ -105,7 +105,7 @@ module BCDice
|
|
|
105
105
|
'SCH',
|
|
106
106
|
'WCH',
|
|
107
107
|
'NCH',
|
|
108
|
-
'IT
|
|
108
|
+
'IT',
|
|
109
109
|
'ACT',
|
|
110
110
|
'ACB',
|
|
111
111
|
'ACE',
|
|
@@ -119,7 +119,7 @@ module BCDice
|
|
|
119
119
|
'RU',
|
|
120
120
|
'\d{2}C',
|
|
121
121
|
'BU',
|
|
122
|
-
'\d+S?A
|
|
122
|
+
'\d+S?A',
|
|
123
123
|
'SIP',
|
|
124
124
|
'BVT',
|
|
125
125
|
'LVT',
|
|
@@ -44,18 +44,17 @@ module BCDice
|
|
|
44
44
|
@round_type = RoundType::CEIL # 端数切り上げに設定
|
|
45
45
|
end
|
|
46
46
|
|
|
47
|
-
def
|
|
48
|
-
return
|
|
49
|
-
return '' unless cmp_op == :>=
|
|
47
|
+
def result_2d6(total, dice_total, _dice_list, cmp_op, target)
|
|
48
|
+
return nil if target == '?' || cmp_op != :>=
|
|
50
49
|
|
|
51
50
|
if dice_total <= 2
|
|
52
|
-
"
|
|
51
|
+
Result.fumble("ファンブル(【モラル】-3。追跡フェイズなら吸血シーンを追加。戦闘フェイズなら吸血鬼は追加行動を一回得る)")
|
|
53
52
|
elsif dice_total >= 12
|
|
54
|
-
"
|
|
53
|
+
Result.critical("スペシャル(【モラル】+3。追跡フェイズならあなたに関係を持つPCの【モラル】+2。攻撃判定ならダメージ+1D6)")
|
|
55
54
|
elsif total >= target
|
|
56
|
-
"
|
|
55
|
+
Result.success("成功")
|
|
57
56
|
else
|
|
58
|
-
"
|
|
57
|
+
Result.failure("失敗")
|
|
59
58
|
end
|
|
60
59
|
end
|
|
61
60
|
|