Files
wagic/projects/mtg/include/Player.h
jean.chalard 2e7570fdea J :
* Add some pretty printers to help debugging.
2009-09-04 13:22:15 +00:00

51 lines
1.0 KiB
C++

#ifndef _PLAYER_H_
#define _PLAYER_H_
#include "JGE.h"
#include "MTGGameZones.h"
#include "Damage.h"
#include "Targetable.h"
class MTGPlayerCards;
class MTGInPlay;
class ManaPool;
class Player: public Damageable{
protected:
ManaPool * manaPool;
public:
virtual void End();
int typeAsTarget(){return TARGET_PLAYER;}
const string getDisplayName() const;
virtual int displayStack(){return 1;}
JTexture * mAvatarTex;
JQuad * mAvatar;
int canPutLandsIntoPlay;
MTGPlayerCards * game;
int afterDamage();
Player(MTGPlayerCards * deck, string deckFile, string deckFileSmall);
virtual ~Player();
void unTapPhase();
MTGInPlay * inPlay();
ManaPool * getManaPool();
void cleanupPhase();
virtual int Act(float dt){return 0;};
virtual int isAI(){return 0;};
Player * opponent();
int getId();
JQuad * getIcon();
string deckFile;
string deckFileSmall;
};
class HumanPlayer: public Player{
public:
HumanPlayer(MTGPlayerCards * deck, string deckFile, string deckFileSmall);
};
ostream& operator<<(ostream&, const Player&);
#endif