Laurent - Added Shuffle still require testing.
Wanted to add a bunch of cards that use "shuffle" as a keyword.. after the remedy from Herr Doktor in R1050 and the removal of oblation from ONS it gave me the idea that this could be implemented... I wanted to add some cards like darksteel collosus (M10) with something like auto=@movedto(this|graveyard) from(battlefield):moveto(mylibrary) && shuffle well the above does not work ... Anyway... i'm not sure the shuffle keyword is working... I don't really have a way to test it. Also if some willing soul could have a quick look would be great.. some cards could be added like Boggart Forager (LRW), Oblation (ONS)...
This commit is contained in:
@@ -543,6 +543,16 @@ mana={W}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Each player shuffles his or her graveyard into his or her library.
|
||||
id=88963
|
||||
name=Mnemonic Nexus
|
||||
auto=moveto(opponentlibrary) all(*|opponentgraveyard) && shuffle opponent
|
||||
auto=moveto(mylibrary) all(*|mygraveyard) && shuffle controller
|
||||
rarity=U
|
||||
type=Instant
|
||||
mana={3}{U}
|
||||
[/card]
|
||||
[card]
|
||||
text=Flying. At the beginning of your upkeep, you lose 1 life.
|
||||
auto=@each my upkeep:life:-1
|
||||
id=83631
|
||||
|
||||
@@ -1138,15 +1138,6 @@ type=Enchantment
|
||||
mana={4}{R}
|
||||
[/card]
|
||||
[card]
|
||||
text=Each player shuffles his or her graveyard into his or her library.
|
||||
id=88963
|
||||
name=Mnemonic Nexus
|
||||
auto=moveto(library) all(*|graveyard)
|
||||
rarity=U
|
||||
type=Instant
|
||||
mana={3}{U}
|
||||
[/card]
|
||||
[card]
|
||||
text=Enchant creature Enchanted creature gets +3/+3. Dredge 2 (If you would draw a card, instead you may put exactly two cards from the top of your library into your graveyard. If you do, return this card from your graveyard to your hand. Otherwise, draw a card.)
|
||||
id=89009
|
||||
name=Moldervine Cloak
|
||||
|
||||
@@ -3787,6 +3787,36 @@ class AADepleter:public ActivatedAbilityTP{
|
||||
}
|
||||
};
|
||||
|
||||
//Shuffle
|
||||
class AAShuffle:public ActivatedAbilityTP{
|
||||
public:
|
||||
AAShuffle(int _id, MTGCardInstance * card, Targetable * _target, ManaCost * _cost=NULL, int _tap = 0, int who = TargetChooser::UNSET):ActivatedAbilityTP(_id,card, _target,_cost,_tap,who){
|
||||
}
|
||||
int resolve(){
|
||||
Targetable * _target = getTarget();
|
||||
Player * player;
|
||||
if (_target){
|
||||
if (_target->typeAsTarget() == TARGET_CARD){
|
||||
player = ((MTGCardInstance *)_target)->controller();
|
||||
}else{
|
||||
player = (Player *) _target;
|
||||
}
|
||||
MTGLibrary * library = player->game->library;
|
||||
library->shuffle();
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
const char * getMenuText(){
|
||||
return "Shuffle";
|
||||
}
|
||||
|
||||
AAShuffle * clone() const{
|
||||
AAShuffle * a = NEW AAShuffle(*this);
|
||||
a->isClone = 1;
|
||||
return a;
|
||||
}
|
||||
};
|
||||
|
||||
//Random Discard
|
||||
class AARandomDiscarder:public ActivatedAbilityTP{
|
||||
|
||||
@@ -501,6 +501,15 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG
|
||||
return a;
|
||||
}
|
||||
|
||||
//Shuffle
|
||||
found = s.find("shuffle");
|
||||
if (found != string::npos){
|
||||
Targetable * t = NULL;
|
||||
if (spell) t = spell->getNextPlayerTarget();
|
||||
MTGAbility * a = NEW AAShuffle(id,card,t,NULL,0,who);
|
||||
a->oneShot = 1;
|
||||
return a;
|
||||
}
|
||||
|
||||
/*
|
||||
//CannotBeBlockedBy
|
||||
|
||||
Reference in New Issue
Block a user