def showGameover(self): pos = ((game.SCREEN_SIZE[0] - 320) / 2, (game.SCREEN_SIZE[1] - 600) / 2) self.widgets.append( widgets.Icon(pygame.Rect(pos[0], pos[1], 320, 600), game.assets['img/gameover.png'])) pos = (pos[0] + 10, pos[1] + 10) rect = pygame.Rect(pos[0], pos[1], 300, 40) self.widgets.append(widgets.Text(rect, 'Game over!', font='gameover1')) pollution = len([ i for i in range(game.corruption.size[0] * game.corruption.size[1]) if game.corruption.surface[i] > 1 ]) rect.top += 50 self.widgets.append( widgets.Text(rect, 'You survived %d nights.' % int(game.clock / game.dayTicks), font='gameover2')) rect.top += 50 self.widgets.append( widgets.Text(rect, 'You killed %d defenseless people.' % game.spawnedTotal, font='gameover2')) rect.top += 50 self.widgets.append( widgets.Text(rect, 'You destroyed %d acres of land.' % pollution, font='gameover2')) rect.top += 50 self.widgets.append(widgets.Text(rect, 'And why?', font='gameover3')) rect.top += 50 self.widgets.append( widgets.Text(rect, 'They were only defending themselves.', font='gameover2')) rect.top += 100 def quitCb(*_): game.gameIsRunning = False self.widgets.append( widgets.TextButton(rect, 'Exit.', font='gameover3', callback=quitCb)) rect.top += 50 def mainCb(*_): self.nextScene = self.parent self.widgets.append( widgets.TextButton(rect, 'Main menu.', font='gameover3', callback=mainCb))
def showGamePause(self): if game.isPaused: #Hiding menu game.isPaused = False for n in self.pausedWidgets: self.widgets.remove(n) self.pausedWidgets = None else: self.pausedWidgets = [] pos = ((game.SCREEN_SIZE[0] - 320) / 2, (game.SCREEN_SIZE[1] - 600) / 2) self.pausedWidgets.append( widgets.Icon(pygame.Rect(pos[0], pos[1], 320, 600), game.assets['img/gameover.png'])) pos = (pos[0] + 10, pos[1] + 10) rect = pygame.Rect(pos[0], pos[1], 300, 40) self.pausedWidgets.append( widgets.Text(rect, 'Paused.', font='gameover1')) pollution = len([ i for i in range(game.corruption.size[0] * game.corruption.size[1]) if game.corruption.surface[i] > 1 ]) def quitCb(*_): game.gameIsRunning = False def resumeCb(*_): self.showGamePause() def mainCb(*_): self.nextScene = self.parent rect.top += 300 self.pausedWidgets.append( widgets.TextButton(rect, 'Resume.', font='gameover3', callback=resumeCb)) rect.top += 50 self.pausedWidgets.append( widgets.TextButton(rect, 'Exit to menu.', font='gameover3', callback=mainCb)) rect.top += 50 self.pausedWidgets.append( widgets.TextButton(rect, 'Exit game.', font='gameover3', callback=quitCb)) for n in self.pausedWidgets: self.widgets.append(n) game.isPaused = True
def __init__(self, master: wx.BookCtrl): super(InfoTab, self).__init__(parent=master, name='PNL_ITEM_INFO') self.panel = master.GetParent() leftSizer = wx.BoxSizer(wx.VERTICAL) rightSizer = wx.BoxSizer(wx.VERTICAL) # icon path self.icon = wx.FilePickerCtrl(parent=self, wildcard='*.png') leftSizer.Add(self.icon) # calc ent count self.calcEntCount = widgets.TextButton( parent=self, label=loc('root.book.itempage.book.info.cec.label')) # main sizer sizer = wx.BoxSizer() sizer.Add(leftSizer, wx.SizerFlags(1).Expand()) sizer.Add(rightSizer, wx.SizerFlags(1).Expand()) self.SetSizer(sizer)
WINDOW_WIDTH = 1024 WINDOW_HEIGHT = 728 pygame.init() pygame.font.init screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT)) clock = pygame.time.Clock() FPS = 60 running = True if __name__ == "__main__": panel = widgets.Panel(core.Grid((3, 7), (WINDOW_WIDTH, WINDOW_HEIGHT)), None, None, (0, 0)) panel.set_color((100, 100, 100, 255)) buttons = [ widgets.TextButton(panel, (1, n), core.Text("Button " + str(n), 32)) for n in range(7) ] [x.set_image("gfx/bg1.bmp") for x in buttons] def redraw(): pygame.display.flip() screen.fill((0, 0, 0)) panel.draw(screen) [x.draw(screen) for x in buttons] while (running): clock.tick(FPS) redraw() for e in pygame.event.get():
pygame.font.init screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT)) clock = pygame.time.Clock() FPS = 60 running = True if __name__ == "__main__": panel = widgets.Panel(core.Grid((3, 7), (WINDOW_WIDTH, WINDOW_HEIGHT)), None, None, (0, 0)) panel.set_color((55, 55, 55, 255)) midpanel = widgets.Panel( core.Grid((1, 1), (panel.get_cell_width(), panel.get_cell_height())), panel, (1, 1), None) midpanel.set_color((0, 0, 0, 255)) midpanel.set_span((0, 6)) button = widgets.TextButton(midpanel, (0, 0), core.Text("Button " + str(0), 32)) button.set_color((0, 100, 0, 255)) button.set_border((255, 0, 0, 255), 16) def redraw(): pygame.display.flip() screen.fill((0, 0, 0)) panel.draw(screen) midpanel.draw(screen) button.draw(screen) while (running): clock.tick(FPS) redraw() for e in pygame.event.get():