From 39ad95d4db09374ac53026f43b21682192a36ee8 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Thu, 8 Sep 2016 05:13:52 +0800 Subject: [PATCH] revised tnum attribute so it can be used inside makecardt, also --- projects/mtg/bin/Res/sets/BFZ/_cards.dat | 5 - projects/mtg/bin/Res/sets/CSP/_cards.dat | 5 - projects/mtg/bin/Res/sets/MRD/_cards.dat | 10 -- projects/mtg/bin/Res/sets/PLC/_cards.dat | 5 - projects/mtg/bin/Res/sets/TSP/_cards.dat | 25 ---- .../bin/Res/sets/primitives/borderline.txt | 8 ++ projects/mtg/bin/Res/sets/primitives/mtg.txt | 135 ++++-------------- projects/mtg/src/MTGAbility.cpp | 12 +- 8 files changed, 40 insertions(+), 165 deletions(-) diff --git a/projects/mtg/bin/Res/sets/BFZ/_cards.dat b/projects/mtg/bin/Res/sets/BFZ/_cards.dat index d7bd1d3e6..9eb4b4116 100644 --- a/projects/mtg/bin/Res/sets/BFZ/_cards.dat +++ b/projects/mtg/bin/Res/sets/BFZ/_cards.dat @@ -656,11 +656,6 @@ id=401932 rarity=C [/card] [card] -primitive=Kor Ally -rarity=T -id=-402007 -[/card] -[card] primitive=Kor Bladewhirl id=401933 rarity=U diff --git a/projects/mtg/bin/Res/sets/CSP/_cards.dat b/projects/mtg/bin/Res/sets/CSP/_cards.dat index 29f44b144..a0ef6a685 100644 --- a/projects/mtg/bin/Res/sets/CSP/_cards.dat +++ b/projects/mtg/bin/Res/sets/CSP/_cards.dat @@ -771,11 +771,6 @@ id=121230 rarity=R [/card] [card] -primitive=Wolf T1 -id=-121156 -rarity=T -[/card] -[card] primitive=Zombie Musher id=121154 rarity=C diff --git a/projects/mtg/bin/Res/sets/MRD/_cards.dat b/projects/mtg/bin/Res/sets/MRD/_cards.dat index fdae99b11..35de4a9ed 100644 --- a/projects/mtg/bin/Res/sets/MRD/_cards.dat +++ b/projects/mtg/bin/Res/sets/MRD/_cards.dat @@ -906,16 +906,6 @@ id=48385 rarity=U [/card] [card] -primitive=Beast -id=-4838511 -rarity=T -[/card] -[card] -primitive=Insect -id=-4838512 -rarity=T -[/card] -[card] primitive=Ornithopter id=46016 rarity=U diff --git a/projects/mtg/bin/Res/sets/PLC/_cards.dat b/projects/mtg/bin/Res/sets/PLC/_cards.dat index 1c72fa7cc..0eac481a9 100644 --- a/projects/mtg/bin/Res/sets/PLC/_cards.dat +++ b/projects/mtg/bin/Res/sets/PLC/_cards.dat @@ -596,11 +596,6 @@ id=126816 rarity=U [/card] [card] -primitive=Black Knight Token -id=-126816 -rarity=T -[/card] -[card] primitive=Riptide Pilferer id=122325 rarity=U diff --git a/projects/mtg/bin/Res/sets/TSP/_cards.dat b/projects/mtg/bin/Res/sets/TSP/_cards.dat index 77cf56421..cfc237e57 100644 --- a/projects/mtg/bin/Res/sets/TSP/_cards.dat +++ b/projects/mtg/bin/Res/sets/TSP/_cards.dat @@ -1051,31 +1051,6 @@ id=114921 rarity=R [/card] [card] -primitive=Citizen -id=-11492111 -rarity=T -[/card] -[card] -primitive=Camarid -id=-11492112 -rarity=T -[/card] -[card] -primitive=Thrull -id=-11492113 -rarity=T -[/card] -[card] -primitive=Goblin -id=-11492114 -rarity=T -[/card] -[card] -primitive=Saproling -id=-11492115 -rarity=T -[/card] -[card] primitive=Savage Thallid id=106643 rarity=C diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index cb9f4736d..20c5a30b4 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -339,6 +339,14 @@ mana={3}{R} type=Sorcery [/card] [card] +name=Mogg Infestation +target=player +auto=all(creature|targetedpersonsbattlefield) destroy and!( if cantargetcard(creature|graveyard) then makecardt(Goblin:Creature Goblin:1/1:red)*2 )! +mana={3}{R}{R} +type=Sorcery +text=Destroy all creatures target player controls. For each creature that died this way, put two 1/1 red Goblin creature tokens onto the battlefield under that player's control. +[/card] +[card] name=Necropotence #exile cards are faceup auto=@movedTo(*|mygraveyard):all(trigger[to]) moveTo(exile) diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 6e263366b..0dcfc5cd9 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -9586,14 +9586,6 @@ power=2 toughness=2 [/card] [card] -name=Beast -type=Creature -subtype=Beast -power=5 -toughness=5 -color=green -[/card] -[card] name=Beastmaster Ascension auto=@each my blockers:foreach(creature[attacking]|myBattlefield) counter(0/0,1,Quest) auto=this(counter{0/0.7.Quest}) lord(creature|myBattlefield) 5/5 @@ -10435,15 +10427,6 @@ power=1 toughness=1 [/card] [card] -name=Black Knight Token -abilities=flanking,protection from white,haste -power=2 -toughness=2 -type=Creature -subtype=Knight -color=black -[/card] -[card] name=Black Knight abilities=first strike,protection from white text=First strike (This creature deals combat damage before creatures without first strike.) -- Protection from white (This creature can't be blocked, targeted, dealt damage, or enchanted by anything white.) @@ -15893,14 +15876,6 @@ mana={3} type=Artifact [/card] [card] -name=Camarid -type=Creature -subtype=Camarid -power=1 -toughness=1 -color=blue -[/card] -[card] name=Campaign of Vengeance auto=@combat(attacking) source(creature|myBattlefield):life:-1 opponent && life:1 controller text=Whenever a creature you control attacks, defending player loses 1 life and you gain 1 life. @@ -19339,14 +19314,6 @@ power=1 toughness=4 [/card] [card] -name=Citizen -type=Creature -subtype=Citizen -power=1 -toughness=1 -color=white -[/card] -[card] name=City of Brass auto=@tapped(this):damage:1 controller auto={T}:Add{U} @@ -26433,9 +26400,9 @@ type=Sorcery [/card] [card] name=Decree of Justice -auto=token(Angel,Creature Angel,4/4,flying,white,tnum:11)*XX +auto=token(Angel,Creature Angel,4/4,flying,white,tnum.11)*XX autohand=__CYCLING__({2}{W}) -autohand={X}{2}{W}{cycle}:name(cycle + effect) token(Soldier,Creature Soldier,1/1,white,tnum:12)*X && draw:1 controller +autohand={X}{2}{W}{cycle}:name(cycle + effect) token(Soldier,Creature Soldier,1/1,white,tnum.12)*X && draw:1 controller text=Put X 4/4 white Angel creature tokens with flying onto the battlefield. -- Cycling {2}{W} ({2}{W}, Discard this card: Draw a card.) -- When you cycle Decree of Justice, you may pay {X}. If you do, put X 1/1 white Soldier creature tokens onto the battlefield. mana={X}{X}{2}{W}{W} type=Sorcery @@ -31315,7 +31282,7 @@ toughness=1 name=Druidic Satchel mana={3} type=Artifact -auto={2}{t}::reveal:1 optionone name(Use Satchel) transforms((,newability[all(creature|reveal) token(Saproling) controller],newability[all(land|reveal) moveto(mybattlefield)] ,newability[all(-land,-creature|reveal) life:2 controller])) forever optiononeend optiontwo name(Place back on top) target(<1>*|reveal) moveto(mylibrary) optiontwoend revealend +auto={2}{t}::reveal:1 optionone name(Use Satchel) transforms((,newability[all(creature|reveal) makecardt(Saproling:Creature Saproling:1/1:green) controller],newability[all(land|reveal) moveto(mybattlefield)] ,newability[all(-land,-creature|reveal) life:2 controller])) forever optiononeend optiontwo name(Place back on top) target(<1>*|reveal) moveto(mylibrary) optiontwoend revealend text={2}, {T}: Reveal the top card of your library. If it's a creature card, put a 1/1 green Saproling creature token onto the battlefield. If it's a land card, put that card onto the battlefield under your control. If it's a noncreature, nonland card, you gain 2 life. [/card] [card] @@ -36770,11 +36737,11 @@ toughness=4 [/card] [card] name=Fable of Wolf and Owl -auto=@movedTo(*[green;-blue]|mystack):may token(Wolf,Creature Wolf,2/2,green,tnum:11) -auto=@movedTo(*[blue;-green]|mystack):may token(Bird,Creature Bird,1/1,flying,blue,tnum:12) -auto=@movedTo(*[blue&green]|mystack):may token(Bird,Creature Bird,1/1,flying,blue,tnum:12) -auto=@movedTo(*[blue&green]|mystack):may token(Wolf,Creature Wolf,2/2,green,tnum:11) -auto=@movedTo(*[blue&green]|mystack):may name(create bird & wolf) token(Bird,Creature Bird,1/1,flying,blue,tnum:12) && token(Wolf,Creature Wolf,2/2,green,tnum:11) +auto=@movedTo(*[green;-blue]|mystack):may token(Wolf,Creature Wolf,2/2,green,tnum.11) +auto=@movedTo(*[blue;-green]|mystack):may token(Bird,Creature Bird,1/1,flying,blue,tnum.12) +auto=@movedTo(*[blue&green]|mystack):may token(Bird,Creature Bird,1/1,flying,blue,tnum.12) +auto=@movedTo(*[blue&green]|mystack):may token(Wolf,Creature Wolf,2/2,green,tnum.11) +auto=@movedTo(*[blue&green]|mystack):may name(create bird & wolf) token(Bird,Creature Bird,1/1,flying,blue,tnum.12) && token(Wolf,Creature Wolf,2/2,green,tnum.11) text=Whenever you cast a green spell, you may put a 2/2 green Wolf creature token onto the battlefield. -- Whenever you cast a blue spell, you may put a 1/1 blue Bird creature token with flying onto the battlefield. mana={3}{GU}{GU}{GU} type=Enchantment @@ -46575,14 +46542,6 @@ power=1 toughness=1 [/card] [card] -name=Goblin -type=Creature -subtype=Goblin -power=1 -toughness=1 -color=red -[/card] -[card] name=Goblins of the Flarg abilities=mountainwalk auto=aslongas(dwarf|myBattlefield) all(this) sacrifice while >0 @@ -56114,14 +56073,6 @@ power=5 toughness=1 [/card] [card] -name=Insect -type=Creature -subtype=Insect -power=1 -toughness=1 -color=green -[/card] -[card] name=Insectile Aberration type=Creature abilities=flying @@ -64700,9 +64651,10 @@ toughness=3 [card] name=Liliana, the Last Hope auto=counter(0/0,3,Loyalty) -auto={C(0/0,1,Loyalty)}:name(+1: dread) transforms((,newability[-2/-1])) uynt +auto={C(0/0,1,Loyalty)}:name(+1: loyalty) donothing restriction{compare(cantargetoppocre)~lessthan~1} +auto={C(0/0,1,Loyalty)}:name(+1: dread) target(creature) transforms((,newability[-2/-1])) uynt restriction{compare(cantargetoppocre)~morethan~0} auto={C(0/0,-2,Loyalty)}:name(-2: Deplete and fetch) deplete:2 && may moveto(myhand) target(creature|mygraveyard) -auto={C(0/0,-7,Loyalty)}:name(-7: Zombie Overrun) emblem transforms((,newability[@each my endofturn:token(-19707)*type:zombie:mybattlefieldplus2plusend controller])) forever dontremove +auto={C(0/0,-7,Loyalty)}:name(-7: Zombie Overrun) emblem transforms((,newability[phaseactionmulti[my endofturn] foreach(zombie|mybattlefield) makecardt(Zombie:Creature Zombie:2/2:black:tnum.135272) && makecardt(Zombie:Creature Zombie:2/2:black:tnum.135272)*2])) forever dontremove text=+1: Up to one target creature gets -2/-1 until your next turn. -- -2: Put the top two cards of your library into your graveyard, then you may return a creature card from your graveyard to your hand. -- -7: You get an emblem with "At the beginning of your end step, put X 2/2 black Zombie creature tokens onto the battlefield, where X is two plus the number of Zombies you control." mana={1}{B}{B} type=Planeswalker @@ -70522,7 +70474,7 @@ type=Instant [card] name=Midnight Ritual target=creature|mygraveyard -auto=transforms((,newability[moveTo(exile)],newability[token(Zombie)])) +auto=moveTo(exile) and!( makecardt(Zombie:Creature Zombie:2/2:black) )! text=Exile X target creature cards from your graveyard. For each creature card exiled this way, put a 2/2 black Zombie creature token onto the battlefield. mana={X}{2}{B} type=Sorcery @@ -72391,14 +72343,6 @@ text={T}: Add {1} to your mana pool. -- {T}: Add {R} or {G} to your mana pool. M type=Land [/card] [card] -name=Mogg Infestation -target=player -auto=all(creature|targetedpersonsbattlefield) transforms((,newability[@movedTo(this|graveyard) from(battlefield):token(-11492114)*2],newability[destroy])) -mana={3}{R}{R} -type=Sorcery -text=Destroy all creatures target player controls. For each creature that died this way, put two 1/1 red Goblin creature tokens onto the battlefield under that player's control. -[/card] -[card] name=Mogg Jailer auto=aslongas(creature[power<=2;-tapped]|opponentBattlefield) cantattack text=Mogg Jailer can't attack if defending player controls an untapped creature with power 2 or less. @@ -74971,7 +74915,7 @@ name=Nahiri, the Lithomancer auto=counter(0/0,3,loyalty) auto={C(0/0,2,Loyalty)}:name(+2: Kor Soldier) token(Kor Soldier,Creature Kor Soldier,1/1,white) and!(transforms((,newability[may target(equipment|mybattlefield) newhook])) oneshot)! auto={C(0/0,-2,Loyalty)}:name(-2: Get Equipment) notatarget(equipment|mygraveyard,myhand) moveto(ownerbattlefield) -auto={C(0/0,-10,Loyalty)}:name(-10: Stoneforged Blade) token(Stoneforged Blade,Artifact Equipment,0/0,Indestructible,tnum:2) and!(transforms((,newability[{0}:equip],newability[teach(creature) 5/5],newability[teach(creature) double strike])) forever)! +auto={C(0/0,-10,Loyalty)}:name(-10: Stoneforged Blade) token(Stoneforged Blade,Artifact Equipment,0/0,Indestructible,tnum.2) and!(transforms((,newability[{0}:equip],newability[teach(creature) 5/5],newability[teach(creature) double strike])) forever)! text=+2: Put a 1/1 white Kor Soldier creature token onto the battlefield. You may attach an Equipment you control to it. -- -2: You may put an Equipment card from your hand or graveyard onto the battlefield. -- -10: Put a colorless Equipment artifact token named Stoneforged Blade onto the battlefield. It has indestructible, "Equipped creature gets +5/+5 and has double strike," and equip {0}. -- Nahiri, the Lithomancer can be your commander. mana={3}{W}{W} type=Planeswalker @@ -77488,7 +77432,7 @@ toughness=2 [card] name=Noosegraf Mob auto=counter(1/1,5) -auto=@movedto(*|stack):this(counter{1/1.1}>0) transforms((,newability[counter(1/1.-1) all(this) ],newability[token(-370740) controller])) forever +auto=@movedto(*|stack):this(counter{1/1.1}>0) transforms((,newability[counter(1/1.-1) all(this) ],newability[makecardt(Zombie:Creature Zombie:2/2:black) controller])) forever text=Noosegraf Mob enters the battlefield with five +1/+1 counters on it. -- Whenever a player casts a spell, remove a +1/+1 counter from Noosegraf Mob. If you do, put a 2/2 black Zombie creature token onto the battlefield. mana={4}{B}{B} type=Creature @@ -78144,7 +78088,7 @@ type=Enchantment [card] name=Oath of Liliana auto=ability$!name(sacrifice) notatarget(creature|mybattlefield) sacrifice !$ opponent -auto=@each endofturn:if type(planeswalker[fresh]|mybattlefield)~morethan~0 then token(-370740) +auto=@each endofturn:if type(planeswalker[fresh]|mybattlefield)~morethan~0 then makecardt(Zombie:Creature Zombie:2/2:black) text=When Oath of Liliana enters the battlefield, each opponent sacrifices a creature. -- At the beginning of each end step, if a planeswalker entered the battlefield under your control this turn, put a 2/2 black Zombie creature token onto the battlefield. mana={2}{B} type=Legendary Enchantment @@ -79046,8 +78990,8 @@ toughness=2 [card] name=One Dozen Eyes other={5}{G}{G}{G}{G} name(Entwine) -auto=if paid(alternative) then token(-4838511) && token(-4838512)*5 -auto=ifnot paid(alternative) then transforms((,newability[choice token(-4838511)],newability[choice token(-4838512)*5])) +auto=if paid(alternative) then makecardt(Beast:Creature Beast:5/5:green:tnum.11) && makecardt(Insect:Creature Insect:1/1:green:tnum.12)*5 +auto=ifnot paid(alternative) then transforms((,newability[choice makecardt(Beast:Creature Beast:5/5:green:tnum.11)],newability[choice makecardt(Insect:Creature Insect:1/1:green:tnum.12)*5])) text=Choose one - Put a 5/5 green Beast creature token onto the battlefield; or put five 1/1 green Insect creature tokens onto the battlefield. -- Entwine {G}{G}{G} (Choose both if you pay the entwine cost.) mana={5}{G} type=Sorcery @@ -90813,7 +90757,7 @@ type=Enchantment [/card] [card] name=Retreat to Emeria -auto=@movedTo(land|myBattlefield):name(choose one) transforms((,newability[choice name(Kor Token) token(-402007) controller],newability[choice name(1/1 ueot) all(creature|mybattlefield) 1/1 ueot])) +auto=@movedTo(land|myBattlefield):name(choose one) transforms((,newability[choice name(Kor Token) makecardt(Kor Ally:Creature Kor Ally:1/1:white) controller],newability[choice name(1/1 ueot) all(creature|mybattlefield) 1/1 ueot])) text=Landfall — Whenever a land enters the battlefield under your control, choose one — -- — Put a 1/1 white Kor Ally creature token onto the battlefield. -- — Creatures you control get +1/+1 until end of turn. mana={3}{W} type=Enchantment @@ -91425,7 +91369,7 @@ type=Sorcery [card] name=Riftmarked Knight abilities=flanking,protection from black -autoexile=this(counter{0/0.1.Time}<2) transforms((,newability[@counterremoved(0/0.1.Time) from(sourcecard) suspended:token(-126816)])) +autoexile=this(counter{0/0.1.Time}<2) transforms((,newability[@counterremoved(0/0.1.Time) from(sourcecard) suspended:makecardt(Knight:Creature Knight:2/2:flanking:protection from white:haste:black)])) suspend(3)={1}{W}{W} text=Protection from black; flanking (Whenever a creature without flanking blocks this creature, the blocking creature gets -1/-1 until end of turn.) -- Suspend 3 - {1}{W}{W} (Rather than cast this card from your hand, you may pay {1}{W}{W} and exile it with three time counters on it. At the beginning of your upkeep, remove a time counter. When the last is removed, cast it without paying its mana cost. It has haste.) -- When the last time counter is removed from Riftmarked Knight while it's exiled, put a 2/2 black Knight creature token with flanking, protection from white, and haste onto the battlefield. mana={1}{W}{W} @@ -95231,14 +95175,6 @@ text=Saprazzan Skerry enters the battlefield tapped with two depletion counters type=Land [/card] [card] -name=Saproling -type=Creature -subtype=Saproling -power=1 -toughness=1 -color=green -[/card] -[card] name=Sapseep Forest auto=tap(noevent) auto=aslongas(*[green]|myBattlefield) {G}{T}:life:1 controller >1 @@ -95338,11 +95274,11 @@ type=Instant [/card] [card] name=Sarpadian Empires, Vol. VII -auto=choice name(white citizen) transforms((,newability[{3}{T}:token(-11492111)])) forever -auto=choice name(blue camarid) transforms((,newability[{3}{T}:token(-11492112)])) forever -auto=choice name(black thrull) transforms((,newability[{3}{T}:token(-11492113)])) forever -auto=choice name(red goblin) transforms((,newability[{3}{T}:token(-11492114)])) forever -auto=choice name(green saproling) transforms((,newability[{3}{T}:token(-11492115)])) forever +auto=choice name(white citizen) transforms((,newability[{3}{T}:makecardt(Citizen:Creature Citizen:1/1:white:tnum.11)])) forever +auto=choice name(blue camarid) transforms((,newability[{3}{T}:makecardt(Camarid:Creature Camarid:1/1:blue:tnum.12)])) forever +auto=choice name(black thrull) transforms((,newability[{3}{T}:makecardt(Thrull:Creature Thrull:1/1:black:tnum.13)])) forever +auto=choice name(red goblin) transforms((,newability[{3}{T}:makecardt(Goblin:Creature Goblin:1/1:red:tnum.14)])) forever +auto=choice name(green saproling) transforms((,newability[{3}{T}:makecardt(Saproling:Creature Saproling:1/1:green:tnum.15)])) forever text=As Sarpadian Empires, Vol. VII enters the battlefield, choose white Citizen, blue Camarid, black Thrull, red Goblin, or green Saproling. -- {3}, {T}: Put a 1/1 creature token of the chosen color and type onto the battlefield. mana={3} type=Artifact @@ -102346,9 +102282,8 @@ color=black [card] name=Skeletonize target=creature +auto=@movedto(mytgt|graveyard) from(battlefield):token(Skeleton Token) auto=damage:3 -auto=teach(creature|opponentbattlefield) transforms((,newability[@movedTo(this|graveyard) from(battlefield):token(-175070) opponent])) ueot -auto=teach(creature|mybattlefield) transforms((,newability[@movedTo(this|graveyard) from(battlefield):token(-175070)])) ueot text=Skeletonize deals 3 damage to target creature. When a creature dealt damage this way is put into a graveyard this turn, put a 1/1 black Skeleton creature token onto the battlefield with "{B}: Regenerate this creature." mana={4}{R} type=Instant @@ -105830,7 +105765,7 @@ toughness=3 [/card] [card] name=Sound the Call -auto=token(-121156) +auto=token(Wolf,Creature Wolf,1/1,green) and!( transforms((,newability[foreach(Sound the Call|graveyard) 1/1])) forever )! text=Put a 1/1 green Wolf creature token onto the battlefield. It has "This creature gets +1/+1 for each card named Sound the Call in each graveyard." mana={2}{G} type=Sorcery @@ -116415,14 +116350,6 @@ power=1 toughness=1 [/card] [card] -name=Thrull -type=Creature -subtype=Thrull -power=1 -toughness=1 -color=black -[/card] -[card] name=Thrummingbird abilities=flying auto=@combatdamaged(player) from(this):target(proliferation) proliferate @@ -130001,16 +129928,6 @@ power=7 toughness=6 [/card] [card] -name=Wolf T1 -type=Creature -subtype=Wolf -auto=foreach(sound the call|graveyard) 1/1 -text=This creature gets +1/+1 for each card named Sound the Call in each graveyard. -power=1 -toughness=1 -color=green -[/card] -[card] name=Wolf T2 type=Creature subtype=Wolf diff --git a/projects/mtg/src/MTGAbility.cpp b/projects/mtg/src/MTGAbility.cpp index a0ea2f56f..81be0636c 100644 --- a/projects/mtg/src/MTGAbility.cpp +++ b/projects/mtg/src/MTGAbility.cpp @@ -2489,11 +2489,11 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG sabilities.append(","); sabilities.append(tokenParameters[i]); } - if(sabilities.find(",tnum:") != string::npos) + if(sabilities.find(",tnum.") != string::npos) { - size_t begins = sabilities.find(",tnum:"); + size_t begins = sabilities.find(",tnum."); cID = sabilities.substr(begins+6); - sabilities = cReplaceString(sabilities,",tnum:"+cID,""); + sabilities = cReplaceString(sabilities,",tnum."+cID,""); } int value = 0; if (spt.find("xx/xx") != string::npos) @@ -2593,11 +2593,11 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG sabilities.append(","); sabilities.append(tokenParameters[i]); } - if(sabilities.find(",tnum:") != string::npos) + if(sabilities.find(",tnum.") != string::npos) { - size_t begins = sabilities.find(",tnum:"); + size_t begins = sabilities.find(",tnum."); cID = sabilities.substr(begins+6); - sabilities = cReplaceString(sabilities,",tnum:"+cID,""); + sabilities = cReplaceString(sabilities,",tnum."+cID,""); } int value = 0; if (spt.find("xx/xx") != string::npos)