50 lines
1.9 KiB
VB.net
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
|