YAPOG  0.0.1
Yet Another Pokemon Online Game
Account.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_ACCOUNT_HPP
2 # define YAPOG_ACCOUNT_HPP
3 
4 # include "YAPOG/Macros.hpp"
5 # include "YAPOG/Game/ID.hpp"
6 # include "YAPOG/System/String.hpp"
7 
9 
10 namespace yap
11 {
12  class DatabaseManager;
13  class Time;
14 }
15 
16 namespace yse
17 {
18  class AccountTable;
19  class PlayerDataTable;
20  class PlayerData;
21  class PokemonTeam;
22 
23  class Account
24  {
26  public:
27  Account ();
28 
29  void LoadFromTable (const AccountTable& at, const PlayerDataTable& pdt);
31 
32  void UpdatePlayTime (const yap::Time& dt);
33  void ChangeMoney (int value);
34 
36  const yap::ID& GetID () const;
37  const yap::String& GetName () const;
38  const yap::String& GetPassword () const;
39  const yap::String& GetEmail () const;
40  const AccountPermission& GetPermissions () const;
41  const yap::String& GetCreationDate () const;
42  const yap::String& GetLastLoginDate () const;
43  const yap::String& GetCreationIP () const;
44  const yap::String& GetCurrentIP () const;
45 
46  PlayerData& GetPlayerData () const;
47  PokemonTeam& GetTeam () const;
48 
50  void SetID (const yap::ID& value);
51  void SetName (const yap::String& value);
52  void SetPassword (const yap::String& value);
53  void SetEmail (const yap::String& value);
54  void SetPermissions (const AccountPermission& value);
55  void SetCreationDate (const yap::String& value);
56  void SetLastLoginDate (const yap::String& value);
57  void SetCreationIP (const yap::String& value);
58  void SetCurrentIP (const yap::String& value);
59 
60  void SetTeam (PokemonTeam* value);
61 
62  static const yap::ID& DEFAULT_ACCOUNT_ID;
71  private:
81 
84  };
85 } // namespace yse
86 
87 #endif // YAPOG_ACCOUNT_HPP