오늘 나는 this Python roguelike tutorial으로 진행하여 인벤토리에 들어갔습니다. 현재로서는 항목을 선택하여 사용할 수 있습니다. 단 하나의 문제는 인벤토리에 액세스 할 때 console_wait_for_keypress(True)
기능을 사용 했음에도 불구하고 초 단위로만 볼 수 있다는 것입니다. 나는 그것이 왜 사라지는 지 확신하지 못합니다. 다음은 메뉴 (이 경우 인벤토리)를 표시하는 코드입니다.Python Roguelike : 인벤토리가 사라짐
def menu(header,options,width):
if len(options)>26: raise ValueError('Cannot have a menu with more than 26 options.')
header_height=libtcod.console_get_height_rect(con,0,0,width,SCREEN_HEIGHT,header)
height=len(options)+header_height
window=libtcod.console_new(width,height)
libtcod.console_set_default_foreground(window,libtcod.white)
libtcod.console_print_rect_ex(window,0,0,width,height,libtcod.BKGND_NONE,libtcod.LEFT,header)
y=header_height
letter_index=ord('a')
for option_text in options:
text='('+chr(letter_index)+')'+option_text
libtcod.console_print_ex(window,0,y,libtcod.BKGND_NONE,libtcod.LEFT,text)
y+=1
letter_index+=1
x=SCREEN_WIDTH/2-width/2
y=SCREEN_HEIGHT/2-height/2
libtcod.console_blit(window,0,0,width,height,0,x,y,1.0,0.7)
libtcod.console_flush()
key=libtcod.console_wait_for_keypress(True)
index=key.c-ord('a')
if index>=0 and index<len(options): return index
return None
누구든지 도움을 주거나이 문제를 입력 해 주시면 감사하겠습니다.
"The python roguelike tutorial"? 특정 하나? 당신이 일하는 것이 당신이 기대하는만큼 유명하지 않다고 생각합니다. –
오, 예, 어제이 튜토리얼에 대한 글을 올렸습니다 ... 튜토리얼에 대한 링크가 있습니다 : http://roguebasin.roguelikedevelopment.org/index.php?title=Complete_Roguelike_Tutorial,_using_python%2Blibtcod –