Added some Gen 7 moves
|
@ -162,6 +162,14 @@
|
|||
Exit Sub
|
||||
End If
|
||||
|
||||
'Solar Blade:
|
||||
If BattleScreen.FieldEffects.OwnSolarBlade >= 1 Then
|
||||
SelectedMoveOwn = False
|
||||
DeleteHostQuery(BattleScreen)
|
||||
InitializeRound(BattleScreen, New RoundConst() With {.StepType = RoundConst.StepTypes.Move, .Argument = GetPokemonMoveFromID(BattleScreen.OwnPokemon, 669)})
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
'Sky Attack:
|
||||
If BattleScreen.FieldEffects.OwnSkyAttackCounter >= 1 Then
|
||||
SelectedMoveOwn = False
|
||||
|
@ -348,6 +356,12 @@
|
|||
Return New RoundConst() With {.StepType = RoundConst.StepTypes.Move, .Argument = GetPokemonMoveFromID(BattleScreen.OppPokemon, 76)}
|
||||
End If
|
||||
|
||||
'Solar Blade:
|
||||
If BattleScreen.FieldEffects.OppSolarBlade >= 1 Then
|
||||
SelectedMoveOpp = False
|
||||
Return New RoundConst() With {.StepType = RoundConst.StepTypes.Move, .Argument = GetPokemonMoveFromID(BattleScreen.OppPokemon, 669)}
|
||||
End If
|
||||
|
||||
'Sky Attack:
|
||||
If BattleScreen.FieldEffects.OppSkyAttackCounter >= 1 Then
|
||||
SelectedMoveOpp = False
|
||||
|
@ -981,6 +995,7 @@
|
|||
Dim skullBash As Integer
|
||||
Dim skyAttack As Integer
|
||||
Dim solarBeam As Integer
|
||||
Dim solarBlade As Integer
|
||||
Dim razorWind As Integer
|
||||
Dim bide As Integer
|
||||
|
||||
|
@ -1002,6 +1017,7 @@
|
|||
skullBash = .OwnSkullBashCounter
|
||||
skyAttack = .OwnSkyAttackCounter
|
||||
solarBeam = .OwnSolarBeam
|
||||
solarBlade = .OwnSolarBlade
|
||||
razorWind = .OwnRazorWindCounter
|
||||
bide = .OwnBideCounter
|
||||
Else
|
||||
|
@ -1016,6 +1032,7 @@
|
|||
skullBash = .OppSkullBashCounter
|
||||
skyAttack = .OppSkyAttackCounter
|
||||
solarBeam = .OppSolarBeam
|
||||
solarBlade = .OppSolarBlade
|
||||
razorWind = .OppRazorWindCounter
|
||||
bide = .OppBideCounter
|
||||
End If
|
||||
|
@ -1069,6 +1086,10 @@
|
|||
If solarBeam = 0 And BattleScreen.FieldEffects.Weather <> BattleWeather.WeatherTypes.Sunny Then
|
||||
Return True
|
||||
End If
|
||||
Case "solar blade"
|
||||
If solarBlade = 0 And BattleScreen.FieldEffects.Weather <> BattleWeather.WeatherTypes.Sunny Then
|
||||
Return True
|
||||
End If
|
||||
Case "razor wind"
|
||||
If razorWind = 0 Then
|
||||
Return True
|
||||
|
@ -6177,6 +6198,7 @@
|
|||
.OwnDefenseCurl = 0
|
||||
.OwnCharge = 0
|
||||
.OwnSolarBeam = 0
|
||||
.OwnSolarBlade = 0
|
||||
If .OwnUsedBatonPass = False Then .OwnLeechSeed = 0
|
||||
If .OwnUsedBatonPass = False Then .OwnLockOn = 0
|
||||
.OwnLansatBerry = 0
|
||||
|
@ -6515,6 +6537,7 @@
|
|||
.OppDefenseCurl = 0
|
||||
.OppCharge = 0
|
||||
.OppSolarBeam = 0
|
||||
.OppSolarBlade = 0
|
||||
If .OppUsedBatonPass = False Then .OppLeechSeed = 0
|
||||
If .OppUsedBatonPass = False Then .OppLockOn = 0
|
||||
.OppLansatBerry = 0
|
||||
|
|
|
@ -1500,6 +1500,10 @@
|
|||
DSM = 1.0F
|
||||
End If
|
||||
|
||||
If Attack.ID = 663 Then 'Darkest Lariat
|
||||
DSM = 1.0F
|
||||
End If
|
||||
|
||||
If Attack.Name.ToLower() = "selfdestruct" Or Attack.Name.ToLower() = "explosion" Then
|
||||
SX = 1.0F
|
||||
End If
|
||||
|
@ -1528,6 +1532,10 @@
|
|||
DSM = 1.0F
|
||||
End If
|
||||
|
||||
If Attack.ID = 663 Then 'Darkest Lariat
|
||||
DSM = 1.0F
|
||||
End If
|
||||
|
||||
If Op.Ability.Name.ToLower() = "flower gift" Then
|
||||
If BattleScreen.FieldEffects.Weather = BattleWeather.WeatherTypes.Sunny Then
|
||||
DMod = 1.5F
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
Public OwnLastDamage As Integer = 0 'Last Damage the own Pokémon has done by moves.
|
||||
Public OwnLeechSeed As Integer = 0 'The opponent used leech seed
|
||||
Public OwnSolarBeam As Integer = 0 'Charge counter for solar beam
|
||||
Public OwnSolarBlade As Integer = 0 'Charge counter for solar blade
|
||||
Public OwnLockOn As Integer = 0 'Counter for the moves lock-on and mind reader
|
||||
Public OwnBideCounter As Integer = 0 'Counter for the Bide move
|
||||
Public OwnBideDamage As Integer = 0 'Half of the damage dealt by bide
|
||||
|
@ -179,6 +180,7 @@
|
|||
Public OppLastDamage As Integer = 0
|
||||
Public OppLeechSeed As Integer = 0
|
||||
Public OppSolarBeam As Integer = 0
|
||||
Public OppSolarBlade As Integer = 0
|
||||
Public OppLockOn As Integer = 0
|
||||
Public OppBideCounter As Integer = 0
|
||||
Public OppBideDamage As Integer = 0
|
||||
|
|
|
@ -219,6 +219,10 @@
|
|||
''' </summary>
|
||||
Public SolarBeam As Integer = 0
|
||||
''' <summary>
|
||||
''' Solar blade move counter.
|
||||
''' </summary>
|
||||
Public SolarBlade As Integer = 0
|
||||
''' <summary>
|
||||
''' Ice Burn move counter.
|
||||
''' </summary>
|
||||
Public IceBurn As Integer = 0
|
||||
|
@ -457,6 +461,7 @@
|
|||
Me.DefenseCurl = 0
|
||||
Me.Charge = 0
|
||||
Me.SolarBeam = 0
|
||||
Me.SolarBlade = 0
|
||||
Me.LansatBerry = 0
|
||||
Me.CustapBerry = 0
|
||||
Me.Trapped = 0
|
||||
|
|
|
@ -20,8 +20,8 @@ Grass:
|
|||
{"Floor"{ENT[{"Size"{intArr[6,1]}}{"SeasonTexture"{str[Grass]}}{"Position"{intArr[20,2,24]}}{"TexturePath"{str[Routes]}}{"Texture"{rec[96,16,16,16]}}]}}
|
||||
|
||||
Water:
|
||||
{"EntityField"{ENT[{"Size"{intArr[4,6]}}{"EntityID"{str[Water]}}{"Position"{sngArr[45,-0.25,26]}}{"TexturePath"{str[Routes]}}{"Textures"{recArr[[240,0,4,4][144,16,16,16]]}}{"TextureIndex"{intArr[0,0,1,1]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
|
||||
{"EntityField"{ENT[{"Size"{intArr[2,8]}}{"EntityID"{str[Water]}}{"Position"{sngArr[46,-0.25,25]}}{"TexturePath"{str[Routes]}}{"Textures"{recArr[[240,0,4,4][144,16,16,16]]}}{"TextureIndex"{intArr[0,0,1,1]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
|
||||
{"EntityField"{ENT[{"Size"{intArr[4,6]}}{"EntityID"{str[Water]}}{"Position"{sngArr[45,-0.25,26]}}{"TexturePath"{str[routes]}}{"Textures"{recArr[[240,0,4,4][192,160,16,16]]}}{"TextureIndex"{intArr[1,1,1,1]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
|
||||
{"EntityField"{ENT[{"Size"{intArr[2,8]}}{"EntityID"{str[Water]}}{"Position"{sngArr[46,-0.25,25]}}{"TexturePath"{str[routes]}}{"Textures"{recArr[[240,0,4,4][192,160,16,16]]}}{"TextureIndex"{intArr[1,1,1,1]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
|
||||
|
||||
Upper Platform:
|
||||
{"Floor"{ENT[{"Size"{intArr[12,8]}}{"Position"{intArr[17,3,13]}}{"TexturePath"{str[park]}}{"Texture"{rec[0,0,16,16]}}]}}
|
||||
|
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 549 B After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 143 B After Width: | Height: | Size: 896 B |
Before Width: | Height: | Size: 163 B After Width: | Height: | Size: 941 B |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 18 KiB |
|
@ -25508,9 +25508,24 @@
|
|||
</Content>
|
||||
<Compile Include="Pokemon\Abilities\Aerilate.vb" />
|
||||
<Compile Include="Pokemon\Abilities\ParentalBond.vb" />
|
||||
<Compile Include="Pokemon\Attacks\Bug\PollenPuff.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Bug\FirstImpression.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Bug\FellStinger.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Bug\Lunge.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dark\BrutalSwing.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dark\DarkestLariat.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dark\DarkVoid.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
|
@ -25520,6 +25535,15 @@
|
|||
<Compile Include="Pokemon\Attacks\Dark\PartingShot.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dark\PowerTrip.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dragon\ClangingScales.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dragon\DragonHammer.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Dragon\SpacialRend.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
|
@ -25529,6 +25553,12 @@
|
|||
<Compile Include="Pokemon\Attacks\Fairy\LightOfRuin.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Fairy\FleurCannon.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Fairy\NaturesMadness.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Fighting\FinalGambit.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
|
@ -25541,18 +25571,48 @@
|
|||
<Compile Include="Pokemon\Attacks\Fire\Incinerate.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Fire\FireLash.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Fire\BurnUp.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Flying\DragonAscent.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ghost\PhantomForce.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ghost\ShadowBone.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ghost\ShadowForce.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ghost\SpiritShackle.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Grass\Leafage.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Grass\TropKick.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Grass\SolarBlade.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Grass\Strength Sap.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Grass\WorrySeed.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ground\HighHorsepower.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ground\ShoreUp.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ground\PrecipiceBlades.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
|
@ -25568,12 +25628,21 @@
|
|||
<Compile Include="Pokemon\Attacks\Ice\Glaciate.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Ice\IceHammer.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Normal\Bestow.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Normal\Celebrate.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Normal\TearfulLook.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Normal\RevelationDance.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Normal\HoldBack.vb" />
|
||||
<Compile Include="Pokemon\Attacks\Normal\Round.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
|
@ -25594,9 +25663,16 @@
|
|||
<Compile Include="Pokemon\Attacks\Normal\SimpleBeam.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Poison\ToxicThread.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Poison\VenomDrench.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Psychic\PrismaticLaser.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Psychic\PsychicFangs.vb" />
|
||||
<Compile Include="Pokemon\Attacks\Psychic\HyperspaceHole.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
|
@ -25607,9 +25683,30 @@
|
|||
<Compile Include="Pokemon\Attacks\Rock\DiamondStorm.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Rock\Accelerock.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Steel\SmartStrike.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Steel\GearUp.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Steel\AnchorShot.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Electric\ZingZap.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Water\OriginPulse.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Water\Liquidation.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Attacks\Water\SparklingAria.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Compile>
|
||||
<Compile Include="Pokemon\Items\KeyItems\LibertySeaMap.vb" />
|
||||
<Compile Include="Pokemon\Items\Standard\DouseDrive.vb">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
|
|
|
@ -1486,7 +1486,7 @@
|
|||
returnMove = New Moves.Flying.DragonAscent()
|
||||
Case 621
|
||||
returnMove = New Moves.Dark.HyperspaceFury()
|
||||
'------------------------------------------------BEGIN Z MOVE STREAK
|
||||
'------------------------------------------------BEGIN Z MOVE STREAK 1
|
||||
'Case 622
|
||||
'Breakneck Blitz - Physical
|
||||
'Case 623
|
||||
|
@ -1561,79 +1561,80 @@
|
|||
'Twinkle Tackle - Special
|
||||
'Case 658
|
||||
'Catastropika
|
||||
'------------------------------------------------END Z MOVE STREAK
|
||||
'Case 659
|
||||
'returnMove = New Moves.Ground.ShoreUp()
|
||||
'Case 660
|
||||
'returnMove = New Moves.Bug.FirstImpression()
|
||||
'------------------------------------------------END Z MOVE STREAK 1
|
||||
Case 659
|
||||
returnMove = New Moves.Ground.ShoreUp()
|
||||
Case 660
|
||||
returnMove = New Moves.Bug.FirstImpression()
|
||||
'Case 661
|
||||
'Baneful Bunker
|
||||
'Case 662
|
||||
'returnMove = New Moves.Ghost.SpiritShackle()
|
||||
'Case 663
|
||||
'returnMove = New Moves.Dark.DarkestLariat()
|
||||
'Case 664
|
||||
'returnMove = New Moves.Water.SparklingAria()
|
||||
'Case 665
|
||||
'returnMove = New Moves.Ice.IceHammer()
|
||||
Case 662
|
||||
returnMove = New Moves.Ghost.SpiritShackle()
|
||||
Case 663
|
||||
returnMove = New Moves.Dark.DarkestLariat()
|
||||
Case 664
|
||||
returnMove = New Moves.Water.SparklingAria()
|
||||
Case 665
|
||||
returnMove = New Moves.Ice.IceHammer()
|
||||
'Case 666
|
||||
'Floral Healing - Double Battles
|
||||
'Case 667
|
||||
'returnMove = New Moves.Ground.HighHorsepower()
|
||||
'Case 668
|
||||
'returnMove = New Moves.Grass.StrengthSap()
|
||||
'Case 669
|
||||
'returnMove = New Moves.Grass.SolarBlade()
|
||||
'Case 670
|
||||
'returnMove = New Moves.Grass.Leafage()
|
||||
Case 667
|
||||
returnMove = New Moves.Ground.HighHorsepower()
|
||||
Case 668
|
||||
returnMove = New Moves.Grass.StrengthSap()
|
||||
Case 669
|
||||
returnMove = New Moves.Grass.SolarBlade()
|
||||
Case 670
|
||||
returnMove = New Moves.Grass.Leafage()
|
||||
'Case 671
|
||||
'Spotlight
|
||||
'Case 672
|
||||
'returnMove = New Moves.Poison.ToxicThread()
|
||||
Case 672
|
||||
returnMove = New Moves.Poison.ToxicThread()
|
||||
'Case 673
|
||||
'Laser Focus
|
||||
'Case 674
|
||||
'returnMove = New Moves.Steel.GearUp()
|
||||
Case 674
|
||||
returnMove = New Moves.Steel.GearUp()
|
||||
'Case 675
|
||||
'Throat Chop
|
||||
'Case 676
|
||||
'returnMove = New Moves.Bug.PollenPuff()
|
||||
'Case 677
|
||||
'returnMove = New Moves.Steel.AnchorShot()
|
||||
Case 676
|
||||
returnMove = New Moves.Bug.PollenPuff()
|
||||
Case 677
|
||||
returnMove = New Moves.Steel.AnchorShot()
|
||||
'Case 678
|
||||
'Psychic Terrain
|
||||
'Case 679
|
||||
'returnMove = New Moves.Bug.Lunge()
|
||||
'Case 680
|
||||
'returnMove = New Moves.Fire.FireLash()
|
||||
'Case 681
|
||||
'returnMove = New Moves.Dark.PowerTrip()
|
||||
'Case 682
|
||||
'returnMove = New Moves.Fire.BurnUp()
|
||||
Case 679
|
||||
returnMove = New Moves.Bug.Lunge()
|
||||
Case 680
|
||||
returnMove = New Moves.Fire.FireLash()
|
||||
Case 681
|
||||
returnMove = New Moves.Dark.PowerTrip()
|
||||
Case 682
|
||||
returnMove = New Moves.Fire.BurnUp()
|
||||
'Case 683
|
||||
'Speed Swap
|
||||
'Case 684
|
||||
'returnMove = New Moves.Steel.SmartStrike()
|
||||
Case 684
|
||||
returnMove = New Moves.Steel.SmartStrike()
|
||||
'Case 685
|
||||
'Purify - Double Battles
|
||||
'Case 686
|
||||
'returnMove = New Moves.Normal.RevelationDance()
|
||||
Case 686
|
||||
returnMove = New Moves.Normal.RevelationDance()
|
||||
'Case 687
|
||||
'Core Enforcer
|
||||
'Case 688
|
||||
'returnMove = New Moves.Grass.TropKick()
|
||||
Case 688
|
||||
returnMove = New Moves.Grass.TropKick()
|
||||
'Case 689
|
||||
'Instruct
|
||||
'Case 690
|
||||
'Beak Blast
|
||||
'Case 691
|
||||
'returnMove = New Moves.Dragon.ClangingScales()
|
||||
'Case 692
|
||||
'returnMove = New Moves.Dragon.DragonHammer()
|
||||
'Case 693
|
||||
'returnMove = New Moves.Dark.BrutalSwing()
|
||||
'Case 694
|
||||
'returnMove = New Moves.Ice.AuroraVeil()
|
||||
Case 691
|
||||
returnMove = New Moves.Dragon.ClangingScales()
|
||||
Case 692
|
||||
returnMove = New Moves.Dragon.DragonHammer()
|
||||
Case 693
|
||||
returnMove = New Moves.Dark.BrutalSwing()
|
||||
'Case 694
|
||||
'Aurora Veil
|
||||
'------------------------------------------------BEGIN Z MOVE STREAK 2
|
||||
'Case 695
|
||||
'Sinister Arrow Raid - Z-Move
|
||||
'Case 696
|
||||
|
@ -1652,44 +1653,46 @@
|
|||
'Extreme Evoboost - Z-Move
|
||||
'Case 703
|
||||
'Genesis Supernova - Z-Move
|
||||
'------------------------------------------------END Z MOVE STREAK 2
|
||||
'Case 704
|
||||
'Shell Trap
|
||||
'Case 705
|
||||
'returnMove = New Moves.Fairy.FleurCannon()
|
||||
'Case 706
|
||||
'returnMove = New Moves.Psychic.PsychicFangs()
|
||||
Case 705
|
||||
returnMove = New Moves.Fairy.FleurCannon()
|
||||
Case 706
|
||||
returnMove = New Moves.Psychic.PsychicFangs()
|
||||
'Case 707
|
||||
'Stomping Tantrum
|
||||
'Case 708
|
||||
'returnMove = New Moves.Ghost.ShadowBone()
|
||||
'Case 709
|
||||
'returnMove = New Moves.Rock.Accelerock()
|
||||
'Case 710
|
||||
'returnMove = New Moves.Water.Liquidation()
|
||||
'Case 711
|
||||
'returnMove = New Moves.Psychic.PrismaticLaser()
|
||||
Case 708
|
||||
returnMove = New Moves.Ghost.ShadowBone()
|
||||
Case 709
|
||||
returnMove = New Moves.Rock.Accelerock()
|
||||
Case 710
|
||||
returnMove = New Moves.Water.Liquidation()
|
||||
Case 711
|
||||
returnMove = New Moves.Psychic.PrismaticLaser()
|
||||
'Case 712
|
||||
'Spectral Thief
|
||||
'Case 713
|
||||
'Case 713
|
||||
'returnMove = New Moves.Steel.SunsteelStrike()
|
||||
'Case 714
|
||||
'Case 714
|
||||
'returnMove = New Moves.Ghost.MoongeistBeam()
|
||||
'Case 715
|
||||
'returnMove = New Moves.Normal.TearfulLook()
|
||||
'Case 716
|
||||
'returnMove = New Moves.Electric.ZingZap()
|
||||
'Case 717
|
||||
'returnMove = New Moves.Fairy.NaturesMadness()
|
||||
'Case 718
|
||||
'returnMove = New Moves.Normal.Multi-Attack()
|
||||
Case 715
|
||||
returnMove = New Moves.Normal.TearfulLook()
|
||||
Case 716
|
||||
returnMove = New Moves.Electric.ZingZap()
|
||||
Case 717
|
||||
returnMove = New Moves.Fairy.NaturesMadness()
|
||||
'Case 718
|
||||
'returnMove = New Moves.Normal.MultiAttack()
|
||||
'Case 719
|
||||
'10,000,000 Volt Thunderbolt - Z-Move
|
||||
'Case 720
|
||||
'Case 720
|
||||
'returnMove = New Moves.Fire.MindBlown()
|
||||
'Case 721
|
||||
'Plasma Fists
|
||||
'Case 722
|
||||
'Photon Geyser
|
||||
'------------------------------------------------BEGIN Z MOVE STREAK 3
|
||||
'Case 723
|
||||
'Light That Burns The Sky - Z-Move
|
||||
'Case 724
|
||||
|
@ -1702,6 +1705,7 @@
|
|||
'Splintered Stormshards - Z-Move
|
||||
'Case 728
|
||||
'Clangorous Soulblaze - Z-Move
|
||||
'------------------------------------------------END Z MOVE STREAK 3
|
||||
'Case 729
|
||||
'Blank
|
||||
Case 999
|
||||
|
|
|
@ -0,0 +1,74 @@
|
|||
Namespace BattleSystem.Moves.Bug
|
||||
|
||||
Public Class FirstImpression
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Bug)
|
||||
Me.ID = 660
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 90
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "First Impression"
|
||||
Me.Description = "Although this move has great power, it only works the first turn the user is in battle."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 2
|
||||
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.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim turns As Integer = BattleScreen.FieldEffects.OwnPokemonTurns
|
||||
If Own = False Then
|
||||
turns = BattleScreen.FieldEffects.OppPokemonTurns
|
||||
End If
|
||||
|
||||
If turns > 0 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,64 @@
|
|||
Namespace BattleSystem.Moves.Bug
|
||||
|
||||
Public Class Lunge
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Bug)
|
||||
Me.ID = 679
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 80
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Lunge"
|
||||
Me.Description = "The user makes a lunge at the target, attacking with full force. This also lowers the target's Attack stat."
|
||||
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.LowerAttack
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 1, "", "move:lunge")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,58 @@
|
|||
Namespace BattleSystem.Moves.Bug
|
||||
|
||||
Public Class PollenPuff
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Bug)
|
||||
Me.ID = 676
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 90
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Pollen Puff"
|
||||
Me.Description = "The user attacks the enemy with a pollen puff that explodes. If the target is an ally, it gives the ally a pollen puff that restores its HP instead."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentFoe
|
||||
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.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
|
||||
Me.IsBulletMove = True
|
||||
'#End
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,60 @@
|
|||
Namespace BattleSystem.Moves.Dark
|
||||
|
||||
Public Class BrutalSwing
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Dark)
|
||||
Me.ID = 693
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 60
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Brutal Swing"
|
||||
Me.Description = "The user swings its body around violently to inflict damage on everything in its vicinity."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.AllAdjacentTargets
|
||||
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.Nothing
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,62 @@
|
|||
Namespace BattleSystem.Moves.Dark
|
||||
|
||||
Public Class DarkestLariat
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Dark)
|
||||
Me.ID = 663
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 85
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Darkest Lariat"
|
||||
Me.Description = "The user swings both arms and hits the target. The target's stat changes don't affect this attack's damage."
|
||||
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
|
||||
Me.IsJawMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,64 @@
|
|||
Namespace BattleSystem.Moves.Dragon
|
||||
|
||||
Public Class ClangingScales
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Dragon)
|
||||
Me.ID = 691
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 110
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Clanging Scales"
|
||||
Me.Description = "The user rubs the scales on its entire body and makes a huge noise to attack the opposing Pokémon. The user's Defense stat goes down after the attack."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.AllAdjacentFoes
|
||||
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 = True
|
||||
|
||||
Me.IsAffectedBySubstitute = False
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.LowerDefense
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Defense", 1, "", "move:clangingscales")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,60 @@
|
|||
Namespace BattleSystem.Moves.Dragon
|
||||
|
||||
Public Class DragonHammer
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Dragon)
|
||||
Me.ID = 692
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 90
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Dragon Hammer"
|
||||
Me.Description = "The user uses its body like a hammer to attack the target and inflict damage."
|
||||
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
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,67 @@
|
|||
Namespace BattleSystem.Moves.Electric
|
||||
Public Class ZingZap
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Electric)
|
||||
Me.ID = 716
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 80
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Zing Zap"
|
||||
Me.Description = "A strong electric blast crashes down on the target, giving it an electric shock. This may also make the target flinch."
|
||||
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.CanFlinch
|
||||
|
||||
Me.EffectChances.Add(30)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
If Core.Random.Next(0, 100) < GetEffectChance(0, own, BattleScreen) Then
|
||||
BattleScreen.Battle.InflictFlinch(Not own, own, BattleScreen, "", "move:zingzap")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,64 @@
|
|||
Namespace BattleSystem.Moves.Fairy
|
||||
|
||||
Public Class FleurCannon
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fairy)
|
||||
Me.ID = 705
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 130
|
||||
Me.Accuracy = 90
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Fleur Cannon"
|
||||
Me.Description = "The user unleashes a strong beam. The attack's recoil harshly lowers the user's Sp. Atk stat."
|
||||
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 = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.LowerSpAttack
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(own, own, BattleScreen, "Special Attack", 2, "", "move:fleurcannon")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,72 @@
|
|||
Namespace BattleSystem.Moves.Fairy
|
||||
|
||||
Public Class NaturesMadness
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fairy)
|
||||
Me.ID = 717
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 90
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Nature's Madness"
|
||||
Me.Description = "The user hits the target with the force of nature. It halves the target's HP."
|
||||
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 = False
|
||||
Me.SnatchAffected = False
|
||||
Me.MirrorMoveAffected = True
|
||||
Me.KingsrockAffected = True
|
||||
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 = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
End Sub
|
||||
|
||||
Public Overrides Function GetDamage(Critical As Boolean, Own As Boolean, targetPokemon As Boolean, BattleScreen As BattleScreen, Optional ExtraParameter As String = "") As Integer
|
||||
Dim op As Pokemon = BattleScreen.OppPokemon
|
||||
If Own = False Then
|
||||
op = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
Dim damage As Integer = CInt(Math.Floor(op.HP / 2))
|
||||
|
||||
If damage <= 0 Then
|
||||
damage = 1
|
||||
End If
|
||||
|
||||
Return damage
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -34,9 +34,9 @@ Namespace BattleSystem.Moves.Fighting
|
|||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.HasSecondaryEffect = True
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
Namespace BattleSystem.Moves.Fire
|
||||
|
||||
Public Class BurnUp
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fire)
|
||||
Me.ID = 682
|
||||
Me.OriginalPP = 5
|
||||
Me.CurrentPP = 5
|
||||
Me.MaxPP = 5
|
||||
Me.Power = 130
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Burn Up"
|
||||
Me.Description = "To inflict massive damage, the user burns itself out. After using this move, the user will no longer be Fire type."
|
||||
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 = 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 Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If Own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
If p.IsType(Element.Types.Fire) = True Then
|
||||
Return False
|
||||
Else
|
||||
Return True
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
p.OriginalType1 = New Element(p.Type1.Type)
|
||||
p.OriginalType2 = New Element(p.Type2.Type)
|
||||
|
||||
If p.Type2.Type = Element.Types.Blank Then
|
||||
'Pure fire
|
||||
|
||||
p.Type1.Type = Element.Types.Blank
|
||||
Else
|
||||
'One of the types is fire
|
||||
|
||||
If p.Type1.Type = Element.Types.Fire Then
|
||||
p.Type1.Type = p.Type2.Type
|
||||
End If
|
||||
p.Type2.Type = Element.Types.Blank
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,64 @@
|
|||
Namespace BattleSystem.Moves.Fire
|
||||
|
||||
Public Class FireLash
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Fire)
|
||||
Me.ID = 680
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 80
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Fire Lash"
|
||||
Me.Description = "The user strikes the target with a burning lash. This also lowers the target's Defense stat."
|
||||
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.LowerDefense
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Defense", 1, "", "move:firelash")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,68 @@
|
|||
Namespace BattleSystem.Moves.Ghost
|
||||
|
||||
Public Class ShadowBone
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Ghost)
|
||||
Me.ID = 708
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 85
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Shadow Bone"
|
||||
Me.Description = "The user attacks by beating the target with a bone that contains a spirit. This may also lower the target's Defense stat."
|
||||
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 = 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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.CanLowerDefense
|
||||
|
||||
Me.EffectChances.Add(20)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
If Core.Random.Next(0, 100) < Me.GetEffectChance(0, own, BattleScreen) Then
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Defense", 1, "", "move:shadowbone")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,78 @@
|
|||
Namespace BattleSystem.Moves.Ghost
|
||||
|
||||
Public Class SpiritShackle
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Ghost)
|
||||
Me.ID = 662
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 80
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Spirit Shackle"
|
||||
Me.Description = "The user attacks while simultaneously stitching the target's shadow to the ground to prevent the target from escaping."
|
||||
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 = 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)
|
||||
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!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,57 @@
|
|||
Namespace BattleSystem.Moves.Grass
|
||||
|
||||
Public Class Leafage
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Grass)
|
||||
Me.ID = 670
|
||||
Me.OriginalPP = 40
|
||||
Me.CurrentPP = 40
|
||||
Me.MaxPP = 40
|
||||
Me.Power = 40
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Leafage"
|
||||
Me.Description = "The user attacks by pelting the target with leaves."
|
||||
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 = 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
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,201 @@
|
|||
Namespace BattleSystem.Moves.Grass
|
||||
|
||||
Public Class SolarBlade
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Grass)
|
||||
Me.ID = 669
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 125
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Solar Blade"
|
||||
Me.Description = "In this two-turn attack, the user gathers light and fills a blade with the light's energy, attacking the target on the next turn."
|
||||
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.MultiTurn
|
||||
End Sub
|
||||
|
||||
Public Overrides Function GetUseAccEvasion(own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim SolarBlade As Integer = BattleScreen.FieldEffects.OwnSolarBlade
|
||||
If own = False Then
|
||||
SolarBlade = BattleScreen.FieldEffects.OppSolarBlade
|
||||
End If
|
||||
|
||||
If SolarBlade = 0 Then
|
||||
Return False
|
||||
Else
|
||||
Return True
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim SolarBlade As Integer = BattleScreen.FieldEffects.OwnSolarBlade
|
||||
If Own = False Then
|
||||
SolarBlade = BattleScreen.FieldEffects.OppSolarBlade
|
||||
End If
|
||||
|
||||
If SolarBlade = 0 Then
|
||||
Me.FocusOppPokemon = False
|
||||
Else
|
||||
Me.FocusOppPokemon = True
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Overrides Function MoveFailBeforeAttack(Own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If Own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
Dim hasToCharge As Boolean = True
|
||||
|
||||
Dim blade As Integer = BattleScreen.FieldEffects.OwnSolarBlade
|
||||
If Own = False Then
|
||||
blade = BattleScreen.FieldEffects.OppSolarBlade
|
||||
End If
|
||||
|
||||
If blade = 0 Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " absorbed sunlight!"))
|
||||
Else
|
||||
hasToCharge = False
|
||||
End If
|
||||
|
||||
If hasToCharge = True Then
|
||||
If BattleScreen.FieldEffects.Weather = BattleWeather.WeatherTypes.Sunny Then
|
||||
hasToCharge = False
|
||||
Else
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "power herb" And BattleScreen.FieldEffects.CanUseItem(Own) = True And BattleScreen.FieldEffects.CanUseOwnItem(Own, BattleScreen) = True Then
|
||||
If BattleScreen.Battle.RemoveHeldItem(Own, Own, BattleScreen, "Power Herb pushed the use of Solar Blade!", "move:solarblade") = True Then
|
||||
hasToCharge = False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If hasToCharge = True Then
|
||||
If Own = True Then
|
||||
BattleScreen.FieldEffects.OwnSolarBlade = 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppSolarBlade = 1
|
||||
End If
|
||||
Return True
|
||||
Else
|
||||
If Own = True Then
|
||||
BattleScreen.FieldEffects.OwnSolarBlade = 0
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppSolarBlade = 0
|
||||
End If
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Function GetBasePower(own As Boolean, BattleScreen As BattleScreen) As Integer
|
||||
If BattleScreen.FieldEffects.Weather = BattleWeather.WeatherTypes.Rain Or BattleScreen.FieldEffects.Weather = BattleWeather.WeatherTypes.Sandstorm Or BattleScreen.FieldEffects.Weather = BattleWeather.WeatherTypes.Hailstorm Then
|
||||
Return CInt(Me.Power / 2)
|
||||
Else
|
||||
Return Me.Power
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Overrides Sub MoveSelected(own As Boolean, BattleScreen As BattleScreen)
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OwnSolarBlade = 0
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppSolarBlade = 0
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Overrides Function DeductPP(own As Boolean, BattleScreen As BattleScreen) As Boolean
|
||||
Dim solarBlade As Integer = BattleScreen.FieldEffects.OwnSolarBlade
|
||||
If own = False Then
|
||||
solarBlade = BattleScreen.FieldEffects.OppSolarBlade
|
||||
End If
|
||||
|
||||
If solarBlade = 0 Then
|
||||
Return False
|
||||
Else
|
||||
Return True
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Sub MoveFails(own As Boolean, BattleScreen As BattleScreen)
|
||||
If own = True Then
|
||||
BattleScreen.FieldEffects.OwnSolarBlade = 0
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppSolarBlade = 0
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveMisses(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub AbsorbedBySubstitute(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveProtectedDetected(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub InflictedFlinch(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub IsSleeping(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub HurtItselfInConfusion(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub IsAttracted(own As Boolean, BattleScreen As BattleScreen)
|
||||
MoveFails(own, BattleScreen)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,92 @@
|
|||
Namespace BattleSystem.Moves.Grass
|
||||
|
||||
Public Class StrengthSap
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Grass)
|
||||
Me.ID = 668
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Strength Sap"
|
||||
Me.Description = "The user restores its HP by the same amount as the target's Attack stat. It also lowers the target's Attack stat."
|
||||
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 = True
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
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 heal As Integer = op.StatAttack
|
||||
|
||||
Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 1, "", "move:strengthsap")
|
||||
If b = True Then
|
||||
If op.Ability.Name.ToLower() = "liquid ooze" And BattleScreen.FieldEffects.CanUseAbility(Not own, BattleScreen) = True Then
|
||||
BattleScreen.Battle.ReduceHP(heal, own, own, BattleScreen, "Liquid Ooze damaged " & p.GetDisplayName() & "!", "liquidooze")
|
||||
Else
|
||||
If Not p.Item Is Nothing Then
|
||||
If p.Item.Name.ToLower() = "big root" And BattleScreen.FieldEffects.CanUseItem(own) = True And BattleScreen.FieldEffects.CanUseOwnItem(own, BattleScreen) = True Then
|
||||
heal = CInt(Math.Ceiling(heal * (130 / 100)))
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim healBlock As Integer = BattleScreen.FieldEffects.OppHealBlock
|
||||
If own = False Then
|
||||
healBlock = BattleScreen.FieldEffects.OwnHealBlock
|
||||
End If
|
||||
If healBlock = 0 Then
|
||||
BattleScreen.Battle.GainHP(heal, own, own, BattleScreen, op.GetDisplayName() & " had its energy drained!", "move:strengthsap")
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
If b = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,64 @@
|
|||
Namespace BattleSystem.Moves.Grass
|
||||
|
||||
Public Class TropKick
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Grass)
|
||||
Me.ID = 688
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 70
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Trop Kick"
|
||||
Me.Description = " The user lands an intense kick of tropical origins on the target. This also lowers the target's Attack stat."
|
||||
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.LowerAttack
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Attack", 1, "", "move:tropkick")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,57 @@
|
|||
Namespace BattleSystem.Moves.Ground
|
||||
|
||||
Public Class HighHorsepower
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Ground)
|
||||
Me.ID = 667
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 95
|
||||
Me.Accuracy = 95
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "High Horsepower"
|
||||
Me.Description = "The user fiercely attacks the target using its entire body."
|
||||
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
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,83 @@
|
|||
Namespace BattleSystem.Moves.Ground
|
||||
|
||||
Public Class ShoreUp
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Ground)
|
||||
Me.ID = 659
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Shore Up"
|
||||
Me.Description = "The user regains up to half of its max HP. It restores more HP in a sandstorm."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.Self
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = False
|
||||
Me.MagicCoatAffected = False
|
||||
Me.SnatchAffected = True
|
||||
Me.MirrorMoveAffected = False
|
||||
Me.KingsrockAffected = False
|
||||
Me.CounterAffected = False
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = False
|
||||
Me.ImmunityAffected = False
|
||||
Me.HasSecondaryEffect = False
|
||||
Me.RemovesFrozen = False
|
||||
|
||||
Me.IsHealingMove = True
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = False
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = False
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Healing
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim p As Pokemon = BattleScreen.OwnPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OppPokemon
|
||||
End If
|
||||
|
||||
Dim restoreHP As Integer = 1
|
||||
Select Case BattleScreen.FieldEffects.Weather
|
||||
Case BattleWeather.WeatherTypes.Sandstorm
|
||||
restoreHP = CInt(Math.Ceiling((2 / 3) * p.MaxHP))
|
||||
Case BattleWeather.WeatherTypes.Clear
|
||||
restoreHP = CInt(Math.Ceiling((1 / 2) * p.MaxHP))
|
||||
Case Else
|
||||
restoreHP = CInt(Math.Ceiling((1 / 4) * p.MaxHP))
|
||||
End Select
|
||||
|
||||
If p.HP < p.MaxHP And p.HP > 0 Then
|
||||
BattleScreen.Battle.GainHP(restoreHP, own, own, BattleScreen, p.GetDisplayName() & "'s HP was restored!", "move:shoreup")
|
||||
Else
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,61 @@
|
|||
Namespace BattleSystem.Moves.Ice
|
||||
|
||||
Public Class IceHammer
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Ice)
|
||||
Me.ID = 665
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 100
|
||||
Me.Accuracy = 90
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Ice Hammer"
|
||||
Me.Description = "The user swings and hits with its strong, heavy fist. It lowers the user's Speed, 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 = False
|
||||
Me.CounterAffected = True
|
||||
|
||||
Me.DisabledWhileGravity = False
|
||||
Me.UseEffectiveness = True
|
||||
Me.ImmunityAffected = True
|
||||
Me.RemovesFrozen = False
|
||||
Me.HasSecondaryEffect = False
|
||||
|
||||
Me.IsHealingMove = False
|
||||
Me.IsRecoilMove = False
|
||||
Me.IsPunchingMove = False
|
||||
Me.IsDamagingMove = True
|
||||
Me.IsProtectMove = False
|
||||
Me.IsSoundMove = False
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
BattleScreen.Battle.LowerStat(own, own, BattleScreen, "Speed", 1, "", "move:icehammer")
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,71 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class RevelationDance
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 686
|
||||
Me.OriginalPP = 15
|
||||
Me.CurrentPP = 15
|
||||
Me.MaxPP = 15
|
||||
Me.Power = 90
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Revelation Dance"
|
||||
Me.Description = "The user attacks the target by dancing very hard. The user's type determines the type of this move."
|
||||
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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Nothing
|
||||
End Sub
|
||||
|
||||
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
|
||||
|
||||
Return New Element(p.Type1.Type)
|
||||
|
||||
Return Me.Type
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,68 @@
|
|||
Namespace BattleSystem.Moves.Normal
|
||||
|
||||
Public Class TearfulLook
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Normal)
|
||||
Me.ID = 715
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Cute
|
||||
Me.Name = "Tearful Look"
|
||||
Me.Description = "The user gets teary eyed to make the target lose its combative spirit. This lowers the target's Attack and Sp. Atk stats."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = False
|
||||
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.LowerDefense
|
||||
Me.AIField2 = AIField.LowerSpDefense
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Defense", 1, "", "move:tearfullook")
|
||||
Dim d As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Special Defense", 1, "", "move:tearfullook")
|
||||
If b = False AndAlso DisabledWhileGravity = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,68 @@
|
|||
Namespace BattleSystem.Moves.Poison
|
||||
|
||||
Public Class ToxicThread
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Poison)
|
||||
Me.ID = 672
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Toxic Thread"
|
||||
Me.Description = "The user shoots poisonous threads to poison the target and lower the target's Speed stat."
|
||||
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.Poison
|
||||
Me.AIField2 = AIField.LowerSpeed
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim b As Boolean = BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Speed", 1, "", "move:toxicthread")
|
||||
Dim d As Boolean = BattleScreen.Battle.InflictPoison(Not own, own, BattleScreen, False, "", "move:toxicthread")
|
||||
If b = False AndAlso d = False Then
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject(Me.Name & " failed!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,68 @@
|
|||
Namespace BattleSystem.Moves.Psychic
|
||||
|
||||
Public Class PrismaticLaser
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Psychic)
|
||||
Me.ID = 711
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 160
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Prismatic Laser"
|
||||
Me.Description = "The user shoots powerful lasers using the power of a prism. The user can't move on the next turn."
|
||||
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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.Recharge
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen)
|
||||
If Own = True Then
|
||||
BattleScreen.FieldEffects.OwnRecharge += 1
|
||||
Else
|
||||
BattleScreen.FieldEffects.OppRecharge += 1
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,90 @@
|
|||
Namespace BattleSystem.Moves.Psychic
|
||||
|
||||
Public Class PsychicFangs
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Psychic)
|
||||
Me.ID = 706
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 85
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Psychic Fangs"
|
||||
Me.Description = "The user bites the target with its psychic capabilities. This can also destroy Light Screen and Reflect."
|
||||
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
|
||||
Me.IsJawMove = True
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.RemoveReflectLightscreen
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
Dim p As Pokemon = BattleScreen.OppPokemon
|
||||
If own = False Then
|
||||
p = BattleScreen.OwnPokemon
|
||||
End If
|
||||
|
||||
If p.IsType(Element.Types.Ghost) = False Then
|
||||
If own = True Then
|
||||
If BattleScreen.FieldEffects.OppLightScreen > 0 Then
|
||||
BattleScreen.FieldEffects.OppLightScreen = 0
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("The Light Screen wore off!"))
|
||||
End If
|
||||
If BattleScreen.FieldEffects.OppReflect > 0 Then
|
||||
BattleScreen.FieldEffects.OppReflect = 0
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("The Reflect wore off!"))
|
||||
End If
|
||||
Else
|
||||
If BattleScreen.FieldEffects.OwnLightScreen > 0 Then
|
||||
BattleScreen.FieldEffects.OwnLightScreen = 0
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("The Light Screen wore off!"))
|
||||
End If
|
||||
If BattleScreen.FieldEffects.OwnReflect > 0 Then
|
||||
BattleScreen.FieldEffects.OwnReflect = 0
|
||||
BattleScreen.BattleQuery.Add(New TextQueryObject("The Reflect wore off!"))
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,60 @@
|
|||
Namespace BattleSystem.Moves.Rock
|
||||
|
||||
Public Class Accelerock
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Rock)
|
||||
Me.ID = 709
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 40
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Cool
|
||||
Me.Name = "Accelerock"
|
||||
Me.Description = "The user smashes into the target at high speed. This move always goes first."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.OneAdjacentTarget
|
||||
Me.Priority = 1
|
||||
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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.HighPriority
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,78 @@
|
|||
Namespace BattleSystem.Moves.Steel
|
||||
|
||||
Public Class AnchorShot
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Steel)
|
||||
Me.ID = 677
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 80
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Anchor Shot"
|
||||
Me.Description = "The user entangles the target with its anchor chain while attacking. The target becomes unable to flee."
|
||||
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 = 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 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!"))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,72 @@
|
|||
Namespace BattleSystem.Moves.Steel
|
||||
|
||||
Public Class GearUp
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Steel)
|
||||
Me.ID = 674
|
||||
Me.OriginalPP = 20
|
||||
Me.CurrentPP = 20
|
||||
Me.MaxPP = 20
|
||||
Me.Power = 0
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Status
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Gear Up"
|
||||
Me.Description = "The user engages its gears to raise the Attack and Sp. Atk stats of ally Pokémon with the Plus or Minus Ability."
|
||||
Me.CriticalChance = 0
|
||||
Me.IsHMMove = False
|
||||
Me.Target = Targets.AllAllies
|
||||
Me.Priority = 0
|
||||
Me.TimesToAttack = 1
|
||||
'#End
|
||||
|
||||
'#SpecialDefinitions
|
||||
Me.MakesContact = False
|
||||
Me.ProtectAffected = False
|
||||
Me.MagicCoatAffected = False
|
||||
Me.SnatchAffected = True
|
||||
Me.MirrorMoveAffected = False
|
||||
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 = False
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = False
|
||||
Me.UseAccEvasion = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.RaiseAttack
|
||||
Me.AIField2 = AIField.RaiseSpAttack
|
||||
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
|
||||
If op.Ability.ID = 57 OrElse op.Ability.ID = 58 Then
|
||||
BattleScreen.Battle.RaiseStat(Not own, own, BattleScreen, "Attack", 1, "", "move:gearup")
|
||||
BattleScreen.Battle.RaiseStat(Not own, own, BattleScreen, "Special Attack", 1, "", "move:gearup")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,61 @@
|
|||
Namespace BattleSystem.Moves.Steel
|
||||
|
||||
Public Class SmartStrike
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Steel)
|
||||
Me.ID = 684
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 70
|
||||
Me.Accuracy = 0
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Smart
|
||||
Me.Name = "Smart Strike"
|
||||
Me.Description = " The user stabs the target with a sharp horn. This attack never misses."
|
||||
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
|
||||
Me.UseAccEvasion = False
|
||||
'#End
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.CannotMiss
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,68 @@
|
|||
Namespace BattleSystem.Moves.Water
|
||||
|
||||
Public Class Liquidation
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Water)
|
||||
Me.ID = 710
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 85
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Physical
|
||||
Me.ContestCategory = ContestCategories.Tough
|
||||
Me.Name = "Liquidation"
|
||||
Me.Description = "The user slams into the target using a full-force blast of water. This may also lower the target's Defense stat."
|
||||
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
|
||||
|
||||
Me.AIField1 = AIField.Damage
|
||||
Me.AIField2 = AIField.CanLowerDefense
|
||||
|
||||
Me.EffectChances.Add(20)
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
If Core.Random.Next(0, 100) < Me.GetEffectChance(0, own, BattleScreen) Then
|
||||
BattleScreen.Battle.LowerStat(Not own, own, BattleScreen, "Defense", 1, "", "move:liquidation")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|
|
@ -0,0 +1,69 @@
|
|||
Namespace BattleSystem.Moves.Water
|
||||
|
||||
Public Class SparklingAria
|
||||
|
||||
Inherits Attack
|
||||
|
||||
Public Sub New()
|
||||
'#Definitions
|
||||
Me.Type = New Element(Element.Types.Water)
|
||||
Me.ID = 664
|
||||
Me.OriginalPP = 10
|
||||
Me.CurrentPP = 10
|
||||
Me.MaxPP = 10
|
||||
Me.Power = 90
|
||||
Me.Accuracy = 100
|
||||
Me.Category = Categories.Special
|
||||
Me.ContestCategory = ContestCategories.Beauty
|
||||
Me.Name = "Sparkling Aria"
|
||||
Me.Description = "The user bursts into song, emitting many bubbles. Any Pokémon suffering from a burn will be healed by the touch of these bubbles."
|
||||
Me.CriticalChance = 1
|
||||
Me.IsHMMove = True
|
||||
Me.Target = Targets.AllAdjacentTargets
|
||||
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 = True
|
||||
|
||||
Me.IsAffectedBySubstitute = True
|
||||
Me.IsOneHitKOMove = False
|
||||
Me.IsWonderGuardAffected = True
|
||||
'#End
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MoveHits(own As Boolean, BattleScreen As BattleScreen)
|
||||
If own = True Then
|
||||
If BattleScreen.OppPokemon.Status = Pokemon.StatusProblems.Burn Then
|
||||
BattleScreen.Battle.CureStatusProblem(Not own, own, BattleScreen, BattleScreen.OppPokemon.GetDisplayName() & " was cured of burn.", "move:sparklingaria")
|
||||
End If
|
||||
Else
|
||||
If BattleScreen.OwnPokemon.Status = Pokemon.StatusProblems.Burn Then
|
||||
BattleScreen.Battle.CureStatusProblem(Not own, own, BattleScreen, BattleScreen.OwnPokemon.GetDisplayName() & " was cured of burn.", "move:sparklingaria")
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
End Namespace
|