2016-09-07 18:50:38 +02:00
Namespace BattleSystem . Moves . Dark
Public Class KnockOff
Inherits Attack
Public Sub New ( )
'#Definitions
Me . Type = New Element ( Element . Types . Dark )
Me . ID = 282
2018-08-05 03:22:22 +02:00
Me . OriginalPP = 20
Me . CurrentPP = 20
Me . MaxPP = 20
2016-09-07 18:50:38 +02:00
Me . Power = 65
Me . Accuracy = 100
Me . Category = Categories . Physical
Me . ContestCategory = ContestCategories . Smart
Me . Name = " Knock Off "
Me . Description = " The user slaps down the target's held item, and that item can't be used in that battle. The move does more damage if the target has a held item. "
Me . CriticalChance = 1
Me . IsHMMove = False
Me . Target = Targets . OneAdjacentTarget
Me . Priority = 0
Me . TimesToAttack = 1
'#End
'#SpecialDefinitions
Me . MakesContact = True
Me . ProtectAffected = True
Me . MagicCoatAffected = False
Me . SnatchAffected = False
Me . MirrorMoveAffected = True
Me . KingsrockAffected = False
Me . CounterAffected = True
Me . DisabledWhileGravity = False
Me . UseEffectiveness = True
Me . ImmunityAffected = True
Me . RemovesFrozen = False
Me . HasSecondaryEffect = False
Me . IsHealingMove = False
Me . IsRecoilMove = False
Me . IsPunchingMove = False
Me . IsDamagingMove = True
Me . IsProtectMove = False
Me . IsSoundMove = False
Me . IsAffectedBySubstitute = True
Me . IsOneHitKOMove = False
Me . IsWonderGuardAffected = True
'#End
End Sub
Public Overrides Function GetBasePower ( own As Boolean , BattleScreen As BattleScreen ) As Integer
2016-12-19 20:51:17 +01:00
Dim p As Pokemon = BattleScreen . OwnPokemon
Dim op As Pokemon = BattleScreen . OppPokemon
If own = False Then
p = BattleScreen . OppPokemon
op = BattleScreen . OwnPokemon
End If
'Conditions
If op . Item Is Nothing Then
Return Power
End If
If op . Item . IsMegaStone = True Then
Return Power
End If
If op . Ability . Name . ToLower ( ) = " multitype " AndAlso op . Item . Name . ToLower ( ) . EndsWith ( " plate " ) Then
Return Power
End If
2018-10-26 10:03:33 +02:00
If op . Ability . Name . ToLower ( ) = " rks system " AndAlso op . Item . Name . ToLower ( ) . EndsWith ( " memory " ) Then
Return Power
End If
2016-12-19 20:51:17 +01:00
If op . Item . Name . ToLower ( ) = " griseous orb " And op . Number = 487 Then
Return Power
End If
If op . Item . Name . ToLower ( ) . EndsWith ( " drive " ) = True AndAlso op . Number = 649 Then
Return Power
2016-09-07 18:50:38 +02:00
End If
2018-10-26 10:03:33 +02:00
If op . Item . Name . ToLower ( ) . EndsWith ( " mail " ) = True Then
Return Power
End If
2016-09-07 18:50:38 +02:00
2016-12-19 20:51:17 +01:00
Return CInt ( Me . Power * 1 . 5F )
2016-09-07 18:50:38 +02:00
End Function
Public Overrides Sub MoveHits ( own As Boolean , BattleScreen As BattleScreen )
Dim p As Pokemon = BattleScreen . OwnPokemon
Dim op As Pokemon = BattleScreen . OppPokemon
If own = False Then
p = BattleScreen . OppPokemon
op = BattleScreen . OwnPokemon
End If
2016-12-19 20:51:17 +01:00
'Conditions
If op . Item Is Nothing Then
Exit Sub
End If
2016-09-29 19:56:36 +02:00
If op . Item . IsMegaStone = True Then
Exit Sub
End If
2016-12-19 20:51:17 +01:00
If op . Ability . Name . ToLower ( ) = " multitype " AndAlso op . Item . Name . ToLower ( ) . EndsWith ( " plate " ) Then
Exit Sub
2016-09-07 18:50:38 +02:00
End If
2018-10-26 10:03:33 +02:00
If op . Ability . Name . ToLower ( ) = " rks system " AndAlso op . Item . Name . ToLower ( ) . EndsWith ( " memory " ) Then
Exit Sub
End If
2016-12-19 20:51:17 +01:00
If op . Item . Name . ToLower ( ) = " griseous orb " And op . Number = 487 Then
Exit Sub
End If
If op . Item . Name . ToLower ( ) . EndsWith ( " drive " ) = True AndAlso p . Number = 649 Then
Exit Sub
End If
2018-10-26 10:03:33 +02:00
If op . Item . Name . ToLower ( ) . EndsWith ( " mail " ) = True Then
Exit Sub
End If
2016-12-19 20:51:17 +01:00
op . OriginalItem = Item . GetItemByID ( op . Item . ID )
op . OriginalItem . AdditionalData = op . Item . AdditionalData
BattleScreen . Battle . RemoveHeldItem ( Not own , own , BattleScreen , p . GetDisplayName ( ) & " knocked off the " & op . GetDisplayName ( ) & " 's " & op . OriginalItem . Name & " ! " , " move:knockoff " )
2016-09-07 18:50:38 +02:00
End Sub
End Class
End Namespace