YAPOG  0.0.1
Yet Another Pokemon Online Game
NatureInfo.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_NATUREINFO_HPP
2 # define YAPOG_NATUREINFO_HPP
3 
4 # include "YAPOG/Macros.hpp"
5 # include "YAPOG/Game/ID.hpp"
6 # include "YAPOG/System/String.hpp"
8 
9 namespace yap
10 {
12  {
13  public:
14  NatureInfo ();
15  NatureInfo (const ID& id);
16  NatureInfo (const NatureInfo& copy);
17 
20  virtual NatureInfo* Clone () const;
22 
24  const ID& GetID () const;
25  const String& GetName () const;
26  const float& GetAttackFactor () const;
27  const float& GetDefenseFactor () const;
28  const float& GetSpecialAttackFactor () const;
29  const float& GetSpecialDefenseFactor () const;
30  const float& GetSpeedFactor () const;
31 
33  void SetID (const ID& id);
34  void SetName (const String& name);
35  void SetAttackFactor (const float& factor);
36  void SetDefenseFactor (const float& factor);
37  void SetSpecialAttackFactor (const float& factor);
38  void SetSpecialDefenseFactor (const float& factor);
39  void SetSpeedFactor (const float& factor);
40 
41  private:
48  float speedFactor_;
49 
50  static const float INITIAL_FACTOR_VALUE;
51  };
52 } // namespace yap
53 
54 #endif // YAPOG_NATUREINFO_HPP