From 5dd47e5b2d529b4ac1e36a8a282f506fee5a3cd6 Mon Sep 17 00:00:00 2001 From: JappaWakka Date: Tue, 1 Jul 2025 08:30:16 +0200 Subject: [PATCH] Made Triple Kick increase in power with each hit --- P3D/Battle/BattleSystemV2/Battle.vb | 3 +++ P3D/Battle/BattleSystemV2/FieldEffects.vb | 3 +++ P3D/Pokemon/Attacks/Fighting/TripleKick.vb | 12 ++++++++++++ 3 files changed, 18 insertions(+) diff --git a/P3D/Battle/BattleSystemV2/Battle.vb b/P3D/Battle/BattleSystemV2/Battle.vb index 22f68a385..69c5cb6a1 100644 --- a/P3D/Battle/BattleSystemV2/Battle.vb +++ b/P3D/Battle/BattleSystemV2/Battle.vb @@ -2858,6 +2858,9 @@ End Select End If End If + If BattleScreen.FieldEffects.TempTripleKick > 0 Then + BattleScreen.FieldEffects.TempTripleKick = 0 + End If Else 'If not damaging move Dim lastMove As Attack = BattleScreen.FieldEffects.OppLastMove If own = False Then diff --git a/P3D/Battle/BattleSystemV2/FieldEffects.vb b/P3D/Battle/BattleSystemV2/FieldEffects.vb index 091fc5a45..5533aa5b7 100644 --- a/P3D/Battle/BattleSystemV2/FieldEffects.vb +++ b/P3D/Battle/BattleSystemV2/FieldEffects.vb @@ -261,6 +261,9 @@ Public OppUsedMoves As New List(Of Integer) + 'Global Temporary Variables + Public TempTripleKick As Integer = 0 'If Triple Kick is used, this will be increased every time it's hit + 'Weather Private _weather As BattleWeather.WeatherTypes = BattleWeather.WeatherTypes.Clear Public WeatherRounds As Integer = 0 diff --git a/P3D/Pokemon/Attacks/Fighting/TripleKick.vb b/P3D/Pokemon/Attacks/Fighting/TripleKick.vb index 4216b863d..f1a8126ee 100644 --- a/P3D/Pokemon/Attacks/Fighting/TripleKick.vb +++ b/P3D/Pokemon/Attacks/Fighting/TripleKick.vb @@ -52,6 +52,18 @@ '#End End Sub + Public Overrides Function GetBasePower(ByVal own As Boolean, ByVal BattleScreen As BattleScreen) As Integer + Dim TripleKick As Integer = 10 + Select Case BattleScreen.FieldEffects.TempTripleKick + Case 1 + TripleKick = 20 + Case 2 + TripleKick = 30 + End Select + BattleScreen.FieldEffects.TempTripleKick += 1 + Return TripleKick + End Function + Public Overrides Function GetTimesToAttack(own As Boolean, BattleScreen As BattleScreen) As Integer Dim r As Integer = Core.Random.Next(0, 100) If r < 73 Then