public class BaseAttackEffect
extends java.lang.Object
Constructor and Description |
---|
BaseAttackEffect(java.lang.String... codes) |
Modifier and Type | Method and Description |
---|---|
void |
applyAfterDamage(java.util.List<java.lang.Object> parameters,
PokemonAttackStatus attack,
PokemonCardState card,
GameServerState server,
int finalDamage) |
void |
applyBeforeDamage(java.util.List<java.lang.Object> parameters,
PokemonAttackStatus attack,
PokemonCardState card,
GameServerState server) |
void |
applyDelayAfterDamage(PokemonCardState pokemon,
GameServerState server) |
boolean |
canApply(java.util.List<java.lang.Object> parameters,
CardAttack cardAttack,
GameServerState server) |
boolean |
chooseOppAttack() |
BaseAttackEffect |
construct() |
java.util.List<CoinSide> |
flipCoin(java.util.List<CoinSide> currentResult,
PokemonCardState pokemon,
GameServerState server)
This function receives current flipping result and adding more if the effect needed
|
java.lang.String[] |
getCodes() |
CustomGUI |
getCustomGUI(PokemonCardState pokemon,
GameServerState server) |
CardSelectorState |
getOpponentSelectorState(GameServerState server) |
CardSelectorState |
getSelectorState(java.util.List<java.lang.Object> parameters,
GameServerState server) |
boolean |
isOptional() |
int |
modifyDamage(int damage,
PokemonCardState pokemon,
GameServerState server)
Modify the damage done.
|
void |
modifyTurn(PokemonCardState pokemon,
GameServerState server)
Modify possible actions that are done during BetweenTurn phase
|
BaseAttackEffect |
parse(java.lang.String... args) |
BaseAttackEffect |
setOptional(boolean optional) |
BaseAttackEffect |
setRequiredCoinSide(CoinSide coinSide) |
BaseAttackEffect |
withConstructor(java.util.function.Supplier<? extends BaseAttackEffect> constructor) |
public BaseAttackEffect withConstructor(java.util.function.Supplier<? extends BaseAttackEffect> constructor)
public final BaseAttackEffect construct()
public boolean canApply(java.util.List<java.lang.Object> parameters, CardAttack cardAttack, GameServerState server)
public void applyBeforeDamage(java.util.List<java.lang.Object> parameters, PokemonAttackStatus attack, PokemonCardState card, GameServerState server)
public void applyAfterDamage(java.util.List<java.lang.Object> parameters, PokemonAttackStatus attack, PokemonCardState card, GameServerState server, int finalDamage)
public java.util.List<CoinSide> flipCoin(java.util.List<CoinSide> currentResult, PokemonCardState pokemon, GameServerState server)
public CardSelectorState getSelectorState(java.util.List<java.lang.Object> parameters, GameServerState server)
public CustomGUI getCustomGUI(PokemonCardState pokemon, GameServerState server)
public CardSelectorState getOpponentSelectorState(GameServerState server)
public boolean chooseOppAttack()
public boolean isOptional()
public int modifyDamage(int damage, PokemonCardState pokemon, GameServerState server)
damage
- pokemon
- server
- public void modifyTurn(PokemonCardState pokemon, GameServerState server)
pokemon
- server
- public void applyDelayAfterDamage(PokemonCardState pokemon, GameServerState server)
public java.lang.String[] getCodes()
public BaseAttackEffect setRequiredCoinSide(CoinSide coinSide)
public BaseAttackEffect setOptional(boolean optional)
public BaseAttackEffect parse(java.lang.String... args)