Private ReadonlydynamicA Map matching Phase names to their corresponding priority queuess
Find and cancel the first MovePhase meeting the given condition.
Clears the stored Move turn order
Remove all phases from the manager.
Determines if there is a queued dynamic Phase meeting the conditions
The name of the Phase to search for
An optional PhaseConditionFunc to add conditions to the search
Whether a matching phase exists
Find and return the first MovePhase meeting the given condition.
The retrieved MovePhase, or undefined if none meet the criteria.
PrivategetInternal helper to get the MovePhasePriorityQueue
PrivateisInternal helper to determine if a phase is dynamic.
Whether phase is dynamic.
Remove a Phase from its corresponding queue and return it.
The name of the Phase to retrieve
The highest-priority Phase of the given type, or undefined if none of the specified type exist
Finds and removes a single queued Phase
The name of the Phase to search for
Whether a removal occurred
Finds the MovePhase meeting the condition and changes its move
The move to use in replacement
Sets the timing modifier of a move (i.e. to force it first or last)
A PhaseConditionFunc to specify conditions for the move
The MovePhaseTimingModifier to switch the move to
The dynamic queue manager holds priority queues for phases which are queued as dynamic.
Dynamic phases are generally those which hold a pokemon and are unshifted, not pushed.
Queues work by sorting their entries in speed order (and possibly with more complex ordering) before each time a phase is popped.
As the holder, this structure is also used to access and modify queued phases. This is mostly used in redirection, cancellation, etc. of
MovePhases.