Fixed sec. effect values (normal)

This commit is contained in:
Capt_Segis 2016-09-14 19:42:47 -05:00 committed by GitHub
parent 11b17c6849
commit f4342cdc0b
13 changed files with 1081 additions and 1081 deletions

View File

@ -1,92 +1,92 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Bind Public Class Bind
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 20 Me.ID = 20
Me.OriginalPP = 20 Me.OriginalPP = 20
Me.CurrentPP = 20 Me.CurrentPP = 20
Me.MaxPP = 20 Me.MaxPP = 20
Me.Power = 15 Me.Power = 15
Me.Accuracy = 85 Me.Accuracy = 85
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Tough Me.ContestCategory = ContestCategories.Tough
Me.Name = "Bind" 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.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.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = True Me.KingsrockAffected = True
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = False Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
Me.AIField1 = AIField.Damage Me.AIField1 = AIField.Damage
Me.AIField2 = AIField.Trap Me.AIField2 = AIField.Trap
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
Dim turns As Integer = 4 Dim turns As Integer = 4
If Core.Random.Next(0, 100) < 50 Then If Core.Random.Next(0, 100) < 50 Then
turns = 5 turns = 5
End If End If
If Not p.Item Is Nothing Then 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 If p.Item.Name.ToLower() = "grip claw" And BattleScreen.FieldEffects.CanUseItem(own) = True And BattleScreen.FieldEffects.CanUseOwnItem(own, BattleScreen) = True Then
turns = 5 turns = 5
End If End If
End If End If
If own = True Then If own = True Then
If BattleScreen.FieldEffects.OppBind = 0 Then If BattleScreen.FieldEffects.OppBind = 0 Then
BattleScreen.FieldEffects.OppBind = turns BattleScreen.FieldEffects.OppBind = turns
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!")) BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
End If End If
Else Else
If BattleScreen.FieldEffects.OwnBind = 0 Then If BattleScreen.FieldEffects.OwnBind = 0 Then
BattleScreen.FieldEffects.OwnBind = turns BattleScreen.FieldEffects.OwnBind = turns
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!")) BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " used Bind on " & op.GetDisplayName() & "!"))
End If End If
End If End If
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,84 +1,84 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Block Public Class Block
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 335 Me.ID = 335
Me.OriginalPP = 5 Me.OriginalPP = 5
Me.CurrentPP = 5 Me.CurrentPP = 5
Me.MaxPP = 5 Me.MaxPP = 5
Me.Power = 0 Me.Power = 0
Me.Accuracy = 0 Me.Accuracy = 0
Me.Category = Categories.Status Me.Category = Categories.Status
Me.ContestCategory = ContestCategories.Cute Me.ContestCategory = ContestCategories.Cute
Me.Name = "Block" Me.Name = "Block"
Me.Description = "The user blocks the target's way with arms spread wide to prevent escape." Me.Description = "The user blocks the target's way with arms spread wide to prevent escape."
Me.CriticalChance = 0 Me.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = True Me.MagicCoatAffected = True
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = False Me.UseEffectiveness = False
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = False Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = False Me.IsDamagingMove = False
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = False Me.IsWonderGuardAffected = False
Me.IsTrappingMove = True Me.IsTrappingMove = True
'#End '#End
Me.AIField1 = AIField.Support Me.AIField1 = AIField.Support
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
If own = False Then If own = False Then
trapped = BattleScreen.FieldEffects.OwnTrappedCounter trapped = BattleScreen.FieldEffects.OwnTrappedCounter
End If End If
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
If trapped = 0 Then If trapped = 0 Then
If own = True Then If own = True Then
BattleScreen.FieldEffects.OppTrappedCounter = 1 BattleScreen.FieldEffects.OppTrappedCounter = 1
Else Else
BattleScreen.FieldEffects.OwnTrappedCounter = 1 BattleScreen.FieldEffects.OwnTrappedCounter = 1
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!")) BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
Else Else
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!")) BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
End If End If
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,67 +1,67 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Charm Public Class Charm
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Fairy) Me.Type = New Element(Element.Types.Fairy)
Me.ID = 204 Me.ID = 204
Me.OriginalPP = 20 Me.OriginalPP = 20
Me.CurrentPP = 20 Me.CurrentPP = 20
Me.MaxPP = 20 Me.MaxPP = 20
Me.Power = 0 Me.Power = 0
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Status Me.Category = Categories.Status
Me.ContestCategory = ContestCategories.Cute Me.ContestCategory = ContestCategories.Cute
Me.Name = "Charm" 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.Description = "The user gazes at the target rather charmingly, making it less wary. The target's Attack is harshly lowered."
Me.CriticalChance = 0 Me.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = True Me.MagicCoatAffected = True
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = False Me.UseEffectiveness = False
Me.ImmunityAffected = False Me.ImmunityAffected = False
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = False Me.IsDamagingMove = False
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = False Me.IsWonderGuardAffected = False
'#End '#End
Me.AIField1 = AIField.LowerAttack Me.AIField1 = AIField.LowerAttack
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) 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") Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 2, "", "move:charm")
If b = False Then If b = False Then
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!")) BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
End If End If
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,94 +1,94 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Covet Public Class Covet
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 343 Me.ID = 343
Me.OriginalPP = 25 Me.OriginalPP = 25
Me.CurrentPP = 25 Me.CurrentPP = 25
Me.MaxPP = 25 Me.MaxPP = 25
Me.Power = 60 Me.Power = 60
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Cute Me.ContestCategory = ContestCategories.Cute
Me.Name = "Covet" Me.Name = "Covet"
Me.Description = "The user endearingly approaches the target, then steals the target's held item." Me.Description = "The user endearingly approaches the target, then steals the target's held item."
Me.CriticalChance = 1 Me.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
Me.AIField1 = AIField.Damage Me.AIField1 = AIField.Damage
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
Dim canSteal As Boolean = True Dim canSteal As Boolean = True
If op.Ability.Name.ToLower() = "multitype" Then If op.Ability.Name.ToLower() = "multitype" Then
canSteal = False canSteal = False
End If End If
If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then If Not op.Item Is Nothing AndAlso op.Item.Name.ToLower() = "griseous orb" And op.Number = 487 Then
canSteal = False canSteal = False
End If End If
If canSteal = True Then If canSteal = True Then
If p.Item Is Nothing And Not op.Item Is Nothing Then If p.Item Is Nothing And Not op.Item Is Nothing Then
Dim ItemID As Integer = op.Item.ID Dim ItemID As Integer = op.Item.ID
op.OriginalItem = Item.GetItemByID(op.Item.ID) op.OriginalItem = Item.GetItemByID(op.Item.ID)
op.OriginalItem.AdditionalData = op.Item.AdditionalData 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 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 If own = False Then
BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID) BattleScreen.FieldEffects.StolenItemIDs.Add(ItemID)
End If End If
p.Item = Item.GetItemByID(ItemID) p.Item = Item.GetItemByID(ItemID)
End If End If
End If End If
End If End If
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,73 +1,73 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class DoubleEdge Public Class DoubleEdge
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 38 Me.ID = 38
Me.OriginalPP = 15 Me.OriginalPP = 15
Me.CurrentPP = 15 Me.CurrentPP = 15
Me.MaxPP = 15 Me.MaxPP = 15
Me.Power = 120 Me.Power = 120
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Tough Me.ContestCategory = ContestCategories.Tough
Me.Name = "Double-Edge" Me.Name = "Double-Edge"
Me.Description = "A reckless, life-risking tackle. It also damages the user by a fairly large amount, however." Me.Description = "A reckless, life-risking tackle. It also damages the user by a fairly large amount, however."
Me.CriticalChance = 1 Me.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = True Me.KingsrockAffected = True
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = False Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = True Me.IsRecoilMove = True
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
Me.AIField1 = AIField.Damage Me.AIField1 = AIField.Damage
Me.AIField2 = AIField.Recoil Me.AIField2 = AIField.Recoil
End Sub End Sub
Public Overrides Sub MoveRecoil(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveRecoil(own As Boolean, BattleScreen As BattleScreen)
Dim lastDamage As Integer = BattleScreen.FieldEffects.OwnLastDamage Dim lastDamage As Integer = BattleScreen.FieldEffects.OwnLastDamage
If own = False Then If own = False Then
lastDamage = BattleScreen.FieldEffects.OppLastDamage lastDamage = BattleScreen.FieldEffects.OppLastDamage
End If End If
Dim recoilDamage As Integer = CInt(Math.Floor(lastDamage / 3)) Dim recoilDamage As Integer = CInt(Math.Floor(lastDamage / 3))
If recoilDamage <= 0 Then If recoilDamage <= 0 Then
recoilDamage = 1 recoilDamage = 1
End If End If
BattleScreen.Battle.InflictRecoil(own, own, BattleScreen, Me, recoilDamage, "", "move:doubleedge") BattleScreen.Battle.InflictRecoil(own, own, BattleScreen, Me, recoilDamage, "", "move:doubleedge")
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,70 +1,70 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Facade Public Class Facade
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 263 Me.ID = 263
Me.OriginalPP = 20 Me.OriginalPP = 20
Me.CurrentPP = 20 Me.CurrentPP = 20
Me.MaxPP = 20 Me.MaxPP = 20
Me.Power = 70 Me.Power = 70
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Cute Me.ContestCategory = ContestCategories.Cute
Me.Name = "Facade" Me.Name = "Facade"
Me.Description = "An attack move that doubles its power if the user is poisoned, burned, or has paralysis." Me.Description = "An attack move that doubles its power if the user is poisoned, burned, or has paralysis."
Me.CriticalChance = 1 Me.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = False Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
End Sub End Sub
Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer
Dim op As Pokemon = BattleScreen.OppPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
If own = False Then If own = False Then
op = BattleScreen.OwnPokemon p = BattleScreen.OppPokemon
End If End If
If op.Status <> Pokemon.StatusProblems.None And op.Status <> Pokemon.StatusProblems.Fainted Then If p.Status <> Pokemon.StatusProblems.None And p.Status <> Pokemon.StatusProblems.Fainted Then
Return Me.Power * 2 Return Me.Power * 2
Else Else
Return Me.Power Return Me.Power
End If End If
End Function End Function
End Class End Class
End Namespace End Namespace

View File

@ -1,76 +1,76 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Feint Public Class Feint
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 364 Me.ID = 364
Me.OriginalPP = 10 Me.OriginalPP = 10
Me.CurrentPP = 10 Me.CurrentPP = 10
Me.MaxPP = 10 Me.MaxPP = 10
Me.Power = 30 Me.Power = 30
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Beauty Me.ContestCategory = ContestCategories.Beauty
Me.Name = "Feint" Me.Name = "Feint"
Me.Description = "An attack that hits a target using Protect or Detect. This also lifts the effects of those moves." Me.Description = "An attack that hits a target using Protect or Detect. This also lifts the effects of those moves."
Me.CriticalChance = 0 Me.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 2 Me.Priority = 2
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = False Me.ProtectAffected = False
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = True Me.IsPunchingMove = True
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
Me.AIField1 = AIField.Damage Me.AIField1 = AIField.Damage
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = True Then If own = True Then
BattleScreen.FieldEffects.OppDetectCounter = 0 BattleScreen.FieldEffects.OppDetectCounter = 0
BattleScreen.FieldEffects.OppProtectCounter = 0 BattleScreen.FieldEffects.OppProtectCounter = 0
Else Else
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
BattleScreen.FieldEffects.OwnDetectCounter = 0 BattleScreen.FieldEffects.OwnDetectCounter = 0
BattleScreen.FieldEffects.OwnProtectCounter = 0 BattleScreen.FieldEffects.OwnProtectCounter = 0
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject("Feint lifted " & op.GetDisplayName() & "'s protection!")) BattleScreen.BattleQuery.Add(New TextQueryObject("Feint lifted " & op.GetDisplayName() & "'s protection!"))
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,77 +1,77 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class Foresight Public Class Foresight
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 193 Me.ID = 193
Me.OriginalPP = 40 Me.OriginalPP = 40
Me.CurrentPP = 40 Me.CurrentPP = 40
Me.MaxPP = 40 Me.MaxPP = 40
Me.Power = 0 Me.Power = 0
Me.Accuracy = 0 Me.Accuracy = 0
Me.Category = Categories.Status Me.Category = Categories.Status
Me.ContestCategory = ContestCategories.Smart Me.ContestCategory = ContestCategories.Smart
Me.Name = "Foresight" 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.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.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = True Me.MagicCoatAffected = True
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = False Me.UseEffectiveness = False
Me.ImmunityAffected = False Me.ImmunityAffected = False
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = False Me.IsDamagingMove = False
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = False Me.IsWonderGuardAffected = False
'#End '#End
Me.AIField1 = AIField.Support Me.AIField1 = AIField.Support
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
op.Evasion = 0 op.Evasion = 0
If own = True Then If own = True Then
BattleScreen.FieldEffects.OppForesight = 1 BattleScreen.FieldEffects.OppForesight = 1
Else Else
BattleScreen.FieldEffects.OwnForesight = 1 BattleScreen.FieldEffects.OwnForesight = 1
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!")) BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,84 +1,84 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class MeanLook Public Class MeanLook
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 212 Me.ID = 212
Me.OriginalPP = 5 Me.OriginalPP = 5
Me.CurrentPP = 5 Me.CurrentPP = 5
Me.MaxPP = 5 Me.MaxPP = 5
Me.Power = 0 Me.Power = 0
Me.Accuracy = 0 Me.Accuracy = 0
Me.Category = Categories.Status Me.Category = Categories.Status
Me.ContestCategory = ContestCategories.Beauty Me.ContestCategory = ContestCategories.Beauty
Me.Name = "Mean Look" Me.Name = "Mean Look"
Me.Description = "The user pins the target with a dark, arresting look. The target becomes unable to flee." Me.Description = "The user pins the target with a dark, arresting look. The target becomes unable to flee."
Me.CriticalChance = 0 Me.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = True Me.MagicCoatAffected = True
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = False Me.UseEffectiveness = False
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = False Me.IsDamagingMove = False
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = False Me.IsWonderGuardAffected = False
Me.IsTrappingMove = True Me.IsTrappingMove = True
'#End '#End
Me.AIField1 = AIField.Support Me.AIField1 = AIField.Support
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter Dim trapped As Integer = BattleScreen.FieldEffects.OppTrappedCounter
If own = False Then If own = False Then
trapped = BattleScreen.FieldEffects.OwnTrappedCounter trapped = BattleScreen.FieldEffects.OwnTrappedCounter
End If End If
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
If trapped = 0 Then If trapped = 0 Then
If own = True Then If own = True Then
BattleScreen.FieldEffects.OppTrappedCounter = 1 BattleScreen.FieldEffects.OppTrappedCounter = 1
Else Else
BattleScreen.FieldEffects.OwnTrappedCounter = 1 BattleScreen.FieldEffects.OwnTrappedCounter = 1
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!")) BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " can no longer escape!"))
Else Else
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!")) BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
End If End If
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,128 +1,128 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class NaturalGift Public Class NaturalGift
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 363 Me.ID = 363
Me.OriginalPP = 15 Me.OriginalPP = 15
Me.CurrentPP = 15 Me.CurrentPP = 15
Me.MaxPP = 15 Me.MaxPP = 15
Me.Power = 0 Me.Power = 0
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Special Me.Category = Categories.Special
Me.ContestCategory = ContestCategories.Smart Me.ContestCategory = ContestCategories.Smart
Me.Name = "Natural Gift" 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.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.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = True Me.KingsrockAffected = True
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
End Sub End Sub
Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
If own = False Then If own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
End If End If
Dim itemID As Integer = 0 Dim itemID As Integer = 0
If Not p.Item Is Nothing Then If Not p.Item Is Nothing Then
itemID = p.Item.ID itemID = p.Item.ID
End If End If
If 1999 < itemID And itemID < 2016 Then If 1999 < itemID And itemID < 2016 Then
Return 60 Return 60
ElseIf 2034 < itemID And itemID < 2052 Then ElseIf 2034 < itemID And itemID < 2052 Then
Return 60 Return 60
ElseIf 2015 < itemID And itemID < 2031 Then ElseIf 2015 < itemID And itemID < 2031 Then
Return 70 Return 70
ElseIf 2031 < itemID And itemID < 2036 Then ElseIf 2031 < itemID And itemID < 2036 Then
Return 80 Return 80
ElseIf 2051 < itemID And itemID < 2064 Then ElseIf 2051 < itemID And itemID < 2064 Then
Return 80 Return 80
Else Else
Return 0 Return 0
End If End If
End Function End Function
Public Overrides Function GetAttackType(own As Boolean, BattleScreen As BattleScreen) As Element Public Overrides Function GetAttackType(own As Boolean, BattleScreen As BattleScreen) As Element
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
If own = False Then If own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
End If End If
If Not p.Item Is Nothing Then If Not p.Item Is Nothing Then
If p.Item.isBerry = True Then If p.Item.isBerry = True Then
Return New Element(CType(p.Item, Items.Berry).Type) Return New Element(CType(p.Item, Items.Berry).Type)
End If End If
End If End If
Return New Element(Element.Types.Normal) Return New Element(Element.Types.Normal)
End Function End Function
Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If Own = False Then If Own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
If p.Item Is Nothing Then If p.Item Is Nothing Then
Return True Return True
Else Else
If p.Item.isBerry = False Then If p.Item.isBerry = False Then
Return True Return True
End If End If
End If End If
If op.Ability.Name.ToLower() = "unnerve" And BattleScreen.FieldEffects.CanUseAbility(Not Own, BattleScreen) = True Then If op.Ability.Name.ToLower() = "unnerve" And BattleScreen.FieldEffects.CanUseAbility(Not Own, BattleScreen) = True Then
Return True Return True
End If End If
If BattleScreen.FieldEffects.CanUseItem(Own) = False Or BattleScreen.FieldEffects.CanUseOwnItem(Own, BattleScreen) = False Then If BattleScreen.FieldEffects.CanUseItem(Own) = False Or BattleScreen.FieldEffects.CanUseOwnItem(Own, BattleScreen) = False Then
Return True Return True
End If End If
Return False Return False
End Function End Function
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
BattleScreen.Battle.RemoveHeldItem(own, own, BattleScreen, "", "move:naturalgift") BattleScreen.Battle.RemoveHeldItem(own, own, BattleScreen, "", "move:naturalgift")
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,77 +1,77 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class OdorSleuth Public Class OdorSleuth
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 316 Me.ID = 316
Me.OriginalPP = 40 Me.OriginalPP = 40
Me.CurrentPP = 40 Me.CurrentPP = 40
Me.MaxPP = 40 Me.MaxPP = 40
Me.Power = 0 Me.Power = 0
Me.Accuracy = 0 Me.Accuracy = 0
Me.Category = Categories.Status Me.Category = Categories.Status
Me.ContestCategory = ContestCategories.Smart Me.ContestCategory = ContestCategories.Smart
Me.Name = "Odor Sleuth" 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.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.CriticalChance = 0
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = False Me.MakesContact = False
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = True Me.MagicCoatAffected = True
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = False Me.KingsrockAffected = False
Me.CounterAffected = False Me.CounterAffected = False
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = False Me.UseEffectiveness = False
Me.ImmunityAffected = False Me.ImmunityAffected = False
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = False Me.IsDamagingMove = False
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = False Me.IsWonderGuardAffected = False
'#End '#End
Me.AIField1 = AIField.Support Me.AIField1 = AIField.Support
Me.AIField2 = AIField.Nothing Me.AIField2 = AIField.Nothing
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
op.Evasion = 0 op.Evasion = 0
If own = True Then If own = True Then
BattleScreen.FieldEffects.OppOdorSleuth = 1 BattleScreen.FieldEffects.OppOdorSleuth = 1
Else Else
BattleScreen.FieldEffects.OwnOdorSleuth = 1 BattleScreen.FieldEffects.OwnOdorSleuth = 1
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!")) BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & " was identified!"))
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,82 +1,82 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class PayDay Public Class PayDay
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 6 Me.ID = 6
Me.OriginalPP = 20 Me.OriginalPP = 20
Me.CurrentPP = 20 Me.CurrentPP = 20
Me.MaxPP = 20 Me.MaxPP = 20
Me.Power = 40 Me.Power = 40
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Smart Me.ContestCategory = ContestCategories.Smart
Me.Name = "Pay Day" Me.Name = "Pay Day"
Me.Description = "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle." Me.Description = "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle."
Me.CriticalChance = 1 Me.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = True Me.KingsrockAffected = True
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
Dim p As Pokemon = BattleScreen.OwnPokemon Dim p As Pokemon = BattleScreen.OwnPokemon
Dim op As Pokemon = BattleScreen.OppPokemon Dim op As Pokemon = BattleScreen.OppPokemon
If own = False Then If own = False Then
p = BattleScreen.OppPokemon p = BattleScreen.OppPokemon
op = BattleScreen.OwnPokemon op = BattleScreen.OwnPokemon
End If End If
Dim coinAmount As Integer = p.Level * 5 Dim coinAmount As Integer = p.Level * 5
If Not p.Item Is Nothing Then If Not p.Item Is Nothing Then
If p.Item.Name.ToLower() = "amulet coin" Or p.Item.Name.ToLower() = "luck incense" Then If p.Item.Name.ToLower() = "amulet coin" Or p.Item.Name.ToLower() = "luck incense" Then
coinAmount *= 2 coinAmount *= 2
End If End If
End If End If
If own = True Then If own = True Then
BattleScreen.FieldEffects.OwnPayDayCounter += coinAmount BattleScreen.FieldEffects.OwnPayDayCounter += coinAmount
Else Else
BattleScreen.FieldEffects.OppPayDayCounter += coinAmount BattleScreen.FieldEffects.OppPayDayCounter += coinAmount
End If End If
BattleScreen.BattleQuery.Add(New TextQueryObject("Coins were scattered anywhere!")) BattleScreen.BattleQuery.Add(New TextQueryObject("Coins were scattered anywhere!"))
End Sub End Sub
End Class End Class
End Namespace End Namespace

View File

@ -1,87 +1,87 @@
Namespace BattleSystem.Moves.Normal Namespace BattleSystem.Moves.Normal
Public Class RapidSpin Public Class RapidSpin
Inherits Attack Inherits Attack
Public Sub New() Public Sub New()
'#Definitions '#Definitions
Me.Type = New Element(Element.Types.Normal) Me.Type = New Element(Element.Types.Normal)
Me.ID = 229 Me.ID = 229
Me.OriginalPP = 40 Me.OriginalPP = 40
Me.CurrentPP = 40 Me.CurrentPP = 40
Me.MaxPP = 40 Me.MaxPP = 40
Me.Power = 20 Me.Power = 20
Me.Accuracy = 100 Me.Accuracy = 100
Me.Category = Categories.Physical Me.Category = Categories.Physical
Me.ContestCategory = ContestCategories.Cool Me.ContestCategory = ContestCategories.Cool
Me.Name = "Rapid Spin" Me.Name = "Rapid Spin"
Me.Description = "A spin attack that can also eliminate such moves as Bind, Wrap, Leech Seed, and Spikes." Me.Description = "A spin attack that can also eliminate such moves as Bind, Wrap, Leech Seed, and Spikes."
Me.CriticalChance = 1 Me.CriticalChance = 1
Me.IsHMMove = False Me.IsHMMove = False
Me.Target = Targets.OneAdjacentTarget Me.Target = Targets.OneAdjacentTarget
Me.Priority = 0 Me.Priority = 0
Me.TimesToAttack = 1 Me.TimesToAttack = 1
'#End '#End
'#SpecialDefinitions '#SpecialDefinitions
Me.MakesContact = True Me.MakesContact = True
Me.ProtectAffected = True Me.ProtectAffected = True
Me.MagicCoatAffected = False Me.MagicCoatAffected = False
Me.SnatchAffected = False Me.SnatchAffected = False
Me.MirrorMoveAffected = True Me.MirrorMoveAffected = True
Me.KingsrockAffected = True Me.KingsrockAffected = True
Me.CounterAffected = True Me.CounterAffected = True
Me.DisabledWhileGravity = False Me.DisabledWhileGravity = False
Me.UseEffectiveness = True Me.UseEffectiveness = True
Me.ImmunityAffected = True Me.ImmunityAffected = True
Me.HasSecondaryEffect = True Me.HasSecondaryEffect = False
Me.RemovesFrozen = False Me.RemovesFrozen = False
Me.IsHealingMove = False Me.IsHealingMove = False
Me.IsRecoilMove = False Me.IsRecoilMove = False
Me.IsPunchingMove = False Me.IsPunchingMove = False
Me.IsDamagingMove = True Me.IsDamagingMove = True
Me.IsProtectMove = False Me.IsProtectMove = False
Me.IsSoundMove = False Me.IsSoundMove = False
Me.IsAffectedBySubstitute = True Me.IsAffectedBySubstitute = True
Me.IsOneHitKOMove = False Me.IsOneHitKOMove = False
Me.IsWonderGuardAffected = True Me.IsWonderGuardAffected = True
'#End '#End
End Sub End Sub
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen) Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
With BattleScreen.FieldEffects With BattleScreen.FieldEffects
If own = True Then If own = True Then
.OwnBind = 0 .OwnBind = 0
.OwnClamp = 0 .OwnClamp = 0
.OwnFireSpin = 0 .OwnFireSpin = 0
.OwnLeechSeed = 0 .OwnLeechSeed = 0
.OwnMagmaStorm = 0 .OwnMagmaStorm = 0
.OwnSandTomb = 0 .OwnSandTomb = 0
.OppSpikes = 0 .OppSpikes = 0
.OppStealthRock = 0 .OppStealthRock = 0
.OppToxicSpikes = 0 .OppToxicSpikes = 0
.OwnWhirlpool = 0 .OwnWhirlpool = 0
.OwnWrap = 0 .OwnWrap = 0
Else Else
.OppBind = 0 .OppBind = 0
.OppClamp = 0 .OppClamp = 0
.OppFireSpin = 0 .OppFireSpin = 0
.OppLeechSeed = 0 .OppLeechSeed = 0
.OppMagmaStorm = 0 .OppMagmaStorm = 0
.OppSandTomb = 0 .OppSandTomb = 0
.OwnSpikes = 0 .OwnSpikes = 0
.OwnStealthRock = 0 .OwnStealthRock = 0
.OwnToxicSpikes = 0 .OwnToxicSpikes = 0
.OppWhirlpool = 0 .OppWhirlpool = 0
.OppWrap = 0 .OppWrap = 0
End If End If
End With End With
End Sub End Sub
End Class End Class
End Namespace End Namespace