Exemplo n.º 1
0
    def initialize(self):
        self.size = self.width, self.height = constants.width, constants.height
        self.screen = pygame.display.set_mode(self.size)
        self.clock = pygame.time.Clock()

        # Initialize Background
        self.background = sprites.Background('stars.png')

        # Initialize Players
        self.player1 = sprites.Player(1)
        self.player2 = sprites.Player(2)

        # Initialize Scoreboard
        self.scoreboard1 = sprites.Scoreboard(1, constants.width / 4,
                                              self.player1)
        self.scoreboard2 = sprites.Scoreboard(2, 3 * constants.width / 4,
                                              self.player2)

        # Initialize Platforms
        self.platforms = pygame.sprite.Group()
        self.platform1 = sprites.Platform(constants.width / 2, 50,
                                          self.player1)
        self.platform2 = sprites.Platform(constants.width / 2,
                                          constants.height - 50, self.player2)
        self.platforms.add(self.platform1)
        self.platforms.add(self.platform2)

        # Initialize Balls
        self.balls = pygame.sprite.Group()
        self.ball1 = sprites.Ball(self.platform1)
        self.ball2 = sprites.Ball(self.platform2)
        self.ball1.other = self.ball2
        self.ball2.other = self.ball1
        self.balls.add(self.ball1)
        self.balls.add(self.ball2)
Exemplo n.º 2
0
 def update(self):
     """
     updating the parts of the game with the events input
     """
     # if new players entered the game, insert them to the game
     # future: players could only enter before battle started
     if len(self._data_stream) > len(self.players) + 1:
         players = self.players.sprites()
         players.append(self._local_player)
         backup = self._data_stream[:]
         for player_data in backup:
             check = filter(lambda x: x.identifier == player_data[0],
                            players)
             if not check:
                 sprites.Player(self, *player_data)
                 self._data_stream.remove(player_data)
     # update players
     self.players.update(self._data_stream)
     # update all objects
     self.all_sprites.update()
     # update point of view
     self.camera.update(self._local_player)
     # send local player data to (demy) net thread
     # possible change: first send local player data, then update
     try:
         self._out_stream[0] = (self._local_player.identifier,
                                self._local_player.team,
                                (self._local_player.pos.x,
                                 self._local_player.pos.y),
                                self._local_player.angle)
     except IndexError:
         self._out_stream.append(
             (self._local_player.identifier, self._local_player.team,
              (self._local_player.pos.x,
               self._local_player.pos.y), self._local_player.angle))
Exemplo n.º 3
0
    def __init__(self, go, music):
        self.time = 0
        self.era = 1
        self.score = 0
        self.cause_of_death = None
        self.player = sprites.Player()
        self.player.rect.x = PLAYER_X
        self.player.rect.y = LANE_START_Y + 1.5 * LANE_HEIGHT - PLAYER_SIZE[
            1] + self.player.hitbox.height // 2

        self.all_units = pygame.sprite.Group()

        self.obstacles = sprites.Obstacles()

        self.scroll_objects = sprites.ScrollObjects()

        self.graphic = pygame.sprite.LayeredUpdates()
        self.graphic.layers()

        road1 = sprites.AnimationSprite(IMG_ROAD, (0, 0))

        self.scroll_objects.add(road1)
        self.all_units.add(road1, self.player)
        self.graphic.add(road1, self.player)

        self.graphic.change_layer(self.player, 2)
        self.graphic.change_layer(road1, 0)

        self.music = music
        self.music.change(self.era)

        self.running = True  # True as long as the game should be running
        self.game_over = go
        self.reset = False
        self.kill = set()
Exemplo n.º 4
0
    def make_player(self):
        layer = self.tmx_renderer.get_layer('start_points')

        for obj in layer:
            if obj.name == self.previous:
                player = s.Player(obj.x, obj.y, obj.properties['direction'])
                return player
Exemplo n.º 5
0
    def new(self):  #SPAWN DAS SPRITES
        self.all_sprites = py.sprite.Group()
        self.walls = py.sprite.Group()
        self.colisao = py.sprite.Group()

        for row, tiles in enumerate(self.map_data):
            for col, tile in enumerate(tiles):
                if tile == '1':  #SPAWN DO MURO
                    sprites.Wall(self, col, row)

#                if tile == 'L':                   #SPAWN DO PORTAL LARANJA DE CIMA
#                    sprites.Portal_L(self, col, row)
#                if tile == 'l':                   #SPAWN DO PORTAL LARANJA DE BAIXO
#                    sprites.Portal_l(self, col, row)
#
#                if tile == 'R':                   #SPAWN DO PORTAL ROXO DE CIMA
#                    sprites.Portal_R(self, col, row)
#                if tile == 'r':                   #SPAWN DO PORTAL ROXO DE BAIXO
#                    sprites.Portal_r(self, col, row)

                if tile == '!':  #SPAWN DO PLAYER 1 / AZUL / ÁGUA
                    self.player_agua = sprites.Player(self, col, row)
                    self.players_agua = py.sprite.Group()
                    self.players_agua.add(self.player_agua)
                if tile == '@':  #SPAWN DO PLAYER 2 / AMARELO / FOGO
                    self.player_fogo = sprites.Player2(self, col, row)
                    self.players_fogo = py.sprite.Group()
                    self.players_fogo.add(self.player_fogo)
Exemplo n.º 6
0
    def __init__(self, address):
        #init socket
        self.sock = socket.socket()

        self.sock.connect(address)
        self.c = self.sock.recv(1024).decode()

        #number of clients, size and pygame stuff
        self.client_count = 0

        self.size = (800, 600)
        self.screen = pg.display.set_mode(self.size)
        pg.display.set_caption("Multiplayer python game, bi-sh")

        #player images
        self.person_images = []
        for i in range(6):
            self.person_images.append(
                pg.image.load(f"./res/player/sprite{i}.png"))

        #all colours we might use
        self.colours = {'r': (255, 0, 0), 'g': (0, 255, 0), 'b': (0, 0, 255)}

        #player, clients , maps and groups
        self.all_sprites = pg.sprite.Group()
        self.clients = pg.sprite.Group()
        self.walls = pg.sprite.Group()

        self.level_map = tile_map.Map("res/levels/level1.txt")
        self.camera = tile_map.Camera(self.level_map, self.size[0],
                                      self.size[1])
        self.init_map()
        self.clock = pg.time.Clock()

        self.player = sprites.Player(self, self.c, self.colours[self.c])
Exemplo n.º 7
0
    def __init__(self):
        self.score = 0

        self.loader = loader.Loader()
        self.gamemode = fsm([('Playing', 'GameOver', lambda x: x == 'GameOver'),
                             ('MainMenu', 'Playing', lambda x: x == 'NewGame', lambda x, y: self.newgame()),
                             ('MainMenu', 'Playing', lambda x: x == 'Resume'),
                             ('Playing', 'MainMenu', lambda x: x == 'MainMenu'),
                             ('GameOver', 'Playing', lambda x: x == 'GameOver')])
        self.gamemode.start('MainMenu')

        self.menu = kezmenu.KezMenu(['SPACE ACE!', lambda: True],
                                    ['New Game', lambda: self.gamemode.event('NewGame')],
                                    ['Exit', lambda: pygame.event.post(pygame.event.Event(pygame.QUIT))])
        self.menu.center = True  # enable horizontal menu item centering
        self.menu.color = WHITE
        self.menu.focus_color = GREEN
        self.menu.options[0]['focus_color'] = RED
        self.menu.options[0]['color'] = RED
        self.menu.options[0]['font'] = pygame.font.Font("fonts/OverdriveInline.ttf", 75)
        self.menu._fixSize()
        self.menu.center_at(SCREEN_CENTER)  # center entire menu to screen

        self.enemy_list = pygame.sprite.Group()
        self.player_list = pygame.sprite.Group()
        self.all_sprites_list = pygame.sprite.Group()

        self.events = None

        # Create the player
        self.player = sprites.Player(self.loader.PLAYER_IMAGE)
        self.all_sprites_list.add(self.player)
        self.player_list.add(self.player)
Exemplo n.º 8
0
    def startup(self):
        self.texts = []
        strings = [
            'NPC Escort Mission Demo', 'Move with WASD',
            'Toggle Debug Mode with F12', ' ', ' ', 'Press any key to start'
        ]

        for y, s in enumerate(strings):
            font = self.game.fonts['default']
            txt, txt_rect = font.render(s,
                                        fgcolor=pg.Color('White'),
                                        bgcolor=None)

            txt_rect.centerx = self.game.screen_rect.centerx
            txt_rect.centery = ((y + 1) * self.game.screen_rect.h /
                                (len(strings) + 2))
            self.texts.append((txt, txt_rect))

        player = spr.Player(self.game, {
            'x': 0,
            'y': 120,
            'width': 16,
            'height': 28
        })
        player.speed = 10
        self.npc = spr.NPC(self.game, {
            'x': -48,
            'y': 120,
            'width': 16,
            'height': 28
        })
        self.npc.speed = 10
Exemplo n.º 9
0
    def new(self):
        #Create a new game
        self.score = 0
        self.boost = 0
        self.ground_tempo = 0
        self.ground_count = 0
        self.collide = False

            #Creation of player
        self.characters = pg.sprite.Group()
        self.man = sprites.Player()
        self.characters.add(self.man)
            #Creation of ceil
        self.platforms = pg.sprite.Group()
        ceil = sprites.Platform(0, SPREAD, WIDTH)
        self.platforms.add(ceil)
            #Customize creation of first floor (to avoid hole below player at the beginning)
        p1left = sprites.Platform(0, self.platforms.sprites()[-1].rect.y + SPREAD, WIDTH / 2)
        p1right = sprites.Platform(WIDTH / 2 + HOLE_SIZE, self.platforms.sprites()[-1].rect.y + SPREAD, WIDTH / 2 - HOLE_SIZE)
        self.platforms.add(p1left, p1right)
            #Creation of 5 next floors
        for i in range(1, 6):
            self.create_floor()

        self.render()
Exemplo n.º 10
0
def player_attack(_player_state, target):
    # If the player has the sword
    if _player_state.hasSword:
        # If the target is the goblin, the goblin is killed
        if target == 'goblin' and _player_state.get_room() == (0, 2):
            _player_state.room.remove_sprite(sprites.Goblin())
            _player_state.killedGoblin = True
            return "You showed no mercy to the goblin and collected its blood."
        # If the target is the demon and the player has obtained the shield, it
        # defeats the demon and the game is over
        if target == 'demon' and _player_state.get_room() == (
                1, 0) and _player_state.hasShield:
            _player_state.room.remove_sprite(sprites.Boss())
            return "You have killed the boss and saved the kingdom!"
        # If the target is the demon and the player has not obtained the shield,
        # it is defeated by the demon and the game is over
        elif target == 'demon' and _player_state.get_room() == (
                1, 0) and not (_player_state.hasShield):
            _player_state.room.remove_sprite(sprites.Player())
            _player_state.gameOver = True
            return "Shoot! You were not strong enough to defeat the boss. Game Over!  ..................."
        # If the player tries to attack an invalid target
        else:
            return "You cannot attack that."
    # If the player doesn't have the sword, they cannot attack
    else:
        return "You have nothing to attack with. "
Exemplo n.º 11
0
    def new(self):
        self.all_sprites = pg.sprite.Group()
        self.walls = pg.sprite.Group()
        self.items = pg.sprite.Group()
        self.ninjas = pg.sprite.Group()

        #define onde sprites vão ser desenhados baseado no mapa tmx
        for tile_object in self.map.tmxdata.objects:
            obj_center = settings.vec(
                4 * tile_object.x + 4 * tile_object.width / 2,
                4 * tile_object.y + 4 * tile_object.height / 2)
            if tile_object.name == 'player':
                self.player = sprites.Player(
                    self, obj_center.x,
                    obj_center.y)  #define spawn point do player
            if tile_object.name == 'wall':
                sprites.Obstacle(self, 4 * tile_object.x, 4 * tile_object.y,
                                 4 * tile_object.width, 4 * tile_object.height
                                 )  #cria obstáculo das paredes pra colisão
            if tile_object.name == 'ninja':
                sprites.Ninja(self, obj_center.x, obj_center.y)
            if tile_object.name in ['chest']:
                sprites.Item(self, obj_center, tile_object.name)
                sprites.Obstacle(self, 4 * tile_object.x, 4 * tile_object.y,
                                 4 * tile_object.width, 4 * tile_object.height)
            if tile_object.name in ['door']:
                sprites.Item(self, obj_center, tile_object.name)
                self.porta = sprites.Obstacle(self, 4 * tile_object.x,
                                              4 * tile_object.y,
                                              4 * tile_object.width,
                                              4 * tile_object.height)
            if tile_object.name == 'door_final':
                sprites.Item(self, obj_center, tile_object.name)
                self.porta2 = sprites.Obstacle(self, 4 * tile_object.x,
                                               4 * tile_object.y,
                                               4 * tile_object.width,
                                               4 * tile_object.height)
            if tile_object.name in ['key']:
                sprites.Item(self, obj_center, tile_object.name)
                self.key = sprites.Obstacle(self, 4 * tile_object.x,
                                            4 * tile_object.y,
                                            4 * tile_object.width,
                                            4 * tile_object.height)
            if tile_object.name in ['casaco']:
                sprites.Item(self, obj_center, tile_object.name)
                self.casaco = sprites.Obstacle(self, 4 * tile_object.x,
                                               4 * tile_object.y,
                                               4 * tile_object.width,
                                               4 * tile_object.height)
#                if tile_object.name in ['guarda_chuva']:
#                    sprites.Item(self,obj_center,tile_object.name)
#                    sprites.Obstacle(self, 4*tile_object.x, 4*tile_object.y, 4*tile_object.width, 4*tile_object.height)
            if tile_object.name == 'book':
                sprites.Item(self, obj_center, tile_object.name)
                sprites.Obstacle(self, 4 * tile_object.x, 4 * tile_object.y,
                                 4 * tile_object.width, 4 * tile_object.height)

        self.camera = tilemap.Camera(self.map.width, self.map.height)
        self.draw_debug = False
Exemplo n.º 12
0
 def __init__(self):
     self.sprite = sprites.Player()
     self.target = (250, 250)
     self.top = 250
     self.left = 250
     self.item = ""
     self.baby = 0
     self.deliver = False
Exemplo n.º 13
0
def player_cast(_player_state, _):
    # Crosses the player over the river if in the correct room
    if _player_state.get_room() == (2, 0):
        # After the player crosses the river, their position is updated
        _player_state.acrossRiver = not _player_state.acrossRiver
        _player_state.room.remove_sprite(sprites.Player())
        # Moves the sprite of the player depending on which side of the river
        # they are on
        if _player_state.acrossRiver:
            _player_state.room.add_sprite(sprites.Player(200, 5))
        else:
            _player_state.room.add_sprite(sprites.Player(200, 400))
        # Returns text explaining that the character has crossed the river
        return "The magic of " + MAGIC_SPELL + " let you jump over the river!"
    # If user is not in the room with the river
    else:
        # Informs the user that they gained the ability to jump
        return "The magic of " + MAGIC_SPELL + " let you jump!"
Exemplo n.º 14
0
 def __init__(self, engine, **kwargs):
     super().__init__(engine=engine,
                      background_color=(45, 30, 55),
                      **kwargs)
     self.play_area = engine.display.get_rect()
     self.run_time = 0
     self.spawn = simple_enemies(1.5, 200)
     self.next_spawn, self.next_x = next(self.spawn)
     _ = self.groups[sprites.Bullet.group]  # force setting the key.
     sprites.Player(self)
    def startup(self):
        # TODO: overworld grid should consist of multiple maps
        # TODO: the grid construction should be done from json data
        maps = [
            tilemaps.Map(self.game, self.game.map_files[2]),
            tilemaps.Map(self.game, self.game.map_files[3]),
            tilemaps.Map(self.game, self.game.map_files[4])
        ]
        self.game.overworld_grid = tilemaps.Grid(self.game,
                                                 name='overworld',
                                                 width=2,
                                                 height=2)
        self.game.overworld_grid.insert_grid(maps[0], 0, 0)
        self.game.overworld_grid.insert_grid(maps[1], 1, 0)
        self.game.overworld_grid.insert_grid(maps[2], 0, 1)

        self.game.map = maps[0]
        self.game.map.create_map()

        # put the player somewhere on the map
        self.game.player = spr.Player(self.game, {
            'x': 182,
            'y': 136,
            'width': 16,
            'height': 16
        })

        self.game.inventory = inter.Inventory(self.game)
        self.game.inventory.active = True

        # TODO: Testing
        self.game.inventory.add_item(items.Sword, 0, 0)
        self.game.inventory.add_item(items.Test, 0, 1)

        self.game.camera = utils.Camera(self.game, self.game.map.size.x,
                                        self.game.map.size.y, 'FOLLOW')
        self.game.camera.update(self.game.player)

        t = inter.Textbox(self.game, self.game.world_screen_rect.center,
                          self.game.texts['demo_dialog'],
                          lambda: self.game.change_state('InGame'))
        #t.activate()

        spr.Enemy(self.game, {'x': 300, 'y': 100, 'width': 16, 'height': 16})

        self.game.select_menu = inter.Base_menu(self.game,
                                                rect=None,
                                                anchor_x='centerx')
        e1 = inter.Menu_entry('Resume Game', self.game.select_menu.deactivate)
        e2 = inter.Menu_entry('Go To Title Screen',
                              lambda: self.game.change_state('TitleScreen'))
        e3 = inter.Menu_entry('Exit Program', self.game.exit_game)
        self.game.select_menu.add_entries(e1, e2, e3)

        self.done = True
Exemplo n.º 16
0
    def new(self):
        self.all_sprites = pygame.sprite.Group()
        self.platforms = pygame.sprite.Group()

        self.player = sprites.Player()
        for i in platform_list:
            p = sprites.Platform(i[0], i[1], i[2], i[3])
            self.platforms.add(p)
            self.all_sprites.add(p)
        self.all_sprites.add(self.player)
        self.run()
Exemplo n.º 17
0
    def new(self):
        self.all_sprites = py.sprite.Group()
        self.walls = py.sprite.Group()

        for row, tiles in enumerate(self.map_data):
            for col, tile in enumerate(tiles):
                if tile == '1':
                    sprites.Wall(self, col, row)
                if tile == 'S':
                    self.player_agua = sprites.Player(self, col, row)
                if tile == 'L':
                    self.player_fogo = sprites.Player2(self, col, row)
Exemplo n.º 18
0
def main():
    pygame.init()
    size = width, height = 1152, 704
    screen = pygame.display.set_mode(size)
    pygame.display.set_caption('protoDiablo')
    pygame.mouse.set_visible(False)

    FPS = 30
    running = [True]
    board = PlayingBoard(screen, running, 'map.txt', FPS)
    if not running[0]:
        return
    cursor = sprites.Cursor(screen, running, board)
    player = sprites.Player(np.array([540, 2000], int), board)
    board.set_ref(cursor, player)
    interface = Interface(screen, running, board)
    clock = pygame.time.Clock()

    while running[0]:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running[0] = False
            if event.type == pygame.MOUSEMOTION:
                cursor.update_pos(event.pos)
            if event.type == pygame.MOUSEBUTTONDOWN:
                cursor.update('down')
                if not interface.clicked(
                        cursor.get_pos()) and interface.state == 'ingame':
                    board.clicked()
            if event.type == pygame.MOUSEBUTTONUP:
                cursor.update('idle')
            if event.type == pygame.KEYDOWN:
                if interface.state == 'ingame':
                    if event.key == 27:
                        interface.set_state('pause')
                    elif event.key == 101:
                        board.player.heal()
                else:
                    if event.key == 27:
                        interface.set_state('ingame')

        if player.hp <= 0:
            interface.set_state('death')

        screen.fill((0, 255, 0))
        if interface.state == 'ingame':
            board.render()
            interface.take_screen()
        interface.draw()
        cursor.draw()
        pygame.display.flip()
        clock.tick(FPS)
Exemplo n.º 19
0
 def new_game(self):
     # vars
     self.won = False
     self.last_update = 0
     self.current_frame = 0
     # sakuras gathered
     self.gathered = 0
     # player instance
     self.player = sprites.Player(self)
     # create platforms and other objects
     self.platsnobjs()
     # run the game
     self.run()
Exemplo n.º 20
0
def place_player(level):
    # Using global variables so the camera & player instances can be altered in the main loop.
    global cameraInstance
    global playerInstance
    x = 0
    y = 0
    for row in level:
        for column in row:
            if column == "P":
                cameraInstance = Camera(level)
                playerInstance = s.Player(x, y, cameraInstance)
            x += i.tileWidth
        x = 0
        y += i.tileHeight
Exemplo n.º 21
0
 def new(self):
     # start a new game
     pg.init()
     self.score = 0
     self.all_sprites = pg.sprite.Group()
     self.platforms = pg.sprite.Group()
     self.enemy = pg.sprite.Group()
     self.player = sprites.Player(self)
     self.all_sprites.add(self.player)
     for plat in PLATFORM_LIST:
         p = sprites.Platform(*plat)
         self.all_sprites.add(p)
         self.platforms.add(p)
     pg.mixer.music.load(os.path.join(self.snd_dir, "ud.ogg"))
     self.run()
Exemplo n.º 22
0
    def start_game(self):
        spawn_pos = self.find_spawn_position()

        self.player = spr.Player(self, spawn_pos.x, spawn_pos.y)
        self.camera = fn.Camera(st.MAP_WIDTH, st.MAP_HEIGHT)

        self.grid.manage_blocks_initial()

        # quadtree stuff
        self.qt_rect = pg.Rect(0, 0, 40 * st.TILESIZE, 60 * st.TILESIZE)

        self.started = True

        # ------- debugging!
        self.player.inventory['dirt'] = 99
        self.player.inventory['sand'] = 99
Exemplo n.º 23
0
 def new(self):
     self.snd_background.play()
     self.dia = 0
     self.all_sprites = pg.sprite.Group()
     self.walls = pg.sprite.Group()
     self.bed = pg.sprite.Group()
     self.beds = []
     self.comida = pg.sprite.Group()
     self.cordas = []
     self.corda = pg.sprite.Group()
     self.madeiras = []
     self.madeira = pg.sprite.Group()
     self.inimigo = pg.sprite.Group()
     self.inimigos = []
     self.comidas = []
     for tile_object in self.map.tmxdata.objects:
         if tile_object.name == 'player':
             self.player = sprites.Player(self, tile_object.x,
                                          tile_object.y)
         if tile_object.name == 'madeira':
             self.madeira = sprites.wood(self, tile_object.x, tile_object.y)
             self.madeiras.append(self.madeira)
             self.all_sprites.add(self.madeira)
         if tile_object.name == 'comida':
             self.comida = sprites.food(self, tile_object.x, tile_object.y,
                                        4)
             self.comidas.append(self.comida)
             self.all_sprites.add(self.comida)
         if tile_object.name == 'barreira':
             self.obstacle = sprites.Obstacle(self, tile_object.x,
                                              tile_object.y,
                                              tile_object.width,
                                              tile_object.height)
         if tile_object.name == 'corda':
             self.corda = sprites.rope(self, tile_object.x, tile_object.y)
             self.cordas.append(self.corda)
             self.all_sprites.add(self.corda)
         if tile_object.name == 'bed':
             self.bed = sprites.Bed(self, tile_object.x, tile_object.y)
             self.beds.append(self.bed)
             self.all_sprites.add(self.bed)
         if tile_object.name == 'vitoria':
             self.vitoriax = tile_object.x
             self.vitoriay = tile_object.y
     self.camera = tilemap.Camera(self.map.width, self.map.height)
Exemplo n.º 24
0
def initGame():
    # initialize sprites 
    global all_sprites
    global snake 
    global enemies
    global foods

    all_sprites = pygame.sprite.Group()
    foods = pygame.sprite.Group()

    snake = sprites.Player()
    all_sprites.add(snake)

    food = sprites.Food()
    foods.add(food)
    all_sprites.add(food)

    gameLoop()
Exemplo n.º 25
0
    def new(self):
        # start new game, reset game
        self.player = sprites.Player()
        self.all_sprites = pygame.sprite.Group()
        self.platforms = pygame.sprite.Group()
        self.all_sprites.add(self.player)

        platform1 = sprites.Platform(0, settings.window_height - 50,
                                     settings.window_width, 40)
        self.platforms.add(platform1)
        self.all_sprites.add(platform1)

        platform2 = sprites.Platform(settings.window_width / 2 - 50,
                                     settings.window_height * 3 / 4, 100, 20)
        self.all_sprites.add(platform2)
        self.platforms.add(platform2)

        game.run()
Exemplo n.º 26
0
 def initializeSurface(self):
     fieldHeight = 40
     goalHeight = 100
     postHeight = 30
     self.player = sprites.Player(self)
     self.AI = sprites.AI(self, self.player)
     self.ball = sprites.Ball(self)
     self.field = sprites.Field(0, HEIGHT - fieldHeight, WIDTH, fieldHeight)
     self.gP1 = sprites.Goalpost(0, HEIGHT - fieldHeight - goalHeight,
                                 PLAYER_length * 2, goalHeight)
     self.gP2 = sprites.Goalpost(WIDTH - PLAYER_length * 2,
                                 HEIGHT - fieldHeight - goalHeight,
                                 PLAYER_length * 2, goalHeight)
     # self.gPframe1 = sprites.Wall(0, HEIGHT-fieldHeight-goalHeight-postHeight, PLAYER_length*5,postHeight)
     # self.gPframe2 = sprites.Wall(WIDTH-PLAYER_length*5,HEIGHT-fieldHeight-goalHeight-postHeight,PLAYER_length*5,postHeight)
     self.wall1 = sprites.Wall(0, -10000, PLAYER_length * 3 + 10,
                               HEIGHT - 140 + 10000)
     self.wall2 = sprites.Wall(WIDTH - PLAYER_length * 3 - 10, -10000,
                               PLAYER_length * 3 + 10, HEIGHT - 140 + 10000)
Exemplo n.º 27
0
 def new(self, genomes, config):
     self.all_sprites = pygame.sprite.LayeredUpdates()
     # self.all_sprites = pygame.sprite.Group()
     self.birds = pygame.sprite.Group()
     self.mobs = pygame.sprite.Group()
     self.pipes = pygame.sprite.Group()
     self.bird_pool = {}
     self.nets = {}
     for genome_id, genome in genomes:
         genome.fitness = 0
         self.bird_pool[genome_id] = sprites.Player(self)
         self.nets[genome_id] = FeedForwardNetwork.create(genome, config)
     # self.player = sprites.Player(self)
     self.pipes_pool = [
         sprites.PipePair(self, WIDTH / 2),
         sprites.PipePair(self, WIDTH + 50)
     ]
     self.pipe_gen_time = pygame.time.get_ticks()
     self.base_pool = [sprites.Base(self, 0), sprites.Base(self, 336)]
 def __init__(self):
     pygame.mixer.init()
     pygame.init()
     pygame.mixer.music.load(f'data/{CHARSET}_theme.wav')
     pygame.mixer.music.play(-1)
     self.fullscreen = False
     self.screen = pygame.display.set_mode((WIDTH, HEIGHT))
     pygame.display.set_caption("RPG Arena Pro: Rebirth")
     pygame.display.set_icon(sprites.load_image(CHARSET + '_icon.png'))
     self.clock = pygame.time.Clock()
     self.lvl = 0
     self.end = ''
     self.bg_color = (105, random.randrange(150, 255, 15), 105)
     self.all_sprites = pygame.sprite.Group()
     self.player = sprites.Player(self)
     self.loots = pygame.sprite.Group()
     self.enemies = pygame.sprite.Group()
     self.texts = ['You woke up.']
     self.running = True
     self.run()
Exemplo n.º 29
0
    def new(self):
        #initialise game e.g. starting a new game
        self.Score = -1

        #initialise bg music
        pygame.mixer.music.load(BG_MUSIC)
        pygame.mixer.music.set_volume(0.5)
        pygame.mixer.music.play(-1)

        #initilise sprites
        self.all_sprites = pygame.sprite.Group()
        self.platform_sprites = pygame.sprite.Group()
        self.player = sprites.Player(self)
        self.all_sprites.add(self.player)
        self.all_sprites.add(self.player.headBand)

        for plat in PLATFORM_LIST:
            p = Platform(*plat, self.pTile)
            self.platform_sprites.add(p)
            self.all_sprites.add(p)

        self.run()
 def new(self):
     # start a new game
     # initialise sprite groups
     self.all_sprites = pg.sprite.LayeredUpdates()
     self.walls = pg.sprite.Group()
     
     # instantiate objects
     # MEMO: GET RID OF THIS ROOM NUMBER AND USE THE INDEX INSTEAD!
     self.dungeon = rooms.Dungeon(self, st.DUNGEON_SIZE)
     self.room_number = self.dungeon.room_map[self.dungeon.room_index[0]][
                                              self.dungeon.room_index[1]]
     
     # pick a random tileset from all available tilesets
     self.tileset = choice(self.tileset_list)
     # create a background image from the tileset for the current room
     self.background = fn.tileRoom(self, self.tileset, self.dungeon.room_index)
     
     # spawn the player in the middle of the screen/room
     self.player = spr.Player(self, (st.WIDTH // 2, st.HEIGHT // 2))
     # spawn the wall objects (invisible)
     self.walls = fn.transitRoom(self, self.walls, self.dungeon, 
                                 self.room_number)
     
     self.run()