Replaced all useful references to ChoosePokemonScreen with references to PartyScreen.

This commit is contained in:
CaptainSegis 2017-03-14 19:13:16 -05:00
parent 410ed4a91c
commit 08b0d944da
65 changed files with 390 additions and 119 deletions

View File

@ -692,8 +692,13 @@
Private Sub MainMenuOpenPokemon(ByVal BattleScreen As BattleScreen) Private Sub MainMenuOpenPokemon(ByVal BattleScreen As BattleScreen)
TempBattleScreen = BattleScreen TempBattleScreen = BattleScreen
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf ShowPokemonMenu, "Choose Pokémon", True))
CType(Core.CurrentScreen, ChoosePokemonScreen).index = BattleScreen.OwnPokemonIndex Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf ShowPokemonMenu, "Choose Pokémon", True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf ShowPokemonMenuHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen)._index = BattleScreen.OwnPokemonIndex
End Sub End Sub
Private Sub MainMenuOpenBag(ByVal BattleScreen As BattleScreen) Private Sub MainMenuOpenBag(ByVal BattleScreen As BattleScreen)
@ -914,6 +919,9 @@
#Region "SwitchPokemon" #Region "SwitchPokemon"
Shared TempBattleScreen As BattleScreen Shared TempBattleScreen As BattleScreen
Private Shared Sub ShowPokemonMenuHandler(ByVal params As Object())
ShowPokemonMenu(CInt(params(0)))
End Sub
Private Shared Sub ShowPokemonMenu(ByVal PokeIndex As Integer) Private Shared Sub ShowPokemonMenu(ByVal PokeIndex As Integer)
Core.SetScreen(New BattlePokemonInfoScreen(Core.CurrentScreen, PokeIndex, AddressOf SwitchPokemonTo, TempBattleScreen)) Core.SetScreen(New BattlePokemonInfoScreen(Core.CurrentScreen, PokeIndex, AddressOf SwitchPokemonTo, TempBattleScreen))
@ -992,7 +1000,11 @@
TempItemID = itemID TempItemID = itemID
If Item.BattleSelectPokemon = True Then If Item.BattleSelectPokemon = True Then
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item, AddressOf UseItem, "Use " & Item.Name, True)) 'Core.SetScreen(New PartyScreen(Core.CurrentScreen, Item, AddressOf UseItem, "Use " & Item.Name, True))
Dim selScreen = New PartyScreen(Core.CurrentScreen, Item, AddressOf Item.UseOnPokemon, "Use " & Item.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemHandler
Core.SetScreen(selScreen)
Else Else
UseItem(0) UseItem(0)
End If End If
@ -1002,6 +1014,10 @@
Shared TempItemID As Integer = -1 Shared TempItemID As Integer = -1
Private Shared Sub UseItemhandler(ByVal params As Object())
UseItem(CInt(params(0)))
End Sub
Private Shared Sub UseItem(ByVal PokeIndex As Integer) Private Shared Sub UseItem(ByVal PokeIndex As Integer)
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)

View File

@ -109,7 +109,10 @@
If Controls.Accept(True, True, True) = True Then If Controls.Accept(True, True, True) = True Then
If _chooseIndex = 0 Then If _chooseIndex = 0 Then
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf Me.ChoosePokemon, "Choose Pokémon to battle:", False)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf ChoosePokemon, "Choose Pokémon to battle!", False) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf ChoosePokemonHandler
Core.SetScreen(selScreen)
Else Else
_ready = True _ready = True
End If End If
@ -118,6 +121,9 @@
Dim TempScreen As BattleScreen Dim TempScreen As BattleScreen
Private Sub ChoosePokemonHandler(ByVal params As Object())
ChoosePokemon(CInt(params(0)))
End Sub
Private Sub ChoosePokemon(ByVal PokeIndex As Integer) Private Sub ChoosePokemon(ByVal PokeIndex As Integer)
TempScreen.Battle.SwitchOutOwn(TempScreen, PokeIndex, insertIndex) TempScreen.Battle.SwitchOutOwn(TempScreen, PokeIndex, insertIndex)
Me._ready = True Me._ready = True

View File

@ -716,8 +716,11 @@
Core.SetScreen(New SelectFriendScreen(Me)) Core.SetScreen(New SelectFriendScreen(Me))
End If End If
If New Rectangle(100, 300, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(100, 300, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
Core.SetScreen(New ChoosePokemonScreen(Me, Item.GetItemByID(5), AddressOf ChosenPokemon, "Choose Pokémon to trade", True, True, False)) Dim selScreen = New PartyScreen(Me, Item.GetItemByID(5), AddressOf ChosenPokemon, "Choose Pokémon for Trade", True, True, False) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
CType(Core.CurrentScreen, ChoosePokemonScreen).CanChooseHMPokemon = False AddHandler selScreen.SelectedObject, AddressOf ChosenPokemonHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False
End If End If
If New Rectangle(700, 540, 32 * 3 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(700, 540, 32 * 3 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
Me.GTSSetupScreen.loaded = False Me.GTSSetupScreen.loaded = False
@ -739,6 +742,10 @@
End If End If
End Sub End Sub
Private Sub ChosenPokemonHandler(ByVal params As Object())
ChosenPokemon(CInt(params(0)))
End Sub
Private Sub ChosenPokemon(ByVal PokeIndex As Integer) Private Sub ChosenPokemon(ByVal PokeIndex As Integer)
If Me.PokeIndex = -1 And NewTrade = False Then If Me.PokeIndex = -1 And NewTrade = False Then
LoadedPokemon = D.Pokemon LoadedPokemon = D.Pokemon

View File

@ -44,7 +44,11 @@
If Controls.Accept(True, False) = True Then If Controls.Accept(True, False) = True Then
If New Rectangle(180, 560, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(180, 560, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
Core.SetScreen(New ChoosePokemonScreen(Me, Item.GetItemByID(5), AddressOf ChosePokemon, "Chose Pokémon to trade!", True))
Dim selScreen = New PartyScreen(Me, Item.GetItemByID(5), AddressOf ChosePokemon, "Choose Pokémon to trade", True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf ChosePokemonHandler
Core.SetScreen(selScreen)
End If End If
If New Rectangle(180, 510, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(180, 510, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
PokeIndex = -1 PokeIndex = -1
@ -64,6 +68,10 @@
End If End If
End Sub End Sub
Private Sub ChosePokemonHandler(ByVal params As Object())
ChosePokemon(CInt(params(0)))
End Sub
Private Sub ChosePokemon(ByVal PokeIndex As Integer) Private Sub ChosePokemon(ByVal PokeIndex As Integer)
Me.PokeIndex = PokeIndex Me.PokeIndex = PokeIndex
End Sub End Sub

View File

@ -202,8 +202,11 @@
If Me.OpenedSelect = True Then If Me.OpenedSelect = True Then
Me.CloseScreen() Me.CloseScreen()
Else Else
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf Me.SelectPokemonForTrade, "Choose Pokémon for Trade", True, True, False)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf SelectPokemonForTrade, "Choose Pokémon for Trade", True, False, False) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
CType(Core.CurrentScreen, ChoosePokemonScreen).CanChooseHMPokemon = False AddHandler selScreen.SelectedObject, AddressOf SelectPokemonForTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False
Me.OpenedSelect = True Me.OpenedSelect = True
End If End If
Else Else
@ -243,6 +246,9 @@
End Select End Select
End Sub End Sub
Private Sub SelectPokemonForTradeHandler(ByVal params As Object())
SelectPokemonForTrade(CInt(params(0)))
End Sub
Private Sub SelectPokemonForTrade(ByVal pokeIndex As Integer) Private Sub SelectPokemonForTrade(ByVal pokeIndex As Integer)
Me.SelectedPokemonIndex = pokeIndex Me.SelectedPokemonIndex = pokeIndex
Me.SelectedPokemon = Core.Player.Pokemons(pokeIndex) Me.SelectedPokemon = Core.Player.Pokemons(pokeIndex)

View File

@ -288,12 +288,19 @@
Case 0 Case 0
Me.StartTrade() Me.StartTrade()
Case 1 Case 1
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf Me.SelectPokemonForTrade, "Choose Pokémon for Trade", True, False, False)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf SelectPokemonForTrade, "Choose Pokémon for Trade", True, False, False) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
CType(Core.CurrentScreen, ChoosePokemonScreen).CanChooseHMPokemon = False AddHandler selScreen.SelectedObject, AddressOf SelectPokemonForTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False
Case 2 Case 2
Me.QuitTrade() Me.QuitTrade()
End Select End Select
End Sub End Sub
Private Sub SelectPokemonForTradeHandler(ByVal params As Object())
SelectPokemonForTrade(CInt(params(0)))
End Sub
Private Sub QuitTrade() Private Sub QuitTrade()
Core.ServersManager.ServerConnection.SendPackage(New Servers.Package(Servers.Package.PackageTypes.TradeQuit, Core.ServersManager.ID, Servers.Package.ProtocolTypes.TCP, PartnerNetworkID.ToString())) Core.ServersManager.ServerConnection.SendPackage(New Servers.Package(Servers.Package.PackageTypes.TradeQuit, Core.ServersManager.ID, Servers.Package.ProtocolTypes.TCP, PartnerNetworkID.ToString()))

View File

@ -286,10 +286,17 @@
Private Sub StartBattle() Private Sub StartBattle()
If Not Me.OwnTeam Is Nothing And Not OppTeam Is Nothing Then If Not Me.OwnTeam Is Nothing And Not OppTeam Is Nothing Then
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf LeadPickedStart, "Choose your lead.", True, True, False, _pokemonList:=OwnTeam)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf LeadPickedStart, "Choose your Lead", True, True, False, _pokemonList:=OwnTeam) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf LeadPickedStartHandler
Core.SetScreen(selScreen)
End If End If
End Sub End Sub
Public Sub LeadPickedStartHandler(ByVal params As Object())
LeadPickedStart(CInt(params(0)))
End Sub
Private Sub LeadPickedStart(ByVal index As Integer) Private Sub LeadPickedStart(ByVal index As Integer)
BattleSystem.BattleScreen.OwnLeadIndex = index BattleSystem.BattleScreen.OwnLeadIndex = index
Core.ServersManager.ServerConnection.SendPackage(New Servers.Package(Servers.Package.PackageTypes.BattleOffer, Core.ServersManager.ServerConnection.SendPackage(New Servers.Package(Servers.Package.PackageTypes.BattleOffer,

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,14 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) If CBool(GameModeManager.GetGameRuleValue("CanUseHealItem", "1")) = False Then
Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub
End If
Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -14,7 +14,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -18,7 +18,10 @@ Namespace Items.Medicine
Screen.TextBox.Show("Cannot use heal items.", {}, False, False) Screen.TextBox.Show("Cannot use heal items.", {}, False, False)
Exit Sub Exit Sub
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -26,9 +26,7 @@ Namespace Items
End If End If
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
Else Else
If Pokemon.HP = Pokemon.MaxHP Then If Pokemon.HP = Pokemon.MaxHP Then
@ -41,13 +39,11 @@ Namespace Items
Pokemon.Heal(HP) Pokemon.Heal(HP)
Screen.TextBox.reDelay = 0.0F Dim t As String = "Restored " & Pokemon.GetDisplayName() & "'s HP by " & diff & "."
Dim t As String = "Restored " & Pokemon.GetDisplayName() & "'s~HP by " & diff & "."
t &= RemoveItem() t &= RemoveItem()
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
Return True Return True
@ -67,27 +63,23 @@ Namespace Items
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Poison Or Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.BadPoison Then ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Poison Or Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.BadPoison Then
Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None
Screen.TextBox.reDelay = 0.0F
Dim t As String = "Cures the poison of " & Pokemon.GetDisplayName() & "." Dim t As String = "Cures the poison of " & Pokemon.GetDisplayName() & "."
t &= RemoveItem() t &= RemoveItem()
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
Return True Return True
Else Else
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is not poisoned.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " is not poisoned.", {})
Return False Return False
End If End If
End Function End Function
@ -104,26 +96,23 @@ Namespace Items
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Sleep Then ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Sleep Then
Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None
Screen.TextBox.reDelay = 0.0F
Dim t As String = "Cures the sleep of " & Pokemon.GetDisplayName() & "." Dim t As String = "Cures the sleep of " & Pokemon.GetDisplayName() & "."
t &= RemoveItem() t &= RemoveItem()
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
Return True Return True
Else Else
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is not asleep.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " is not asleep.", {})
Return False Return False
End If End If
@ -141,26 +130,23 @@ Namespace Items
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Burn Then ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Burn Then
Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None
Screen.TextBox.reDelay = 0.0F
Dim t As String = "Cures the burn of " & Pokemon.GetDisplayName() & "." Dim t As String = "Cures the burn of " & Pokemon.GetDisplayName() & "."
t &= RemoveItem() t &= RemoveItem()
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
Return True Return True
Else Else
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is not burned.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " is not burned.", {})
Return False Return False
End If End If
@ -178,28 +164,25 @@ Namespace Items
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Freeze Then ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Freeze Then
Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None
Core.Player.Inventory.RemoveItem(Me.ID, 1) Core.Player.Inventory.RemoveItem(Me.ID, 1)
Screen.TextBox.reDelay = 0.0F
Dim t As String = "Cures the ice of " & Pokemon.GetDisplayName() & "." Dim t As String = "Cures the ice of " & Pokemon.GetDisplayName() & "."
t &= RemoveItem() t &= RemoveItem()
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
Return True Return True
Else Else
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is not frozen.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " is not frozen.", {})
Return False Return False
End If End If
@ -217,28 +200,25 @@ Namespace Items
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then If Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Fainted Then
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is fainted!")
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
Return False Return False
ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Paralyzed Then ElseIf Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.Paralyzed Then
Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None Pokemon.Status = net.Pokemon3D.Game.Pokemon.StatusProblems.None
Core.Player.Inventory.RemoveItem(Me.ID, 1) Core.Player.Inventory.RemoveItem(Me.ID, 1)
Screen.TextBox.reDelay = 0.0F
Dim t As String = "Cures the paralyzis~of " & Pokemon.GetDisplayName() & "." Dim t As String = "Cures the paralysis of " & Pokemon.GetDisplayName() & "."
t &= RemoveItem() t &= RemoveItem()
SoundManager.PlaySound("single_heal", False) SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}) CType(CurrentScreen, PartyScreen).ShowMessage(t)
PlayerStatistics.Track("[17]Medicine Items used", 1) PlayerStatistics.Track("[17]Medicine Items used", 1)
Return True Return True
Else Else
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " is not paralyzed.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " is not~paralyzed.", {})
Return False Return False
End If End If

View File

@ -14,7 +14,10 @@ Namespace Items.Standard
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -8,7 +8,10 @@ Namespace Items
Public Overrides ReadOnly Property PokeDollarPrice As Integer = 2100 Public Overrides ReadOnly Property PokeDollarPrice As Integer = 2100
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -92,8 +92,11 @@
Public Overrides Sub Use() Public Overrides Sub Use()
SoundManager.PlaySound("PC\pc_logon", False) SoundManager.PlaySound("PC\pc_logon", False)
SetScreen(New ChoosePokemonScreen(CurrentScreen, Me, AddressOf UseOnPokemon, "Teach " & Attack.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
CType(CurrentScreen, ChoosePokemonScreen).SetupLearnAttack(Attack, 1, Me) AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
CType(CurrentScreen, PartyScreen).SetupLearnAttack(Attack, 1, Me)
End Sub End Sub
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean

View File

@ -12,7 +12,10 @@ Namespace Items
Public Overrides ReadOnly Property CanBeUsedInBattle As Boolean = False Public Overrides ReadOnly Property CanBeUsedInBattle As Boolean = False
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
''' <summary> ''' <summary>

View File

@ -13,7 +13,10 @@ Namespace Items
Public Overrides ReadOnly Property PokeDollarPrice As Integer = 3000 Public Overrides ReadOnly Property PokeDollarPrice As Integer = 3000
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me, AddressOf Me.UseOnPokemon, "Use " & Me.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
End Sub End Sub
''' <summary> ''' <summary>

View File

@ -139,7 +139,10 @@
Case OldLocalization.GetString("item_detail_screen_use") Case OldLocalization.GetString("item_detail_screen_use")
Item.Use() Item.Use()
Case OldLocalization.GetString("item_detail_screen_give") Case OldLocalization.GetString("item_detail_screen_give")
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Me.Item, AddressOf GiveItem, OldLocalization.GetString("item_detail_screen_give_item") & Me.Item.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me.Item, AddressOf GiveItem, OldLocalization.GetString("item_detail_screen_give_item") & Me.Item.Name, True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf GiveItemHandler
Core.SetScreen(selScreen)
Case OldLocalization.GetString("item_detail_screen_trash") Case OldLocalization.GetString("item_detail_screen_trash")
Core.Player.Inventory.RemoveItem(Me.Item.ID, trashValue) Core.Player.Inventory.RemoveItem(Me.Item.ID, trashValue)
Case OldLocalization.GetString("item_detail_screen_back") Case OldLocalization.GetString("item_detail_screen_back")
@ -152,6 +155,9 @@
End If End If
End If End If
End Sub End Sub
Private Sub GiveItemHandler(ByVal params As Object())
GiveItem(CInt(params(0)))
End Sub
Private Sub GiveItem(ByVal PokeIndex As Integer) Private Sub GiveItem(ByVal PokeIndex As Integer)
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex) Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)

View File

@ -281,7 +281,10 @@
If TempNewMail.MailHeader = "" Or TempNewMail.MailText = "" Or TempNewMail.MailSignature = "" Then If TempNewMail.MailHeader = "" Or TempNewMail.MailText = "" Or TempNewMail.MailSignature = "" Then
message = "Please fill in the Header, the Message and the Signature." message = "Please fill in the Header, the Message and the Signature."
Else Else
Core.SetScreen(New ChoosePokemonScreen(Me, Item.GetItemByID(TempNewMail.MailID), AddressOf Me.ChosenPokemon, "Give mail to:", True)) Dim selScreen = New PartyScreen(Me, Item.GetItemByID(TempNewMail.MailID), AddressOf Me.ChosenPokemon, "Give mail to:", True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, AddressOf ChosenPokemonHandler
Core.SetScreen(selScreen)
End If End If
Case 4 Case 4
Me.index = -1 Me.index = -1
@ -312,6 +315,10 @@
Me.TempNewMail.MailSignature = "" Me.TempNewMail.MailSignature = ""
End Sub End Sub
Private Sub ChosenPokemonHandler(ByVal params As Object())
ChosenPokemon(CInt(params(0)))
End Sub
Private Sub ChosenPokemon(ByVal PokeIndex As Integer) Private Sub ChosenPokemon(ByVal PokeIndex As Integer)
If Not Core.Player.Pokemons(PokeIndex).Item Is Nothing Then If Not Core.Player.Pokemons(PokeIndex).Item Is Nothing Then
Core.Player.Inventory.AddItem(Core.Player.Pokemons(PokeIndex).Item.ID, 1) Core.Player.Inventory.AddItem(Core.Player.Pokemons(PokeIndex).Item.ID, 1)

View File

@ -11,7 +11,7 @@ Public Class PartyScreen
''' <summary> ''' <summary>
''' Cursor index -> pointing to Pokémon (0-5). ''' Cursor index -> pointing to Pokémon (0-5).
''' </summary> ''' </summary>
Private _index As Integer = 0 Public _index As Integer = 0
Private _texture As Texture2D Private _texture As Texture2D
Private _menuTexture As Texture2D Private _menuTexture As Texture2D
@ -72,6 +72,7 @@ Public Class PartyScreen
Public LearnAttack As BattleSystem.Attack Public LearnAttack As BattleSystem.Attack
Public LearnType As Integer = 0 Public LearnType As Integer = 0
Dim moveLearnArg As Object = Nothing
Public Sub New(ByVal currentScreen As Screen, ByVal Item As Item, ByVal ChoosePokemon As DoStuff, ByVal Title As String, ByVal canExit As Boolean, ByVal canChooseFainted As Boolean, ByVal canChooseEgg As Boolean, Optional ByVal _pokemonList As List(Of Pokemon) = Nothing, Optional ByVal ChooseMode As Boolean = True) Public Sub New(ByVal currentScreen As Screen, ByVal Item As Item, ByVal ChoosePokemon As DoStuff, ByVal Title As String, ByVal canExit As Boolean, ByVal canChooseFainted As Boolean, ByVal canChooseEgg As Boolean, Optional ByVal _pokemonList As List(Of Pokemon) = Nothing, Optional ByVal ChooseMode As Boolean = True)
Me.Item = Item Me.Item = Item
@ -168,7 +169,7 @@ Public Class PartyScreen
Private Sub DrawBackground() Private Sub DrawBackground()
Dim mainBackgroundColor As Color = Color.White Dim mainBackgroundColor As Color = Color.White
If _closing Then If _closing And _messageDelay = 0 Then
mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade)) mainBackgroundColor = New Color(255, 255, 255, CInt(255 * _interfaceFade))
End If End If
@ -296,7 +297,21 @@ Public Class PartyScreen
End With End With
'HP display: 'HP display:
GetFontRenderer().DrawString(FontManager.MiniFont, p.HP & " / " & p.MaxHP, New Vector2(position.X + 110, position.Y + 50), New Color(255, 255, 255, CInt(255 * _interfaceFade))) GetFontRenderer().DrawString(FontManager.MiniFont, p.HP & " / " & p.MaxHP, New Vector2(position.X + 100, position.Y + 50), New Color(255, 255, 255, CInt(255 * _interfaceFade)))
'Able/unable display (when using TM/HM)
Dim AttackLabel As String = ""
If LearnType > 0 Then
AttackLabel = "Unable!"
Select Case LearnType
Case 1 ' Technical/Hidden Machine
If CType(moveLearnArg, Items.TechMachine).CanTeach(p) = "" Then
AttackLabel = "Able!"
End If
End Select
End If
GetFontRenderer().DrawString(FontManager.MiniFont, AttackLabel, New Vector2(position.X + 210, position.Y + 50), New Color(255, 255, 255, CInt(255 * _interfaceFade)))
End If End If
If _menu.Visible Then If _menu.Visible Then
@ -435,6 +450,11 @@ Public Class PartyScreen
If _isSwitching Then If _isSwitching Then
_isSwitching = False _isSwitching = False
Else Else
Selected = -1
If Not ExitedSub Is Nothing Then
used = True
ExitedSub(_index)
End If
_closing = True _closing = True
End If End If
End If End If
@ -464,13 +484,39 @@ Public Class PartyScreen
Select Case selectMenu.SelectedItem Select Case selectMenu.SelectedItem
Case _translation.MENU_SELECT Case _translation.MENU_SELECT
'When a Pokémon got selected in Selection Mode, raise the selected event and close the screen. 'When a Pokémon got selected in Selection Mode, raise the selected event and close the screen.
FireSelectionEvent(_index) If CanChoosePokemon(Me.PokemonList(_index)) = True Then
_closing = True Selected = _index
FireSelectionEvent(_index)
GetPokemonList()
_closing = True
Else
TextBox.Show("Cannot choose this~Pokémon.")
End If
Case _translation.MENU_SUMMARY Case _translation.MENU_SUMMARY
SetScreen(New SummaryScreen(Me, PokemonList.ToArray(), _index)) SetScreen(New SummaryScreen(Me, PokemonList.ToArray(), _index))
End Select End Select
End Sub End Sub
Private Function CanChoosePokemon(ByVal p As Pokemon) As Boolean
If Me.CanChooseFainted = False Then
If p.HP <= 0 Or p.Status = Pokemon.StatusProblems.Fainted Then
Return False
End If
End If
If Me.CanChooseEgg = False Then
If p.IsEgg() = True Then
Return False
End If
End If
If Me.CanChooseHMPokemon = False Then
If p.HasHMMove() = True Then
Return False
End If
End If
Return True
End Function
Private Sub CreateNormalMenu(ByVal selectedItem As String) Private Sub CreateNormalMenu(ByVal selectedItem As String)
Dim p As Pokemon = PokemonList(_index) Dim p As Pokemon = PokemonList(_index)
@ -962,4 +1008,10 @@ Public Class PartyScreen
End Set End Set
End Property End Property
Public Sub SetupLearnAttack(ByVal a As BattleSystem.Attack, ByVal learnType As Integer, ByVal arg As Object)
Me.LearnAttack = a
Me.LearnType = learnType
Me.moveLearnArg = arg
End Sub
End Class End Class

View File

@ -203,6 +203,10 @@
Screen.TextBox.Show(message2, {}, False, False) Screen.TextBox.Show(message2, {}, False, False)
End Sub End Sub
Public Shared Sub DoNPCTradeHandler(ByVal params As Object())
DoNPCTrade(CInt(params(0)))
End Sub
Public Shared Sub DoNPCTrade(ByVal pokeIndex As Integer) Public Shared Sub DoNPCTrade(ByVal pokeIndex As Integer)
Core.SetScreen(Core.CurrentScreen.PreScreen) Core.SetScreen(Core.CurrentScreen.PreScreen)

View File

@ -210,8 +210,12 @@
Dim splits() As String = argument.Split(CChar("|")) Dim splits() As String = argument.Split(CChar("|"))
Script.SaveNPCTrade = splits Script.SaveNPCTrade = splits
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf Script.DoNPCTrade, "Choose trade Pokémon", True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf Script.DoNPCTrade, "Choose Pokémon for trade", True) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
CType(Core.CurrentScreen, ChoosePokemonScreen).ExitedSub = AddressOf Script.ExitedNPCTrade AddHandler selScreen.SelectedObject, AddressOf Script.DoNPCTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).ExitedSub = AddressOf Script.ExitedNPCTrade
CanContinue = False CanContinue = False
Case "hide" Case "hide"
@ -331,7 +335,11 @@
End If End If
End If End If
Core.SetScreen(New ChoosePokemonScreen(Core.CurrentScreen, New Items.Balls.Pokeball, Nothing, "Choose Pokémon", canExit, canChooseFainted, canChooseEgg)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), Nothing, "Choose Pokémon", canExit, canChooseFainted, canChooseEgg) With {.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection, .CanExit = True}
AddHandler selScreen.SelectedObject, Nothing
Core.SetScreen(selScreen)
CanContinue = False CanContinue = False
Case "selectmove" Case "selectmove"

View File

@ -166,7 +166,7 @@
Return ReturnBoolean(has) Return ReturnBoolean(has)
Case "selected" Case "selected"
Return ChoosePokemonScreen.Selected Return PartyScreen.Selected
Case "selectedmove" Case "selectedmove"
Return ChooseAttackScreen.Selected Return ChooseAttackScreen.Selected
Case "hasegg" Case "hasegg"