mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 03:38:01 +00:00
ComputerUtil & HumanPlay: fixed Splice onto Arcane only for Spells
This commit is contained in:
@@ -93,16 +93,16 @@ public class ComputerUtil {
|
|||||||
sa.setLastStateBattlefield(game.getLastStateBattlefield());
|
sa.setLastStateBattlefield(game.getLastStateBattlefield());
|
||||||
sa.setLastStateGraveyard(game.getLastStateGraveyard());
|
sa.setLastStateGraveyard(game.getLastStateGraveyard());
|
||||||
sa.setHostCard(game.getAction().moveToStack(source));
|
sa.setHostCard(game.getAction().moveToStack(source));
|
||||||
|
|
||||||
|
if (source.getType().hasStringType("Arcane")) {
|
||||||
|
sa = AbilityUtils.addSpliceEffects(sa);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sa.getApi() == ApiType.Charm && !sa.isWrapper()) {
|
if (sa.getApi() == ApiType.Charm && !sa.isWrapper()) {
|
||||||
CharmEffect.makeChoices(sa);
|
CharmEffect.makeChoices(sa);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (source.getType().hasStringType("Arcane") && !source.isCopiedSpell()) {
|
|
||||||
sa = AbilityUtils.addSpliceEffects(sa);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sa.hasParam("Bestow")) {
|
if (sa.hasParam("Bestow")) {
|
||||||
sa.getHostCard().animateBestow();
|
sa.getHostCard().animateBestow();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ public class HumanPlay {
|
|||||||
CharmEffect.makeChoices(sa);
|
CharmEffect.makeChoices(sa);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (source.getType().hasStringType("Arcane")) {
|
if (sa.isSpell() && source.getType().hasStringType("Arcane")) {
|
||||||
sa = AbilityUtils.addSpliceEffects(sa);
|
sa = AbilityUtils.addSpliceEffects(sa);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -184,12 +184,14 @@ public class HumanPlay {
|
|||||||
source.setSplitStateToPlayAbility(sa);
|
source.setSplitStateToPlayAbility(sa);
|
||||||
|
|
||||||
if (sa.getPayCosts() != null) {
|
if (sa.getPayCosts() != null) {
|
||||||
if (sa.getApi() == ApiType.Charm && !sa.isWrapper() && !sa.isCopied()) {
|
if (!sa.isCopied()) {
|
||||||
|
if (sa.getApi() == ApiType.Charm && !sa.isWrapper()) {
|
||||||
CharmEffect.makeChoices(sa);
|
CharmEffect.makeChoices(sa);
|
||||||
}
|
}
|
||||||
if (source.getType().hasStringType("Arcane") && !sa.isCopied()) {
|
if (sa.isSpell() && source.getType().hasStringType("Arcane")) {
|
||||||
sa = AbilityUtils.addSpliceEffects(sa);
|
sa = AbilityUtils.addSpliceEffects(sa);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
final CostPayment payment = new CostPayment(sa.getPayCosts(), sa);
|
final CostPayment payment = new CostPayment(sa.getPayCosts(), sa);
|
||||||
|
|
||||||
final HumanPlaySpellAbility req = new HumanPlaySpellAbility(controller, sa, payment);
|
final HumanPlaySpellAbility req = new HumanPlaySpellAbility(controller, sa, payment);
|
||||||
|
|||||||
Reference in New Issue
Block a user