#include <Die.h>
Inheritance diagram for ogs::core::Die:


Public Types | |
| typedef unsigned short | Sides | 
| The type of a die.  | |
| typedef unsigned short | Count | 
| Number of times a die is rolled.  | |
| typedef short | Modifier | 
| Arbitrary value added to sum of die rolls.  | |
| typedef short | Value | 
| Sum of die rolls plus modifier.  | |
Public Member Functions | |
| Die (Sides sides=d20, Count count=1, Modifier modifier=0) | |
| Create a new die.  | |
| Sides | getSides () const | 
| Determine the number of sides on this die.  | |
| void | setSides (Sides sides) | 
| Change the sides on this die.  | |
| Count | getCount () const | 
| Determine the number of times this die is rolled.  | |
| void | setCount (Count count) | 
| Change the number of times the die is rolled.  | |
| Modifier | getModifier () const | 
| Determine the arbitrary value added to the sum of die rolls.  | |
| void | setModifier (Modifier modifier) | 
| Change the modifier added to the sum of die rolls.  | |
| Value | getValue () const | 
| Determine the value of the last die roll.  | |
| void | setValue () const | 
| Change the value of the die.  | |
| Value | rollValue () const | 
| Reroll this die.  | |
| Value | getMaximumValue () const | 
| Retrieve the highest possible value of this die.  | |
| Value | getMinimumValue () const | 
| Retrieve the lowest possible value of this die.  | |
Static Public Member Functions | |
| Value | roll (Sides sides=d20, Count count=1, Modifier modifier=0) | 
| Roll a die one or more times and add a modifier.  | |
Static Public Attributes | |
| const Sides | d4 = 4 | 
| A four-sided die. | |
| const Sides | d6 = 6 | 
| A six-sided die. | |
| const Sides | d8 = 8 | 
| An eight-sided die. | |
| const Sides | d10 = 10 | 
| A ten-sided die. | |
| const Sides | d12 = 12 | 
| A twelve-sided die. | |
| const Sides | d20 = 20 | 
| A twenty-sided die. | |
| const Sides | d2 = 2 | 
| A two-sided die.  | |
| const Sides | d3 = 3 | 
| A three-sided die.  | |
| const Sides | d5 = 5 | 
| A five-sided die.  | |
| const Sides | d100 = 100 | 
| A hundred-sided die.  | |
Die object is homogenous: only one type of die is represented by a single object. Type refers to the number of sides on a die. A single die, however, can be rolled more than once. The sum of these rolls can be added to a die modifier to produce an overall range of random numbers. 
      
  | 
  
| 
 Die counts must always be one (1) or more.  | 
  
      
  | 
  
| 
 Die modifiers can be zero (0), positive, or negative.  | 
  
      
  | 
  
| 
 The type of a die is denoted by the number of sides that it has. Some types of die are real: they are geometrical solids. Other types are virtual: they are simulated using real die. Die sides must always be two (2) or more.  | 
  
      
  | 
  
| 
 A die value is usually called "a die roll" but "Value" is used to distinguish "a die roll" from "roll a die".  | 
  
      
  | 
  ||||||||||||||||
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  ||||||||||||||||
| 
 
 
 
 
  | 
  
      
  | 
  
| 
 This method combines the setValue and getValue methods. 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 
 
  | 
  
      
  | 
  
| 
 This method rerolls the die.  | 
  
      
  | 
  
| 
 A hundred-sided die is simulated by rolling two d10. One die is tens and the other is ones.  | 
  
      
  | 
  
| 
 A two-sided die is simulated by rolling a d4, d6, d8, d10, d12, or d20. An even number is a 1 and an odd number is a 2.  | 
  
      
  | 
  
| 
 A three-sided die is simulated by rolling a d6, 1 or 2 counts as 1, 3 or 4 is a 2, 5 or 6 is a 3.  | 
  
      
  | 
  
| 
 A five-sided die is simulated by rolling a d10, Results are treated similarly to d3.  | 
  
1.3