-
Notifications
You must be signed in to change notification settings - Fork 112
Description
Is your feature request related to a problem? Please describe.
While working on the /monsters/[id] page on the front-end and cross-referencing source material, I believe I have found a case where our Creature Action data model can't currently model - actions limited to when a monster suffers a condition (ie. Bloodied).
The monster I noticed this on was the Adult Amethyst Dragon from the A5e Monstrous Menagerie, and the problematic part is the Assume Control reaction:
(From the A5e Monstrous Menagerie, pp. 140)
There doesn't appear to be a clear way to resolve this using our existing CreatureAction model.
Describe the solution you'd like
Change the name of the "limited_to_form" field to something that would also cover an action's condition limits, and use this field to store this data. ie. "form_and_condition_usage_limits"
Describe alternatives you've considered
I considered three possile solutions:
A) Allow action condition limitation data to be stored in the usage_limit field.
B) Store this information in the form_condition field.
C) Add a new limited_to_condition field
Option (A) is preferred from a UX perspecive, but it is not as simple as just adding a "LIMIT_TO_CONDITION" entry to the "CREATURE_USES_TYPES" enum. This is because the detail field for this property has to be an integer. We would need to store either a display string or an FK to the Conditions endpoint to get this working, which could potentially be an awkward refactor.
Option (B) is the simpliest, and only requires that the field name "limited_to_form" be changed to something that would also include condition limitations.
Option (C) is likely a bad idea. Technically the most useful and compresensive, but as actions limited to conditions are extremely niche, it would be a add a huge amount of null data to our payload for limited returns.