PrivatecostProtectedfieldPrivatelearnPrivatemessagePrivatemoveProtectedpartyReadonlyphaseProtectedplayerEnd the current phase and start a new one.
This facilitates the process in which an old move is chosen to be forgotten.
Which move should be forgotten?
The game then goes Mode.SUMMARY to select a move to be forgotten.
If a player does not select a move or chooses the new move (moveIndex === 4), the game goes to this.rejectMoveAndEnd().
If an old move is selected, the function then passes the moveIndex to this.learnMove()
Check if the phase is of the given type without requiring instanceof.
The string name of the phase to check.
Whether this phase is of the provided type.
This teaches the Pokemon the new move and ends the phase. When a Pokemon forgets a move and learns a new one, its 'Learn Move' message is significantly longer.
Pokemon with a moveset.length < 4
[Pokemon] learned [MoveName]
Pokemon with a moveset.length > 4
1... 2... and 3... and Poof! [Pokemon] forgot how to use [MoveName] And... [Pokemon] learned [MoveName]!
This asks the player if they wish to end the current move learning process.
Stop trying to teach [MoveName]? -->
Mode.CONFIRM--> Yes: > [Pokemon] did not learn the move [MoveName], No:this.replaceMoveCheck()
If the player wishes to not teach the Pokemon the move, it displays a message and ends the phase. If the player reconsiders, it repeats the process for a Pokemon with a full moveset once again.
This displays a chain of messages (listed below) and asks if the user wishes to forget a move.
[Pokemon] wants to learn the move [MoveName] However, [Pokemon] already knows four moves. Should a move be forgotten and replaced with [MoveName]? -->
Mode.CONFIRM-> Yes: Go tothis.forgetMoveProcess(), No: Go tothis.rejectMoveAndEnd()
Start the current phase.
The string name of the phase, used to identify the phase type for
is