Class StickyBarbTests

java.lang.Object
com.pixelmonmod.pixelmon.api.test.impl.item.StickyBarbTests

public class StickyBarbTests extends Object
Tests for the Sticky Barb
  • Constructor Details

    • StickyBarbTests

      public StickyBarbTests()
  • Method Details

    • testStickyBarbDamagesHolderForOneEigthOfHealth

      public static CompletableFuture<TestResult> testStickyBarbDamagesHolderForOneEigthOfHealth(BattleTestHelper helper)
      At the end of the turn, the Sticky Barb damages the holder by 12.5% of its maximum HP each turn.

      In this test, a Snorlax that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Magikarp that knows the move Splash.

           Turn 1
           The Magikarp uses Splash.
           The Snorlax uses Sleep Talk.
           The Snorlax's Sticky Barb damages it.
           -
           We verify that the Snorlax has a held item.
           We verify that the Snorlax is not at full health.
           We verify that the Snorlax is missing health equivalent to 1/8 of its max HP.
       
    • testStickyBarbTransfersToAttackerOnContact

      public static CompletableFuture<TestResult> testStickyBarbTransfersToAttackerOnContact(BattleTestHelper helper)
      If a Pokémon with no held item hits a Pokémon holding a Sticky Barb with a contact move, including Knock Off, the Sticky Barb will transfer to the Pokémon that used the move (even if the original holder has the Sticky Hold Ability).

      In this test, a Snorlax that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Magikarp that knows the move Tackle.

           Turn 1
           The Magikarp uses Tackle.
           The Snorlax's Sticky Barb transfers to Magikarp.
           The Snorlax uses Sleep Talk.
           The Magikarp is damaged by the Sticky Barb.
           -
           We verify that the Magikarp has a held item.
           We verify that the Magikarp is not at full health.
           We verify that the Magikarp is missing health equivalent to 1/8 of its max HP.
       
    • testStickyBarbTransfersToAttackerWhenAttackerUsesKnockOff

      public static CompletableFuture<TestResult> testStickyBarbTransfersToAttackerWhenAttackerUsesKnockOff(BattleTestHelper helper)
      If a Pokémon with no held item hits a Pokémon holding a Sticky Barb with a contact move, including Knock Off, the Sticky Barb will transfer to the Pokémon that used the move (even if the original holder has the Sticky Hold Ability).

      In this test, a Snorlax that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Victreebel that knows the move Knock Off.

           Turn 1
           The Victreebel uses Knock Off.
           The Snorlax's Sticky Barb transfers to Victreebel.
           The Snorlax uses Sleep Talk.
           The Victreebel is damaged by the Sticky Barb.
           -
           We verify that the Victreebel has a held item.
           We verify that the Victreebel is not at full health.
           We verify that the Victreebel is missing health equivalent to 1/8 of its max HP.
       
    • testStickyBarbTransfersToAttackerEvenIfDefenderHasStickyHold

      public static CompletableFuture<TestResult> testStickyBarbTransfersToAttackerEvenIfDefenderHasStickyHold(BattleTestHelper helper)
      If a Pokémon with no held item hits a Pokémon holding a Sticky Barb with a contact move, including Knock Off, the Sticky Barb will transfer to the Pokémon that used the move (even if the original holder has the Sticky Hold Ability).

      In this test, a Swalot that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Victreebel that knows the move Knock Off.

           Turn 1
           The Victreebel uses Knock Off.
           The Swalot's Sticky Barb transfers to Victreebel.
           The Swalot uses Sleep Talk.
           The Victreebel is damaged by the Sticky Barb.
           -
           We verify that the Victreebel has a held item.
           We verify that the Victreebel is not at full health.
           We verify that the Victreebel is missing health equivalent to 1/8 of its max HP.
       
    • testStickyBarbDoesNotTransferIfTheAttackerHasASubstitute

      public static CompletableFuture<TestResult> testStickyBarbDoesNotTransferIfTheAttackerHasASubstitute(BattleTestHelper helper)
      If the transfer target has a substitute, Sticky Barb will not transfer.

      In this test, a Snorlax that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Sentret that knows the moves Substitute and Quick Attack.

           Turn 1
           The Sentret uses Substitute.
           The Snorlax uses Sleep Talk.
           The Snorlax is damaged by the Sticky Barb.
           Turn 2
           The Sentret uses Quick Attack.
           The Snorlax's Sticky Barb does not transfer to Sentret.
           The Snorlax uses Sleep Talk.
           The Snorlax is damaged by the Sticky Barb.
           -
           We verify that the Sentret does not have a held item.
           We verify that the Sentret is at full health.
       
    • testStickyBarbDoesNotDamagePokemonWithMagicGuard

      public static CompletableFuture<TestResult> testStickyBarbDoesNotDamagePokemonWithMagicGuard(BattleTestHelper helper)
      The Sticky Barb does not damage Pokémon with the Ability Magic Guard.

      In this test, a Sigilyph that is holding a Sticky Barb, and that knows the move Sleep Talk faces a Magikarp that knows the move Splash.

           Turn 1
           The Magikarp uses Splash.
           The Sigilyph uses Sleep Talk.
           The Sigilyph's Sticky Barb damages it.
           -
           We verify that the Sigilyph has a held item.
           We verify that the Sigilyph is at full health.