[Hotfix] Prevent crash if enemy Future Sight user is caught (#4905)
This commit is contained in:
parent
89a3edba1c
commit
dd904fe782
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "pokemon-rogue-battle",
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.1",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "pokemon-rogue-battle",
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.1",
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@material/material-color-utilities": "^0.2.7",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "pokemon-rogue-battle",
|
||||
"private": true,
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.1",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"start": "vite",
|
||||
|
|
|
@ -3243,11 +3243,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||
return null;
|
||||
}
|
||||
|
||||
getMoveHistory(): TurnMove[] {
|
||||
public getMoveHistory(): TurnMove[] {
|
||||
return this.battleSummonData.moveHistory;
|
||||
}
|
||||
|
||||
pushMoveHistory(turnMove: TurnMove) {
|
||||
public pushMoveHistory(turnMove: TurnMove): void {
|
||||
if (!this.isOnField()) {
|
||||
return;
|
||||
}
|
||||
turnMove.turn = this.scene.currentBattle?.turn;
|
||||
this.getMoveHistory().push(turnMove);
|
||||
}
|
||||
|
|
|
@ -92,8 +92,12 @@ export class MoveEffectPhase extends PokemonPhase {
|
|||
|
||||
const isDelayedAttack = this.move.getMove().hasAttr(DelayedAttackAttr);
|
||||
/** If the user was somehow removed from the field and it's not a delayed attack, end this phase */
|
||||
if (!user.isOnField() && !isDelayedAttack) {
|
||||
if (!user.isOnField()) {
|
||||
if (!isDelayedAttack) {
|
||||
return super.end();
|
||||
} else {
|
||||
user.resetTurnData();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -174,7 +178,7 @@ export class MoveEffectPhase extends PokemonPhase {
|
|||
|
||||
const playOnEmptyField = this.scene.currentBattle?.mysteryEncounter?.hasBattleAnimationsWithoutTargets ?? false;
|
||||
// Move animation only needs one target
|
||||
new MoveAnim(move.id as Moves, user, this.getFirstTarget()!.getBattlerIndex()!, playOnEmptyField).play(this.scene, move.hitsSubstitute(user, this.getFirstTarget()!), () => {
|
||||
new MoveAnim(move.id as Moves, user, this.getFirstTarget()!.getBattlerIndex(), playOnEmptyField).play(this.scene, move.hitsSubstitute(user, this.getFirstTarget()!), () => {
|
||||
/** Has the move successfully hit a target (for damage) yet? */
|
||||
let hasHit: boolean = false;
|
||||
for (const target of targets) {
|
||||
|
|
Loading…
Reference in New Issue