Форум сайта python.su
Наблюдаю явление, которому не могу найти объяснение.
Пишу в своё удовольствие рогалик, сейчас работаю над генерацией уровня. Просмотр сгенерёного уровня делаю с помошью curses.newpad, скролл которого делаю следующим образом:
while True: c=stdscr.getch() if c == ord ('q'): break if c == ord ('w'): cl.scroll (0, -1) if c == ord ('a'): cl.scroll (-1, 0) if c == ord ('s'): cl.scroll (0, 1) if c == ord ('d'): cl.scroll (+1, 0) cl.refresh ()
def scroll (self, __x, __y): """Change _x, _y according to arguments. Does not refresh,\ but sets variables for refresh() to run. """ assert isinstance (__x, int) assert isinstance (__y, int) if self._x == self.lvl.min_x - 2*self.draw_length and __x < 0: __x = 0 elif self._x == self.lvl.max_x + 2*self.draw_length+15 and __x > 0: __x = 0 self._x +=__x if self._y == self.lvl.min_y - 2*self.draw_length and __y < 0: __y = 0 elif self._y == self.lvl.max_y + 2*self.draw_length+15 and __y > 0: __y = 0 self._y +=__y
In [5]: l Out[5]: Level (room_size_min = 5, room_size_max = 7, room_type = "random", digger_where_to = (2, 4, 6, 8), digger_stamina = 6, doors_are_useful = True, min_rooms = 5, max_rooms = 10, room_times = 1) In [6]: l.size_y, l.size_x Out[6]: (121, 101) In [7]: cl.pad.getmaxyx() Out[7]: (123, 103)
Отредактировано antib (Дек. 15, 2013 18:27:06)
Офлайн