Pokebot
Pokemon FireRed bot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Move.hh
Go to the documentation of this file.
1 #ifndef __MOVE_HH__
2 #define __MOVE_HH__
3 
4 #include "PokemonUtils.hh"
5 
6 class Move
7 {
8 private:
9  struct Internal
10  {
11  uint8_t effect;
12  uint8_t power;
13  uint8_t type;
14  uint8_t accuracy;
15  uint8_t pp;
16  uint8_t effectAccuracy;
17  uint8_t target;
18  uint8_t priority;
19  uint8_t flags;
20  uint8_t padding[3];
21  };
22 
23 public:
24  Move() {}
25  Move(uint32_t addr, char *name)
26  : _data((Internal *) gbaMem(addr)), _name(name)
27  {}
28 
29 public:
30  uint8_t getPower() const { return (_data->power); }
31  uint8_t getType() const { return (_data->type); }
32  uint8_t getAccuracy() const { return (_data->accuracy); }
33  uint8_t getPP() const { return (_data->pp); }
34  uint8_t getEffectAccuracy() const { return (_data->effectAccuracy); }
35  uint8_t getTarget() const { return (_data->target); }
36  uint8_t getPriority() const { return (_data->priority); }
37  uint8_t getFlags() const { return (_data->flags); }
38  const char *getName() const { return (_name); }
39 
40 private:
41  Internal *_data;
42  char *_name;
43 };
44 
45 #endif
const char * getName() const
Definition: Move.hh:38
Move()
Definition: Move.hh:24
uint8_t getType() const
Definition: Move.hh:31
uint8_t getEffectAccuracy() const
Definition: Move.hh:34
uint8_t getFlags() const
Definition: Move.hh:37
uint8_t getTarget() const
Definition: Move.hh:35
uint8_t getPriority() const
Definition: Move.hh:36
void * gbaMem(uint32_t ptr)
Definition: PokemonUtils.cpp:57
Definition: Move.hh:6
uint8_t getPower() const
Definition: Move.hh:30
uint8_t getAccuracy() const
Definition: Move.hh:32
Move(uint32_t addr, char *name)
Definition: Move.hh:25
uint8_t getPP() const
Definition: Move.hh:33