Hide moves disabled by Imprison or NEXT's Telepathy
- Pokémon affected by Imprison -or Telepathy in NEXT- will now have a special flag 'maybeDisabled' in move requests if they are the last active pokémon.
- If a Pokémon having this flag attacks, the player will not be able to cancel their decision.
- Refactor Battle#parseChoice: Move decisions will now be parsed based on all the moves a pokémon knows after LockedMove, rather than only on validMoves. Any request to use a disabled move or a move with 0 PP will now be replied with a message in the form |callback|cant|[pokemon]|[sourceEffect]|[move], unless the pokémon has no valid moves, in which case it will use Struggle. The check for lockedMove in choice parsing is now performed as the first action after checking that the pokémon is not fainted. This prevents pokémon from Shifting to the center in Triples while being locked into a move.
- Don't report moves' being disabled to the client in requests if they are disabled due to Imprison or Telepathy. Instead, their being disabled will be reported using the mechanism described above.
Move Struggle usage warning to choice parsing
- It is now sent to the relevant player only, and before the turn resolves.
Fix odd requests for Pokémon trapped by multiple sources
Bump version to 0.9.3
Battle choices will now be parsed in a significatively different way.