Erwan
-fix for issue 123 (Cockatrice)
This commit is contained in:
@@ -77,6 +77,7 @@ circle_of_protection.txt
|
||||
civic_wayfinder.txt
|
||||
clone.txt
|
||||
clone2.txt
|
||||
cockatrice.txt
|
||||
composite_golem.txt
|
||||
control_magic.txt
|
||||
control_magic2.txt
|
||||
|
||||
24
projects/mtg/bin/Res/test/cockatrice.txt
Normal file
24
projects/mtg/bin/Res/test/cockatrice.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
#Bug:Cockatrice doesn't kill opponent
|
||||
[INIT]
|
||||
COMBATATTACKERS
|
||||
[PLAYER1]
|
||||
inplay:cockatrice
|
||||
[PLAYER2]
|
||||
inplay:Akroma's Memorial,air elemental
|
||||
[DO]
|
||||
cockatrice
|
||||
next
|
||||
#blockers
|
||||
air elemental
|
||||
next
|
||||
#damage
|
||||
next
|
||||
#end combat
|
||||
[ASSERT]
|
||||
COMBATEND
|
||||
[PLAYER1]
|
||||
graveyard:cockatrice
|
||||
[PLAYER2]
|
||||
inplay:Akroma's Memorial
|
||||
graveyard:air elemental
|
||||
[END]
|
||||
@@ -529,20 +529,20 @@ MTGCardInstance * MTGCardInstance::getNextOpponent(MTGCardInstance * previous){
|
||||
GameObserver * game = GameObserver::GetInstance();
|
||||
int foundprevious = 0;
|
||||
if (!previous) foundprevious = 1;
|
||||
if (attacker && game->currentPlayer->game->inPlay->hasCard(this)){
|
||||
if (attacker){
|
||||
MTGInPlay * inPlay = game->opponent()->game->inPlay;
|
||||
for (int i = 0; i < inPlay->nb_cards; i ++){
|
||||
MTGCardInstance * current = inPlay->cards[i];
|
||||
if (current == previous){
|
||||
foundprevious = 1;
|
||||
foundprevious = 1;
|
||||
}else if (foundprevious){
|
||||
MTGCardInstance * defensersOpponent = current->isDefenser();
|
||||
if (defensersOpponent && (defensersOpponent == this || (banding && defensersOpponent->banding == banding))){
|
||||
return current;
|
||||
}
|
||||
MTGCardInstance * defensersOpponent = current->isDefenser();
|
||||
if (defensersOpponent && (defensersOpponent == this || (banding && defensersOpponent->banding == banding))){
|
||||
return current;
|
||||
}
|
||||
}
|
||||
}
|
||||
}else if (defenser && game->opponent()->game->inPlay->hasCard(this)){
|
||||
}else if (defenser){
|
||||
MTGInPlay * inPlay = game->currentPlayer->game->inPlay;
|
||||
for (int i = 0; i < inPlay->nb_cards; i ++){
|
||||
MTGCardInstance * current = inPlay->cards[i];
|
||||
|
||||
Reference in New Issue
Block a user