- Fix an issue with "becomes ueot". See blinkmoth nexus in DST
- Daily build
This commit is contained in:
wagic.the.homebrew@gmail.com
2010-01-30 12:58:49 +00:00
parent 616e0d00bf
commit 54969a2179
5 changed files with 52 additions and 13 deletions

View File

@@ -13,6 +13,16 @@ auto=@movedto(*[white]|stack):may life:1 controller
rarity=U
[/card]
[card]
id=39439
name=Blinkmoth Nexus
type=Land
text={T}: Add {1} to your mana pool. {1}: Blinkmoth Nexus becomes a 1/1 Blinkmoth artifact creature with flying until end of turn. It's still a land. {1}, {T}: Target Blinkmoth creature gets +1/+1 until end of turn.
auto={T}:Add{1}
auto={1}:becomes(Blinkmoth Artifact Creature,1/1,flying) ueot
auto={1}{T}:1/1 target(blinkmoth)
rarity=R
[/card]
[card]
text=Target player loses 1 life for each tapped artifact he or she controls.
id=43557
name=Burden of Greed

View File

@@ -117,6 +117,7 @@ benalish_knight.txt
black_vise.txt
blessed_wine.txt
blinking_spirit.txt
blinkmoth_nexus.txt
bloated_toad1.txt
bloated_toad2.txt
bloodfire_colossus.txt

View File

@@ -0,0 +1,39 @@
#Bug: Becomes does not work for activated abilities
[INIT]
FIRSTMAIN
[PLAYER1]
inplay:blinkmoth nexus
manapool:{1}
[PLAYER2]
[DO]
blinkmoth nexus
choice 1
next
#begin
next
#attackers
blinkmoth nexus
choice 0
next
#blockers
eot
eot
next
#upkeep
next
#draw
next
#main
next
#begin
next
#attackers
blinkmoth nexus
[ASSERT]
COMBATATTACKERS
[PLAYER1]
inplay:blinkmoth nexus
manapool:{1}
[PLAYER2]
life:19
[END]

View File

@@ -2236,25 +2236,14 @@ public:
class ABecomesUEOT: public InstantAbility{
public:
ABecomes * ability;
vector<ABecomes *> clones;
ABecomesUEOT(int id, MTGCardInstance * source, MTGCardInstance * target, string types, WParsedPT * wpt, string abilities):InstantAbility(id,source,target){
ability = NEW ABecomes(id,source,target,types,wpt,abilities);
}
int resolve(){
ABecomes * a = ability->clone();
a->target = this->target;
a->forceDestroy = -1; //Prevent the effect from getting destroyed because its source is not inplay
a->addToGame();
clones.push_back(a);
return 1;
}
int destroy(){
for (size_t i = 0; i < clones.size(); ++i){
clones[i]->forceDestroy = 0;
}
clones.clear();
GenericInstantAbility * wrapper = NEW GenericInstantAbility(1,source,(Damageable *)(this->target),a);
wrapper->addToGame();
return 1;
}