Fix cancel pp changing items skipping battle turn

This commit is contained in:
JappaWakka 2023-03-15 15:40:46 +01:00
parent 390d8086dd
commit a806284149
6 changed files with 31 additions and 6 deletions

View File

@ -1107,8 +1107,8 @@
Dim Item As Item = Item.GetItemByID(TempItemID)
TempBattleScreen.BattleQuery.Clear()
If Item.UseOnPokemon(PokeIndex) = True Then
TempBattleScreen.BattleQuery.Clear()
TempBattleScreen.BattleQuery.Add(TempBattleScreen.FocusBattle())
TempBattleScreen.BattleQuery.Insert(0, New ToggleMenuQueryObject(True))
TempBattleScreen.Battle.InitializeRound(TempBattleScreen, New Battle.RoundConst With {.StepType = Battle.RoundConst.StepTypes.Item, .Argument = TempItemID.ToString()})

View File

@ -27,7 +27,12 @@ Namespace Items.Berries
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
If ChooseAttackScreen.Selected <> -1 Then
Return True
End If
End If
Return False
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)

View File

@ -21,7 +21,12 @@ Namespace Items.Medicine
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
If ChooseAttackScreen.Selected <> -1 Then
Return True
End If
End If
Return False
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)

View File

@ -21,7 +21,12 @@ Namespace Items.Medicine
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
If ChooseAttackScreen.Selected <> -1 Then
Return True
End If
End If
Return False
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)

View File

@ -21,7 +21,12 @@ Namespace Items.Medicine
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
If ChooseAttackScreen.Selected <> -1 Then
Return True
End If
End If
Return False
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)

View File

@ -21,7 +21,12 @@ Namespace Items.Medicine
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
If ChooseAttackScreen.Selected <> -1 Then
Return True
End If
End If
Return False
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)