mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
Merge branch 'freezingFlame' into 'master'
Extend DamagedBy and add Aegar the freezing Flame See merge request core-developers/forge!3778
This commit is contained in:
@@ -651,24 +651,28 @@ public class CardProperty {
|
|||||||
if ((property.endsWith("Source") || property.equals("DamagedBy")) &&
|
if ((property.endsWith("Source") || property.equals("DamagedBy")) &&
|
||||||
!card.getReceivedDamageFromThisTurn().containsKey(source)) {
|
!card.getReceivedDamageFromThisTurn().containsKey(source)) {
|
||||||
return false;
|
return false;
|
||||||
} else if (property.endsWith("Remembered")) {
|
} else {
|
||||||
boolean matched = false;
|
String prop = property.substring("DamagedBy".length());
|
||||||
for (final Object obj : source.getRemembered()) {
|
|
||||||
if (!(obj instanceof Card)) {
|
boolean found = false;
|
||||||
continue;
|
for (Card d : card.getReceivedDamageFromThisTurn().keySet()) {
|
||||||
|
if (d.isValid(prop, sourceController, source, spellAbility)) {
|
||||||
|
found = true;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
matched |= card.getReceivedDamageFromThisTurn().containsKey(obj);
|
|
||||||
}
|
}
|
||||||
if (!matched)
|
|
||||||
return false;
|
if (!found) {
|
||||||
} else if (property.endsWith("Equipped")) {
|
for (Card d : AbilityUtils.getDefinedCards(source, prop, spellAbility)) {
|
||||||
final Card equipee = source.getEquipping();
|
if (card.getReceivedDamageFromThisTurn().containsKey(d)) {
|
||||||
if (equipee == null || !card.getReceivedDamageFromThisTurn().containsKey(equipee))
|
found = true;
|
||||||
return false;
|
break;
|
||||||
} else if (property.endsWith("Enchanted")) {
|
}
|
||||||
final Card equipee = source.getEnchantingCard();
|
}
|
||||||
if (equipee == null || !card.getReceivedDamageFromThisTurn().containsKey(equipee))
|
}
|
||||||
|
if (!found) {
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else if (property.startsWith("Damaged")) {
|
} else if (property.startsWith("Damaged")) {
|
||||||
if (!card.getDealtDamageToThisTurn().containsKey(source)) {
|
if (!card.getDealtDamageToThisTurn().containsKey(source)) {
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Aegar, the Freezing Flame
|
||||||
|
ManaCost:1 U R
|
||||||
|
Types:Legendary Creature Giant Wizard
|
||||||
|
PT:3/3
|
||||||
|
T:Mode$ ExcessDamage | ValidTarget$ Creature.OppCtrl+DamagedByGiant.YouCtrl,Creature.OppCtrl+DamagedByWizard.YouCtrl,Creature.OppCtrl+DamagedBySpell.YouCtrl,Planeswalker.OppCtrl+DamagedByGiant.YouCtrl,Planeswalker.OppCtrl+DamagedByWizard.YouCtrl,Planeswalker.OppCtrl+DamagedBySpell.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a creature or planeswalker an opponent controls is dealt excess damage, if a Giant, Wizard, or spell you controlled dealt damage to it this turn, draw a card.
|
||||||
|
SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1
|
||||||
|
Oracle:Whenever a creature or planeswalker an opponent controls is dealt excess damage, if a Giant, Wizard, or spell you controlled dealt damage to it this turn, draw a card.
|
||||||
|
|
||||||
Reference in New Issue
Block a user