Erwan
- Events are now sent to GameObserver rather than ActionLayer
This commit is contained in:
@@ -49,7 +49,7 @@ int Damage::resolve(){
|
||||
|
||||
//Send Damage event to listeners
|
||||
WEventDamage * e = NEW WEventDamage(this);
|
||||
GameObserver::GetInstance()->mLayers->actionLayer()->receiveEvent(e);
|
||||
GameObserver::GetInstance()->receiveEvent(e);
|
||||
delete e;
|
||||
|
||||
return a;
|
||||
|
||||
@@ -62,4 +62,3 @@ MTGGuiPlay * DuelLayers::playLayer(){
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -439,6 +439,10 @@ void GameObserver::untapPhase(){
|
||||
currentPlayer->inPlay()->untapAll();
|
||||
}
|
||||
|
||||
int GameObserver::receiveEvent(WEvent * e){
|
||||
return mLayers->receiveEvent(e);
|
||||
}
|
||||
|
||||
|
||||
int GameObserver::isACreature(MTGCardInstance * card){
|
||||
return card->isACreature();
|
||||
|
||||
@@ -172,3 +172,12 @@ void GuiLayers::Render(){
|
||||
objects[i]->Render();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int GuiLayers::receiveEvent(WEvent * e){
|
||||
for (int i = 0; i < nbitems; i++){
|
||||
objects[i]->receiveEvent(e);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -142,7 +142,7 @@ MTGCardInstance * MTGPlayerCards::putInZone(MTGCardInstance * card, MTGGameZone
|
||||
copy->changedZoneRecently = 1.f;
|
||||
GameObserver *g = GameObserver::GetInstance();
|
||||
WEvent * e = NEW WEventZoneChange(copy, from, to);
|
||||
g->mLayers->actionLayer()->receiveEvent(e);
|
||||
g->receiveEvent(e);
|
||||
delete e;
|
||||
return copy;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user