def _create_ships(self): '''Create ships on the canvas.''' self._ship_squares = {} for i, ship in enumerate(Ship.SHORT_NAMES): y = self.TOP_PADDING + i * (self.Y_SPACING * 2 + self.RECT_SIZE) s = Ship(0, 0, ship, False) self._c.create_text(self.LEFT_PADDING, y, text=s.get_full_name().title(), anchor=NW) self._ship_squares[ship] = [None] * s.get_size() for x in range(s.get_size()): self._ship_squares[ship][x] = self._c.create_rectangle( self.LEFT_PADDING + x * self.RECT_SIZE, y + self.Y_SPACING, self.LEFT_PADDING + (x + 1) * self.RECT_SIZE, y + self.Y_SPACING + self.RECT_SIZE, fill=self.RECT_NULL_FILL, outline="black" )
def reset(self): for ship in Ship.SHORT_NAMES: s = Ship(0, 0, ship, False) self.update(s, [0] * s.get_size())