다음 코드는 내 roguelike 게임의 디스플레이를 렌더링합니다. 여기에는지도 렌더링이 포함됩니다._curses.error : add_wch()가 오류를 반환했습니다.
def render_all(self):
for y in range(self.height):
for x in range(self.width):
wall = self.map.lookup(x,y).blocked
if wall:
self.main.addch(y, x, "#")
else:
self.main.addch(y, x, ".")
for thing in self.things:
draw_thing(thing)
매번 오류가 발생합니다. 나는 화면에서 벗어날 것이기 때문에 그것이라고 생각하지만 height와 width 변수는 self.main.getmaxyx()에서 오는 것이므로 그렇게하지 말아야한다. 내가 뭘 놓치고 있니? Ubuntu 14.04에서 실행되는 Python 3.4.3이 중요합니다.
스크롤하지 않고 오른쪽 아래 여백에 문자를 넣으려면 어떻게해야합니까? – Jonathanb
조언이 없습니다. @ 토마스 디 키? 충돌없이 오른쪽 아래 여백에 어떻게 써야합니까? try/except 절에서 감싸는가? 그러나 합법적 인 저주 오류가 있다면 어떨까요? – Jonathanb
'addch'는 윈도우가 널 포인터 인 경우 오류를 반환하지만 가능성은 희박합니다. 'addch'를 둘러싼 try/catch는 유일한 해결책으로 보인다. (오른쪽 하단 모서리에서만이 작업을하는 특별한 경우를 만들면 혼란이 생길 것이다). –