diff --git a/P3D/Battle/BattleSystemV2/Battle.vb b/P3D/Battle/BattleSystemV2/Battle.vb index 0c31a23ea..af9ed0f99 100644 --- a/P3D/Battle/BattleSystemV2/Battle.vb +++ b/P3D/Battle/BattleSystemV2/Battle.vb @@ -1700,7 +1700,19 @@ If op.StatAttack = 6 Then BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & "'s Sap Sipper made " & moveUsed.Name & " useless!")) Else - RaiseStat(Not own, Not own, BattleScreen, "Attack", 1, op.GetDisplayName() & "'s Sap Sipper absorbed the attack!", "sapsnipper") + RaiseStat(Not own, Not own, BattleScreen, "Attack", 1, op.GetDisplayName() & "'s Sap Sipper absorbed the attack!", "sapsipper") + End If + End If + End If + If op.Ability.Name.ToLower() = "flash fire" AndAlso moveUsed.GetAttackType(own, BattleScreen).Type = Element.Types.Fire AndAlso moveWorks = True Then + If BattleScreen.FieldEffects.CanUseAbility(Not own, BattleScreen) = True Then + moveWorks = False + ChangeCameraAngel(2, own, BattleScreen) + BattleScreen.BattleQuery.Add(New TextQueryObject(op.GetDisplayName() & "'s Flash Fire made " & moveUsed.Name & " useless!")) + If own = True Then + BattleScreen.FieldEffects.OppFlashFire = 1 + Else + BattleScreen.FieldEffects.OwnFlashFire = 1 End If End If End If @@ -3153,7 +3165,7 @@ 'Do nothing Case Else 'Print message given in 'message' BattleScreen.BattleQuery.Add(New TextQueryObject(message)) - BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " is poisoned")) + BattleScreen.BattleQuery.Add(New TextQueryObject(p.GetDisplayName() & " is poisoned!")) End Select End If If p.Ability.Name.ToLower() = "synchronize" AndAlso from <> own Then @@ -6457,6 +6469,7 @@ .OwnTruantRound = 0 .OwnTaunt = 0 .OwnSmacked = 0 + .OwnFlashFire = 0 .OwnRageCounter = 0 .OwnUproar = 0 If .OwnUsedBatonPass = False Then .OwnFocusEnergy = 0 @@ -6783,6 +6796,7 @@ .OppTruantRound = 0 .OppTaunt = 0 .OppSmacked = 0 + .OppFlashFire = 0 .OppRageCounter = 0 .OppUproar = 0 If .OppUsedBatonPass = False Then .OppFocusEnergy = 0 diff --git a/P3D/Battle/BattleSystemV2/BattleCalculation.vb b/P3D/Battle/BattleSystemV2/BattleCalculation.vb index 9203a94e9..2fcb0cffa 100644 --- a/P3D/Battle/BattleSystemV2/BattleCalculation.vb +++ b/P3D/Battle/BattleSystemV2/BattleCalculation.vb @@ -1961,20 +1961,32 @@ End If End Select - If p.Ability.Name.ToLower() = "flash fire" Then - If BattleScreen.FieldEffects.CanUseAbility(Own, BattleScreen) = True Then - If Own = True Then - If Not BattleScreen.FieldEffects.OppLastMove Is Nothing Then - If BattleScreen.FieldEffects.OppLastMove.Type.Type = Element.Types.Fire And Attack.Type.Type = Element.Types.Fire Then - FF = 1.5F - End If - End If - Else - If Not BattleScreen.FieldEffects.OwnLastMove Is Nothing Then - If BattleScreen.FieldEffects.OwnLastMove.Type.Type = Element.Types.Fire And Attack.Type.Type = Element.Types.Fire Then - FF = 1.5F - End If - End If + 'If p.Ability.Name.ToLower() = "flash fire" Then + ' If BattleScreen.FieldEffects.CanUseAbility(Own, BattleScreen) = True Then + ' If Own = True Then + ' If Not BattleScreen.FieldEffects.OppLastMove Is Nothing Then + ' If BattleScreen.FieldEffects.OppLastMove.Type.Type = Element.Types.Fire And Attack.Type.Type = Element.Types.Fire Then + ' FF = 1.5F + ' End If + ' End If + ' Else + ' If Not BattleScreen.FieldEffects.OwnLastMove Is Nothing Then + ' If BattleScreen.FieldEffects.OwnLastMove.Type.Type = Element.Types.Fire And Attack.Type.Type = Element.Types.Fire Then + ' FF = 1.5F + ' End If + ' End If + ' End If + ' End If + 'End If + + If Attack.Type.Type = Element.Types.Fire Then + If Own = True Then + If BattleScreen.FieldEffects.OwnFlashFire = 1 Then + FF = 1.5F + End If + Else + If BattleScreen.FieldEffects.OppFlashFire = 1 Then + FF = 1.5F End If End If End If diff --git a/P3D/Battle/BattleSystemV2/FieldEffects.vb b/P3D/Battle/BattleSystemV2/FieldEffects.vb index 99e85c7e5..df96956be 100644 --- a/P3D/Battle/BattleSystemV2/FieldEffects.vb +++ b/P3D/Battle/BattleSystemV2/FieldEffects.vb @@ -14,6 +14,7 @@ Public OwnRageCounter As Integer = 0 'Rage move counter Public OwnUproar As Integer = 0 'Uproar move counter Public OwnFocusEnergy As Integer = 0 'Focus energy move counter + Public OwnFlashFire As Integer = 0 'Flash Fire move counter Public OwnEndure As Integer = 0 'Endure move counter Public OwnProtectCounter As Integer = 0 'Protect move counter Public OwnKingsShieldCounter As Integer = 0 'Kings Shield move counter @@ -146,6 +147,7 @@ Public OppRageCounter As Integer = 0 Public OppUproar As Integer = 0 Public OppFocusEnergy As Integer = 0 + Public OppFlashFire As Integer = 0 Public OppEndure As Integer = 0 Public OppProtectCounter As Integer = 0 Public OppKingsShieldCounter As Integer = 0