Esempio n. 1
0
def get_tile_index(x, y):
    now_room = game_world.get_map()
    i = clamp(0, int((x - now_room.left) / now_room.tile_size_in_world),
              OverWorld.__overworld_room_column - 1)
    j = clamp(0, int((y - now_room.bottom) / now_room.tile_size_in_world),
              now_room.tile_row - 1)
    return i, j
Esempio n. 2
0
 def wander(self):
     self.update_form()
     if game_world.get_map().step_on_tiles(self) or \
             not game_world.now_map.pt_in_room(self.form.pos.x, self.form.pos.y):
         self.sight = random.randint(0, 3)
     self.state = self.STATE_BURROW_IN
     self.draw_list.append(self.draw_body)
     return BehaviorTree.SUCCESS
Esempio n. 3
0
 def chase_target(self):
     target = self.target.form
     self.watch_target(target.pos)
     self.update_form()
     if game_world.get_map().step_on_tiles(self):
         self.sight = random.randint(0, 3)
         return BehaviorTree.FAIL
     self.draw_list.append(self.draw_body)
     return BehaviorTree.SUCCESS