DiceExtension: Difference between revisions

From Empire of Dragons
Jump to navigation Jump to search
(Created page with " Diceroll.php <script lang=php> <?php // Define a function to handle the dice rolling function wfDiceRollParserFunction($parser, $rollString = '') { // Parse the input string (e.g., "2d6") preg_match('/(\d+)d(\d+)/', $rollString, $matches); if (count($matches) !== 3) { return 'Invalid dice notation. Please use the format: XdY'; } $numDice = intval($matches[1]); $numSides = intval($matches[2]); // Roll the dice $total = 0; for...")
(No difference)

Revision as of 07:31, 13 February 2024


Diceroll.php <script lang=php> <?php // Define a function to handle the dice rolling function wfDiceRollParserFunction($parser, $rollString = ) {

   // Parse the input string (e.g., "2d6")
   preg_match('/(\d+)d(\d+)/', $rollString, $matches);
   if (count($matches) !== 3) {
       return 'Invalid dice notation. Please use the format: XdY';
   }
   $numDice = intval($matches[1]);
   $numSides = intval($matches[2]);
   // Roll the dice
   $total = 0;
   for ($i = 0; $i < $numDice; $i++) {
       $total += mt_rand(1, $numSides);
   }
   // Return the result
   return $total;

}

// Register the parser function with MediaWiki $wgHooks['ParserFirstCallInit'][] = 'wfDiceRollSetup'; function wfDiceRollSetup($parser) {

   $parser->setFunctionHook('rollDice', 'wfDiceRollParserFunction');
   return true;

}

</script>