BWAPI
|
00001 #ifndef MILSTRUC_GOALHEADERS_H 00002 #define MILSTRUC_GOALHEADERS_H 00003 #include "GoalGeneratorBase.h" 00004 #include "GoalTypes.h" 00005 00006 class MilitaryStructureManagerAgent; 00007 00008 // worker training goal 00009 class Military_BuildBarracksGoalGenerator : public GoalGeneratorBase { 00010 public: 00011 Military_BuildBarracksGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* 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 // what 00021 00022 00023 private: 00024 00025 // generic stuff 00026 bool inhibited; 00027 AgentPool* agentPool; 00028 int drive; 00029 int thresh; 00030 int priority; 00031 MilitaryStructureManagerAgent* parent; 00032 GoalDescriptor* goal; 00033 int temporalFactor; 00034 // implementation-specific stuff, if needed 00035 00036 00037 }; 00038 00039 00040 00041 00042 00043 class Military_BuildAcademyGoalGenerator : public GoalGeneratorBase { 00044 public: 00045 Military_BuildAcademyGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00046 00047 // generic stuff 00048 virtual void inhibit(); 00049 virtual bool instantiateGoal(); 00050 virtual void updateDrives(); 00051 virtual void initialize(); 00052 virtual int getdrive(); 00053 virtual int getthresh(); 00054 // what 00055 00056 00057 private: 00058 00059 // generic stuff 00060 bool inhibited; 00061 AgentPool* agentPool; 00062 int drive; 00063 int thresh; 00064 int priority; 00065 MilitaryStructureManagerAgent* parent; 00066 GoalDescriptor* goal; 00067 int temporalFactor; 00068 // implementation-specific stuff, if needed 00069 00070 00071 }; 00072 00073 00074 00075 00076 00077 class Military_BuildStarportGoalGenerator : public GoalGeneratorBase { 00078 public: 00079 Military_BuildStarportGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00080 00081 // generic stuff 00082 virtual void inhibit(); 00083 virtual bool instantiateGoal(); 00084 virtual void updateDrives(); 00085 virtual void initialize(); 00086 virtual int getdrive(); 00087 virtual int getthresh(); 00088 // what 00089 00090 00091 private: 00092 00093 // generic stuff 00094 bool inhibited; 00095 AgentPool* agentPool; 00096 int drive; 00097 int thresh; 00098 int priority; 00099 MilitaryStructureManagerAgent* parent; 00100 GoalDescriptor* goal; 00101 int temporalFactor; 00102 // implementation-specific stuff, if needed 00103 00104 00105 }; 00106 00107 00108 00109 class Military_BuildFactoryGoalGenerator : public GoalGeneratorBase { 00110 public: 00111 Military_BuildFactoryGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00112 00113 // generic stuff 00114 virtual void inhibit(); 00115 virtual bool instantiateGoal(); 00116 virtual void updateDrives(); 00117 virtual void initialize(); 00118 virtual int getdrive(); 00119 virtual int getthresh(); 00120 // what 00121 00122 00123 private: 00124 00125 // generic stuff 00126 bool inhibited; 00127 AgentPool* agentPool; 00128 int drive; 00129 int thresh; 00130 int priority; 00131 MilitaryStructureManagerAgent* parent; 00132 GoalDescriptor* goal; 00133 int temporalFactor; 00134 // implementation-specific stuff, if needed 00135 00136 00137 }; 00138 00139 00140 00141 00142 00143 class Military_BuildArmoryGoalGenerator : public GoalGeneratorBase { 00144 public: 00145 Military_BuildArmoryGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00146 00147 // generic stuff 00148 virtual void inhibit(); 00149 virtual bool instantiateGoal(); 00150 virtual void updateDrives(); 00151 virtual void initialize(); 00152 virtual int getdrive(); 00153 virtual int getthresh(); 00154 // what 00155 00156 00157 private: 00158 00159 // generic stuff 00160 bool inhibited; 00161 AgentPool* agentPool; 00162 int drive; 00163 int thresh; 00164 int priority; 00165 MilitaryStructureManagerAgent* parent; 00166 GoalDescriptor* goal; 00167 int temporalFactor; 00168 // implementation-specific stuff, if needed 00169 00170 00171 }; 00172 00173 00174 00175 class Military_BuildEngineeringBayGoalGenerator : public GoalGeneratorBase { 00176 public: 00177 Military_BuildEngineeringBayGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00178 00179 // generic stuff 00180 virtual void inhibit(); 00181 virtual bool instantiateGoal(); 00182 virtual void updateDrives(); 00183 virtual void initialize(); 00184 virtual int getdrive(); 00185 virtual int getthresh(); 00186 // what 00187 00188 00189 private: 00190 00191 // generic stuff 00192 bool inhibited; 00193 AgentPool* agentPool; 00194 int drive; 00195 int thresh; 00196 int priority; 00197 MilitaryStructureManagerAgent* parent; 00198 GoalDescriptor* goal; 00199 int temporalFactor; 00200 // implementation-specific stuff, if needed 00201 00202 00203 }; 00204 00205 00206 00207 00208 class Military_BuildScienceFacilityGoalGenerator : public GoalGeneratorBase { 00209 public: 00210 Military_BuildScienceFacilityGoalGenerator(AgentPool* a, MilitaryStructureManagerAgent* parent); 00211 00212 // generic stuff 00213 virtual void inhibit(); 00214 virtual bool instantiateGoal(); 00215 virtual void updateDrives(); 00216 virtual void initialize(); 00217 virtual int getdrive(); 00218 virtual int getthresh(); 00219 // what 00220 00221 00222 private: 00223 00224 // generic stuff 00225 bool inhibited; 00226 AgentPool* agentPool; 00227 int drive; 00228 int thresh; 00229 int priority; 00230 MilitaryStructureManagerAgent* parent; 00231 GoalDescriptor* goal; 00232 int temporalFactor; 00233 // implementation-specific stuff, if needed 00234 00235 00236 }; 00237 00238 #endif