bcdice 3.5.0 → 3.6.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 +29 -0
- data/i18n/FutariSousa/ja_jp.yml +705 -9
- data/i18n/KillDeathBusiness/ja_jp.yml +1 -1
- data/i18n/SwordWorld/ja_jp.yml +6 -0
- data/i18n/SwordWorld2_0/ja_jp.yml +37 -0
- data/i18n/SwordWorld2_5/ja_jp.yml +57 -0
- data/lib/bcdice/common_command/add_dice/node.rb +28 -4
- data/lib/bcdice/common_command/add_dice/parser.rb +149 -85
- data/lib/bcdice/dice_table/d66_parity_table.rb +8 -0
- data/lib/bcdice/game_system/Avandner.rb +1 -2
- data/lib/bcdice/game_system/Ayabito.rb +229 -0
- data/lib/bcdice/game_system/BattleTech.rb +1 -1
- data/lib/bcdice/game_system/CyberpunkRed.rb +135 -0
- data/lib/bcdice/game_system/DarkDaysDrive.rb +76 -41
- data/lib/bcdice/game_system/Elysion.rb +36 -20
- data/lib/bcdice/game_system/FutariSousa.rb +48 -4
- data/lib/bcdice/game_system/KemonoNoMori.rb +17 -17
- data/lib/bcdice/game_system/NeverCloud.rb +19 -8
- data/lib/bcdice/game_system/Shiranui.rb +145 -0
- data/lib/bcdice/game_system/ShuumatsuKikou.rb +298 -0
- data/lib/bcdice/game_system/StarryDolls.rb +318 -0
- data/lib/bcdice/game_system/StrangerOfSwordCity.rb +18 -5
- data/lib/bcdice/game_system/SwordWorld.rb +6 -6
- data/lib/bcdice/game_system/SwordWorld2_0.rb +16 -39
- data/lib/bcdice/game_system/SwordWorld2_5.rb +3 -63
- data/lib/bcdice/game_system/VampireTheMasquerade5th.rb +29 -28
- data/lib/bcdice/game_system/cyberpunk_red/tables.rb +530 -0
- data/lib/bcdice/game_system/meikyu_kingdom/tables.rb +1 -1
- data/lib/bcdice/game_system/meikyu_kingdom_basic/table.rb +1 -1
- data/lib/bcdice/game_system/satasupe/tables.rb +1 -1
- data/lib/bcdice/game_system/sword_world/rating_options.rb +47 -0
- data/lib/bcdice/game_system/sword_world/rating_parsed.rb +34 -82
- data/lib/bcdice/game_system/sword_world/rating_parser.rb +43 -53
- data/lib/bcdice/game_system/sword_world/transcendent_test.rb +14 -10
- data/lib/bcdice/game_system.rb +4 -0
- data/lib/bcdice/randomizer.rb +1 -1
- data/lib/bcdice/version.rb +1 -1
- metadata +11 -2
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BCDice
|
4
|
+
module GameSystem
|
5
|
+
class SwordWorld < Base
|
6
|
+
class RatingOptions
|
7
|
+
# @return [Integer, nil]
|
8
|
+
attr_accessor :critical
|
9
|
+
|
10
|
+
# @return [Integer, nil]
|
11
|
+
attr_accessor :kept_modify
|
12
|
+
|
13
|
+
# @return [Integer, nil]
|
14
|
+
attr_accessor :first_to
|
15
|
+
|
16
|
+
# @return [Integer, nil]
|
17
|
+
attr_accessor :first_modify
|
18
|
+
|
19
|
+
# @return [Integer, nil]
|
20
|
+
attr_accessor :rateup
|
21
|
+
|
22
|
+
# @return [Boolean, nil]
|
23
|
+
attr_accessor :greatest_fortune
|
24
|
+
|
25
|
+
# @return [Integer, nil]
|
26
|
+
attr_accessor :semi_fixed_val
|
27
|
+
|
28
|
+
# @return [Integer, nil]
|
29
|
+
attr_accessor :tmp_fixed_val
|
30
|
+
|
31
|
+
# @return [Integer, nil]
|
32
|
+
attr_accessor :modifier
|
33
|
+
|
34
|
+
# @return [Integer, nil]
|
35
|
+
attr_accessor :modifier_after_half
|
36
|
+
|
37
|
+
def settable_first_roll_adjust_option?
|
38
|
+
return first_modify.nil? && first_to.nil?
|
39
|
+
end
|
40
|
+
|
41
|
+
def settable_non_2d_roll_option?
|
42
|
+
return greatest_fortune.nil? && semi_fixed_val.nil? && tmp_fixed_val.nil?
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -7,46 +7,48 @@ module BCDice
|
|
7
7
|
# @return [Integer]
|
8
8
|
attr_accessor :rate
|
9
9
|
|
10
|
-
# @return [Integer
|
11
|
-
|
10
|
+
# @return [Integer]
|
11
|
+
attr_accessor :critical
|
12
12
|
|
13
|
-
# @return [Integer
|
14
|
-
|
13
|
+
# @return [Integer]
|
14
|
+
attr_accessor :kept_modify
|
15
15
|
|
16
|
-
# @return [Integer
|
17
|
-
|
16
|
+
# @return [Integer]
|
17
|
+
attr_accessor :first_to
|
18
18
|
|
19
|
-
# @return [Integer
|
20
|
-
|
19
|
+
# @return [Integer]
|
20
|
+
attr_accessor :first_modify
|
21
21
|
|
22
|
-
# @return [Integer
|
23
|
-
|
22
|
+
# @return [Integer]
|
23
|
+
attr_accessor :rateup
|
24
24
|
|
25
25
|
# @return [Boolean]
|
26
26
|
attr_accessor :greatest_fortune
|
27
27
|
|
28
|
-
# @return [Integer
|
29
|
-
|
28
|
+
# @return [Integer]
|
29
|
+
attr_accessor :semi_fixed_val
|
30
30
|
|
31
|
-
# @return [Integer
|
32
|
-
|
31
|
+
# @return [Integer]
|
32
|
+
attr_accessor :tmp_fixed_val
|
33
33
|
|
34
34
|
# @return [Integer]
|
35
35
|
attr_accessor :modifier
|
36
36
|
|
37
37
|
# @return [Integer, nil]
|
38
|
-
|
39
|
-
|
40
|
-
def initialize
|
41
|
-
@
|
42
|
-
@
|
43
|
-
@
|
44
|
-
@
|
45
|
-
@
|
38
|
+
attr_accessor :modifier_after_half
|
39
|
+
|
40
|
+
def initialize(rate, modifier)
|
41
|
+
@rate = rate
|
42
|
+
@modifier = modifier
|
43
|
+
@critical = 13
|
44
|
+
@kept_modify = 0
|
45
|
+
@first_to = 0
|
46
|
+
@first_modify = 0
|
46
47
|
@greatest_fortune = false
|
47
|
-
@rateup =
|
48
|
-
@semi_fixed_val =
|
49
|
-
@tmp_fixed_val =
|
48
|
+
@rateup = 0
|
49
|
+
@semi_fixed_val = 0
|
50
|
+
@tmp_fixed_val = 0
|
51
|
+
@modifier_after_half = nil
|
50
52
|
end
|
51
53
|
|
52
54
|
# @return [Boolean]
|
@@ -54,63 +56,18 @@ module BCDice
|
|
54
56
|
return !@modifier_after_half.nil?
|
55
57
|
end
|
56
58
|
|
57
|
-
# @return [Integer]
|
58
|
-
def critical
|
59
|
-
return @critical || (half ? 13 : 10)
|
60
|
-
end
|
61
|
-
|
62
59
|
# @return [Integer]
|
63
60
|
def min_critical
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
else
|
69
|
-
min_critical = @semi_fixed_val + @kept_modify + 2 if min_critical < @semi_fixed_val + @kept_modify + 2
|
70
|
-
end
|
71
|
-
min_critical = 3 if @semi_fixed_val == 1
|
61
|
+
if @semi_fixed_val <= 1
|
62
|
+
return 3
|
63
|
+
else
|
64
|
+
return (@semi_fixed_val + @kept_modify + 2).clamp(3, 13)
|
72
65
|
end
|
73
|
-
min_critical = 13 if min_critical > 13
|
74
|
-
return min_critical
|
75
|
-
end
|
76
|
-
|
77
|
-
# @return [Integer]
|
78
|
-
def first_modify
|
79
|
-
return @first_modify || 0
|
80
|
-
end
|
81
|
-
|
82
|
-
# @return [Integer]
|
83
|
-
def first_to
|
84
|
-
return @first_to || 0
|
85
|
-
end
|
86
|
-
|
87
|
-
# @return [Integer]
|
88
|
-
def rateup
|
89
|
-
return @rateup || 0
|
90
|
-
end
|
91
|
-
|
92
|
-
# @return [Integer]
|
93
|
-
def semi_fixed_val
|
94
|
-
sf = @semi_fixed_val || 0
|
95
|
-
sf = 6 if sf > 6
|
96
|
-
return sf
|
97
|
-
end
|
98
|
-
|
99
|
-
# @return [Integer]
|
100
|
-
def tmp_fixed_val
|
101
|
-
tf = @tmp_fixed_val || 0
|
102
|
-
tf = 6 if tf > 6
|
103
|
-
return tf
|
104
|
-
end
|
105
|
-
|
106
|
-
# @return [Integer]
|
107
|
-
def kept_modify
|
108
|
-
return @kept_modify || 0
|
109
66
|
end
|
110
67
|
|
111
|
-
# @return [
|
112
|
-
def
|
113
|
-
return
|
68
|
+
# @return [Boolean]
|
69
|
+
def infinite_roll?
|
70
|
+
return critical < min_critical
|
114
71
|
end
|
115
72
|
|
116
73
|
# @return [String]
|
@@ -131,11 +88,6 @@ module BCDice
|
|
131
88
|
end
|
132
89
|
return output
|
133
90
|
end
|
134
|
-
|
135
|
-
# @return [Boolean]
|
136
|
-
def infinite_roll?
|
137
|
-
return critical < min_critical
|
138
|
-
end
|
139
91
|
end
|
140
92
|
end
|
141
93
|
end
|
@@ -11,6 +11,7 @@ require "bcdice/arithmetic/node"
|
|
11
11
|
require "bcdice/enum"
|
12
12
|
require "bcdice/game_system/sword_world/rating_lexer"
|
13
13
|
require "bcdice/game_system/sword_world/rating_parsed"
|
14
|
+
require "bcdice/game_system/sword_world/rating_options"
|
14
15
|
|
15
16
|
module BCDice
|
16
17
|
module GameSystem
|
@@ -44,18 +45,16 @@ end
|
|
44
45
|
private
|
45
46
|
|
46
47
|
def parsed(rate, modifier, option)
|
47
|
-
RatingParsed.new.tap do |p|
|
48
|
-
p.
|
49
|
-
p.
|
50
|
-
p.
|
51
|
-
p.
|
52
|
-
p.
|
53
|
-
p.
|
54
|
-
p.
|
55
|
-
p.
|
56
|
-
p.
|
57
|
-
p.modifier = modifier.eval(@round_type)
|
58
|
-
p.modifier_after_half = option[:modifier_after_half]&.eval(@round_type)
|
48
|
+
RatingParsed.new(rate, modifier).tap do |p|
|
49
|
+
p.kept_modify = option.kept_modify&.eval(@round_type) || 0
|
50
|
+
p.first_to = option.first_to || 0
|
51
|
+
p.first_modify = option.first_modify || 0
|
52
|
+
p.rateup = option.rateup&.eval(@round_type) || 0
|
53
|
+
p.greatest_fortune = option.greatest_fortune if !option.greatest_fortune.nil?
|
54
|
+
p.semi_fixed_val = option.semi_fixed_val&.clamp(1, 6) || 0
|
55
|
+
p.tmp_fixed_val = option.tmp_fixed_val&.clamp(1, 6) || 0
|
56
|
+
p.modifier_after_half = option.modifier_after_half&.eval(@round_type)
|
57
|
+
p.critical = option.critical&.eval(@round_type)&.clamp(0, 13) || (p.half ? 13 : 10)
|
59
58
|
end
|
60
59
|
end
|
61
60
|
|
@@ -255,17 +254,17 @@ Racc_debug_parser = false
|
|
255
254
|
|
256
255
|
def _reduce_1(val, _values, result)
|
257
256
|
rate, option = val
|
258
|
-
modifier = option
|
259
|
-
result = parsed(rate, modifier, option)
|
257
|
+
modifier = option.modifier || Arithmetic::Node::Number.new(0)
|
258
|
+
result = parsed(rate, modifier.eval(@round_type), option)
|
260
259
|
|
261
260
|
result
|
262
261
|
end
|
263
262
|
|
264
263
|
def _reduce_2(val, _values, result)
|
265
264
|
_, rate, option = val
|
266
|
-
option
|
267
|
-
modifier = option
|
268
|
-
result = parsed(rate, modifier, option)
|
265
|
+
option.modifier_after_half ||= Arithmetic::Node::Number.new(0)
|
266
|
+
modifier = option.modifier || Arithmetic::Node::Number.new(0)
|
267
|
+
result = parsed(rate, modifier.eval(@round_type), option)
|
269
268
|
|
270
269
|
result
|
271
270
|
end
|
@@ -276,16 +275,16 @@ def _reduce_3(val, _values, result)
|
|
276
275
|
end
|
277
276
|
|
278
277
|
def _reduce_4(val, _values, result)
|
279
|
-
result =
|
278
|
+
result = RatingOptions.new
|
280
279
|
|
281
280
|
result
|
282
281
|
end
|
283
282
|
|
284
283
|
def _reduce_5(val, _values, result)
|
285
284
|
option, term = val
|
286
|
-
raise ParseError unless option
|
285
|
+
raise ParseError unless option.modifier.nil?
|
287
286
|
|
288
|
-
option
|
287
|
+
option.modifier = term
|
289
288
|
result = option
|
290
289
|
|
291
290
|
result
|
@@ -293,9 +292,9 @@ end
|
|
293
292
|
|
294
293
|
def _reduce_6(val, _values, result)
|
295
294
|
option, _, term, _ = val
|
296
|
-
raise ParseError unless option
|
295
|
+
raise ParseError unless option.critical.nil?
|
297
296
|
|
298
|
-
option
|
297
|
+
option.critical = term
|
299
298
|
result = option
|
300
299
|
|
301
300
|
result
|
@@ -303,9 +302,9 @@ end
|
|
303
302
|
|
304
303
|
def _reduce_7(val, _values, result)
|
305
304
|
option, _, term = val
|
306
|
-
raise ParseError unless option
|
305
|
+
raise ParseError unless option.critical.nil?
|
307
306
|
|
308
|
-
option
|
307
|
+
option.critical = term
|
309
308
|
result = option
|
310
309
|
|
311
310
|
result
|
@@ -313,9 +312,9 @@ end
|
|
313
312
|
|
314
313
|
def _reduce_8(val, _values, result)
|
315
314
|
option, _, term = val
|
316
|
-
raise ParseError unless option
|
315
|
+
raise ParseError unless option.settable_first_roll_adjust_option?
|
317
316
|
|
318
|
-
option
|
317
|
+
option.first_to = term.to_i
|
319
318
|
result = option
|
320
319
|
|
321
320
|
result
|
@@ -323,9 +322,9 @@ end
|
|
323
322
|
|
324
323
|
def _reduce_9(val, _values, result)
|
325
324
|
option, _, _, term = val
|
326
|
-
raise ParseError unless option
|
325
|
+
raise ParseError unless option.settable_first_roll_adjust_option?
|
327
326
|
|
328
|
-
option
|
327
|
+
option.first_modify = term.to_i
|
329
328
|
result = option
|
330
329
|
|
331
330
|
result
|
@@ -333,9 +332,9 @@ end
|
|
333
332
|
|
334
333
|
def _reduce_10(val, _values, result)
|
335
334
|
option, _, _, term = val
|
336
|
-
raise ParseError unless option
|
335
|
+
raise ParseError unless option.settable_first_roll_adjust_option?
|
337
336
|
|
338
|
-
option
|
337
|
+
option.first_modify = -(term.to_i)
|
339
338
|
result = option
|
340
339
|
|
341
340
|
result
|
@@ -343,9 +342,9 @@ end
|
|
343
342
|
|
344
343
|
def _reduce_11(val, _values, result)
|
345
344
|
option, _ = val
|
346
|
-
raise ParseError unless option
|
345
|
+
raise ParseError unless option.modifier_after_half.nil?
|
347
346
|
|
348
|
-
option
|
347
|
+
option.modifier_after_half = Arithmetic::Node::Number.new(0)
|
349
348
|
result = option
|
350
349
|
|
351
350
|
result
|
@@ -353,9 +352,9 @@ end
|
|
353
352
|
|
354
353
|
def _reduce_12(val, _values, result)
|
355
354
|
option, _, term = val
|
356
|
-
raise ParseError unless option
|
355
|
+
raise ParseError unless option.modifier_after_half.nil?
|
357
356
|
|
358
|
-
option
|
357
|
+
option.modifier_after_half = term
|
359
358
|
result = option
|
360
359
|
|
361
360
|
result
|
@@ -363,9 +362,9 @@ end
|
|
363
362
|
|
364
363
|
def _reduce_13(val, _values, result)
|
365
364
|
option, _, term = val
|
366
|
-
raise ParseError unless [:v2_5, :v2_0].include?(@version) && option
|
365
|
+
raise ParseError unless [:v2_5, :v2_0].include?(@version) && option.rateup.nil?
|
367
366
|
|
368
|
-
option
|
367
|
+
option.rateup = term
|
369
368
|
result = option
|
370
369
|
|
371
370
|
result
|
@@ -373,12 +372,9 @@ end
|
|
373
372
|
|
374
373
|
def _reduce_14(val, _values, result)
|
375
374
|
option, _, _ = val
|
376
|
-
raise ParseError unless [:v2_5, :v2_0].include?(@version)
|
377
|
-
raise ParseError unless option[:greatest_fortune].nil?
|
378
|
-
raise ParseError unless option[:semi_fixed_val].nil?
|
379
|
-
raise ParseError unless option[:tmp_fixed_val].nil?
|
375
|
+
raise ParseError unless [:v2_5, :v2_0].include?(@version) && option.settable_non_2d_roll_option?
|
380
376
|
|
381
|
-
option
|
377
|
+
option.greatest_fortune = true
|
382
378
|
result = option
|
383
379
|
|
384
380
|
result
|
@@ -386,12 +382,9 @@ end
|
|
386
382
|
|
387
383
|
def _reduce_15(val, _values, result)
|
388
384
|
option, _, _, term = val
|
389
|
-
raise ParseError unless [:v2_5, :v2_0].include?(@version)
|
390
|
-
raise ParseError unless option[:greatest_fortune].nil?
|
391
|
-
raise ParseError unless option[:semi_fixed_val].nil?
|
392
|
-
raise ParseError unless option[:tmp_fixed_val].nil?
|
385
|
+
raise ParseError unless [:v2_5, :v2_0].include?(@version) && option.settable_non_2d_roll_option?
|
393
386
|
|
394
|
-
option
|
387
|
+
option.semi_fixed_val = term.to_i
|
395
388
|
result = option
|
396
389
|
|
397
390
|
result
|
@@ -399,12 +392,9 @@ end
|
|
399
392
|
|
400
393
|
def _reduce_16(val, _values, result)
|
401
394
|
option, _, _, term = val
|
402
|
-
raise ParseError unless [:v2_5, :v2_0].include?(@version)
|
403
|
-
raise ParseError unless option[:greatest_fortune].nil?
|
404
|
-
raise ParseError unless option[:semi_fixed_val].nil?
|
405
|
-
raise ParseError unless option[:tmp_fixed_val].nil?
|
395
|
+
raise ParseError unless [:v2_5, :v2_0].include?(@version) && option.settable_non_2d_roll_option?
|
406
396
|
|
407
|
-
option
|
397
|
+
option.tmp_fixed_val = term.to_i
|
408
398
|
result = option
|
409
399
|
|
410
400
|
result
|
@@ -412,9 +402,9 @@ end
|
|
412
402
|
|
413
403
|
def _reduce_17(val, _values, result)
|
414
404
|
option, _, term = val
|
415
|
-
raise ParseError unless @version == :v2_5 && option
|
405
|
+
raise ParseError unless @version == :v2_5 && option.kept_modify.nil?
|
416
406
|
|
417
|
-
option
|
407
|
+
option.kept_modify = term
|
418
408
|
result = option
|
419
409
|
|
420
410
|
result
|
@@ -1,27 +1,23 @@
|
|
1
1
|
require "bcdice/result"
|
2
|
+
require "bcdice/translate"
|
2
3
|
|
3
4
|
module BCDice
|
4
5
|
module GameSystem
|
5
6
|
class SwordWorld2_0 < SwordWorld
|
6
7
|
# 超越判定のノード
|
7
8
|
class TranscendentTest
|
8
|
-
|
9
|
-
success: "成功",
|
10
|
-
failure: "失敗",
|
11
|
-
super_success: "超成功",
|
12
|
-
critical: "自動的成功",
|
13
|
-
fumble: "自動的失敗",
|
14
|
-
}.freeze
|
9
|
+
include Translate
|
15
10
|
|
16
11
|
# @param [Integer] critical_value クリティカル値
|
17
12
|
# @param [Integer] modifier 修正値
|
18
13
|
# @param [String, nil] cmp_op 比較演算子(> または >=)
|
19
14
|
# @param [Integer, nil] target 目標値
|
20
|
-
def initialize(critical_value, modifier, cmp_op, target)
|
15
|
+
def initialize(critical_value, modifier, cmp_op, target, locale)
|
21
16
|
@critical_value = critical_value
|
22
17
|
@modifier = modifier
|
23
18
|
@cmp_op = cmp_op
|
24
19
|
@target = target
|
20
|
+
@locale = locale
|
25
21
|
|
26
22
|
@modifier_str = Format.modifier(@modifier)
|
27
23
|
@expression = node_expression()
|
@@ -32,7 +28,7 @@ module BCDice
|
|
32
28
|
# @return [String]
|
33
29
|
def execute(randomizer)
|
34
30
|
if @critical_value < 3
|
35
|
-
return "
|
31
|
+
return translate("SwordWorld2_0.transcendent_critical_too_small", expression: @expression)
|
36
32
|
end
|
37
33
|
|
38
34
|
first_value_group = randomizer.roll_barabara(2, 6)
|
@@ -51,11 +47,19 @@ module BCDice
|
|
51
47
|
total_sum = sum + @modifier
|
52
48
|
|
53
49
|
result = result_status(total_sum, value_groups.length, fumble, critical)
|
50
|
+
result_str = {
|
51
|
+
success: translate("success"),
|
52
|
+
failure: translate("failure"),
|
53
|
+
super_success: translate("SwordWorld2_0.super_success"),
|
54
|
+
critical: translate("SwordWorld.critical"),
|
55
|
+
fumble: translate("SwordWorld.fumble"),
|
56
|
+
}.freeze[result]
|
57
|
+
|
54
58
|
parts = [
|
55
59
|
"(#{@expression})",
|
56
60
|
"#{dice_str(value_groups, sum)}#{@modifier_str}",
|
57
61
|
total_sum,
|
58
|
-
|
62
|
+
result_str,
|
59
63
|
].compact
|
60
64
|
|
61
65
|
return Result.new.tap do |r|
|
data/lib/bcdice/game_system.rb
CHANGED
@@ -17,6 +17,7 @@ require "bcdice/game_system/Arianrhod"
|
|
17
17
|
require "bcdice/game_system/ArsMagica"
|
18
18
|
require "bcdice/game_system/AssaultEngine"
|
19
19
|
require "bcdice/game_system/Avandner"
|
20
|
+
require "bcdice/game_system/Ayabito"
|
20
21
|
require "bcdice/game_system/Bakenokawa"
|
21
22
|
require "bcdice/game_system/BBN"
|
22
23
|
require "bcdice/game_system/BadLife"
|
@@ -46,6 +47,7 @@ require "bcdice/game_system/CthulhuTech"
|
|
46
47
|
require "bcdice/game_system/Cthulhu_ChineseTraditional"
|
47
48
|
require "bcdice/game_system/Cthulhu_Korean"
|
48
49
|
require "bcdice/game_system/Cthulhu_SimplifiedChinese"
|
50
|
+
require "bcdice/game_system/CyberpunkRed"
|
49
51
|
require "bcdice/game_system/DarkBlaze"
|
50
52
|
require "bcdice/game_system/DarkDaysDrive"
|
51
53
|
require "bcdice/game_system/DarkSouls"
|
@@ -177,7 +179,9 @@ require "bcdice/game_system/SharedFantasia"
|
|
177
179
|
require "bcdice/game_system/ShinMegamiTenseiKakuseihen"
|
178
180
|
require "bcdice/game_system/ShinkuuGakuen"
|
179
181
|
require "bcdice/game_system/ShinobiGami"
|
182
|
+
require "bcdice/game_system/Shiranui"
|
180
183
|
require "bcdice/game_system/ShoujoTenrankai"
|
184
|
+
require "bcdice/game_system/ShuumatsuKikou"
|
181
185
|
require "bcdice/game_system/Skynauts"
|
182
186
|
require "bcdice/game_system/SkynautsBouken"
|
183
187
|
require "bcdice/game_system/StarryDolls"
|
data/lib/bcdice/randomizer.rb
CHANGED
data/lib/bcdice/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bcdice
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SAKATA Sinji
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: i18n
|
@@ -71,6 +71,9 @@ files:
|
|
71
71
|
- i18n/StellarKnights/ko_kr.yml
|
72
72
|
- i18n/StratoShout/ja_jp.yml
|
73
73
|
- i18n/StratoShout/ko_kr.yml
|
74
|
+
- i18n/SwordWorld/ja_jp.yml
|
75
|
+
- i18n/SwordWorld2_0/ja_jp.yml
|
76
|
+
- i18n/SwordWorld2_5/ja_jp.yml
|
74
77
|
- i18n/ja_jp.yml
|
75
78
|
- i18n/ko_kr.yml
|
76
79
|
- i18n/zh_hans.yml
|
@@ -146,6 +149,7 @@ files:
|
|
146
149
|
- lib/bcdice/game_system/ArsMagica.rb
|
147
150
|
- lib/bcdice/game_system/AssaultEngine.rb
|
148
151
|
- lib/bcdice/game_system/Avandner.rb
|
152
|
+
- lib/bcdice/game_system/Ayabito.rb
|
149
153
|
- lib/bcdice/game_system/BBN.rb
|
150
154
|
- lib/bcdice/game_system/BadLife.rb
|
151
155
|
- lib/bcdice/game_system/Bakenokawa.rb
|
@@ -175,6 +179,7 @@ files:
|
|
175
179
|
- lib/bcdice/game_system/Cthulhu_ChineseTraditional.rb
|
176
180
|
- lib/bcdice/game_system/Cthulhu_Korean.rb
|
177
181
|
- lib/bcdice/game_system/Cthulhu_SimplifiedChinese.rb
|
182
|
+
- lib/bcdice/game_system/CyberpunkRed.rb
|
178
183
|
- lib/bcdice/game_system/DarkBlaze.rb
|
179
184
|
- lib/bcdice/game_system/DarkDaysDrive.rb
|
180
185
|
- lib/bcdice/game_system/DarkSouls.rb
|
@@ -306,7 +311,9 @@ files:
|
|
306
311
|
- lib/bcdice/game_system/ShinMegamiTenseiKakuseihen.rb
|
307
312
|
- lib/bcdice/game_system/ShinkuuGakuen.rb
|
308
313
|
- lib/bcdice/game_system/ShinobiGami.rb
|
314
|
+
- lib/bcdice/game_system/Shiranui.rb
|
309
315
|
- lib/bcdice/game_system/ShoujoTenrankai.rb
|
316
|
+
- lib/bcdice/game_system/ShuumatsuKikou.rb
|
310
317
|
- lib/bcdice/game_system/Skynauts.rb
|
311
318
|
- lib/bcdice/game_system/SkynautsBouken.rb
|
312
319
|
- lib/bcdice/game_system/StarryDolls.rb
|
@@ -362,6 +369,7 @@ files:
|
|
362
369
|
- lib/bcdice/game_system/beginning_idol/work_table.rb
|
363
370
|
- lib/bcdice/game_system/cthulhu7th/full_auto.rb
|
364
371
|
- lib/bcdice/game_system/cthulhu7th/rollable.rb
|
372
|
+
- lib/bcdice/game_system/cyberpunk_red/tables.rb
|
365
373
|
- lib/bcdice/game_system/filled_with/cook_tables.rb
|
366
374
|
- lib/bcdice/game_system/filled_with/enemy_data_tables.rb
|
367
375
|
- lib/bcdice/game_system/filled_with/event_tables.rb
|
@@ -384,6 +392,7 @@ files:
|
|
384
392
|
- lib/bcdice/game_system/one_way_heroics/tables.rb
|
385
393
|
- lib/bcdice/game_system/satasupe/tables.rb
|
386
394
|
- lib/bcdice/game_system/sword_world/rating_lexer.rb
|
395
|
+
- lib/bcdice/game_system/sword_world/rating_options.rb
|
387
396
|
- lib/bcdice/game_system/sword_world/rating_parsed.rb
|
388
397
|
- lib/bcdice/game_system/sword_world/rating_parser.rb
|
389
398
|
- lib/bcdice/game_system/sword_world/transcendent_test.rb
|