Fixed sec. effect values (normal)
This commit is contained in:
parent
11b17c6849
commit
f4342cdc0b
|
@ -1,92 +1,92 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Bind
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 20
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 15
|
||||
Me.Accuracy = 85
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Bind"
|
||||
Me.Description = "Things such as long bodies or tentacles are used to bind and squeeze the target for four to five turns."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Trap
|
||||
End Sub
|
||||
|
||||
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
|
||||
|
||||
Dim turns As Integer = 4
|
||||
If Core.Random.Next(0, 100) < 50 Then
|
||||
turns = 5
|
||||
End If
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "grip claw" And BattleScreen.FieldEffects.CanUseItem(own) = True And BattleScreen.FieldEffects.CanUseOwnItem(own, BattleScreen) = True Then
|
||||
turns = 5
|
||||
End If
|
||||
End If
|
||||
|
||||
If own = True Then
|
||||
If BattleScreen.FieldEffects.OppBind = 0 Then
|
||||
BattleScreen.FieldEffects.OppBind = turns
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
|
||||
End If
|
||||
Else
|
||||
If BattleScreen.FieldEffects.OwnBind = 0 Then
|
||||
BattleScreen.FieldEffects.OwnBind = turns
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Bind
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 20
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 15
|
||||
Me.Accuracy = 85
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Bind"
|
||||
Me.Description = "Things such as long bodies or tentacles are used to bind and squeeze the target for four to five turns."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Trap
|
||||
End Sub
|
||||
|
||||
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
|
||||
|
||||
Dim turns As Integer = 4
|
||||
If Core.Random.Next(0, 100) < 50 Then
|
||||
turns = 5
|
||||
End If
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "grip claw" And BattleScreen.FieldEffects.CanUseItem(own) = True And BattleScreen.FieldEffects.CanUseOwnItem(own, BattleScreen) = True Then
|
||||
turns = 5
|
||||
End If
|
||||
End If
|
||||
|
||||
If own = True Then
|
||||
If BattleScreen.FieldEffects.OppBind = 0 Then
|
||||
BattleScreen.FieldEffects.OppBind = turns
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
|
||||
End If
|
||||
Else
|
||||
If BattleScreen.FieldEffects.OwnBind = 0 Then
|
||||
BattleScreen.FieldEffects.OwnBind = turns
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,84 +1,84 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Block
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 335
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Block"
|
||||
Me.Description = "The user blocks the target's way with arms spread wide to prevent escape."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
Me.IsTrappingMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
|
||||
If own = False Then
|
||||
trapped = BattleScreen.FieldEffects.OwnTrappedCounter
|
||||
End If
|
||||
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If trapped = 0 Then
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppTrappedCounter = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnTrappedCounter = 1
|
||||
End If
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Block
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 335
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Block"
|
||||
Me.Description = "The user blocks the target's way with arms spread wide to prevent escape."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
Me.IsTrappingMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
|
||||
If own = False Then
|
||||
trapped = BattleScreen.FieldEffects.OwnTrappedCounter
|
||||
End If
|
||||
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If trapped = 0 Then
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppTrappedCounter = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnTrappedCounter = 1
|
||||
End If
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,67 +1,67 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Charm
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fairy)
|
||||
Me.ID = 204
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Charm"
|
||||
Me.Description = "The user gazes at the target rather charmingly, making it less wary. The target's Attack is harshly lowered."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.LowerAttack
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 2, "", "move:charm")
|
||||
If b = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Charm
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fairy)
|
||||
Me.ID = 204
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Charm"
|
||||
Me.Description = "The user gazes at the target rather charmingly, making it less wary. The target's Attack is harshly lowered."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.LowerAttack
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 2, "", "move:charm")
|
||||
If b = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,94 +1,94 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Covet
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 343
|
||||
Me.OriginalPP = 25
|
||||
Me.CurrentPP = 25
|
||||
Me.MaxPP = 25
|
||||
Me.Power = 60
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Covet"
|
||||
Me.Description = "The user endearingly approaches the target, then steals the target's 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.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = 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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
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
|
||||
|
||||
Dim canSteal As Boolean = True
|
||||
If op.Ability.Name.ToLower() = "multitype" Then
|
||||
canSteal = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
canSteal = False
|
||||
End If
|
||||
|
||||
If canSteal = True Then
|
||||
If p.Item Is Nothing And Not op.Item Is Nothing Then
|
||||
Dim ItemID As Integer = op.Item.ID
|
||||
|
||||
op.OriginalItem = Item.GetItemByID(op.Item.ID)
|
||||
op.OriginalItem.AdditionalData = op.Item.AdditionalData
|
||||
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Covet stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:covet") = True Then
|
||||
If own = False Then
|
||||
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
|
||||
End If
|
||||
|
||||
p.Item = Item.GetItemByID(ItemID)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Covet
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 343
|
||||
Me.OriginalPP = 25
|
||||
Me.CurrentPP = 25
|
||||
Me.MaxPP = 25
|
||||
Me.Power = 60
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Covet"
|
||||
Me.Description = "The user endearingly approaches the target, then steals the target's 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.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
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
|
||||
|
||||
Dim canSteal As Boolean = True
|
||||
If op.Ability.Name.ToLower() = "multitype" Then
|
||||
canSteal = False
|
||||
End If
|
||||
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
|
||||
canSteal = False
|
||||
End If
|
||||
|
||||
If canSteal = True Then
|
||||
If p.Item Is Nothing And Not op.Item Is Nothing Then
|
||||
Dim ItemID As Integer = op.Item.ID
|
||||
|
||||
op.OriginalItem = Item.GetItemByID(op.Item.ID)
|
||||
op.OriginalItem.AdditionalData = op.Item.AdditionalData
|
||||
|
||||
If BattleScreen.Battle.RemoveHeldItem(Not own, own, BattleScreen, "Covet stole the item " & op.Item.Name & " from " & op.GetDisplayName() & "!", "move:covet") = True Then
|
||||
If own = False Then
|
||||
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
|
||||
End If
|
||||
|
||||
p.Item = Item.GetItemByID(ItemID)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,73 +1,73 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class DoubleEdge
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 38
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 120
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Double-Edge"
|
||||
Me.Description = "A reckless, life-risking tackle. It also damages the user by a fairly large amount, however."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = True
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Recoil
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveRecoil(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim lastDamage As Integer = BattleScreen.FieldEffects.OwnLastDamage
|
||||
If own = False Then
|
||||
lastDamage = BattleScreen.FieldEffects.OppLastDamage
|
||||
End If
|
||||
Dim recoilDamage As Integer = CInt(Math.Floor(lastDamage / 3))
|
||||
If recoilDamage <= 0 Then
|
||||
recoilDamage = 1
|
||||
End If
|
||||
|
||||
BattleScreen.Battle.InflictRecoil(own, own, BattleScreen, Me, recoilDamage, "", "move:doubleedge")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class DoubleEdge
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 38
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 120
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Double-Edge"
|
||||
Me.Description = "A reckless, life-risking tackle. It also damages the user by a fairly large amount, however."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = True
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Recoil
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveRecoil(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim lastDamage As Integer = BattleScreen.FieldEffects.OwnLastDamage
|
||||
If own = False Then
|
||||
lastDamage = BattleScreen.FieldEffects.OppLastDamage
|
||||
End If
|
||||
Dim recoilDamage As Integer = CInt(Math.Floor(lastDamage / 3))
|
||||
If recoilDamage <= 0 Then
|
||||
recoilDamage = 1
|
||||
End If
|
||||
|
||||
BattleScreen.Battle.InflictRecoil(own, own, BattleScreen, Me, recoilDamage, "", "move:doubleedge")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,70 +1,70 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Facade
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 263
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 70
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Facade"
|
||||
Me.Description = "An attack move that doubles its power if the user is poisoned, burned, or has paralysis."
|
||||
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.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If op.Status <> Pokemon.StatusProblems.None And op.Status <> Pokemon.StatusProblems.Fainted Then
|
||||
Return Me.Power * 2
|
||||
Else
|
||||
Return Me.Power
|
||||
End If
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Facade
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 263
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 70
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Facade"
|
||||
Me.Description = "An attack move that doubles its power if the user is poisoned, burned, or has paralysis."
|
||||
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.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
If p.Status <> Pokemon.StatusProblems.None And p.Status <> Pokemon.StatusProblems.Fainted Then
|
||||
Return Me.Power * 2
|
||||
Else
|
||||
Return Me.Power
|
||||
End If
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,76 +1,76 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Feint
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 364
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 30
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Feint"
|
||||
Me.Description = "An attack that hits a target using Protect or Detect. This also lifts the effects of those moves."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 2
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = False
|
||||
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.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = True
|
||||
Me.IsDamagingMove = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppDetectCounter = 0
|
||||
BattleScreen.FieldEffects.OppProtectCounter = 0
|
||||
Else
|
||||
op = BattleScreen.OwnPokemon
|
||||
|
||||
BattleScreen.FieldEffects.OwnDetectCounter = 0
|
||||
BattleScreen.FieldEffects.OwnProtectCounter = 0
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Feint lifted " & op.GetDisplayName() & "'s protection!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Feint
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 364
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 30
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Feint"
|
||||
Me.Description = "An attack that hits a target using Protect or Detect. This also lifts the effects of those moves."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 2
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = False
|
||||
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.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = True
|
||||
Me.IsDamagingMove = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppDetectCounter = 0
|
||||
BattleScreen.FieldEffects.OppProtectCounter = 0
|
||||
Else
|
||||
op = BattleScreen.OwnPokemon
|
||||
|
||||
BattleScreen.FieldEffects.OwnDetectCounter = 0
|
||||
BattleScreen.FieldEffects.OwnProtectCounter = 0
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Feint lifted " & op.GetDisplayName() & "'s protection!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,77 +1,77 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Foresight
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 193
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Foresight"
|
||||
Me.Description = "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. It also enables an evasive target to be hit."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
op.Evasion = 0
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppForesight = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnForesight = 1
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class Foresight
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 193
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Foresight"
|
||||
Me.Description = "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. It also enables an evasive target to be hit."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
op.Evasion = 0
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppForesight = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnForesight = 1
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,84 +1,84 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class MeanLook
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 212
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Mean Look"
|
||||
Me.Description = "The user pins the target with a dark, arresting look. The target becomes unable to flee."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
Me.IsTrappingMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
|
||||
If own = False Then
|
||||
trapped = BattleScreen.FieldEffects.OwnTrappedCounter
|
||||
End If
|
||||
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If trapped = 0 Then
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppTrappedCounter = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnTrappedCounter = 1
|
||||
End If
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class MeanLook
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 212
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Mean Look"
|
||||
Me.Description = "The user pins the target with a dark, arresting look. The target becomes unable to flee."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
Me.IsTrappingMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
|
||||
If own = False Then
|
||||
trapped = BattleScreen.FieldEffects.OwnTrappedCounter
|
||||
End If
|
||||
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If trapped = 0 Then
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppTrappedCounter = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnTrappedCounter = 1
|
||||
End If
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,128 +1,128 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class NaturalGift
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 363
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Natural Gift"
|
||||
Me.Description = "The user draws power to attack by using its held Berry. The Berry determines the move's type and power."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = False
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = True
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = 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
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
Dim itemID As Integer = 0
|
||||
If Not p.Item Is Nothing Then
|
||||
itemID = p.Item.ID
|
||||
End If
|
||||
|
||||
If 1999 < itemID And itemID < 2016 Then
|
||||
Return 60
|
||||
ElseIf 2034 < itemID And itemID < 2052 Then
|
||||
Return 60
|
||||
ElseIf 2015 < itemID And itemID < 2031 Then
|
||||
Return 70
|
||||
ElseIf 2031 < itemID And itemID < 2036 Then
|
||||
Return 80
|
||||
ElseIf 2051 < itemID And itemID < 2064 Then
|
||||
Return 80
|
||||
Else
|
||||
Return 0
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Function GetAttackType(own As Boolean, BattleScreen As BattleScreen) As Element
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.isBerry = True Then
|
||||
Return New Element(CType(p.Item, Items.Berry).Type)
|
||||
End If
|
||||
End If
|
||||
Return New Element(Element.Types.Normal)
|
||||
End Function
|
||||
|
||||
Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If Own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If p.Item Is Nothing Then
|
||||
Return True
|
||||
Else
|
||||
If p.Item.isBerry = False Then
|
||||
Return True
|
||||
End If
|
||||
End If
|
||||
|
||||
If op.Ability.Name.ToLower() = "unnerve" And BattleScreen.FieldEffects.CanUseAbility(Not Own, BattleScreen) = True Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
If BattleScreen.FieldEffects.CanUseItem(Own) = False Or BattleScreen.FieldEffects.CanUseOwnItem(Own, BattleScreen) = False Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.RemoveHeldItem(own, own, BattleScreen, "", "move:naturalgift")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class NaturalGift
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 363
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Natural Gift"
|
||||
Me.Description = "The user draws power to attack by using its held Berry. The Berry determines the move's type and power."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = False
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = True
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
Dim itemID As Integer = 0
|
||||
If Not p.Item Is Nothing Then
|
||||
itemID = p.Item.ID
|
||||
End If
|
||||
|
||||
If 1999 < itemID And itemID < 2016 Then
|
||||
Return 60
|
||||
ElseIf 2034 < itemID And itemID < 2052 Then
|
||||
Return 60
|
||||
ElseIf 2015 < itemID And itemID < 2031 Then
|
||||
Return 70
|
||||
ElseIf 2031 < itemID And itemID < 2036 Then
|
||||
Return 80
|
||||
ElseIf 2051 < itemID And itemID < 2064 Then
|
||||
Return 80
|
||||
Else
|
||||
Return 0
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Function GetAttackType(own As Boolean, BattleScreen As BattleScreen) As Element
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.isBerry = True Then
|
||||
Return New Element(CType(p.Item, Items.Berry).Type)
|
||||
End If
|
||||
End If
|
||||
Return New Element(Element.Types.Normal)
|
||||
End Function
|
||||
|
||||
Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If Own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If p.Item Is Nothing Then
|
||||
Return True
|
||||
Else
|
||||
If p.Item.isBerry = False Then
|
||||
Return True
|
||||
End If
|
||||
End If
|
||||
|
||||
If op.Ability.Name.ToLower() = "unnerve" And BattleScreen.FieldEffects.CanUseAbility(Not Own, BattleScreen) = True Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
If BattleScreen.FieldEffects.CanUseItem(Own) = False Or BattleScreen.FieldEffects.CanUseOwnItem(Own, BattleScreen) = False Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.RemoveHeldItem(own, own, BattleScreen, "", "move:naturalgift")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,77 +1,77 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class OdorSleuth
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 316
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Odor Sleuth"
|
||||
Me.Description = "Enables a Ghost-type target to be hit with Normal- and Fighting-type attacks. This also enables an evasive target to be hit."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
op.Evasion = 0
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppOdorSleuth = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnOdorSleuth = 1
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class OdorSleuth
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 316
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Odor Sleuth"
|
||||
Me.Description = "Enables a Ghost-type target to be hit with Normal- and Fighting-type attacks. This also enables an evasive target to be hit."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = True
|
||||
Me.MagicCoatAffected = True
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Support
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
op.Evasion = 0
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OppOdorSleuth = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OwnOdorSleuth = 1
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,82 +1,82 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class PayDay
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 6
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 40
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Pay Day"
|
||||
Me.Description = "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.RemovesFrozen = False
|
||||
Me.HasSecondaryEffect = True
|
||||
|
||||
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 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
|
||||
|
||||
Dim coinAmount As Integer = p.Level * 5
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "amulet coin" Or p.Item.Name.ToLower() = "luck incense" Then
|
||||
coinAmount *= 2
|
||||
End If
|
||||
End If
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OwnPayDayCounter += coinAmount
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppPayDayCounter += coinAmount
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Coins were scattered anywhere!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class PayDay
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 6
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 40
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Pay Day"
|
||||
Me.Description = "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle."
|
||||
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 = True
|
||||
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 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
|
||||
|
||||
Dim coinAmount As Integer = p.Level * 5
|
||||
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "amulet coin" Or p.Item.Name.ToLower() = "luck incense" Then
|
||||
coinAmount *= 2
|
||||
End If
|
||||
End If
|
||||
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OwnPayDayCounter += coinAmount
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppPayDayCounter += coinAmount
|
||||
End If
|
||||
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("Coins were scattered anywhere!"))
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -1,87 +1,87 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class RapidSpin
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 229
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 20
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Rapid Spin"
|
||||
Me.Description = "A spin attack that can also eliminate such moves as Bind, Wrap, Leech Seed, and Spikes."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.RemovesFrozen = 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 Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
With BattleScreen.FieldEffects
|
||||
If own = True Then
|
||||
.OwnBind = 0
|
||||
.OwnClamp = 0
|
||||
.OwnFireSpin = 0
|
||||
.OwnLeechSeed = 0
|
||||
.OwnMagmaStorm = 0
|
||||
.OwnSandTomb = 0
|
||||
.OppSpikes = 0
|
||||
.OppStealthRock = 0
|
||||
.OppToxicSpikes = 0
|
||||
.OwnWhirlpool = 0
|
||||
.OwnWrap = 0
|
||||
Else
|
||||
.OppBind = 0
|
||||
.OppClamp = 0
|
||||
.OppFireSpin = 0
|
||||
.OppLeechSeed = 0
|
||||
.OppMagmaStorm = 0
|
||||
.OppSandTomb = 0
|
||||
.OwnSpikes = 0
|
||||
.OwnStealthRock = 0
|
||||
.OwnToxicSpikes = 0
|
||||
.OppWhirlpool = 0
|
||||
.OppWrap = 0
|
||||
End If
|
||||
End With
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class RapidSpin
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 229
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 20
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Rapid Spin"
|
||||
Me.Description = "A spin attack that can also eliminate such moves as Bind, Wrap, Leech Seed, and Spikes."
|
||||
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 = True
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = 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 Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
With BattleScreen.FieldEffects
|
||||
If own = True Then
|
||||
.OwnBind = 0
|
||||
.OwnClamp = 0
|
||||
.OwnFireSpin = 0
|
||||
.OwnLeechSeed = 0
|
||||
.OwnMagmaStorm = 0
|
||||
.OwnSandTomb = 0
|
||||
.OppSpikes = 0
|
||||
.OppStealthRock = 0
|
||||
.OppToxicSpikes = 0
|
||||
.OwnWhirlpool = 0
|
||||
.OwnWrap = 0
|
||||
Else
|
||||
.OppBind = 0
|
||||
.OppClamp = 0
|
||||
.OppFireSpin = 0
|
||||
.OppLeechSeed = 0
|
||||
.OppMagmaStorm = 0
|
||||
.OppSandTomb = 0
|
||||
.OwnSpikes = 0
|
||||
.OwnStealthRock = 0
|
||||
.OwnToxicSpikes = 0
|
||||
.OppWhirlpool = 0
|
||||
.OppWrap = 0
|
||||
End If
|
||||
End With
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
Loading…
Reference in New Issue