diff --git a/2.5DHero/2.5DHero/Battle/BattleSystemV2/Battle.vb b/2.5DHero/2.5DHero/Battle/BattleSystemV2/Battle.vb index 3552f8c1c..66e9c8a09 100644 --- a/2.5DHero/2.5DHero/Battle/BattleSystemV2/Battle.vb +++ b/2.5DHero/2.5DHero/Battle/BattleSystemV2/Battle.vb @@ -199,7 +199,7 @@ End Sub Public Sub StartRound(ByVal BattleScreen As BattleScreen) - If BattleScreen.OwnFaint OrElse BattleScreen.OppFaint Then + If BattleScreen.OwnFaint OrElse (BattleScreen.OppFaint AndAlso BattleScreen.IsRemoteBattle) Then IsAfterFaint = True End If BattleScreen.BattleMenu.MenuState = BattleMenu.MenuStates.Main @@ -1873,7 +1873,7 @@ End If End If moveUsed.MoveRecoil(own, BattleScreen) - + moveUsed.MoveRecharge(own, BattleScreen) If op.HP > 0 Then If own = True Then If BattleScreen.FieldEffects.OppRageCounter > 0 Then diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Attack.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Attack.vb index a12472047..55735c32e 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Attack.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Attack.vb @@ -1589,6 +1589,14 @@ 'DO NOTHING HERE (will do recoil if moves overrides it) End Sub + Public Overridable Sub MoveRecharge(ByVal own As Boolean, ByVal BattleScreen As BattleScreen) + 'DO NOTHING HERE (will do recoil if moves overrides it) + End Sub + + Public Overridable Sub MoveSwitch(ByVal own As Boolean, ByVal BattleScreen As BattleScreen) + 'DO NOTHING HERE (will do recoil if moves overrides it) + End Sub + ''' ''' Event that occurs when the move misses its target. ''' diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Dragon/RoarOfTime.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Dragon/RoarOfTime.vb index 45a36e2b9..e97353d68 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Dragon/RoarOfTime.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Dragon/RoarOfTime.vb @@ -55,7 +55,7 @@ Me.AIField2 = AIField.Recharge End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Fire/BlastBurn.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Fire/BlastBurn.vb index 87ec2f00c..9f3e1fe17 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Fire/BlastBurn.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Fire/BlastBurn.vb @@ -55,7 +55,7 @@ Namespace BattleSystem.Moves.Fire Me.AIField2 = AIField.Recharge End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Grass/FrenzyPlant.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Grass/FrenzyPlant.vb index aa1c804ac..9c26fd3f1 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Grass/FrenzyPlant.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Grass/FrenzyPlant.vb @@ -55,7 +55,7 @@ Namespace BattleSystem.Moves.Grass Me.AIField2 = AIField.Recharge End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/GigaImpact.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/GigaImpact.vb index 7a80ba3af..b20fe3b5c 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/GigaImpact.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/GigaImpact.vb @@ -55,7 +55,7 @@ Me.AIField2 = AIField.MultiTurn End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/HyperBeam.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/HyperBeam.vb index 556919445..bec02ba45 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/HyperBeam.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Normal/HyperBeam.vb @@ -55,7 +55,7 @@ Me.AIField2 = AIField.Recharge End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Rock/RockWrecker.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Rock/RockWrecker.vb index 8cafc9701..94b087afb 100644 Binary files a/2.5DHero/2.5DHero/Pokemon/Attacks/Rock/RockWrecker.vb and b/2.5DHero/2.5DHero/Pokemon/Attacks/Rock/RockWrecker.vb differ diff --git a/2.5DHero/2.5DHero/Pokemon/Attacks/Water/Hydrocannon.vb b/2.5DHero/2.5DHero/Pokemon/Attacks/Water/Hydrocannon.vb index 666a9079f..45c70fc28 100644 --- a/2.5DHero/2.5DHero/Pokemon/Attacks/Water/Hydrocannon.vb +++ b/2.5DHero/2.5DHero/Pokemon/Attacks/Water/Hydrocannon.vb @@ -55,7 +55,7 @@ Me.AIField2 = AIField.Recharge End Sub - Public Overrides Sub PreAttack(Own As Boolean, BattleScreen As BattleScreen) + Public Overrides Sub MoveRecharge(Own As Boolean, BattleScreen As BattleScreen) If Own = True Then BattleScreen.FieldEffects.OwnRecharge += 1 Else