Fix server error when claiming amber before initializing kaleidoscape #1066
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently the server throws an error if you try and claim a present orother reward containing Kaleidoscape amber before unlocking the Kaleidoscape mode. This is because it can't find the DbPlayerDmodeInfo
to update.
This was never really a problem until the introduction of the save editor, where people seem to be quite commonly hitting this case.
Introduce a reward handler for these which can initialize the Kaleidoscape data when attempting to claim a present.
It seems that having any kaleidoscape data initialized will then lead the game to skip the kaleidoscape intro (and calling /dmode/entry) so there shouldn't be any PK conflicts.