BWAPI
|
00001 #ifndef MILPROD_GOALHEADERS_H 00002 #define MILPROD_GOALHEADERS_H 00003 #include "GoalGeneratorBase.h" 00004 #include "GoalTypes.h" 00005 00006 class MilitaryProductionManagerAgent; 00007 00008 // marine training goal 00009 class Military_TrainMarineGoalGenerator : public GoalGeneratorBase { 00010 public: 00011 Military_TrainMarineGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00012 00013 // generic stuff 00014 virtual void inhibit(); 00015 virtual bool instantiateGoal(); 00016 virtual void updateDrives(); 00017 virtual void initialize(); 00018 virtual int getdrive(); 00019 virtual int getthresh(); 00020 00021 00022 private: 00023 00024 // generic stuff 00025 bool inhibited; 00026 AgentPool* agentPool; 00027 int drive; 00028 int thresh; 00029 int priority; 00030 MilitaryProductionManagerAgent* parent; 00031 GoalDescriptor* goal; 00032 int temporalFactor; 00033 00034 // implementation-specific stuff, if needed 00035 00036 00037 }; 00038 00039 00040 class Military_TrainFireBatGoalGenerator : public GoalGeneratorBase { 00041 public: 00042 Military_TrainFireBatGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00043 00044 // generic stuff 00045 virtual void inhibit(); 00046 virtual bool instantiateGoal(); 00047 virtual void updateDrives(); 00048 virtual void initialize(); 00049 virtual int getdrive(); 00050 virtual int getthresh(); 00051 00052 00053 private: 00054 00055 // generic stuff 00056 bool inhibited; 00057 AgentPool* agentPool; 00058 int drive; 00059 int thresh; 00060 int priority; 00061 MilitaryProductionManagerAgent* parent; 00062 GoalDescriptor* goal; 00063 int temporalFactor; 00064 // implementation-specific stuff, if needed 00065 00066 00067 }; 00068 00069 class Military_TrainMedicGoalGenerator : public GoalGeneratorBase { 00070 public: 00071 Military_TrainMedicGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00072 00073 // generic stuff 00074 virtual void inhibit(); 00075 virtual bool instantiateGoal(); 00076 virtual void updateDrives(); 00077 virtual void initialize(); 00078 virtual int getdrive(); 00079 virtual int getthresh(); 00080 00081 00082 private: 00083 00084 // generic stuff 00085 bool inhibited; 00086 AgentPool* agentPool; 00087 int drive; 00088 int thresh; 00089 int priority; 00090 MilitaryProductionManagerAgent* parent; 00091 GoalDescriptor* goal; 00092 int temporalFactor; 00093 // implementation-specific stuff, if needed 00094 00095 00096 }; 00097 00098 00099 // wraith training goal 00100 class Military_TrainFlyerGoalGenerator : public GoalGeneratorBase { 00101 public: 00102 Military_TrainFlyerGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00103 00104 // generic stuff 00105 virtual void inhibit(); 00106 virtual bool instantiateGoal(); 00107 virtual void updateDrives(); 00108 virtual void initialize(); 00109 virtual int getdrive(); 00110 virtual int getthresh(); 00111 00112 00113 private: 00114 00115 // generic stuff 00116 bool inhibited; 00117 AgentPool* agentPool; 00118 int drive; 00119 int thresh; 00120 int priority; 00121 MilitaryProductionManagerAgent* parent; 00122 GoalDescriptor* goal; 00123 int temporalFactor; 00124 // implementation-specific stuff, if needed 00125 00126 00127 }; 00128 00129 00130 // marine training goal 00131 class Military_TrainTankGoalGenerator : public GoalGeneratorBase { 00132 public: 00133 Military_TrainTankGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00134 00135 // generic stuff 00136 virtual void inhibit(); 00137 virtual bool instantiateGoal(); 00138 virtual void updateDrives(); 00139 virtual void initialize(); 00140 virtual int getdrive(); 00141 virtual int getthresh(); 00142 00143 00144 private: 00145 00146 // generic stuff 00147 bool inhibited; 00148 AgentPool* agentPool; 00149 int drive; 00150 int thresh; 00151 int priority; 00152 MilitaryProductionManagerAgent* parent; 00153 GoalDescriptor* goal; 00154 int temporalFactor; 00155 // implementation-specific stuff, if needed 00156 00157 00158 }; 00159 00160 00161 00162 00163 // marine training goal 00164 class Military_TrainGoliathGoalGenerator : public GoalGeneratorBase { 00165 public: 00166 Military_TrainGoliathGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00167 00168 // generic stuff 00169 virtual void inhibit(); 00170 virtual bool instantiateGoal(); 00171 virtual void updateDrives(); 00172 virtual void initialize(); 00173 virtual int getdrive(); 00174 virtual int getthresh(); 00175 00176 private: 00177 00178 // generic stuff 00179 bool inhibited; 00180 AgentPool* agentPool; 00181 int drive; 00182 int thresh; 00183 int priority; 00184 MilitaryProductionManagerAgent* parent; 00185 GoalDescriptor* goal; 00186 int temporalFactor; 00187 // implementation-specific stuff, if needed 00188 00189 00190 }; 00191 00192 class Military_TrainScienceVesselGoalGenerator : public GoalGeneratorBase { 00193 public: 00194 Military_TrainScienceVesselGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00195 00196 // generic stuff 00197 virtual void inhibit(); 00198 virtual bool instantiateGoal(); 00199 virtual void updateDrives(); 00200 virtual void initialize(); 00201 virtual int getdrive(); 00202 virtual int getthresh(); 00203 00204 private: 00205 00206 // generic stuff 00207 bool inhibited; 00208 AgentPool* agentPool; 00209 int drive; 00210 int thresh; 00211 int priority; 00212 MilitaryProductionManagerAgent* parent; 00213 GoalDescriptor* goal; 00214 int temporalFactor; 00215 // implementation-specific stuff, if needed 00216 00217 00218 }; 00219 00220 00221 00222 class Military_TrainDropShipGoalGenerator : public GoalGeneratorBase { 00223 public: 00224 Military_TrainDropShipGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00225 00226 // generic stuff 00227 virtual void inhibit(); 00228 virtual bool instantiateGoal(); 00229 virtual void updateDrives(); 00230 virtual void initialize(); 00231 virtual int getdrive(); 00232 virtual int getthresh(); 00233 00234 00235 00236 private: 00237 00238 // generic stuff 00239 bool inhibited; 00240 AgentPool* agentPool; 00241 int drive; 00242 int thresh; 00243 int priority; 00244 MilitaryProductionManagerAgent* parent; 00245 GoalDescriptor* goal; 00246 int temporalFactor; 00247 // implementation-specific stuff, if needed 00248 00249 00250 }; 00251 00252 00253 00254 class Military_TrainVultureGoalGenerator : public GoalGeneratorBase { 00255 public: 00256 Military_TrainVultureGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00257 00258 // generic stuff 00259 virtual void inhibit(); 00260 virtual bool instantiateGoal(); 00261 virtual void updateDrives(); 00262 virtual void initialize(); 00263 virtual int getdrive(); 00264 virtual int getthresh(); 00265 00266 00267 00268 private: 00269 00270 // generic stuff 00271 bool inhibited; 00272 AgentPool* agentPool; 00273 int drive; 00274 int thresh; 00275 int priority; 00276 MilitaryProductionManagerAgent* parent; 00277 GoalDescriptor* goal; 00278 int temporalFactor; 00279 // implementation-specific stuff, if needed 00280 00281 00282 }; 00283 00284 00285 00286 class Military_TrainBattlecruiserGoalGenerator : public GoalGeneratorBase { 00287 public: 00288 Military_TrainBattlecruiserGoalGenerator(AgentPool* a, MilitaryProductionManagerAgent* parent); 00289 00290 // generic stuff 00291 virtual void inhibit(); 00292 virtual bool instantiateGoal(); 00293 virtual void updateDrives(); 00294 virtual void initialize(); 00295 virtual int getdrive(); 00296 virtual int getthresh(); 00297 00298 00299 00300 private: 00301 00302 // generic stuff 00303 bool inhibited; 00304 AgentPool* agentPool; 00305 int drive; 00306 int thresh; 00307 int priority; 00308 MilitaryProductionManagerAgent* parent; 00309 GoalDescriptor* goal; 00310 int temporalFactor; 00311 // implementation-specific stuff, if needed 00312 00313 00314 }; 00315 00316 #endif