YAPOG  0.0.1
Yet Another Pokemon Online Game
TypeInfo.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_TYPEINFO_HPP
2 # define YAPOG_TYPEINFO_HPP
3 
4 # include "YAPOG/Macros.hpp"
5 # include "YAPOG/Game/ID.hpp"
6 # include "YAPOG/System/String.hpp"
7 # include "YAPOG/Collection/Map.hpp"
10 
11 namespace yap
12 {
14  {
15  public:
16  TypeInfo ();
17  TypeInfo (const ID& id);
18  TypeInfo (const TypeInfo& copy);
19 
22  virtual TypeInfo* Clone () const;
24 
26  const ID& GetID () const;
27  const String& GetName () const;
28  const float& GetTypeEffect (const ID& typeID) const;
29 
31  void SetID (const ID& id);
32  void SetName (const String& name);
33  void AddTypeEffect (const ID& typeID, const float& effect);
34 
35  bool operator== (const TypeInfo& right) const;
36 
37  private:
41 
42  static const float DEFAULT_FACTOR_EFFECT_VALUE;
43  };
44 } // namespace yap
45 
46 #endif // YAPOG_TYPEINFO_HPP