Esempio n. 1
0
    def start_song(self):
        self.toparr_group = RenderUpdates()
        self.fx_group = RenderUpdates()
        self.text_group = RenderUpdates()
        self.text_group.add([self.score, self.lifebar, self.judging_disp])
        self.text_group.add(self.holdtext)

        if mainconfig["showcombo"]: self.text_group.add(self.combos)

        if self.game.double:
            self.arrow_group = [OrderedRenderUpdates(), OrderedRenderUpdates()]

            for i in range(2):
                self.steps[i].play()
                for d in self.game.dirs:
                    if mainconfig["explodestyle"] > -1:
                        self.toparrfx[i][d].add(self.fx_group)
                    if not self.dark: self.toparr[i][d].add(self.toparr_group)
            self.sprite_groups = [
                self.toparr_group, self.arrow_group[0], self.arrow_group[1],
                self.fx_group, self.text_group
            ]
        else:
            self.steps.play()
            self.arrow_group = OrderedRenderUpdates()
            for d in self.game.dirs:
                if mainconfig["explodestyle"] > -1:
                    self.toparrfx[d].add(self.fx_group)
                if not self.dark: self.toparr[d].add(self.toparr_group)
            self.sprite_groups = [
                self.toparr_group, self.arrow_group, self.fx_group,
                self.text_group
            ]
Esempio n. 2
0
    def __init__(self):
        super().__init__()

        self.ghost = self._create_ghost()
        self.ghost_group = RenderUpdates(self.ghost)

        walls = self._create_walls()
        self.wall_group = RenderUpdates(*walls)

        pickups = self._create_pickups()
        self.pickup_group = RenderUpdates(*pickups)
Esempio n. 3
0
    def __init__(self):
        super().__init__()

        self.ball = self._create_ball()
        self.ball_group = RenderUpdates(self.ball)

        self.paddles = self._create_paddles()
        self.paddle_group = RenderUpdates(*self.paddles)

        self.border_walls = self._create_border()
        self.border_group = RenderUpdates(*self.border_walls)
Esempio n. 4
0
def manual_play(screen, board):
    root = Tk()
    canvas = Canvas(root)
    temp_new = Toplevel(canvas)
    Manual_play_window(temp_new, board)
    root.quit()
    root.mainloop()
    action=GameState.NEWGAME
    return_btn = UIElement(
        center_position=(400, 400),
        font_size=30,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Back",
        action=GameState.NEWGAME,
    )
    quit_btn = UIElement(
        center_position=(400, 500),
        font_size=30,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Quit",
        action=GameState.QUIT,
    )
    buttons = RenderUpdates(return_btn, quit_btn)
    return game_loop(screen, buttons)
Esempio n. 5
0
def pauseScreen(screen, clock, menu):
    title = UITextElement(
        True, [screen.get_width() / 2,
               int(60 * (screen.get_height() / 720))], "Pause",
        int(50 * (screen.get_height() / 720)), None, (255, 255, 255))
    resume_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(160 * (screen.get_height() / 720))], ("Resume"),
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255), "M.Back")
    save_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(210 * (screen.get_height() / 720))], ("Save"),
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255), "S.Save")
    options_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(260 * (screen.get_height() / 720))], ("Options"),
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255),
        "M.Options")
    back_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(660 * (screen.get_height() / 720))], "Exit to main menu",
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255), "M.Main")

    buttons = RenderUpdates(title, resume_button, save_button, options_button,
                            back_button)
    return menuLoop(screen, clock, menu, buttons)
Esempio n. 6
0
def title_screen(screen, player=False):
    # Make a Title that is a "button"
    game_title = UIElement(
        center_position=(400, 200),
        font_size=100,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="Party 2020!",
        reactive=False,
    )
    # Make the start "button"
    start_button = UIElement(
        center_position=(400, 400),
        font_size=50,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="START",
        action=GameMode.GAME_SCREEN,
    )
    # Make the quit "button"
    quit_button = UIElement(
        center_position=(400, 450),
        font_size=30,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="QUIT",
        action=GameMode.QUIT,
    )
    # Make a description that is a "button"
    desc1 = UIElement(
        center_position=(400, 525),
        font_size=15,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="Avoid the virus",
        reactive=False,
    )
    # Make a description that is a "button"
    desc2 = UIElement(
        center_position=(400, 540),
        font_size=15,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="Masks will save you if you're exposed to the virus",
        reactive=False,
    )
    # Make a description that is a "button"
    desc3 = UIElement(
        center_position=(400, 555),
        font_size=15,
        bg_rgb=TITLE_SCREEN_COLOR,
        text_rgb=TITLE_TEXT_COLOR,
        text="Catch toilet paper",
        reactive=False,
    )

    buttons = RenderUpdates(game_title, start_button, quit_button, desc1,
                            desc2, desc3)

    return title_loop(screen, buttons, fill=TITLE_SCREEN_COLOR)
Esempio n. 7
0
def titleScreen(screen, clock, menu):
    title = UITextElement(
        True, [screen.get_width() / 2,
               int(60 * (screen.get_height() / 720))], "Game",
        int(50 * (screen.get_height() / 720)), None, (255, 255, 255))
    play_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(410 * (screen.get_height() / 720))], "Play",
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255), "M.Game")
    options_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(460 * (screen.get_height() / 720))], "Options",
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255),
        "M.Options")
    quit_button = UITextElement(
        False,
        [screen.get_width() / 2,
         int(510 * (screen.get_height() / 720))], "Quit",
        int(30 * (screen.get_height() / 720)), None, (255, 255, 255), "M.Quit")

    buttons = RenderUpdates(title, play_button, options_button, quit_button)
    ##buttons.add(new_button)
    return menuLoop(screen, clock, menu, buttons)
Esempio n. 8
0
def play_level(screen, player):
    return_btn = UIElement(
        center_position=(110, 670),
        font_size=30,
        text_rgb=BLACK,
        text="Main menu",
        action=GameState.TITLE,
    )

    humlevel_btn = UIElement(
        center_position=(400, 200),
        font_size=40,
        text_rgb=BLACK,
        text="Human v/s Human",
        action=GameState.HUMAN,
    )

    AIlevel_btn = UIElement(
        center_position=(400, 300),
        font_size=40,
        text_rgb=BLACK,
        text="Human v/s AI",
        action=GameState.AI,
    )

    buttons = RenderUpdates(return_btn, humlevel_btn, AIlevel_btn)

    return game_loop(screen, buttons)
Esempio n. 9
0
    def draw_start_text(self):
        """
        description:
            - Creates and draws the Text object when being in pause mode
        :return: nothing
        """
        dbi = DatabaseInteract()
        sets = dbi.get_settings()

        key_left = sets[1]
        key_right = sets[3]
        key_shoot = sets[8]

        heading1 = TextElement(
            center_position=(400, 400),
            font_size=18,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text=f"Startwinkel mit '{key_left}' und '{key_right}' auswählen",
            )
        heading2 = TextElement(
            center_position=(400, 450),
            font_size=18,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text=f"Mit '{key_shoot}' Ball abschiessen, zum Beenden 'ESC' drücken ",
            )
        elems = RenderUpdates(heading1,heading2)
        elems.draw(self.screen)
Esempio n. 10
0
def title_screen(screen):
    title_btn = UIElement(center_position=(350, 250),
                          font_size=50,
                          bg_rgb=BLACK,
                          text_rgb=WHITE,
                          text="Earth invaders")
    start_btn = UIElement(
        center_position=(350, 350),
        font_size=30,
        bg_rgb=BLACK,
        text_rgb=WHITE,
        text="Start",
        action=GameState.NEWGAME,
    )
    quit_btn = UIElement(
        center_position=(350, 450),
        font_size=30,
        bg_rgb=BLACK,
        text_rgb=WHITE,
        text="Quit",
        action=GameState.QUIT,
    )

    secret_btn = UIElement(
        center_position=(538, 373),
        font_size=30,
        bg_rgb=WHITE,
        text_rgb=WHITE,
        text=".",
        action=GameState.SECRET,
    )

    buttons = RenderUpdates(title_btn, start_btn, quit_btn, secret_btn)

    return game_loop(screen, buttons)
Esempio n. 11
0
    def __init__(self):
        super().__init__()

        self.player = self._make_player()
        self.player_group = RenderUpdates(self.player)

        self.pickup_count = self._make_pickup_count()
        self.total_time = self._make_total_time()
        self.timer = self._make_timer()
        self.display_group = RenderUpdates(self.timer, self.total_time, 
                                            self.pickup_count)

        self.pickup = self._make_pickup()
        self.pickup_group = RenderUpdates(self.pickup)

        self.walls = self._make_walls()
        self.walls_group = RenderUpdates(*self.walls)
Esempio n. 12
0
	def __init__( self, screen, display ):
		self.screen = screen
		self.screenRect = screen.get_rect()
		self.display = display
		self.model = None
		self.currentTime = 0

		self.bgImage = load_png( 'bg_game.png' )

		self.hiGroup = RenderUpdates()
		self.lowGroup = RenderUpdates()
		self.viewOnlyGroup = RenderUpdates()
		self.bubbleGroup = RenderUpdates()

		self.ins_spin = None
		self.ins_press = None
		self.quitButton = None
		self.squeezePrompt = None

		self.groups = [self.lowGroup, self.bubbleGroup, self.hiGroup, self.viewOnlyGroup]
		self.locks = []

		self.stripeOrder = ['violet','blue','green',
		                    'yellow','orange','red']
		self.stripeHeights = {
		                     'violet': 233,
		                     'blue':   189, 
		                     'green':  136,
		                     'yellow': 85,
		                     'orange': 44,
		                     'red':    11,
		                    }
		self.heaterRects = { 
		                    'green':  Rect ( 160, 470, 80, 100 ),
		                    'blue':   Rect ( 265, 470, 80, 100 ),
		                    'violet': Rect ( 370, 470, 80, 100 ),
		                    'red':    Rect ( 475, 470, 80, 100 ),
		                    'orange': Rect ( 580, 470, 80, 100 ),
		                    'yellow': Rect ( 685, 470, 80, 100 ),
		}


		self.purseStatusbars = []

		controller = mvcState.GetController()
		controller.gameEventListeners.append( self )
Esempio n. 13
0
 def load_flower_data(self, data):
     """
     Loads the list of flowers
     :param data:
     :return:
     """
     self.flower_database = data
     self.flowers = RenderUpdates(data.values())
Esempio n. 14
0
def main():
    fundo, tela, clock = config()
    musica = pygame.mixer.Sound("BGM/Firelink Shrine.wav")
    grupo = RenderUpdates()
    personagem = Hero(20, 290, "dante", grupo)
    pygame.font.init()
    frase = Text(40, 'Quem eh voce e oque faz aqui?', 'carolingia.ttf')

    lx = [b for b in range(-4, 76)]
    l1 = [-10]
    l2 = [6]

    parede = [x for x in range(-10, 16)]

    iniciarConversa = [43, 0]

    teclas = {
        K_LEFT: False,
        K_RIGHT: False,
        K_UP: False,
        K_DOWN: False,
        K_RETURN: False,
        27: False
    }  # obs 27 = tecla 'esc'

    musica.play()
    fundo = fundo.convert()
    pygame.display.flip()
    while True:
        clock.tick(FPS)

        for e in pygame.event.get([KEYUP, KEYDOWN]):
            valor = (e.type == KEYDOWN)
            if e.key in teclas.keys():
                teclas[e.key] = valor

        if teclas[27]:  # tecla ESC
            pygame.quit()
            sys.exit()

        if teclas[K_LEFT]:
            personagem.move("LEFT")
        if teclas[K_RIGHT]:
            personagem.move("RIGHT")
        if teclas[K_UP]:
            personagem.move("UP")
        if teclas[K_DOWN]:
            personagem.move("DOWN")

        if personagem.px == iniciarConversa[
                0] and personagem.py == iniciarConversa[1]:
            tela.blit(frase.frases, (200, 500))
            pygame.display.flip()

        #print(personagem.px, personagem.py)

        grupo.clear(tela, fundo)
        pygame.display.update(grupo.draw(tela))
Esempio n. 15
0
def main():
    colided_list = []
    level, screen, clock, fps, rect_list = set_config()
    group = RenderUpdates()
    heroine = Hero(100, 30, group)

    keys = {
        K_LEFT: False,
        K_RIGHT: False,
        K_UP: False,
        K_DOWN: False,
        K_RETURN: False,
        27: False,
        K_a: False
    }  # obs 27 = 'esc'

    pygame.display.flip()

    while True:
        clock.tick(fps)
        for event in pygame.event.get([KEYUP, KEYDOWN]):
            value = (event.type == KEYDOWN)
            if event.key in keys:
                keys[event.key] = value

        idx = heroine.rect.collidelist(rect_list)
        if idx != -1 and rect_list[idx] not in colided_list:
            colided_list.append(rect_list[idx])
            print rect_list[idx]
            if rect_list[
                    idx].x <= heroine.rect.x and heroine.rect.x <= rect_list[
                        idx].width:
                heroine.fsm.set_state("stand_still")
                heroine.cannot_move_to = None
                #import pdb; pdb.set_trace()
            else:
                heroine.cannot_move_to = heroine.fsm.side
        if idx == -1:
            heroine.fsm.set_state("fall")

        if keys[27]:  # tecla ESC
            pygame.quit()
            sys.exit()
        elif keys[K_LEFT] and heroine.cannot_move_to != "left":
            heroine.fsm.set_state("move")
            heroine.fsm.update("left")
        elif keys[K_RIGHT] and heroine.cannot_move_to != "right":
            heroine.fsm.set_state("move")
            heroine.fsm.update("right")
        elif keys[K_UP]:
            heroine.fsm.set_state("jump")
        elif keys[K_DOWN]:
            heroine.fsm.set_state("get_down")
        elif keys[K_a]:
            heroine.fsm.set_state("attack")
        heroine.fsm.auto_update()
        utils.clear_screen(level, screen)
        pygame.display.update(group.draw(screen))
Esempio n. 16
0
def level_easy(
):  #Create buttons for the Easy level, position them in a random location
    pos = [(250, 300), (600, 300)]
    loc = random.sample(pos, 2)

    greenbtn = make_game_button(loc[0], 70, GREEN)
    redbtn = make_game_button(loc[1], 70, RED)
    loc.clear()
    buttons = RenderUpdates(greenbtn, redbtn)
    return buttons
Esempio n. 17
0
def play_level(screen, player):
    return_btn = UIElement(center_position=(140, 570),
                           font_size=30,
                           text_color=WHITE,
                           background_color=BLUE,
                           text="Return to main menu",
                           action=GameState.TITLE)

    buttons = RenderUpdates(return_btn)
    return game_loop(screen, buttons)
Esempio n. 18
0
	def __init__( self, screen, display ):
		self.nextModelClass = None
		self.screen = screen
		self.screenRect = screen.get_rect()
		self.display = display

		self.model = None

		self.bgImage = load_png( 'bg_mainmenu.png' )

		self.btnGroup = RenderUpdates()

		fBtn = ImgButton( 'freestyle', self.Freestyle )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 100
		self.btnGroup.add( fBtn )
		self.freestyleButton = fBtn

		fBtn = ImgButton( 'freestyle_tricky', self.FreestyleTricky )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 160
		self.btnGroup.add( fBtn )
		self.freestyleTrickyButton = fBtn

		fBtn = ImgButton( 'speedy', self.Speedy )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 220
		self.btnGroup.add( fBtn )
		self.speedyButton = fBtn

		fBtn = ImgButton( 'sharpshooter', self.Sharpshooter )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 280
		self.btnGroup.add( fBtn )
		self.sharpshooterButton = fBtn

		fBtn = ImgButton( 'firehose', self.Firehose )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 340
		self.btnGroup.add( fBtn )
		self.firehoseButton = fBtn

		fBtn = ImgButton( 'loading', self.Loading )
		fBtn.rect.midtop = self.screenRect.midtop
		fBtn.rect.y += 400
		self.loadingButton = fBtn


		dBtn = ImgButton( 'debug', self.Debug )
		dBtn.rect.midbottom = self.screenRect.midbottom
		dBtn.rect.y -= 10
		self.btnGroup.add( dBtn )
		self.debugButton = dBtn

		self.groups = [ self.btnGroup ]
Esempio n. 19
0
 def __init__(self, title='Checkers', log_level=log.INFO, show_fps=False):
     log.basicConfig(level=log_level)
     self.show_fps = show_fps
     self.window_title = title
     self.game = Board(BOARD_DIM)
     # Initialize Game Groups
     self.brown_spaces = RenderUpdates()
     self.pieces = RenderUpdates()
     self.piece_selected = GroupSingle()
     self.space_selected = GroupSingle()
     self.current_piece_position = ORIGIN
     self.screen = None
     self.fps_clock = None
     self.font = None
     self.font_rect = None
     self.background = None
     self.background_rect = None
     self.fps_text = None
     self.fps_rect = None
     self.winner_text = None
     self.winner_rect = None
Esempio n. 20
0
    def play_level(self, screen, player):
        quit_btn = UIElement(
            center_position=(400, 400),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="Beenden",
            action=GameState.QUIT,
        )
        buttons = RenderUpdates(quit_btn)

        return self.game_loop(screen, buttons, 1)
Esempio n. 21
0
    def title_screen(self, screen):
        """
        description:
            - Title page
        :param screen: actual screen
        :return: result of game_loop
        """
        start_btn = UIElement(
            center_position=(400, 100),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="Start",
            action=GameState.NEWGAME,
        )
        highscore_btn = UIElement(
            center_position=(400, 200),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="Highscores",
            action=GameState.HIGHSCORE,
        )
        settings_btn = UIElement(
            center_position=(400, 300),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="Einstellungen",
            action=GameState.SETTINGS,
        )
        quit_btn = UIElement(
            center_position=(400, 400),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="Beenden",
            action=GameState.QUIT,
        )
        play_music_btn = UIElement(
            center_position=(400, 500),
            font_size=30,
            bg_rgb=BLUE,
            text_rgb=WHITE,
            text="♫",
            action=GameState.PLAY_MUSIC,
        )

        buttons = RenderUpdates(start_btn, quit_btn, settings_btn,
                                highscore_btn, play_music_btn)

        return self.game_loop(screen, buttons, 0)
Esempio n. 22
0
def level_medium(
):  #Create buttons for the Medium level, position them in a random location
    pos = [(125, 150), (575, 150), (125, 450), (575, 450)]
    loc = random.sample(pos, 4)

    greenbtn = make_game_button(loc[0], 70, GREEN)
    redbtn = make_game_button(loc[1], 70, RED)
    bluebtn = make_game_button(loc[2], 70, BLUE)
    purplebtn = make_game_button(loc[3], 70, PURPLE)

    loc.clear()
    buttons = RenderUpdates(greenbtn, redbtn, bluebtn, purplebtn)
    return buttons
Esempio n. 23
0
def play_level(screen, player):

    nextlevel_btn = UIElement(
        center_position=(400, 400),
        font_size=30,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text=f"Next level ({player.current_level + 1})",
        action=GameState.NEXT_LEVEL,
    )

    buttons = RenderUpdates(nextlevel_btn)

    return game_loop(screen, buttons)
Esempio n. 24
0
class FreestyleModel:
	def __init__( self ):
		self.time = 0

		try:
			self._ImportSettings()
		except Exception, e:
			log.debug( "GOT EXCEPTION CHANGING SETTINGS" )
			log.debug( e )
				

		self.colorPurses = [
		                    Purse('violet'),
		                    Purse('blue'),
		                    Purse('green'),
		                    Purse('yellow'),
		                    Purse('orange'),
		                    Purse('red'),
		                   ]

		self.finishedStripes = Set()

		self.objects = RenderUpdates()

		self.playerMoney = MoneyWidget( 0, True )
		self.objects.add( self.playerMoney )

		self.manualHeater = ManualHeater()
		self.objects.add( self.manualHeater )

		self.cloud = Cloud()
		self.objects.add( self.cloud )

		self.bladder = Bladder()
		self.objects.add( self.bladder )

		self.violetstripe = Stripe( 'violet', 0 )
		self.objects.add( self.violetstripe )
		self.bluestripe = Stripe( 'blue', 1 )
		self.objects.add( self.bluestripe )
		self.greenstripe = Stripe( 'green', 2 )
		self.objects.add( self.greenstripe )
		self.yellowstripe = Stripe( 'yellow', 3 )
		self.objects.add( self.yellowstripe )
		self.orangestripe = Stripe( 'orange', 4 )
		self.objects.add( self.orangestripe )
		self.redstripe = Stripe( 'red', 5 )
		self.objects.add( self.redstripe )

		self.bonusStripesThisRound = []
Esempio n. 25
0
    def __init__(self, initial_hives: int, default_bees_per_hive: int,
                 play_area_dimensions: int(), flower_spawn_strategy: str,
                 hive_spawn_strategy: str, flower_num: int):

        self.bees = RenderUpdates()
        self.hives = RenderUpdates()
        self.plants = RenderUpdates()
        self.flowers = RenderUpdates()
        self.ui_elements = RenderUpdates()

        self.flower_database = {}
        self.play_area = play_area_dimensions

        self.sim_paused = False

        self.grow_flora(play_area_dimensions)
        self.load_flower_data(
            get_flower_spawn_strategy(flower_spawn_strategy,
                                      play_area_dimensions, flower_num))
        self.populate_hives(
            get_hive_spawn_strategy(hive_spawn_strategy, initial_hives,
                                    play_area_dimensions, self.flowers),
            default_bees_per_hive)
        self.clean_up_spawn()
Esempio n. 26
0
def battle_play(screen, board):
    #implement 8 robot battle version
    root = Tk()
    canvas = Canvas(root)
    temp_new = Toplevel(canvas)
    agentclasses=[]
    for i in range(8):
        
        fname,agentname=selectagent()
        print(fname)
        print(agentname)
        sys.path.append(fname)
        loc = {}
        glb={}
        cmd="import "+agentname+" as t1"
        exec(cmd,glb,loc)
        agentclass=loc['t1']
        agentclasses.append(agentclass)
    maptxt=input("Enter the map as a list: 0=empty,1=pit,2=wumpus,3=gold\n")
    cmd="themap="+maptxt
    loc = {}
    glb={} 
    exec(cmd,glb,loc)
    themap=loc['themap']
    eight.Single_agent_window(temp_new, board,agentclasses,themap)
    
    root.quit()
    root.mainloop()    
    action=GameState.NEWGAME
    return_btn = UIElement(
        center_position=(400, 400),
        font_size=30,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Back",
        action=GameState.NEWGAME,
    )
    quit_btn = UIElement(
        center_position=(400, 500),
        font_size=30,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Quit",
        action=GameState.QUIT
    )
    buttons = RenderUpdates(return_btn, quit_btn)
    return game_loop(screen, buttons)
Esempio n. 27
0
 def pause_elems(self):
     """
     description:
         - Creates the Text object when being in pause mode
     :return: elements to be drawn during pause mode
     """
     dbi = DatabaseInteract()
     sets = dbi.get_settings()
     heading = TextElement(
         center_position=(400, 400),
         font_size=18,
         bg_rgb=BLUE,
         text_rgb=WHITE,
         text=f"Spiel Pausiert, zum Fortsetzen '{sets[5]}' drücken, zum Beenden 'ESC' drücken ",
         )
     elems = RenderUpdates(heading)
     return elems
Esempio n. 28
0
def level_hard(
):  #Create buttons for the Hard level, position them in a random location
    pos = [(150, 150), (150, 300), (150, 450), (650, 150), (650, 300),
           (650, 450)]
    loc = random.sample(pos, 6)
    #make buttons
    greenbtn = make_game_button(loc[0], 70, GREEN)
    redbtn = make_game_button(loc[1], 70, RED)
    bluebtn = make_game_button(loc[2], 70, BLUE)
    purplebtn = make_game_button(loc[3], 70, PURPLE)
    yellowbtn = make_game_button(loc[4], 70, YELLOW)
    orangebtn = make_game_button(loc[5], 70, ORANGE)
    #create the buttons list
    loc.clear()
    buttons = RenderUpdates(greenbtn, redbtn, bluebtn, purplebtn, yellowbtn,
                            orangebtn)
    return buttons
Esempio n. 29
0
def choose_game(screen,board):
    manual = UIElement(
        center_position=(425,225),
        font_size=40,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Manual Play",
        action=GameState.MANUAL,
    )
    single = UIElement(
        center_position=(425, 300),
        font_size=40,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="1 Robot Test",
        action=GameState.SINGLE,
    )
    
    singlemap = UIElement(
        center_position=(425, 375),
        font_size=40,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="1 Robot with map Test",
        action=GameState.SINGLEWITHMAP,
    )    
    battle = UIElement(
        center_position=(425, 450),
        font_size=40,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="8 Robot Battle",
        action=GameState.BATTLE
    )
    return_btn = UIElement(
        center_position=(140, 570),
        font_size=20,
        bg_rgb=BLUE,
        text_rgb=WHITE,
        text="Back",
        action=GameState.NEWGAME,
    )

    buttons = RenderUpdates(manual, single,singlemap, battle, return_btn)

    return game_loop(screen, buttons)
Esempio n. 30
0
def title_screen(screen):
    start_btn = ChangingButtons(center_position=(width / 2, 350),
                                font_size=30,
                                text_color=WHITE,
                                background_color=BLUE,
                                text="Start",
                                action=GameState.NEWGAME)

    quit_btn = ChangingButtons(center_position=(width / 2, 400),
                               font_size=30,
                               text_color=WHITE,
                               background_color=BLUE,
                               text="Quit",
                               action=GameState.QUIT)

    buttons = RenderUpdates(start_btn, quit_btn)
    return game_loop(screen, buttons)