23 lines
629 B
JavaScript
23 lines
629 B
JavaScript
|
|
|
|
function roll(req){
|
|
if(typeof req !== "string"){
|
|
return "Mollux! You don goofed!"
|
|
}
|
|
|
|
// Splits request into segments. Example "3d6+3+5d2" => ["3d6", "+3", "+5d2"]
|
|
var segments = req.replace(/\s/g, '').match(/([+\-*/]?\d{0,}d\d{1,})|([+\-*/]\d{1,})/gi)
|
|
|
|
var i = -1
|
|
var results = []
|
|
var curResult = 0
|
|
var curMod = 1
|
|
segments.forEach(e => {
|
|
if (e.match(/([+\-*/]?\d{0,}d\d{1,})/gi)){ // xdy
|
|
if (e.substring(0, 1)) curMod = -1
|
|
// TODO: Do stuff
|
|
} else if (e.match(/([+\-*/]\d{1,})/gi)){ // Modifier
|
|
// TODO: Do stuff
|
|
}
|
|
})
|
|
} |