Updated the new GUI to the latest state of the cool_menus_experiment branch.

This commit is contained in:
CaptainSegis 2017-08-11 02:01:17 -05:00
parent b4e2375244
commit f200cbaa48
69 changed files with 375 additions and 127 deletions

View File

@ -1661,7 +1661,6 @@
<Compile Include="Screens\BattleIntroScreen.vb" /> <Compile Include="Screens\BattleIntroScreen.vb" />
<Compile Include="Screens\Battle\BattleCatchScreen.vb" /> <Compile Include="Screens\Battle\BattleCatchScreen.vb" />
<Compile Include="Screens\Battle\BattleGrowStatsScreen.vb" /> <Compile Include="Screens\Battle\BattleGrowStatsScreen.vb" />
<Compile Include="Screens\Battle\BattlePokemonInfoScreen.vb" />
<Compile Include="Screens\Battle\BlackOutScreen.vb" /> <Compile Include="Screens\Battle\BlackOutScreen.vb" />
<Compile Include="Screens\Credits\CreditsCamera.vb" /> <Compile Include="Screens\Credits\CreditsCamera.vb" />
<Compile Include="Screens\Credits\CreditsScreen.vb" /> <Compile Include="Screens\Credits\CreditsScreen.vb" />
@ -1672,8 +1671,6 @@
<Compile Include="Screens\GUI\ISelectionScreen.vb" /> <Compile Include="Screens\GUI\ISelectionScreen.vb" />
<Compile Include="Screens\HistoryScreen.vb" /> <Compile Include="Screens\HistoryScreen.vb" />
<Compile Include="Screens\Inventory\ApricornScreen.vb" /> <Compile Include="Screens\Inventory\ApricornScreen.vb" />
<Compile Include="Screens\Inventory\ChoosePokemonScreen.vb" />
<Compile Include="Screens\Inventory\InventoryScreen.vb" />
<Compile Include="Screens\Inventory\ItemDetailScreen.vb" /> <Compile Include="Screens\Inventory\ItemDetailScreen.vb" />
<Compile Include="Screens\Inventory\NewInventoryScreen.vb" /> <Compile Include="Screens\Inventory\NewInventoryScreen.vb" />
<Compile Include="Screens\Inventory\PokegearScreen.vb" /> <Compile Include="Screens\Inventory\PokegearScreen.vb" />
@ -1689,7 +1686,6 @@
<Compile Include="Screens\MapPreview\MapPreviewCamera.vb" /> <Compile Include="Screens\MapPreview\MapPreviewCamera.vb" />
<Compile Include="Screens\MapPreview\MapPreviewScreen.vb" /> <Compile Include="Screens\MapPreview\MapPreviewScreen.vb" />
<Compile Include="Screens\MapScreen.vb" /> <Compile Include="Screens\MapScreen.vb" />
<Compile Include="Screens\MenuScreen.vb" />
<Compile Include="Screens\NewGameScreen.vb" /> <Compile Include="Screens\NewGameScreen.vb" />
<Compile Include="Screens\NewMenuScreen.vb" /> <Compile Include="Screens\NewMenuScreen.vb" />
<Compile Include="Screens\NewTrainerScreen.vb" /> <Compile Include="Screens\NewTrainerScreen.vb" />
@ -1708,9 +1704,6 @@
<Compile Include="Screens\Pokemon\LearnAttackScreen.vb" /> <Compile Include="Screens\Pokemon\LearnAttackScreen.vb" />
<Compile Include="Screens\Pokemon\NameObjectScreen.vb" /> <Compile Include="Screens\Pokemon\NameObjectScreen.vb" />
<Compile Include="Screens\Pokemon\PartyScreen.vb" /> <Compile Include="Screens\Pokemon\PartyScreen.vb" />
<Compile Include="Screens\Pokemon\PokemonScreen.vb" />
<Compile Include="Screens\Pokemon\PokemonScreenV2.vb" />
<Compile Include="Screens\Pokemon\PokemonStatusScreen.vb" />
<Compile Include="Screens\Pokemon\SummaryScreen.vb" /> <Compile Include="Screens\Pokemon\SummaryScreen.vb" />
<Compile Include="Screens\Pokemon\TeachMovesScreen.vb" /> <Compile Include="Screens\Pokemon\TeachMovesScreen.vb" />
<Compile Include="Screens\SaveScreen.vb" /> <Compile Include="Screens\SaveScreen.vb" />
@ -1718,7 +1711,6 @@
<Compile Include="Screens\StatisticsScreen.vb" /> <Compile Include="Screens\StatisticsScreen.vb" />
<Compile Include="Screens\testWindowScreen.vb" /> <Compile Include="Screens\testWindowScreen.vb" />
<Compile Include="Screens\TradeScreen.vb" /> <Compile Include="Screens\TradeScreen.vb" />
<Compile Include="Screens\TrainerScreen.vb" />
<Compile Include="Screens\TransitionScreen.vb" /> <Compile Include="Screens\TransitionScreen.vb" />
<Compile Include="Screens\WindowScreen.vb" /> <Compile Include="Screens\WindowScreen.vb" />
<Compile Include="Security\FileValidation.vb" /> <Compile Include="Security\FileValidation.vb" />

View File

@ -692,14 +692,24 @@
Private Sub MainMenuOpenPokemon(ByVal BattleScreen As BattleScreen) Private Sub MainMenuOpenPokemon(ByVal BattleScreen As BattleScreen)
TempBattleScreen = BattleScreen TempBattleScreen = BattleScreen
Core.SetScreen(New PartyScreen(Core.CurrentScreen, Item.GetItemByID(5), AddressOf ShowPokemonMenu, "Choose Pokémon", True))
CType(Core.CurrentScreen, PartyScreen)._index = BattleScreen.OwnPokemonIndex Player.Temp.PokemonScreenIndex = 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)
End Sub End Sub
Private Sub MainMenuOpenBag(ByVal BattleScreen As BattleScreen) Private Sub MainMenuOpenBag(ByVal BattleScreen As BattleScreen)
If BattleScreen.CanUseItems = True Then If BattleScreen.CanUseItems = True Then
TempBattleScreen = BattleScreen TempBattleScreen = BattleScreen
Core.SetScreen(New NewInventoryScreen(Core.CurrentScreen, {}, AddressOf SelectedItem)) Dim selScreen As New NewInventoryScreen(Core.CurrentScreen)
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
selScreen.CanExit = True
AddHandler selScreen.SelectedObject, AddressOf SelectedItemHandler
Core.SetScreen(selScreen)
End If End If
End Sub End Sub
@ -908,9 +918,12 @@
#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)) SwitchPokemonTo(PokeIndex)
End Sub End Sub
Private Shared Sub SwitchPokemonTo(ByVal PokeIndex As Integer) Private Shared Sub SwitchPokemonTo(ByVal PokeIndex As Integer)
@ -953,6 +966,10 @@
#Region "UseItem" #Region "UseItem"
Private Shared Sub SelectedItemHandler(ByVal params As Object())
SelectedItem(CInt(params(0)))
End Sub
Private Shared Sub SelectedItem(ByVal itemID As Integer) Private Shared Sub SelectedItem(ByVal itemID As Integer)
Dim Item As Item = Item.GetItemByID(itemID) Dim Item As Item = Item.GetItemByID(itemID)
@ -982,7 +999,11 @@
TempItemID = itemID TempItemID = itemID
If Item.BattleSelectPokemon = True Then If Item.BattleSelectPokemon = True Then
Core.SetScreen(New PartyScreen(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
@ -992,6 +1013,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 PartyScreen(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,10 @@
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

@ -25,10 +25,19 @@
Public Overrides Sub ResultFunction(ByVal Result As Integer) Public Overrides Sub ResultFunction(ByVal Result As Integer)
If Result = 0 Then If Result = 0 Then
Core.SetScreen(New NewInventoryScreen(Core.CurrentScreen, {4}, 4, AddressOf Me.PlantBerry)) Dim selScreen As New NewInventoryScreen(Core.CurrentScreen, {2}, 2, Nothing)
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
selScreen.CanExit = True
AddHandler selScreen.SelectedObject, AddressOf PlantBerryHandler
Core.SetScreen(selScreen)
End If End If
End Sub End Sub
Public Sub PlantBerryHandler(ByVal params As Object())
PlantBerry(CInt(params(0)))
End Sub
Public Sub PlantBerry(ByVal ChosenBerry As Integer) Public Sub PlantBerry(ByVal ChosenBerry As Integer)
Dim testItem As Item = Item.GetItemByID(ChosenBerry) Dim testItem As Item = Item.GetItemByID(ChosenBerry)
If testItem.isBerry = True Then If testItem.isBerry = True Then

View File

@ -716,7 +716,10 @@
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 PartyScreen(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}
AddHandler selScreen.SelectedObject, AddressOf ChosenPokemonHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False 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
@ -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,13 +44,18 @@
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 PartyScreen(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
End If End If
If New Rectangle(780, 560, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(780, 560, 32 * 5 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
Core.SetScreen(New PokemonStatusScreen(Me, 0, {D.Pokemon}, D.Pokemon, False)) Core.SetScreen(New SummaryScreen(Me, {D.Pokemon}, 0))
''Core.SetScreen(New PokemonStatusScreen(Me, 0, {D.Pokemon}, D.Pokemon, False))
End If End If
If New Rectangle(520, 560, 32 * 3 + 64, 32).Contains(MouseHandler.MousePosition) = True Then If New Rectangle(520, 560, 32 * 3 + 64, 32).Contains(MouseHandler.MousePosition) = True Then
If MeetsCondition() = True Then If MeetsCondition() = True Then
@ -64,6 +69,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,7 +202,10 @@
If Me.OpenedSelect = True Then If Me.OpenedSelect = True Then
Me.CloseScreen() Me.CloseScreen()
Else Else
Core.SetScreen(New PartyScreen(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}
AddHandler selScreen.SelectedObject, AddressOf SelectPokemonForTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False
Me.OpenedSelect = True Me.OpenedSelect = True
End If End If
@ -243,6 +246,10 @@
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,8 +288,12 @@
Case 0 Case 0
Me.StartTrade() Me.StartTrade()
Case 1 Case 1
Core.SetScreen(New PartyScreen(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}
AddHandler selScreen.SelectedObject, AddressOf SelectPokemonForTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False CType(Core.CurrentScreen, PartyScreen).CanChooseHMPokemon = False
Case 2 Case 2
Me.QuitTrade() Me.QuitTrade()
End Select End Select
@ -314,6 +318,10 @@
End If End If
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)
If pokeIndex > -1 Then If pokeIndex > -1 Then
Me.OfferPokemon = Core.Player.Pokemons(pokeIndex) Me.OfferPokemon = Core.Player.Pokemons(pokeIndex)

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 PartyScreen(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

@ -173,7 +173,7 @@ Public Class OverworldScreen
If ActionScript.IsReady = True Then If ActionScript.IsReady = True Then
If MouseHandler.ButtonPressed(MouseHandler.MouseButtons.MiddleButton) = True Or ControllerHandler.ButtonPressed(Buttons.LeftStick) = True Then If MouseHandler.ButtonPressed(MouseHandler.MouseButtons.MiddleButton) = True Or ControllerHandler.ButtonPressed(Buttons.LeftStick) = True Then
If Core.Player.Pokemons.Count > 0 Then If Core.Player.Pokemons.Count > 0 Then
Core.SetScreen(New PokemonStatusScreen(Core.CurrentScreen, 0, {}, Core.Player.Pokemons(0), True)) Core.SetScreen(New SummaryScreen(CurrentScreen, Core.Player.Pokemons.ToArray, 0))
End If End If
End If End If
End If End If

View File

@ -19,7 +19,10 @@ Namespace Items.Berries
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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

@ -25,7 +25,10 @@ Namespace Items.Berries
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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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

@ -200,6 +200,10 @@ Public MustInherit Class Item
Logger.Debug("PLACEHOLDER FOR ITEM USE") Logger.Debug("PLACEHOLDER FOR ITEM USE")
End Sub End Sub
Public Sub UseItemhandler(ByVal params As Object())
UseOnPokemon(CInt(params(0)))
End Sub
''' <summary> ''' <summary>
''' A method that gets used when the item is applied to a Pokémon. Returns True if the action was successful. ''' A method that gets used when the item is applied to a Pokémon. Returns True if the action was successful.
''' </summary> ''' </summary>

View File

@ -13,7 +13,10 @@ Namespace Items.Medicine
End Sub End Sub
Public Overrides Sub Use() Public Overrides Sub Use()
Core.SetScreen(New PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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 PartyScreen(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,14 +26,11 @@ 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
Screen.TextBox.reDelay = 0.0F CType(CurrentScreen, PartyScreen).ShowMessage(Pokemon.GetDisplayName() & " has full HP already.")
Screen.TextBox.Show(Pokemon.GetDisplayName() & " has full~HP already.", {})
Return False Return False
Else Else
@ -42,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
@ -68,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
@ -105,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
@ -142,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
@ -179,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
@ -218,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 PartyScreen(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 PartyScreen(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,7 +92,10 @@
Public Overrides Sub Use() Public Overrides Sub Use()
SoundManager.PlaySound("PC\pc_logon", False) SoundManager.PlaySound("PC\pc_logon", False)
SetScreen(New PartyScreen(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}
AddHandler selScreen.SelectedObject, AddressOf UseItemhandler
Core.SetScreen(selScreen)
CType(CurrentScreen, PartyScreen).SetupLearnAttack(Attack, 1, Me) CType(CurrentScreen, PartyScreen).SetupLearnAttack(Attack, 1, Me)
End Sub End Sub

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 PartyScreen(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 PartyScreen(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 Localization.GetString("item_detail_screen_use") Case Localization.GetString("item_detail_screen_use")
Item.Use() Item.Use()
Case Localization.GetString("item_detail_screen_give") Case Localization.GetString("item_detail_screen_give")
Core.SetScreen(New PartyScreen(Core.CurrentScreen, Me.Item, AddressOf GiveItem, Localization.GetString("item_detail_screen_give_item") & Me.Item.Name, True)) Dim selScreen = New PartyScreen(Core.CurrentScreen, Me.Item, AddressOf GiveItem, Localization.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 Localization.GetString("item_detail_screen_trash") Case Localization.GetString("item_detail_screen_trash")
Core.Player.Inventory.RemoveItem(Me.Item.ID, trashValue) Core.Player.Inventory.RemoveItem(Me.Item.ID, trashValue)
Case Localization.GetString("item_detail_screen_back") Case Localization.GetString("item_detail_screen_back")
@ -153,6 +156,10 @@
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

@ -219,7 +219,12 @@
If Controls.Accept(True, True, True) = True Then If Controls.Accept(True, True, True) = True Then
If Me.selectIndex = 0 Then If Me.selectIndex = 0 Then
Core.SetScreen(New NewInventoryScreen(Me, {5}, 5, AddressOf Me.ChosenMail)) Dim selScreen As New NewInventoryScreen(Core.CurrentScreen, {5}, 5, Nothing)
selScreen.Mode = Screens.UI.ISelectionScreen.ScreenMode.Selection
selScreen.CanExit = True
AddHandler selScreen.SelectedObject, AddressOf ChosenMailHandler
Core.SetScreen(selScreen)
Else Else
If Me.index = Me.selectIndex Then If Me.index = Me.selectIndex Then
Me.index = -1 Me.index = -1
@ -275,7 +280,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 PartyScreen(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
@ -288,6 +296,10 @@
End If End If
End Sub End Sub
Private Sub ChosenMailHandler(ByVal params As Object())
ChosenMail(CInt(params(0)))
End Sub
Private Sub ChosenMail(ByVal ItemID As Integer) Private Sub ChosenMail(ByVal ItemID As Integer)
Me.index = 0 Me.index = 0
Me.EditMailIndex = 0 Me.EditMailIndex = 0
@ -302,6 +314,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

@ -1007,14 +1007,14 @@ Public Class StorageSystemScreen
Private Sub SummaryPokemon() Private Sub SummaryPokemon()
If CursorPosition.X = 6 Then If CursorPosition.X = 6 Then
Core.SetScreen(New PokemonStatusScreen(Core.CurrentScreen, CInt(CursorPosition.Y), Core.Player.Pokemons.ToArray(), Core.Player.Pokemons(CInt(CursorPosition.Y)), False)) Core.SetScreen(New SummaryScreen(Me, Core.Player.Pokemons.ToArray(), CInt(CursorPosition.Y)))
Else Else
Dim id As Integer = CInt(CursorPosition.X) + CInt((CursorPosition.Y - 1) * 6) Dim id As Integer = CInt(CursorPosition.X) + CInt((CursorPosition.Y - 1) * 6)
If GetBox(CurrentBox).IsBattleBox = True Then If GetBox(CurrentBox).IsBattleBox = True Then
id = GetBattleBoxID() id = GetBattleBoxID()
End If End If
Core.SetScreen(New PokemonStatusScreen(Core.CurrentScreen, GetBox(CurrentBox).GetPokemonList().IndexOf(GetBox(CurrentBox).Pokemon(id).GetPokemon()), GetBox(CurrentBox).GetPokemonList().ToArray(), GetBox(CurrentBox).Pokemon(id).GetPokemon(), False)) Core.SetScreen(New SummaryScreen(Me, GetBox(CurrentBox).GetPokemonList().ToArray(), GetBox(CurrentBox).GetPokemonList().IndexOf(GetBox(CurrentBox).Pokemon(id).GetPokemon())))
End If End If
End Sub End Sub

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,7 +210,11 @@
Dim splits() As String = argument.Split(CChar("|")) Dim splits() As String = argument.Split(CChar("|"))
Script.SaveNPCTrade = splits Script.SaveNPCTrade = splits
Core.SetScreen(New PartyScreen(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}
AddHandler selScreen.SelectedObject, AddressOf Script.DoNPCTradeHandler
Core.SetScreen(selScreen)
CType(Core.CurrentScreen, PartyScreen).ExitedSub = AddressOf Script.ExitedNPCTrade CType(Core.CurrentScreen, PartyScreen).ExitedSub = AddressOf Script.ExitedNPCTrade
CanContinue = False CanContinue = False
@ -331,7 +335,10 @@
End If End If
End If End If
Core.SetScreen(New PartyScreen(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"