Exemplo n.º 1
0
    def update(self, ants):
      "Updates class variables"
      ###Initializes class variables
      if self.total_ants == -1:
	self.total_ants = len(ants.my_ants())
      ###Updates Food
      new_food = ants.food()
      for f in self.food:
	if f not in new_food and ants.visible(f) and 'a' in a_star.surroundings(f, self.level_array):
	  self.total_ants += 1
      self.food = ants.food()
      ###Calibrates ant lookup and resets value to None
      a = ants.my_ants()
      dead = []
      for ant in self.ant_lookup:
	if ant not in a:
	  dead.append(ant)
      for ant in dead:
	self.dead_ants += 1
	del self.ant_lookup[ant]
      for ant in a:
	self.ant_lookup[ant] = None
      self.current_ants = self.total_ants - self.dead_ants
      self.map_ants = len(self.ant_lookup)
      self.hive_ants = self.current_ants - self.map_ants
Exemplo n.º 2
0
    def update(self, ants):
      "Updates class variables"
      ###Initializes class variables
      if self.total_ants == -1:
	self.total_ants = len(ants.my_ants())
      ###Updates Food
      new_food = ants.food()
      for f in self.food:
	if f not in new_food and ants.visible(f) and 'a' in a_star.surroundings(f, self.level_array):
	  self.total_ants += 1
      self.food = ants.food()
      ###Updates hill attack locations
      hills = ants.enemy_hills_locs()
      for h in hills:
	if h not in self.enemy_hills:
	  self.enemy_hills.append(h)
      razed = []
      for h in self.enemy_hills:
	if ants.visible(h) and h not in hills:
	  razed.append(h)
      for h in razed:
	self.enemy_hills.remove(h)
      ###Calibrates ant lookup and resets value to None
      a = ants.my_ants()
      dead = []
      for ant in self.ant_lookup:
	if ant not in a:
	  dead.append(ant)
      for ant in dead:
	self.dead_ants += 1
	del self.ant_lookup[ant]
      ###Resets all ant guides to None
      for ant in a:
	self.ant_lookup[ant] = None
      ###Sets class variables
      self.current_ants = self.total_ants - self.dead_ants
      self.map_ants = len(self.ant_lookup)
      self.hive_ants = self.current_ants - self.map_ants