This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using PkmnLib.Plugin.Gen7.Scripts.Pokemon;
|
||||
using PkmnLib.Plugin.Gen7.Scripts.Side;
|
||||
|
||||
namespace PkmnLib.Plugin.Gen7.Scripts.Moves;
|
||||
|
||||
@@ -8,9 +9,26 @@ public class Feint : Script, IScriptOnBeforeHit
|
||||
/// <inheritdoc />
|
||||
public void OnBeforeHit(IExecutingMove move, IPokemon target, byte hitIndex)
|
||||
{
|
||||
if (target.Volatile.Contains<ProtectionEffectScript>())
|
||||
var toRemove = new List<ScriptContainer>();
|
||||
foreach (var script in target.Volatile)
|
||||
{
|
||||
target.Volatile.Remove<ProtectionEffectScript>();
|
||||
if (script.Script is ProtectionEffectScript)
|
||||
{
|
||||
toRemove.Add(script);
|
||||
}
|
||||
}
|
||||
foreach (var script in toRemove)
|
||||
{
|
||||
script.Clear();
|
||||
}
|
||||
|
||||
var battleData = target.BattleData;
|
||||
if (battleData is not null)
|
||||
{
|
||||
if (battleData.BattleSide.VolatileScripts.Contains<CraftyShieldEffect>())
|
||||
battleData.BattleSide.VolatileScripts.Remove<CraftyShieldEffect>();
|
||||
if (battleData.BattleSide.VolatileScripts.Contains<MatBlockEffect>())
|
||||
battleData.BattleSide.VolatileScripts.Remove<MatBlockEffect>();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user