YAPOG  0.0.1
Yet Another Pokemon Online Game
PokemonMoveSet.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_POKEMONMOVESET_HPP
2 # define YAPOG_POKEMONMOVESET_HPP
3 
4 # include "YAPOG/Macros.hpp"
5 # include "YAPOG/Game/ID.hpp"
6 # include "YAPOG/System/String.hpp"
10 
11 namespace yap
12 {
14  {
16  public:
17  PokemonMoveSet ();
18  PokemonMoveSet (const PokemonMoveSet& copy);
19  ~PokemonMoveSet ();
20 
22  const collection::Array<PokemonMove*>& GetMoves () const;
23  const UInt8 GetMoveNumber () const;
24  const PokemonMove* GetMove (const UInt8& index) const;
25 
26  void AddMove (PokemonMove* move, const UInt8& index);
27  bool AddMove (const ID& moveID);
28 
29  void ReplaceMove (const ID& moveID, UInt8 index);
30  void ReplaceMove (PokemonMove* move, UInt8 index);
31 
32  private:
35 
36  static const UInt8 DEFAULT_MOVE_NUMBER;
37  };
38 
39 } // namespace yap
40 
41 #endif // YAPOG_POKEMONMOVESET_HPP