void main() { object oOb=GetObjectByTag("dwarfscav"); object oWP; object oMod=GetModule(); int nCAI=GetLocalInt(oMod,"nAISetting"); int nSC=GetLocalInt(oMod,"nCleanerSpawnCount"); int nFreq=240; if (nCAI==1) nFreq=30; nSC++; if (nSC>nFreq) { // do spawn nSC=0; if (oOb==OBJECT_INVALID) { oWP=GetWaypointByTag("POST_dwarfscav"); oOb=CreateObject(OBJECT_TYPE_CREATURE,"dwarfscav",GetLocation(oWP)); SetAILevel(oOb,AI_LEVEL_NORMAL); } oOb=GetObjectByTag("sewerclean"); if (oOb==OBJECT_INVALID) { oWP=GetWaypointByTag("POST_sewerclean"); oOb=CreateObject(OBJECT_TYPE_CREATURE,"sewerclean",GetLocation(oWP)); SetAILevel(oOb,AI_LEVEL_NORMAL); } oOb=GetObjectByTag("toweragent"); if (oOb==OBJECT_INVALID) { oWP=GetWaypointByTag("POST_toweragent"); oOb=CreateObject(OBJECT_TYPE_CREATURE,"toweragent",GetLocation(oWP)); SetAILevel(oOb,AI_LEVEL_NORMAL); } } // do spawn SetLocalInt(oMod,"nCleanerSpawnCount",nSC); }