- reworked the testsuite and the rules (storyflow) to use the same game deserialization code, moved that code to the players and zone classes

- removed every references to the gameobserver singleton. This object can now be instantiated several times as it's needed for minmax. To be able to do that, I mostly added a reference to a gameobserver from any targetable object (cards, players, spells) and abilities.
This commit is contained in:
Xawotihs
2011-10-01 13:30:30 +00:00
parent d6db0c4f63
commit 9adb9d625d
86 changed files with 1902 additions and 1961 deletions
+4 -3
View File
@@ -4,7 +4,8 @@
#include "Player.h"
#include "AllAbilities.h"
GuiLayer::GuiLayer()
GuiLayer::GuiLayer(GameObserver *observer)
: observer(observer)
{
modal = 0;
hasFocus = false;
@@ -20,7 +21,7 @@ GuiLayer::~GuiLayer()
void GuiLayer::Add(JGuiObject *object)
{
mObjects.push_back(object);
AbilityFactory af;
AbilityFactory af(observer);
if(MTGAbility * a = dynamic_cast<MTGAbility*>(object))
{
AManaProducer * manaObject = dynamic_cast<AManaProducer*>(af.getCoreAbility((MTGAbility*)object));
@@ -34,7 +35,7 @@ void GuiLayer::Add(JGuiObject *object)
int GuiLayer::Remove(JGuiObject *object)
{
AbilityFactory af;
AbilityFactory af(observer);
if(MTGAbility * a = dynamic_cast<MTGAbility*>(object))
{
AManaProducer * manaObject = dynamic_cast<AManaProducer*>(af.getCoreAbility((MTGAbility*)object));