BWAPI
|
00001 #ifndef BHEADERS_GOALHEADERS_H 00002 #define BHEADERS_GOALHEADERS_H 00003 #include "GoalGeneratorBase.h" 00004 #include "GoalTypes.h" 00005 00006 class ResearchManagerAgent; 00007 class InformationManagerAgent; 00008 00009 // worker training goal 00010 class Research_CommandCentreUpgradeGoalGenerator : public GoalGeneratorBase { 00011 public: 00012 Research_CommandCentreUpgradeGoalGenerator(AgentPool* a, ResearchManagerAgent* parent); 00013 00014 // generic stuff 00015 virtual void inhibit(); 00016 virtual bool instantiateGoal(); 00017 virtual void updateDrives(); 00018 virtual void initialize(); 00019 virtual int getdrive(); 00020 virtual int getthresh(); 00021 // what 00022 00023 00024 private: 00025 00026 // generic stuff 00027 bool inhibited; 00028 AgentPool* agentPool; 00029 int drive; 00030 int thresh; 00031 int priority; 00032 ResearchManagerAgent* parent; 00033 GoalDescriptor* goal; 00034 int temporalFactor; 00035 // implementation-specific stuff, if needed 00036 00037 00038 }; 00039 00040 00041 00042 00043 00044 // worker training goal 00045 class Research_StarportUpgradeGoalGenerator : public GoalGeneratorBase { 00046 public: 00047 Research_StarportUpgradeGoalGenerator(AgentPool* a, ResearchManagerAgent* parent); 00048 00049 // generic stuff 00050 virtual void inhibit(); 00051 virtual bool instantiateGoal(); 00052 virtual void updateDrives(); 00053 virtual void initialize(); 00054 virtual int getdrive(); 00055 virtual int getthresh(); 00056 // what 00057 00058 00059 private: 00060 00061 // generic stuff 00062 bool inhibited; 00063 AgentPool* agentPool; 00064 int drive; 00065 int thresh; 00066 int priority; 00067 ResearchManagerAgent* parent; 00068 GoalDescriptor* goal; 00069 // implementation-specific stuff, if needed 00070 00071 00072 }; 00073 00074 00075 00076 00077 00078 // worker training goal 00079 class Research_FactoryUpgradeGoalGenerator : public GoalGeneratorBase { 00080 public: 00081 Research_FactoryUpgradeGoalGenerator(AgentPool* a, ResearchManagerAgent* parent); 00082 00083 // generic stuff 00084 virtual void inhibit(); 00085 virtual bool instantiateGoal(); 00086 virtual void updateDrives(); 00087 virtual void initialize(); 00088 virtual int getdrive(); 00089 virtual int getthresh(); 00090 // what 00091 00092 00093 private: 00094 00095 // generic stuff 00096 bool inhibited; 00097 AgentPool* agentPool; 00098 int drive; 00099 int thresh; 00100 int priority; 00101 ResearchManagerAgent* parent; 00102 GoalDescriptor* goal; 00103 int temporalFactor; 00104 // implementation-specific stuff, if needed 00105 00106 00107 }; 00108 00109 00110 00111 // worker training goal 00112 class Research_ScienceFacilityUpgradeGoalGenerator : public GoalGeneratorBase { 00113 public: 00114 Research_ScienceFacilityUpgradeGoalGenerator(AgentPool* a, ResearchManagerAgent* parent); 00115 00116 // generic stuff 00117 virtual void inhibit(); 00118 virtual bool instantiateGoal(); 00119 virtual void updateDrives(); 00120 virtual void initialize(); 00121 virtual int getdrive(); 00122 virtual int getthresh(); 00123 // what 00124 00125 00126 private: 00127 00128 // generic stuff 00129 bool inhibited; 00130 AgentPool* agentPool; 00131 int drive; 00132 int thresh; 00133 int priority; 00134 ResearchManagerAgent* parent; 00135 GoalDescriptor* goal; 00136 // implementation-specific stuff, if needed 00137 00138 00139 }; 00140 00141 00142 00143 00144 00145 00146 00147 #endif