Fixed Crash on Dread Presence deletion, Fixed primitives for ELD set.

This commit is contained in:
valfieri
2019-10-08 22:20:53 +02:00
parent 0f0e627cf5
commit b66674492b
4 changed files with 25 additions and 32 deletions

View File

@@ -2398,7 +2398,7 @@ toughness=2
[/card] [/card]
[card] [card]
name=Queen of Ice // Rage of Winter name=Queen of Ice // Rage of Winter
abilities=canplayfromexil abilities=canplayfromexile
other={1}{U} name(Adventure) other={1}{U} name(Adventure)
auto=if paid(alternative) then target(*[creature]) transforms((,newability[tap],newability[doesnotuntap])) && moveto(exile) all(this) auto=if paid(alternative) then target(*[creature]) transforms((,newability[tap],newability[doesnotuntap])) && moveto(exile) all(this)
auto=@combatdamaged(creature) from(this):all(trigger[to]) tap && all(trigger[to]) frozen auto=@combatdamaged(creature) from(this):all(trigger[to]) tap && all(trigger[to]) frozen
@@ -2411,7 +2411,7 @@ toughness=3
[/card] [/card]
[card] [card]
name=Lonesome Unicorn // Rider in Need name=Lonesome Unicorn // Rider in Need
abilities=canplayfromexil,vigilance abilities=canplayfromexile,vigilance
other={2}{W} name(Adventure) other={2}{W} name(Adventure)
auto=if paid(alternative) then token(Knight,creature Knight,2/2,white,vigilance) && moveto(exile) all(this) auto=if paid(alternative) then token(Knight,creature Knight,2/2,white,vigilance) && moveto(exile) all(this)
text=Vigilance -- Create a 2/2 white Knight creature token with vigilance. (Then exile this card. You may cast the creature later from exile.) text=Vigilance -- Create a 2/2 white Knight creature token with vigilance. (Then exile this card. You may cast the creature later from exile.)
@@ -2423,7 +2423,7 @@ toughness=3
[/card] [/card]
[card] [card]
name=Foulmire Knight // Profane Insight name=Foulmire Knight // Profane Insight
abilities=canplayfromexil,deathtouch,flash abilities=canplayfromexile,deathtouch,flash
other={2}{B} name(Adventure) other={2}{B} name(Adventure)
auto=if paid(alternative) then draw:1 controller && life:-1 controller && moveto(exile) all(this) auto=if paid(alternative) then draw:1 controller && life:-1 controller && moveto(exile) all(this)
text=Deathtouch -- You draw a card and you lose 1 life. (Then exile this card. You may cast the creature later from exile.) text=Deathtouch -- You draw a card and you lose 1 life. (Then exile this card. You may cast the creature later from exile.)
@@ -2435,7 +2435,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Realm-Cloaked Giant // Cast Off name=Realm-Cloaked Giant // Cast Off
abilities=canplayfromexil,vigilance abilities=canplayfromexile,vigilance
other={3}{W}{W} name(Adventure) other={3}{W}{W} name(Adventure)
auto=if paid(alternative) then destroy all(creature[-giant]) && moveto(exile) all(this) auto=if paid(alternative) then destroy all(creature[-giant]) && moveto(exile) all(this)
text=Vigilance -- Destroy all non-Giant creatures. (Then exile this card. You may cast the creature later from exile.) text=Vigilance -- Destroy all non-Giant creatures. (Then exile this card. You may cast the creature later from exile.)
@@ -2447,7 +2447,7 @@ toughness=7
[/card] [/card]
[card] [card]
name=Smitten Swordmaster // Curry Favor name=Smitten Swordmaster // Curry Favor
abilities=canplayfromexil,lifelink abilities=canplayfromexile,lifelink
other={B} name(Adventure) other={B} name(Adventure)
auto=if paid(alternative) then life:type:creature[knight]:mybattlefield controller && life:-type:creature[knight]:mybattlefield opponent && moveto(exile) all(this) auto=if paid(alternative) then life:type:creature[knight]:mybattlefield controller && life:-type:creature[knight]:mybattlefield opponent && moveto(exile) all(this)
text=Lifelink -- You gain X life and each opponent loses X life, where X is the number of Knights you control. text=Lifelink -- You gain X life and each opponent loses X life, where X is the number of Knights you control.
@@ -2459,7 +2459,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Rimrock Knight // Boulder Rush name=Rimrock Knight // Boulder Rush
abilities=canplayfromexil,cantblock,flash abilities=canplayfromexile,cantblock,flash
other={R} name(Adventure) other={R} name(Adventure)
auto=if paid(alternative) then target(creature) 2/0 ueot && moveto(exile) all(this) auto=if paid(alternative) then target(creature) 2/0 ueot && moveto(exile) all(this)
text=Rimrock Knight can't block. -- Target creature gets +2/+0 until end of turn. (Then exile this card. You may cast the creature later from exile.) text=Rimrock Knight can't block. -- Target creature gets +2/+0 until end of turn. (Then exile this card. You may cast the creature later from exile.)
@@ -2471,7 +2471,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Embereth Shieldbreaker // Battle Display name=Embereth Shieldbreaker // Battle Display
abilities=canplayfromexil abilities=canplayfromexile
other={R} name(Adventure) other={R} name(Adventure)
auto=if paid(alternative) then destroy target(artifact) && moveto(exile) all(this) auto=if paid(alternative) then destroy target(artifact) && moveto(exile) all(this)
text=Destroy target artifact. (Then exile this card. You may cast the creature later from exile.) text=Destroy target artifact. (Then exile this card. You may cast the creature later from exile.)
@@ -2483,7 +2483,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Bonecrusher Giant // Stomp name=Bonecrusher Giant // Stomp
abilities=canplayfromexil,flash abilities=canplayfromexile,flash
other={1}{R} name(Adventure) other={1}{R} name(Adventure)
#MISSING: damage can't be prevented #MISSING: damage can't be prevented
auto=if paid(alternative) then damage:2 target(player,creature,planeswalker) && moveto(exile) all(this) auto=if paid(alternative) then damage:2 target(player,creature,planeswalker) && moveto(exile) all(this)
@@ -2497,7 +2497,7 @@ toughness=3
[/card] [/card]
[card] [card]
name=Merchant of the Vale // Haggle name=Merchant of the Vale // Haggle
abilities=canplayfromexil,flash abilities=canplayfromexile,flash
other={R} name(Adventure) other={R} name(Adventure)
auto=if paid(alternative) then may ability$!name(discard) reject notatarget(*|myhand) and!(draw:1) controller!$ && moveto(exile) all(this) auto=if paid(alternative) then may ability$!name(discard) reject notatarget(*|myhand) and!(draw:1) controller!$ && moveto(exile) all(this)
auto={2}{R}{D(*|myhand)}:draw:1 auto={2}{R}{D(*|myhand)}:draw:1
@@ -2510,7 +2510,7 @@ toughness=3
[/card] [/card]
[card] [card]
name=Order of Midnight // Alter Fate name=Order of Midnight // Alter Fate
abilities=canplayfromexil,flying,cantblock abilities=canplayfromexile,flying,cantblock
other={1}{B} name(Adventure) other={1}{B} name(Adventure)
auto=if paid(alternative) then moveto(myhand) target(creature|mygraveyard) && moveto(exile) all(this) auto=if paid(alternative) then moveto(myhand) target(creature|mygraveyard) && moveto(exile) all(this)
text=Flying -- Order of Midnight can't block. -- Return target creature card from your graveyard to your hand. (Then exile this card. You may cast the creature later from exile.) text=Flying -- Order of Midnight can't block. -- Return target creature card from your graveyard to your hand. (Then exile this card. You may cast the creature later from exile.)
@@ -2522,7 +2522,7 @@ toughness=2
[/card] [/card]
[card] [card]
name=Reaper of Night // Harvest Fear name=Reaper of Night // Harvest Fear
abilities=canplayfromexil abilities=canplayfromexile
other={3}{B} name(Adventure) other={3}{B} name(Adventure)
auto=if paid(alternative) then target(opponent) ability$!name(discard 2 cards) target(<2>*|myhand) reject!$ targetedplayer && moveto(exile) all(this) auto=if paid(alternative) then target(opponent) ability$!name(discard 2 cards) target(<2>*|myhand) reject!$ targetedplayer && moveto(exile) all(this)
auto=@combat(attacking) source(this):aslongas(type(*|opponenthand)~lessthan~3) flying auto=@combat(attacking) source(this):aslongas(type(*|opponenthand)~lessthan~3) flying
@@ -2535,7 +2535,7 @@ toughness=5
[/card] [/card]
[card] [card]
name=Murderous Rider // Swift End name=Murderous Rider // Swift End
abilities=canplayfromexil,flash,lifelink abilities=canplayfromexile,flash,lifelink
other={1}{B}{B} name(Adventure) other={1}{B}{B} name(Adventure)
auto=if paid(alternative) then destroy target(creature,planeswalker) && life:-2 controller && moveto(exile) all(this) auto=if paid(alternative) then destroy target(creature,planeswalker) && life:-2 controller && moveto(exile) all(this)
auto=@movedTo(graveyard) from(this|battlefield):all(trigger[from]) bottomoflibrary auto=@movedTo(graveyard) from(this|battlefield):all(trigger[from]) bottomoflibrary
@@ -2548,7 +2548,7 @@ toughness=3
[/card] [/card]
[card] [card]
name=Shepherd of the Flock // Usher to Safety name=Shepherd of the Flock // Usher to Safety
abilities=canplayfromexil,flash abilities=canplayfromexile,flash
other={W} name(Adventure) other={W} name(Adventure)
auto=if paid(alternative) then moveTo(ownerhand) target(*|myBattlefield) && moveto(exile) all(this) auto=if paid(alternative) then moveTo(ownerhand) target(*|myBattlefield) && moveto(exile) all(this)
text=Return target permanent you control to its owner's hand. (Then exile this card. You may cast the creature later from exile.) text=Return target permanent you control to its owner's hand. (Then exile this card. You may cast the creature later from exile.)
@@ -2560,7 +2560,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Silverflame Squire // On Alert name=Silverflame Squire // On Alert
abilities=canplayfromexil,flash abilities=canplayfromexile,flash
other={2}{W} name(Adventure) other={2}{W} name(Adventure)
auto=if paid(alternative) then target(creature) transforms((,newability[2/2 ueot],newability[untap])) && moveto(exile) all(this) auto=if paid(alternative) then target(creature) transforms((,newability[2/2 ueot],newability[untap])) && moveto(exile) all(this)
text=Target creature gets +2/+2 until end of turn. Untap it. (Then exile this card. You may cast the creature later from exile.) text=Target creature gets +2/+2 until end of turn. Untap it. (Then exile this card. You may cast the creature later from exile.)
@@ -2572,7 +2572,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Animating Faerie // Bring to Life name=Animating Faerie // Bring to Life
abilities=canplayfromexil,flying abilities=canplayfromexile,flying
other={2}{U} name(Adventure) other={2}{U} name(Adventure)
auto=if paid(alternative) then target(*[artifact,-creature]|myBattlefield) transforms((,newability[counter(1/1,4)],Artifact Creature,setpower=0,settoughness=0)) && moveto(exile) all(this) auto=if paid(alternative) then target(*[artifact,-creature]|myBattlefield) transforms((,newability[counter(1/1,4)],Artifact Creature,setpower=0,settoughness=0)) && moveto(exile) all(this)
text=Flying -- Target noncreature artifact you control becomes a 0/0 artifact creature. Put four +1/+1 counters on it. text=Flying -- Target noncreature artifact you control becomes a 0/0 artifact creature. Put four +1/+1 counters on it.
@@ -2584,7 +2584,7 @@ toughness=2
[/card] [/card]
[card] [card]
name=Brazen Borrower // Petty Theft name=Brazen Borrower // Petty Theft
abilities=canplayfromexil,flash,flying,cloud abilities=canplayfromexile,flash,flying,cloud
other={1}{U} name(Adventure) other={1}{U} name(Adventure)
auto=if paid(alternative) then moveTo(ownerHand) target(*[-land]|opponentbattlefield) && moveto(exile) all(this) auto=if paid(alternative) then moveTo(ownerHand) target(*[-land]|opponentbattlefield) && moveto(exile) all(this)
text=Flash -- Flying -- Brazen Borrower can block only creatures with flying. -- Return target nonland permanent an opponent controls to its owner's hand. text=Flash -- Flying -- Brazen Borrower can block only creatures with flying. -- Return target nonland permanent an opponent controls to its owner's hand.
@@ -2596,7 +2596,7 @@ toughness=1
[/card] [/card]
[card] [card]
name=Fae of Wishes // Granted name=Fae of Wishes // Granted
abilities=canplayfromexil,flying abilities=canplayfromexile,flying
other={3}{U} name(Adventure) other={3}{U} name(Adventure)
auto=if paid(alternative) then reveal:type:*:mysideboard revealzone(mysideboard) optionone name(choose card) target(<1>*[-creature]|reveal) moveto(myhand) and!(all(other *|reveal) moveto(ownersideboard))! optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownersideboard) and!(all(other *|reveal) moveto(ownersideboard))! optiontwoend revealend && moveto(exile) all(this) auto=if paid(alternative) then reveal:type:*:mysideboard revealzone(mysideboard) optionone name(choose card) target(<1>*[-creature]|reveal) moveto(myhand) and!(all(other *|reveal) moveto(ownersideboard))! optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownersideboard) and!(all(other *|reveal) moveto(ownersideboard))! optiontwoend revealend && moveto(exile) all(this)
auto={1}{U}{D(*|myhand)}{D(*|myhand)}:moveTo(ownerhand) auto={1}{U}{D(*|myhand)}{D(*|myhand)}:moveTo(ownerhand)
@@ -2609,7 +2609,7 @@ toughness=4
[/card] [/card]
[card] [card]
name=Lovestruck Beast // Heart's Desire name=Lovestruck Beast // Heart's Desire
abilities=canplayfromexil abilities=canplayfromexile
other={G} name(Adventure) other={G} name(Adventure)
auto=if paid(alternative) then create(Human:creature Human:1/1:white) && moveto(exile) all(this) auto=if paid(alternative) then create(Human:creature Human:1/1:white) && moveto(exile) all(this)
auto=aslongas(creature[power=1,toughness=1]|mybattlefield) cantattack <1 auto=aslongas(creature[power=1,toughness=1]|mybattlefield) cantattack <1
@@ -2634,7 +2634,7 @@ name=Rankle, Master of Pranks
abilities=flying,haste abilities=flying,haste
auto=@combatdamaged(player) from(this):may name(discard) transforms((,newability[ability$!name(discard) notatarget(*|myhand) reject!$ controller],newability[ability$!name(discard) notatarget(*|myhand) reject!$ opponent])) ueot auto=@combatdamaged(player) from(this):may name(discard) transforms((,newability[ability$!name(discard) notatarget(*|myhand) reject!$ controller],newability[ability$!name(discard) notatarget(*|myhand) reject!$ opponent])) ueot
auto=@combatdamaged(player) from(this):may name(life and draw) draw:1 controller && draw:1 opponent && life:-1 controller && life:-1 opponent auto=@combatdamaged(player) from(this):may name(life and draw) draw:1 controller && draw:1 opponent && life:-1 controller && life:-1 opponent
auto=@combatdamaged(player) from(this):may name(sacrifice) ability$!sacrifice notatarget(creature|mybattlefield)!$ controller && ability$!sacrifice notatarget(creature|mybattlefield)!$ opponent auto=@combatdamaged(player) from(this):may name(sacrifice) sacrifice tatarget(creature|mybattlefield) controller and!(sacrifice tatarget(creature|opponentBattlefield) opponent)!
text=Flying, haste -- Whenever Rankle, Master of Pranks deals combat damage to a player, choose any number — -- • Each player discards a card. -- • Each player loses 1 life and draws a card. -- • Each player sacrifices a creature. text=Flying, haste -- Whenever Rankle, Master of Pranks deals combat damage to a player, choose any number — -- • Each player discards a card. -- • Each player loses 1 life and draws a card. -- • Each player sacrifices a creature.
mana={2}{B}{B} mana={2}{B}{B}
type=Legendary Creature type=Legendary Creature

View File

@@ -9613,14 +9613,6 @@ type=Tribal Enchantment
subtype=Treefolk Aura subtype=Treefolk Aura
[/card] [/card]
[card] [card]
name=Liliana of the Veil
auto=counter(0/0,3,loyalty)
text=+1: Each player discards a card. -- -2: Target player sacrifices a creature. -- -6: Separate all permanents target player controls into two piles. That player sacrifices all permanents in the pile of his or her choice.
mana={1}{B}{B}
type=Planeswalker
subtype=Liliana
[/card]
[card]
name=Lilting Refrain name=Lilting Refrain
text=At the beginning of your upkeep, you may put a verse counter on Lilting Refrain. -- Sacrifice Lilting Refrain: Counter target spell unless its controller pays {X}, where X is the number of verse counters on Lilting Refrain. text=At the beginning of your upkeep, you may put a verse counter on Lilting Refrain. -- Sacrifice Lilting Refrain: Counter target spell unless its controller pays {X}, where X is the number of verse counters on Lilting Refrain.
mana={1}{U} mana={1}{U}

View File

@@ -6336,7 +6336,8 @@ int ATransformer::destroy()
{ {
for (unsigned int i = 0;i < newAbilities[_target].size(); i++) for (unsigned int i = 0;i < newAbilities[_target].size(); i++)
{ {
if(newAbilities[_target].at(i)) // The primitives Dead Presence probabily causes a double free error and a crash in Wagic, so for now it has been exluded...
if(newAbilities[_target].at(i) && strcmp(_target->name.c_str(),"Dread Presence"))
{ {
newAbilities[_target].at(i)->forceDestroy = 1; newAbilities[_target].at(i)->forceDestroy = 1;
newAbilities[_target].at(i)->removeFromGame(); newAbilities[_target].at(i)->removeFromGame();

View File

@@ -259,7 +259,7 @@ void GameStateOptions::Render()
"Abrasax, Almosthumane, Daddy32, DJardin, Dr.Solomat,", "Abrasax, Almosthumane, Daddy32, DJardin, Dr.Solomat,",
"J, Jeck, kevlahnota, Leungclj, linshier, Mootpoint,", "J, Jeck, kevlahnota, Leungclj, linshier, Mootpoint,",
"Mnguyen, Ph34rbot, Psyringe, Rolzad73, Salmelo, Superhiro,", "Mnguyen, Ph34rbot, Psyringe, Rolzad73, Salmelo, Superhiro,",
"Wololo, Yeshua, Zethfox, Vitty85", "Vitty85, Wololo, Yeshua, Zethfox",
"", "",
"Music by Celestial Aeon Project, http://www.jamendo.com", "Music by Celestial Aeon Project, http://www.jamendo.com",
"", "",
@@ -267,10 +267,10 @@ void GameStateOptions::Render()
"Abrasax, AzureKnight, colarchon, Excessum, Hehotfarv,", "Abrasax, AzureKnight, colarchon, Excessum, Hehotfarv,",
"Jeremy, Jog1118, JonyAS, Lachaux, Link17, Muddobbers,", "Jeremy, Jog1118, JonyAS, Lachaux, Link17, Muddobbers,",
"Nakano, Niegen, Kaioshin, Psyringe, r1c47, Superhiro,", "Nakano, Niegen, Kaioshin, Psyringe, r1c47, Superhiro,",
"Szei, Thanatos02, Whismer, Wololo", "Szei, Thanatos02, Vitty85, Whismer, Wololo",
"", "",
"Thanks also go to Dr.Watson, KF1, Orine, Raphael, Sakya,", "Thanks also go to Dr.Watson, KF1, Luruz, Orine, Raphael,",
"Tacoghandi, Tyranid for their help.", "Sakya, Tacoghandi, Tyranid for their help.",
"", "",
"Thanks to everyone who contributes code/content on the forums!", "Thanks to everyone who contributes code/content on the forums!",
"", "",