///////////////////////////////////////////////////////////////////////////// // Name: battle/Team.h // Purpose: Base class which is used to interface with the arena // Author: Ben Boeckel // Modified by: Ben Boeckel // Created: Tue Oct 16 2007 09:21:30 // Copyright: ©2007-2008 Ben Boeckel and Nerdy Productions // Licence: // 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 __BATTLE_TEAM__ #define __BATTLE_TEAM__ #include #include #include "Arena.h" #include "Pokemon.h" class Team { public: Team(const PokeMod::Pokemod& par); void AddItem(const unsigned i, const unsigned amt); void UseItem(const unsigned i); void AddPokemon(Pokemon& p); void SwapPokemon(const unsigned a, const unsigned b); bool SetActivePokemon(const unsigned a); unsigned CanFight() const; virtual void InformOfAction(Arena::Action action); virtual Arena::Action RequestAction(Arena arena); protected: QList pokemon; QMap items; unsigned active; const PokeMod::Pokemod& parent; }; #endif