drd-plus/tables

This package is abandoned and no longer maintained. The author suggests using the drdplus/tables package instead.

Drd+ tables and their units conversion

2.0.1 2019-02-27 13:54 UTC

This package is auto-updated.

Last update: 2019-02-27 13:59:37 UTC


README

Build Status Test Coverage License

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
  • 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
  • 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)
  • 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.