def __init__(self): core.wm.set_screen("inventory") Window.__init__(self,core.screen.get_rect()) core.wm.set_screen("main") self.fg = color.Color('white') self.bg = color.Color('Blue') self.font = font.Font(None, 20) self.equipped_icon = self.font.render("E", True, self.fg) self.character_fields = \ ['level','hp','max_hp','strength','agility','vitality','thaco','ac','gold','exp']
def __init__(self, width=170, height=40, x=5, y=5): rect = Rect(x,y,width,height) Window.__init__(self, rect, 0) self.x = x self.y = y self.render = pygame.font.Font(None, 16).render self.fg = pygame.color.Color('yellow') self.bg = pygame.color.Color('black') self.tr = pygame.color.Color('red') self.bgwin = core.wm.window(width,height,x,y,z=1,name="FPS background") self.bgwin.image.fill(self.bg) self.bgwin.image.set_alpha(128)
def __init__(self, width, height, default_tile_name='floor'): Window.__init__(self,None,10) self.save_data = SaveObject() self.tile_manager = TileManager() default_tile = self.tile_manager.get_tile(default_tile_name) self.tiles = [] for x in range(width): col = [] self.tiles.append(col) for y in range(height): location = MapLocation(self, (x,y), default_tile) col.append(location) self.width = width self.height = height tiles_x = core.screen.get_width() / 32 tiles_y = core.screen.get_height() / 32 self.dimentions = Rect(0,0,width,height) self.character = None self.entities = RenderEntity() self.non_passable_entities = RenderEntity() self.viewport = Rect(0,0,tiles_x,tiles_y) self.offset = Rect(0,0,0,0) self.map_tile_coverage = Rect(0,0,tiles_x+5,tiles_y+5) if self.map_tile_coverage.width > width: self.map_tile_coverage.width = width if self.map_tile_coverage.height > height: self.map_tile_coverage.height = height self.map_non_scroll_region = \ self.viewport.inflate(SCROLL_EDGE*-2,SCROLL_EDGE*-2) self.action_listeners = {} self.entry_listeners = {} self.movement_listeners = [] self.scrolling = False self.frame = 0 self.map_frames_dirty = [True,True,True,True] self.map_frames = [] self.heal_points = 0 self.regen_rate = 2000000000 self.sound = core.mixer.Sound('%s/sounds/beep.wav' % DATA_DIR) for f in range(4): #TODO Add non hardcoded values for buffer #TODO Make sure we don't make a larger surface than we need #TODO Ex: 5x5 map self.map_frames.append(Surface(((1+width) * TILE_SIZE, \ (1+height) * TILE_SIZE)))
def __init__(self): self.sm = SeleniumManager( 'https://eu.bbcollab.com/collab/ui/session/guest/07731b875d3f4c27933ca970d57d0d84', bot_name, self) self.music_bot = MusicBot(self.sm) self.commands = { 'musique': self.music_bot.command, 'aide': self.help, 'parle': self.speak, 'covid': self.covid, 'meme': self.meme, 'chat': self.cat_img, 'traduire': self.translate } self.window = Window(self.sm, self)
def start_game(menu_id: int): def on_key_press(event): if event.key == pygame.K_ESCAPE: on_quit(event) elif event.key in DIRECTION['UP']: print('Snake move up') elif event.key in DIRECTION['LEFT']: print('Snake move left') elif event.key in DIRECTION['DOWN']: print('Snake move down') elif event.key in DIRECTION['RIGHT']: print('Snake move right') def on_mouse_motion(event): if get_direction(event) is not DIRECTION['NONE']: if get_direction(event) is DIRECTION['UP']: print('Snake move up') elif get_direction(event) is DIRECTION['LEFT']: print('Snake move left') elif get_direction(event) is DIRECTION['DOWN']: print('Snake move down') elif get_direction(event) is DIRECTION['RIGHT']: print('Snake move right') def on_quit(event): # root.set_state(False, kill=True) Window.display_window(menu_id) # use the id to get main menu window def on_all_events_handled(): root['snake'].draw() root = Window.get_fullscreen(title='Snake', fill=Colors.GREY, max_fps=20, on_quit=on_quit, on_key_press=on_key_press, on_mouse_motion=on_mouse_motion, on_all_events_handled=on_all_events_handled) root['snake'] = Snake(root, position=(5, 5)) print(root['snake']) root.mainloop()
def on_quit(event): # root.set_state(False, kill=True) Window.display_window(menu_id) # use the id to get main menu window
from tkinter import * from window_manager import Window from widget_manager import WidgetManager # Define window root = Tk() root.resizable(False, False) root.geometry('800x350') # Initialise ui definitions class wind = Window(root) clr_mgr = WidgetManager(root) # Run application root.mainloop()
from constants import Fonts from window_manager import Window from game import start_game if __name__ == '__main__': root = Window(title='Snake Menu', max_fps=10) root.set_buttons({ 'text': 'Snake', 'x': 250, 'y': 100, 'font': Fonts.default(size=80) }, { 'text': 'Start game', 'x': 250, 'y': 250, 'fn': lambda: start_game(root.id) }, { 'text': 'Exit Game', 'x': 250, 'y': 400, 'fn': exit }) root.mainloop()