-
Notifications
You must be signed in to change notification settings - Fork 12
Description
Describe the bug:
In Generation I, the move which is disabled (wPlayerDisabledMoveNumber) needs to be tracked in addition to its index/duration (wPlayerDisabledMove).
Example:
This is specifically relevant wrt Transform. Currently the engine checks whether a move is disabled by comparing the move at the disabled index to the move trying to be used. This will actually handle the Mimic case, because if eg Tackle in slot 2 gets disabled but Mimic in slot 1 is replaced by Tackle, the cart and the engine will allow the slot 1 Tackle to be selected by will not let it be executed. This is not the case with Transform. If a Pokémon's slot 2 tackle gets Disabled and then Transforms, currently the engine will not only correctly ban the Transformed Pokemon from selecting what is at slot 2 (say eg. Water Gun), it will erroneously not prevent the mon from now using the Transformed pokemons slot 1 Tackle, it will also ban the pokemon from using Mimic and then a Mimicked Water Gun
Expected behavior:
Pokemon is not able to use the slot that was disabled or the move corresponding with at the slot that was disabled for the duration of disable
Additional context:
https://discord.com/channels/689316505560809576/689316506265321535/1481050218223894529
Thanks to @andrebastosdias for discovering this