mirror of
https://github.com/P3D-Legacy/P3D-Legacy.git
synced 2025-09-01 23:28:37 +02:00
fixed fake-out/first impression working on 2 turns fixed protecting move breaking messages fixed trapping/binding moves and abilities fixed flinch message popping up unnecessarily updated natural gift BP calculation updated some moves' contest category and other stats added roseli, kee, maranga berry effects added alolan pokemon abilities added smacking down effect added terrain as well as its effects replaced polkadot bow (no use) with berserk gene other minor fixes such as typos, captalizations wrapping up other commits
65 lines
2.6 KiB
VB.net
65 lines
2.6 KiB
VB.net
Namespace Items.Medicine
|
|
|
|
<Item(152, "Pewter Crunchies")>
|
|
Public Class PewterCrunchies
|
|
|
|
Inherits MedicineItem
|
|
|
|
Public Overrides ReadOnly Property IsHealingItem As Boolean = True
|
|
Public Overrides ReadOnly Property Description As String = "Pewter City's famous crunchy snack. They can be used to heal all status conditions of a single Pokémon."
|
|
Public Overrides ReadOnly Property PokeDollarPrice As Integer = 250
|
|
|
|
Public Sub New()
|
|
_textureRectangle = New Rectangle(96, 312, 24, 24)
|
|
End Sub
|
|
|
|
Public Overrides Sub Use()
|
|
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
|
|
|
|
Public Overrides Function UseOnPokemon(ByVal PokeIndex As Integer) As Boolean
|
|
Dim Pokemon As Pokemon = Core.Player.Pokemons(PokeIndex)
|
|
|
|
If Pokemon.Status = P3D.Pokemon.StatusProblems.Fainted Then
|
|
Screen.TextBox.reDelay = 0.0F
|
|
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fainted!", {})
|
|
|
|
Return False
|
|
Else
|
|
If Pokemon.Status <> P3D.Pokemon.StatusProblems.None Or Pokemon.HasVolatileStatus(P3D.Pokemon.VolatileStatus.Confusion) = True Then
|
|
Pokemon.Status = P3D.Pokemon.StatusProblems.None
|
|
|
|
If Pokemon.HasVolatileStatus(P3D.Pokemon.VolatileStatus.Confusion) = True Then
|
|
Pokemon.RemoveVolatileStatus(P3D.Pokemon.VolatileStatus.Confusion)
|
|
End If
|
|
|
|
Screen.TextBox.reDelay = 0.0F
|
|
|
|
Dim t As String = Pokemon.GetDisplayName() & "~gets healed up!"
|
|
t &= RemoveItem()
|
|
|
|
SoundManager.PlaySound("single_heal", False)
|
|
Screen.TextBox.Show(t, {})
|
|
PlayerStatistics.Track("[17]Medicine Items used", 1)
|
|
|
|
Return True
|
|
Else
|
|
Screen.TextBox.reDelay = 0.0F
|
|
Screen.TextBox.Show(Pokemon.GetDisplayName() & "~is fully healed!", {}, True, True)
|
|
|
|
Return False
|
|
End If
|
|
End If
|
|
End Function
|
|
|
|
End Class
|
|
|
|
End Namespace
|