mirror of
https://github.com/P3D-Legacy/P3D-Legacy.git
synced 2025-07-28 00:04:33 +02:00
Fix for PP items in battle not starting round
This commit is contained in:
parent
cc582b21fd
commit
f1484c77ca
@ -27,12 +27,15 @@ Namespace Items.Berries
|
|||||||
|
|
||||||
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
||||||
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
||||||
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
|
Dim s As Screen = Core.CurrentScreen
|
||||||
If ChooseAttackScreen.Selected <> -1 Then
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
Return True
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
||||||
@ -44,6 +47,19 @@ Namespace Items.Berries
|
|||||||
|
|
||||||
SoundManager.PlaySound("Use_Item", False)
|
SoundManager.PlaySound("Use_Item", False)
|
||||||
Screen.TextBox.Show(t, {}, True, True)
|
Screen.TextBox.Show(t, {}, True, True)
|
||||||
|
Dim s As Screen = Core.CurrentScreen
|
||||||
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Dim TempBattleScreen As BattleSystem.BattleScreen = CType(s, BattleSystem.BattleScreen)
|
||||||
|
|
||||||
|
TempBattleScreen.BattleQuery.Clear()
|
||||||
|
TempBattleScreen.BattleQuery.Add(TempBattleScreen.FocusBattle())
|
||||||
|
TempBattleScreen.BattleQuery.Insert(0, New BattleSystem.ToggleMenuQueryObject(True))
|
||||||
|
TempBattleScreen.Battle.InitializeRound(TempBattleScreen, New BattleSystem.Battle.RoundConst With {.StepType = BattleSystem.Battle.RoundConst.StepTypes.Item, .Argument = Me.ID.ToString()})
|
||||||
|
Core.SetScreen(TempBattleScreen)
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
||||||
End If
|
End If
|
||||||
|
@ -4,7 +4,6 @@ Namespace Items.Medicine
|
|||||||
Public Class Ether
|
Public Class Ether
|
||||||
|
|
||||||
Inherits MedicineItem
|
Inherits MedicineItem
|
||||||
|
|
||||||
Public Overrides ReadOnly Property PokeDollarPrice As Integer = 1200
|
Public Overrides ReadOnly Property PokeDollarPrice As Integer = 1200
|
||||||
Public Overrides ReadOnly Property Description As String = "This medicine can restore 10 PP to a single selected move that has been learned by a Pokémon."
|
Public Overrides ReadOnly Property Description As String = "This medicine can restore 10 PP to a single selected move that has been learned by a Pokémon."
|
||||||
|
|
||||||
@ -21,12 +20,15 @@ Namespace Items.Medicine
|
|||||||
|
|
||||||
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
||||||
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
||||||
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
|
Dim s As Screen = Core.CurrentScreen
|
||||||
If ChooseAttackScreen.Selected <> -1 Then
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
Return True
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
||||||
@ -39,6 +41,19 @@ Namespace Items.Medicine
|
|||||||
|
|
||||||
SoundManager.PlaySound("Use_Item", False)
|
SoundManager.PlaySound("Use_Item", False)
|
||||||
Screen.TextBox.Show(t, {}, True, True)
|
Screen.TextBox.Show(t, {}, True, True)
|
||||||
|
Dim s As Screen = Core.CurrentScreen
|
||||||
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Dim TempBattleScreen As BattleSystem.BattleScreen = CType(s, BattleSystem.BattleScreen)
|
||||||
|
|
||||||
|
TempBattleScreen.BattleQuery.Clear()
|
||||||
|
TempBattleScreen.BattleQuery.Add(TempBattleScreen.FocusBattle())
|
||||||
|
TempBattleScreen.BattleQuery.Insert(0, New BattleSystem.ToggleMenuQueryObject(True))
|
||||||
|
TempBattleScreen.Battle.InitializeRound(TempBattleScreen, New BattleSystem.Battle.RoundConst With {.StepType = BattleSystem.Battle.RoundConst.StepTypes.Item, .Argument = Me.ID.ToString()})
|
||||||
|
Core.SetScreen(TempBattleScreen)
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
||||||
End If
|
End If
|
||||||
|
@ -21,12 +21,15 @@ Namespace Items.Medicine
|
|||||||
|
|
||||||
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
||||||
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
||||||
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
|
Dim s As Screen = Core.CurrentScreen
|
||||||
If ChooseAttackScreen.Selected <> -1 Then
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
Return True
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
||||||
|
@ -21,12 +21,15 @@ Namespace Items.Medicine
|
|||||||
|
|
||||||
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
||||||
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
||||||
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
|
Dim s As Screen = Core.CurrentScreen
|
||||||
If ChooseAttackScreen.Selected <> -1 Then
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
Return True
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
||||||
@ -44,6 +47,19 @@ Namespace Items.Medicine
|
|||||||
PlayerStatistics.Track("[17]Medicine Items used", 1)
|
PlayerStatistics.Track("[17]Medicine Items used", 1)
|
||||||
|
|
||||||
Screen.TextBox.Show(t, {}, True, True)
|
Screen.TextBox.Show(t, {}, True, True)
|
||||||
|
Dim s As Screen = Core.CurrentScreen
|
||||||
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Dim TempBattleScreen As BattleSystem.BattleScreen = CType(s, BattleSystem.BattleScreen)
|
||||||
|
|
||||||
|
TempBattleScreen.BattleQuery.Clear()
|
||||||
|
TempBattleScreen.BattleQuery.Add(TempBattleScreen.FocusBattle())
|
||||||
|
TempBattleScreen.BattleQuery.Insert(0, New BattleSystem.ToggleMenuQueryObject(True))
|
||||||
|
TempBattleScreen.Battle.InitializeRound(TempBattleScreen, New BattleSystem.Battle.RoundConst With {.StepType = BattleSystem.Battle.RoundConst.StepTypes.Item, .Argument = Me.ID.ToString()})
|
||||||
|
Core.SetScreen(TempBattleScreen)
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
||||||
End If
|
End If
|
||||||
|
@ -21,12 +21,15 @@ Namespace Items.Medicine
|
|||||||
|
|
||||||
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
||||||
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
|
||||||
If Core.CurrentScreen.Identification <> Screen.Identifications.ChooseAttackScreen Then
|
Dim s As Screen = Core.CurrentScreen
|
||||||
If ChooseAttackScreen.Selected <> -1 Then
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Return False
|
||||||
|
Else
|
||||||
Return True
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
|
||||||
@ -37,6 +40,19 @@ Namespace Items.Medicine
|
|||||||
PlayerStatistics.Track("[17]Medicine Items used", 1)
|
PlayerStatistics.Track("[17]Medicine Items used", 1)
|
||||||
|
|
||||||
Screen.TextBox.Show(t, {}, True, True)
|
Screen.TextBox.Show(t, {}, True, True)
|
||||||
|
Dim s As Screen = Core.CurrentScreen
|
||||||
|
While s.Identification <> Screen.Identifications.BattleScreen AndAlso s.PreScreen IsNot Nothing
|
||||||
|
s = s.PreScreen
|
||||||
|
End While
|
||||||
|
If s.Identification = Screen.Identifications.BattleScreen Then
|
||||||
|
Dim TempBattleScreen As BattleSystem.BattleScreen = CType(s, BattleSystem.BattleScreen)
|
||||||
|
|
||||||
|
TempBattleScreen.BattleQuery.Clear()
|
||||||
|
TempBattleScreen.BattleQuery.Add(TempBattleScreen.FocusBattle())
|
||||||
|
TempBattleScreen.BattleQuery.Insert(0, New BattleSystem.ToggleMenuQueryObject(True))
|
||||||
|
TempBattleScreen.Battle.InitializeRound(TempBattleScreen, New BattleSystem.Battle.RoundConst With {.StepType = BattleSystem.Battle.RoundConst.StepTypes.Item, .Argument = Me.ID.ToString()})
|
||||||
|
Core.SetScreen(TempBattleScreen)
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
|
||||||
End If
|
End If
|
||||||
|
Loading…
x
Reference in New Issue
Block a user