diff --git a/Adventure Game/adventure_game/urwid_main.py b/Adventure Game/adventure_game/urwid_main.py new file mode 100644 index 0000000..159bf3e --- /dev/null +++ b/Adventure Game/adventure_game/urwid_main.py @@ -0,0 +1,29 @@ +import urwid + +def exit_on_q(key): + if key in ('q', 'Q'): + raise urwid.ExitMainLoop() + +palette = [ + ('banner', '', '', '', '#ffa', '#60d'), + ('streak', '', '', '', 'g50', '#60a'), + ('inside', '', '', '', 'g38', '#808'), + ('outside', '', '', '', 'g27', '#a06'), + ('bg', '', '', '', 'g7', '#d06'),] + +placeholder = urwid.SolidFill() +loop = urwid.MainLoop(placeholder, palette, unhandled_input=exit_on_q) +loop.screen.set_terminal_properties(colors=256) +loop.widget = urwid.AttrMap(placeholder, 'bg') +loop.widget.original_widget = urwid.Filler(urwid.Pile([])) + +div = urwid.Divider() +outside = urwid.AttrMap(div, 'outside') +inside = urwid.AttrMap(div, 'inside') +txt = urwid.Text(('banner', u" Hello World "), align='center') +streak = urwid.AttrMap(txt, 'streak') +pile = loop.widget.base_widget # .base_widget skips the decorations +for item in [outside, inside, streak, inside, outside]: + pile.contents.append((item, pile.options())) + +loop.run() \ No newline at end of file diff --git a/Adventure Game/requirements.txt b/Adventure Game/requirements.txt index 6493b8a..a277d12 100644 --- a/Adventure Game/requirements.txt +++ b/Adventure Game/requirements.txt @@ -1,2 +1,3 @@ # Blessed handles our terminal "graphics" -blessed==1.17.12 \ No newline at end of file +blessed==1.17.12 +urwid~=2.1.2 \ No newline at end of file