Class CopyDeathrattleSpell
- All Implemented Interfaces:
Serializable
,HasDesc<SpellDesc>
target
actor's deathrattles onto the source
(i.e., result of EntityReference.SELF
)
of this spell.
If a SpellArg.CARD_SOURCE
and SpellArg.CARD_FILTER
is specified, generate cards instead.
If SpellArg.SECONDARY_TARGET
is specified, use that as the source
actor instead of the actual
source
.
If the target is a Card
, the deathrattles specified on the card are put on the source
actor. If the
target is an actor, its currently active deathrattles (i.e., excluding those that were silenced, including those
added by other cards) are copied.
If a SpellArg.SPELL
is specified and it had a deathrattle, cast it on each of the target
as EntityReference.OUTPUT
whose deathrattle was copied. If cards were generated and their deathrattles added, the
SpellArg.CARD
argument will be added to the sub-spell corresponding to each of the generated cards.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class net.demilich.metastone.game.spells.AddDeathrattleSpell
AddDeathrattleSpell.CardAftermathTuple
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic SpellDesc
create
(EntityReference target) protected void
Implementations ofonCast
are the meat-and-bones of a spell's effects.Methods inherited from class net.demilich.metastone.game.spells.AddDeathrattleSpell
create, create
Methods inherited from class net.demilich.metastone.game.spells.Spell
cast, castForPlayer, checkArguments, getDesc, isNativeStateful, setDesc, toString
-
Constructor Details
-
CopyDeathrattleSpell
public CopyDeathrattleSpell()
-
-
Method Details
-
create
-
onCast
protected void onCast(GameContext context, Player player, SpellDesc desc, Entity source, Entity target) Description copied from class:Spell
Implementations ofonCast
are the meat-and-bones of a spell's effects. This should actually call a variety of methods inGameLogic
, generate cards usingSpellUtils.getCards(GameContext, Player, Entity, Entity, SpellDesc)
, interpretSpellArg
keys in thedesc
, etc.Observe that subclasses of
Spell
mostly just need to implement this function. Also, observe that instances ofSpell
are stateless: all the state is provided as arguments to this function.- Overrides:
onCast
in classAddDeathrattleSpell
- Parameters:
context
- The game contextplayer
- The casting playerdesc
- The collection ofSpellArg
keys and values that are interpreted by the implementation of this function to actually cause effects in a gamesource
- The entity from which this effect is happening (typically a card or a minion if it's a battlecry).target
- The particular target of this invocation of the spell. When a spell hits multiple targets, like an AoE damage effect, this method is called once for each target in the list of targets.- See Also:
-