P3D-Legacy/P3D/Pokemon/Items/Berries/LeppaBerry.vb

50 lines
1.9 KiB
VB.net

Namespace Items.Berries
<Item(2005, "Leppa")>
Public Class LeppaBerry
Inherits Berry
Public Sub New()
MyBase.New(14400, "A Berry to be consumed by a Pokémon. If a Pokémon holds one, it can restore 10 PP to a depleted move during battle.", "2.8cm", "Very Hard", 2, 3)
Me.Spicy = 10
Me.Dry = 0
Me.Sweet = 10
Me.Bitter = 10
Me.Sour = 10
Me.Type = Element.Types.Fighting
Me.Power = 80
End Sub
Public Overrides Sub Use()
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
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
Core.SetScreen(New ChooseAttackScreen(Core.CurrentScreen, Core.Player.Pokemons(PokeIndex), True, True, AddressOf UseOnAttack))
Return True
End Function
Private Sub UseOnAttack(ByVal Pokemon As Pokemon, ByVal AttackIndex As Integer)
If Pokemon.Attacks(AttackIndex).CurrentPP < Pokemon.Attacks(AttackIndex).MaxPP Then
Pokemon.Attacks(AttackIndex).CurrentPP = CInt(MathHelper.Clamp(Pokemon.Attacks(AttackIndex).CurrentPP + 10, 0, Pokemon.Attacks(AttackIndex).MaxPP))
Dim t As String = "Restored PP of~" & Pokemon.Attacks(AttackIndex).Name & "."
t &= RemoveItem()
SoundManager.PlaySound("single_heal", False)
Screen.TextBox.Show(t, {}, True, True)
Else
Screen.TextBox.Show("The move already has~full PP.", {}, True, True)
End If
End Sub
End Class
End Namespace