/* * Copyright 2007-2008 Ben Boeckel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #ifndef SIGBATTLE_PLAYER #define SIGBATTLE_PLAYER // Sigbattle includes #include "Global.h" #include "Team.h" #include "TeamMember.h" // Qt includes #include // Forward declarations namespace Sigmod { class Sigmod; } namespace Sigbattle { class Team; class SIGBATTLE_EXPORT Player : public Team { Q_OBJECT public: Player(Sigscript::SigmodWrapper* sigmod, QObject* parent); void enterArena(Arena* arena); QList active(); void switchOut(TeamMember* oldActive, TeamMember* newActive); int money() const; public slots: void exitArena(); void giveMoney(const int amount); void takeMoney(const int amount); virtual TeamMember::Action requestAction(const TeamMember* teamMember) const = 0; signals: protected: QList m_active; Arena* m_arena; int m_money; protected slots: }; } Q_DECLARE_METATYPE(Sigbattle::Player*) #endif