dice-roller 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/dice.rb +6 -4
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ce2fd2d7185b762c35b9b12213f5ed043ab293d5
|
4
|
+
data.tar.gz: 47a21d7d56fe495dd5f36bfb3674e18875a1cd09
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e4e36de846a8bf4c7e2101682c46f3f618b11b202ea71bcfdf3022d41aefdecc93e1dc5bd085467fadf7ff20375e90c6d5957187eb6bfb80869cdeb43afcea36
|
7
|
+
data.tar.gz: 64079789a6629341aeb06fb95eeceaa11d6b5fe2972f4df34a38042a720b3cd009ee825849d68427cf084a871d0df073f7c7099e9a66a6adcb043eb2f1f152ce
|
data/lib/dice.rb
CHANGED
@@ -32,7 +32,11 @@ class Dice
|
|
32
32
|
dice_groups(str).each do |group|
|
33
33
|
# Roll each dice
|
34
34
|
dices, sides, modifier, modifier_amount = group.scan(/(\d+)d(\d+)(\D*)(\d*)/).flatten
|
35
|
-
results = Integer(dices).times.collect
|
35
|
+
results = Integer(dices).times.collect do
|
36
|
+
r = rand(Integer(sides)) + 1
|
37
|
+
@rolls << r
|
38
|
+
r
|
39
|
+
end.sort
|
36
40
|
|
37
41
|
# If a modifier is present, handle that
|
38
42
|
if modifier.present?
|
@@ -53,9 +57,7 @@ class Dice
|
|
53
57
|
end
|
54
58
|
|
55
59
|
# Sum dice results and reinsert the results in the original string
|
56
|
-
|
57
|
-
@rolls << result
|
58
|
-
str.gsub!(group, result.to_s)
|
60
|
+
str.gsub!(group, results.sum.to_s)
|
59
61
|
end
|
60
62
|
|
61
63
|
str
|