00001 #ifndef EARN_EXPERIENCE_HH_ 00002 # define EARN_EXPERIENCE_HH_ 00003 00004 # include "activity.hh" 00005 # include "tasks_fwd.hh" 00006 # include "objects_fwd.hh" 00007 # include "def_map.hh" 00008 # include "rxtools_fwd.hh" 00009 00010 namespace tasks 00011 { 00012 class EarnExperience : public Activity 00013 { 00014 public: 00015 EarnExperience(); 00016 ~EarnExperience(); 00017 00018 void start(); 00019 void process(); 00020 void terminate(); 00021 00022 const std::string &get_name() const; 00023 static const char *get_static_name(); 00024 00025 void check_map(); 00026 00027 protected: 00028 const objects::DefMap *_hunt_map; 00029 const objects::HuntCourse *_hunt_course; 00030 rxtimer::RxTimer *_timer; 00031 00032 void require_task(); 00033 void find_best_map(const objects::DefMap *&m, const objects::HuntCourse *&hc); 00034 }; 00035 } 00036 00037 #endif