Erwan
- Changecontroller now sends a changezone event - Manacost bug fix (memory leak)
This commit is contained in:
@@ -134,4 +134,4 @@ zombify.txt
|
||||
#Momir Basic Tests
|
||||
########################
|
||||
momir/keldon_warlord.txt
|
||||
momir/overcost.txt
|
||||
momir/overcost.txt
|
||||
@@ -1546,7 +1546,9 @@ class AControlStealAura: public MTGAbility{
|
||||
Player * originalController;
|
||||
AControlStealAura(int _id , MTGCardInstance * _source, MTGCardInstance * _target):MTGAbility(_id, _source, _target){
|
||||
originalController = _target->controller();
|
||||
_target->changeController(game->currentlyActing());
|
||||
MTGCardInstance * copy = _target->changeController(game->currentlyActing());
|
||||
target = copy;
|
||||
source->target = copy;
|
||||
}
|
||||
|
||||
int destroy(){
|
||||
|
||||
@@ -48,7 +48,7 @@ class MTGCardInstance: public MTGCard, public Damageable, public Targetable {
|
||||
int summoningSickness;
|
||||
// The recommended method to test for summoning Sickness !
|
||||
int hasSummoningSickness();
|
||||
int changeController(Player * newcontroller);
|
||||
MTGCardInstance * changeController(Player * newcontroller);
|
||||
MTGCardInstance * defenser;
|
||||
float changedZoneRecently;
|
||||
Player * owner;
|
||||
|
||||
@@ -1669,7 +1669,6 @@ void AbilityFactory::addAbilities(int _id, Spell * spell){
|
||||
case 1326: //Wheel of fortune
|
||||
{
|
||||
for (int i = 0; i < 2; i++){
|
||||
// MTGLibrary * library = game->players[i]->game->library;
|
||||
MTGHand * hand = game->players[i]->game->hand;
|
||||
for (int j = hand->nb_cards-1; j>=0; j--){
|
||||
game->players[i]->game->putInGraveyard(hand->cards[j]);
|
||||
|
||||
@@ -241,13 +241,12 @@ int MTGCardInstance::hasSummoningSickness(){
|
||||
return 1;
|
||||
}
|
||||
|
||||
int MTGCardInstance::changeController(Player * newController){
|
||||
MTGCardInstance * MTGCardInstance::changeController(Player * newController){
|
||||
Player * originalOwner = controller();
|
||||
if (originalOwner == newController) return 0;
|
||||
MTGCardInstance * copy = originalOwner->game->inPlay->removeCard(this,0);
|
||||
newController->game->inPlay->addCard(copy);
|
||||
MTGCardInstance * copy = originalOwner->game->putInZone(this, originalOwner->game->inPlay, newController->game->inPlay);
|
||||
//summoningSickness = 1;
|
||||
return 1;
|
||||
return copy;
|
||||
}
|
||||
|
||||
//Reset the card parameters
|
||||
|
||||
@@ -144,7 +144,7 @@ void ManaCost::init(){
|
||||
}
|
||||
nbhybrids = 0;
|
||||
extraCosts = NULL;
|
||||
extraCostsIsCopy = 1;
|
||||
extraCostsIsCopy = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user