tower.attack is not a function...???
- 
					
					
					
					
 // Handle repairing and attacking for towers 
 var towers = _.filter(Game.structures, (s) => STRUCTURE_TOWER);
 for (let tower of towers) {
 var closestWounded = tower.pos.findClosestByRange(FIND_MY_CREEPS, {
 filter: (w) => w.hits < w.hitsMax
 });
 var closestHostile = tower.pos.findClosestByRange(FIND_HOSTILE_CREEPS);
 var closestDamagedStructure = tower.pos.findClosestByRange(FIND_STRUCTURES, {
 filter: (s) => s.hits < s.hitsMax && s.structureType != STRUCTURE_WALL
 });
 if(closestHostile) {
 tower.attack(closestHostile);
 }
 if ((closestWounded) && (tower.energy > 250)) {
 tower.heal(closestWounded);
 }
 /*if ((closestDamagedStructure) && (tower.energy > 990)) {
 tower.repair(closestDamagedStructure);
 }*/
 }
 
 This is all my code related to towers, I'm stumped as to why I keep getting this "TypeError: tower.attack is not a function
 at Object.module.exports.loop (main:74:8)
 at __mainLoop:1:52"
 In my emails whenever an npc creep comes and wipes out my colony (well it wouldn't if my tower was working)
 tower.repair() works just fine, so I can't understand why this error is showing.Any help would be greatly appreciated! PS: line 74 is tower.attack(closestHostile); 
 PPS: don't mind the commented out repair section, still working on making it periodic
 
- 
					
					
					
					
 first step of any screeps debugging: console.log! 
 right above tower.attack(closestHostile), do this:console.log(tower); 
 console.log(JSON.stringify(tower));
 console.log(closestHostile);
 console.log(JSON.stringify(closestHostile);
 this will help illustrate if your variables contain what you think they should contain at that point.
 
- 
					
					
					
					
 Ah good point! Next time that will be the first thing I do haha when I console logged tower, it returned every structure I have, then I noticed var towers = _.filter(Game.structures, (s) => STRUCTURE_TOWER); was missing something. Changed it to this: var towers = _.filter(Game.structures, (s) => s.structureType == STRUCTURE_TOWER); and now everything works like a charm! Thanks!