Aller au contenu

Points d'extension

tilttek/loot-tables

La bibliothèque est faite de valeurs et d'un seul service ; elle n'a aucune interface que l'application doive implémenter.

Le catalogue

La provenance des tables et des boîtes appartient à l'application : construites dans le code, lues par CatalogReader dans un document YAML ou JSON, ou tirées d'une base de données, chaque fois sous forme de LootCatalog.

Le hasard

PendingDraw::open() reçoit le Random\Randomizer dont le germe est tiré : un Random\Engine\Secure en production, un moteur avec germe dans les tests.

Le lanceur

LootDrawer reçoit le FairRoller de tilttek/dice, qui reçoit son Roller, ses limites et ses dés personnalisés : une application avec d'autres limites passe le sien.

Où un tirage est gardé

Le germe du tirage en attente, son résultat et sa preuve sont gardés par l'application, liés à ce qui a été vendu ; tilttek/loot-tables-bundle les garde dans Doctrine.