def test_console_printing(console, fg, bg): libtcodpy.console_set_background_flag(console, libtcodpy.BKGND_SET) assert (libtcodpy.console_get_background_flag(console) == libtcodpy.BKGND_SET) libtcodpy.console_set_alignment(console, libtcodpy.LEFT) assert (libtcodpy.console_get_alignment(console) == libtcodpy.LEFT) libtcodpy.console_print(console, 0, 0, 'print') libtcodpy.console_print_ex(console, 0, 0, libtcodpy.BKGND_SET, libtcodpy.LEFT, 'print ex') assert (libtcodpy.console_print_rect( console, 0, 0, 8, 8, 'print rect') > 0 ) assert (libtcodpy.console_print_rect_ex( console, 0, 0, 8, 8, libtcodpy.BKGND_SET, libtcodpy.LEFT, 'print rect ex') > 0 ) assert (libtcodpy.console_get_height_rect( console, 0, 0, 8, 8, 'get height') > 0 ) libtcodpy.console_set_color_control(libtcodpy.COLCTRL_1, fg, bg)
def render(self): ''' visible=true 보이는 상태이고 Screen에 포함되어 있으면 자신의 foreground color와 background color에 따라 Screen(의 콘솔에) char를 출력한다. ''' if self.visible is True: if self.ownerScreen is not None: owner = self._ownerScreen prevBackFlag = libtcod.console_get_background_flag(owner.console) prevForeColor = owner.foreColor prevBackColor = owner.backColor #renderObj의 색깔로 설정 libtcod.console_set_background_flag(owner.console, libtcod.BKGND_SET) libtcod.console_set_default_foreground(owner.console, self.foreColor) libtcod.console_set_default_background(owner.console, self.backColor) #출력 libtcod.console_print(owner.console, self.x, self.y, self.char) #원래 owner의 색깔로 되돌리기. libtcod.console_set_background_flag(owner.console, prevBackFlag) libtcod.console_set_default_foreground(owner.console, prevForeColor) libtcod.console_set_default_background(owner.console, prevBackColor) else: raise NoOwnerRenderObjError()
def get_background_flag(self): return libtcod.console_get_background_flag(self.con)
def bg_effect(self): """ The default background colour which is used for functions that do not explicitly ask for one. """ return dlib.console_get_background_flag(self._intern)