drd-plus / tables
Drd+ tables and their units conversion
Installs: 5 743
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: >=7.1
- drdplus/base-properties: ~2.0
- drdplus/calculations: ^1.0
- drdplus/codes: ~2.0
- granam/boolean: >=3.1
- granam/dice-rolls: ^5.0
- granam/float: >=5.0
- granam/integer: >=6.1
- granam/number: >=4.0
Requires (Dev)
- granam/exceptions-hierarchy: ~4.0
- mockery/mockery: ~1.0
- phpunit/phpunit: ~7.0
- roave/security-advisories: dev-master
README
Warning about JumpsAndFallsTable
JumpsAndFallsTable automatically lowers wounds from fall (or jump) by an armour protection, despite rules which DM should decide about portion of reduced damage by himself.
Description
Over sixty tables used for calculation and information in DrD+.
- Table is optional. Measurement is what made it real.
- Bonus, if has sense, is expressed by an entity.
- Measurement HAS TO exists (except for base of wounds, which is for numerical transpose only)
- Measurement HAS TO implement MeasurementInterface
- Measurement HAS TO be able to give its current unit
- Measurement MAY be multi-unit
- IF Measurement is multi-unit
- it HAS TO be able to get new self with any of those units
- IF Measurement is multi-unit
- Measurement MAY be based on Bonus
- IF Measurement has Bonus,
- it HAS TO implement MeasurementWithBonusInterface
- and it HAS TO be able to get equivalent Bonus and Bonus has to be able to get equivalent Measurement
- Every Bonus HAS TO have getter (getFoo) for related Measurement
- Every Measurement with Bonus HAS TO have getter (getBar) for related Bonus
- IF Measurement has Bonus,
- Measurement MAY use Table
- Measurement MAY use a Bonus and a Table at once
- IF Measurement has a Bonus and a Table,
- than that Table HAS to have Measurement converter to Bonus (recommended toBonus)
- and Bonus converter to Measurement (recommended toFoo)
- IF Measurement has a Bonus and a Table,
- Measurement MAY provide conversion helper-methods to value in different unit (but HAS TO provide getter for Measurement in that unit)
- Table SHOULD NOT has conversion methods different that for Measurement to Bonus and vice versa
- Bonus SHOULD NOT has conversion methods different that related Measurement getter
- Measurement type MAY has own Exceptions
- IF Measurement type has own Exceptions, those HAVE TO follow exception hierarchy
Note: Price and Base of wounds are special cases.