diff --git a/projects/mtg/include/AllAbilities.h b/projects/mtg/include/AllAbilities.h index d4d1a6059..8465cb5d3 100644 --- a/projects/mtg/include/AllAbilities.h +++ b/projects/mtg/include/AllAbilities.h @@ -1207,10 +1207,7 @@ public: WEventcardDraw * e = dynamic_cast (event); if (!e) return 0; if (!tc->canTarget(e->player)) return 0; - if(source->controller() == e->player) - source->controllerTrigger = 1; - else - source->opponentTrigger = 1; + return 1; } @@ -1318,18 +1315,6 @@ public: if (type == 2 && e->damage->typeOfDamage == Damage::DAMAGE_COMBAT) return 0; e->damage->target->thatmuch = e->damage->damage; e->damage->source->thatmuch = e->damage->damage; - if (e->damage->target->type_as_damageable == Damageable::DAMAGEABLE_PLAYER) - { - Player * p = (Player *) e->damage->target; - if(p && p == source->controller()->opponent()) - { - source->opponentTrigger = 1; - } - else - { - source->controllerTrigger = 1; - } - } this->source->thatmuch = e->damage->damage; triggeredTurn = game->turn; @@ -1369,10 +1354,6 @@ public: if (type == 1 && (e->amount > 0)) return 0; if (type == 0 && (e->amount < 0)) return 0; e->player->thatmuch = abs(e->amount); - if(source->controller() == e->player) - source->controllerTrigger = 1; - else - source->opponentTrigger = 1; this->source->thatmuch = abs(e->amount); return 1; diff --git a/projects/mtg/include/MTGCardInstance.h b/projects/mtg/include/MTGCardInstance.h index d14270c99..5146b4940 100644 --- a/projects/mtg/include/MTGCardInstance.h +++ b/projects/mtg/include/MTGCardInstance.h @@ -253,8 +253,6 @@ public: int cardistargetted; bool isTargetter(); int cardistargetter; - int opponentTrigger; - int controllerTrigger; void eventattacked(); void eventattackedAlone(); diff --git a/projects/mtg/src/GameObserver.cpp b/projects/mtg/src/GameObserver.cpp index e018016c1..72fcb8aca 100644 --- a/projects/mtg/src/GameObserver.cpp +++ b/projects/mtg/src/GameObserver.cpp @@ -593,25 +593,15 @@ void GameObserver::gameStateBasedEffects() ///////////////////////////////////// for (int d = 0; d < 2; d++) { - MTGGameZone * dzones[] = { players[d]->game->inPlay, players[d]->game->graveyard, players[d]->game->hand, players[d]->game->library }; - for (int k = 0; k < 4; k++) - { - MTGGameZone * zone = dzones[k]; - if (mLayers->stackLayer()->count(0, NOT_RESOLVED) == 0) + MTGGameZone * zone = players[d]->game->inPlay; + if (mLayers->stackLayer()->count(0, NOT_RESOLVED) == 0) + { + for (int c = zone->nb_cards - 1; c >= 0; c--) { - for (int c = zone->nb_cards - 1; c >= 0; c--) - { - zone->cards[c]->cardistargetted = 0; - zone->cards[c]->cardistargetter = 0; - } + zone->cards[c]->cardistargetted = 0; + zone->cards[c]->cardistargetter = 0; } - //clear trigger - for (int b = zone->nb_cards - 1; b >= 0; b--) - { - zone->cards[b]->controllerTrigger = 0; - zone->cards[b]->opponentTrigger = 0; - } - }//check for losers if its gameover call the statebased action + } players[d]->DeadLifeState(); } //////////////////////////////////// diff --git a/projects/mtg/src/MTGAbility.cpp b/projects/mtg/src/MTGAbility.cpp index dcb775d84..34f142492 100644 --- a/projects/mtg/src/MTGAbility.cpp +++ b/projects/mtg/src/MTGAbility.cpp @@ -411,20 +411,6 @@ int AbilityFactory::parseCastRestrictions(MTGCardInstance * card, Player * playe } } - check = restriction[i].find("opponenttrigger"); - if(check != string::npos) - { - if(!card->opponentTrigger) - return 0; - } - - check = restriction[i].find("controllertrigger"); - if(check != string::npos) - { - if(!card->controllerTrigger) - return 0; - } - check = restriction[i].find("discarded"); if(check != string::npos) { diff --git a/projects/mtg/src/MTGCardInstance.cpp b/projects/mtg/src/MTGCardInstance.cpp index 5b12d88a1..140c4f5cf 100644 --- a/projects/mtg/src/MTGCardInstance.cpp +++ b/projects/mtg/src/MTGCardInstance.cpp @@ -65,8 +65,6 @@ MTGCardInstance::MTGCardInstance(MTGCard * card, MTGPlayerCards * arg_belongs_to LKItoughness = toughness; cardistargetted = 0; cardistargetter = 0; - opponentTrigger = 0; - controllerTrigger = 0; } MTGCardInstance * MTGCardInstance::createSnapShot()