コード例 #1
0
def init():
    global running
    global game_over
    global all_sprites
    global player_sprite
    global player_shoots
    global enemies
    global player
    global enemy_count
    global start_ticks
    global level1

    running = True
    game_over = False

    all_sprites = pygame.sprite.Group()
    player_sprite = pygame.sprite.Group()
    player_shoots = pygame.sprite.Group()
    enemies = pygame.sprite.Group()

    player = Player()
    all_sprites.add(player)
    player_sprite.add(player)

    first_enemy = Enemy()
    enemies.add(first_enemy)
    all_sprites.add(first_enemy)

    enemy_count = 0
    start_ticks = pygame.time.get_ticks()

    level1 = Level1()
コード例 #2
0
def mouse_handler(pos):
    global level1
    global level2
    global level3
    global level4
    global level5
    global menu
    if not menu.game_start:
        if menu.BUTT_Pos[0] - menu.BUTT_CENTRE[0] <= pos[
                0] <= menu.BUTT_Pos[0] + menu.BUTT_CENTRE[0]:
            if menu.BUTT_Pos[1] - menu.BUTT_CENTRE[1] <= pos[
                    1] <= menu.BUTT_Pos[1] + menu.BUTT_CENTRE[1]:
                level1.LoadLevel()
                menu.game_start = True
    if menu.game_end or menu.won:
        if menu.END_BUTT_Pos[0] - menu.BUTT_CENTRE[0] <= pos[
                0] <= menu.END_BUTT_Pos[0] + menu.BUTT_CENTRE[0]:
            if menu.END_BUTT_Pos[1] - menu.BUTT_CENTRE[1] <= pos[
                    1] <= menu.END_BUTT_Pos[1] + menu.BUTT_CENTRE[1]:
                menu.game_music.pause()
                menu.menu_music.pause()
                menu = Menu()
                Levels.restart()
                level1 = Level1()
                level2 = Level2()
                level3 = Level3()
                level4 = Level4()
                level5 = Level5()
                frame.set_keydown_handler(Levels.kbd.keyDown)
                frame.set_keyup_handler(Levels.kbd.keyUp)
コード例 #3
0
 def __init__(self):
     self.states = [
         GameOver(),
         Menu(self),
         Level1(self)
     ]
     self.state_index = 1
コード例 #4
0
    def __init__(self):
        pygame.init()

        self.res = (800, 800)
        self.clock = pygame.time.Clock()
        self.victory = False  #when full game has been completed
        self.start = Start(self.res)
        self.level1 = Level1(self.res)
        self.level2 = Level2(self.res)
        self.currLevel = self.start  #starts on start screen
コード例 #5
0
ファイル: main.py プロジェクト: VMCvastry/Osmos-Remix
 def main(self):
     """
           just a main menu wrapper, and level selector
     """
     while self.game.level != -1:
         if self.game.level == 1:
             Level1(self.game).run_level()
         elif self.game.level == 2:
             Level2(self.game).run_level()
         elif self.game.level == 0:
             main_menu(self.game)
コード例 #6
0
 def new(self):
     # start a new game
     self.all_sprites = pg.sprite.Group()
     self.fireballs = pg.sprite.Group()
     # self.platforms = pg.sprite.Group()
     self.player = Mario(game=self)
     self.all_sprites.add(self.player)
     self.bg = Level1(mario=self.player, screen=self.screen, game=self)
     # for plat in PLATFORM_LIST:
     #     p = Platform(*plat)
     #     self.all_sprites.add(p)
     #     self.platforms.add(p)
     self.run()
コード例 #7
0
ファイル: dino_strider.py プロジェクト: c4glenn/Dinostrider
 def __init__(self):
     pygame.init()
     self.screen_width = 800
     self.screen_height = 480
     self.score = 0
     self.levels = [
         Level1(self.screen_height, self.screen_width),
         LevelDemo(self.screen_height, self.screen_width)
     ]
     self.level = self.levels[1]
     self.win = pygame.display.set_mode(
         (self.screen_width, self.screen_height))
     pygame.display.set_caption("Dinostrider")
     self.ellip = Elliptical()
     self.right_button = Button(2)
     self.left_button = Button(4)
     self.jump_button = Button(1)
     self.shoot_button = Button(3)
コード例 #8
0
def run_game():
    pygame.init()
    screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
    pygame.display.set_caption("Super Mario Bros")

    stats = Stats()

    mario = SuperMario(screen)
    mario.rect.x = screen.get_rect().centerx
    mario.rect.y = GROUND_HEIGHT * BG_SCALER

    clock = pygame.time.Clock()
    bg = Level1(screen=screen)

    frame_index = 0

    while True:
        if stats.fire_mode:
            if str(type(mario)) == "<class 'Super_Mario.SuperMario'>":
                mario = FireMario(mario)
        elif stats.mini_mode:
            if str(type(mario)) == "<class 'Super_Mario.SuperMario'>":
                mario = Mario(mario)
        else:
            if str(type(mario)) == "<class 'fire_mario.FireMario'>" \
                    or str(type(mario)) == "<class 'mario.Mario'>":
                mario = SuperMario(screen, mario)
        # mario.screen.fill((0, 0, 0), rect=mario.rect)
        gf.check_events(stats, mario)
        mario.update_walking(stats)
        frame_index += 1
        bg.draw(mario=mario)
        bg.blit_rect(frame_index=frame_index, mario=mario)
        gf.update_screen(stats, mario)

        pygame.display.flip()
        if not stats.mario_running:
            sleep(.002)
        if not stats.game_active:
            sleep(.5)
            stats.game_active = True
        clock.tick(FPS)
コード例 #9
0
 def _build_floors(self):
     """Method to create and position floors"""
     # Creating the level1 floors
     self.floors = pygame.sprite.Group()
     self.floor_widths = [1000, 120, 250, 870, 1120, 1200]
     self.floor0 = Level1(self, self.floor_widths[0], 0, 135)
     self.floors.add(self.floor0)
     self.floor1 = Level1(self, self.floor_widths[1], 1080, 135)
     self.floors.add(self.floor1)
     self.floor2 = Level1(self, self.floor_widths[2], 0, 285)
     self.floors.add(self.floor2)
     self.floor3 = Level1(self, self.floor_widths[3], 330, 285)
     self.floors.add(self.floor3)
     self.floor4 = Level1(self, self.floor_widths[4], 0, 435)
     self.floors.add(self.floor4)
     self.floor5 = Level1(self, self.floor_widths[5], 0, 585)
     self.floors.add(self.floor5)
コード例 #10
0
    def __init__(self):
        pyxel.init(128, 128, caption="WHAT THE ACTUALLY F**K", fps=25)

        try:  # load files in cx_freeze
            pyxel.load(
                os.path.join(
                    os.path.dirname(__file__)[:-16], 'my_resource.pyxel'))
            file = open(
                os.path.join(os.path.dirname(__file__)[:-16], 'items.txt'))
            for line in file:
                exec(f'self.item_database.append({line})')
            file.close()
        except FileNotFoundError:  # load files in python
            pyxel.load(
                os.path.join(os.path.dirname(__file__), 'my_resource.pyxel'))
            file = open(os.path.join(os.path.dirname(__file__), 'items.txt'))
            for line in file:
                exec(f'self.item_database.append({line})')
            file.close()
        self.player_damage = 4
        self.player_hp = 10
        pyxel.mouse(visible=True)
        self.battle = Battle()
        self.menu_opened = False
        self.player_direction = 0
        self.player_animation_frame = 1
        self.player_animation_frame_counter = 0
        self.x = 0
        self.y = 0
        self.sx = 56
        self.sy = 48
        self.level = Level1()
        self.battle_init = False
        # init inventory
        self.inventory = []
        # init game app
        pyxel.run(self.update, self.draw)
コード例 #11
0
from walls import Wall
from levels import Levels
from level1 import Level1
from level2 import Level2
from level3 import Level3
from level4 import Level4
from level5 import Level5
from menu import Menu

# constants
# add them in the global files so they can be used across multiple files
CANVAS_DIMS = globals.CANVAS_DIMS

menu = Menu()

level1 = Level1()
level2 = Level2()
level3 = Level3()
level4 = Level4()
level5 = Level5()


def draw(canvas):
    if menu.game_start and not menu.game_end:
        Levels.update()
        Levels.draw(canvas)
    menu.draw(canvas)
    menu.update()


def mouse_handler(pos):
コード例 #12
0
from eventtypes import *

STATE_BONUS_LEVEL = "BONUS_LEVEL"
STATE_LEVEL1 = "LEVEL_1"
STATE_LEVEL2 = "LEVEL_2"
STATE_MENU = "MENU"

pygame.init()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption(TITLE)
clock = pygame.time.Clock()
os.environ['SDL_VIDEO_CENTERED'] = '1'

menu = Menu(screen, clock)
bonus_level = BonusLevel()
level1 = Level1(screen, clock)
level2 = Level2(screen, clock)

state = STATE_MENU

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        elif event.type == START_LEVEL1_EVENT:
            state = STATE_LEVEL1
            level1.new()
        elif event.type == START_LEVEL2_EVENT:
            state = STATE_LEVEL2
            level2.new()
        elif event.type == START_BONUS_LEVEL_EVENT:
コード例 #13
0
ファイル: player.py プロジェクト: webguy88/fruitmaster
        # Check sprite
        if not self.moving and \
           self.direction == "right" or self.direction == 0:
            self.spr = self.i_right

        if not self.moving and \
           self.direction == "left" or self.direction == 1:
            self.spr = self.i_left

        if self.moving and \
           self.direction == "right" or self.direction == 0:
            self.spr = self.w_right

        if self.moving and \
           self.direction == "left" or self.direction == 1:
            self.spr = self.w_left

        self.x = new_x
        self.y = new_y
        self.spr.x = self.x
        self.spr.y = self.y
        self.hitbox = new_hitbox

    def change_direction(self, direction, vx):
        self.direction = direction
        self.vx = vx


lvl1 = Level1(6, 6, 64, 64, map1)
engine = Engine(lvl1)
コード例 #14
0
ファイル: main.py プロジェクト: JushBJJ/Pygame-Examples
import pygame

from game import Game
from titlescreen import Titlescreen
from level1 import Level1

pygame.init()
screen = pygame.display.set_mode((800, 600))

done = False
clock = pygame.time.Clock()
game = Game()

# Rooms
game.add_room(Titlescreen(game))
game.add_room(Level1(game))

# Game
game.switch_room("Titlescreen")

while not done:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            done = True

    game.update()
    pygame.display.flip()
    clock.tick(60)  # 60 FPS

pygame.quit()
コード例 #15
0
pygame.mixer.init()

dynamite = pygame.image.load("images/dynamite.png")
key_image = pygame.image.load("images/key.png")
life_image = pygame.image.load("images/life.png")
open_door = pygame.image.load("images/open_door.png")
closed_door = pygame.image.load("images/closed_door.png")

dynamite_sound = pygame.mixer.Sound("sounds/bomb.wav")
key_sound = pygame.mixer.Sound("sounds/key.ogg")
door_sound = pygame.mixer.Sound("sounds/door_creak_closing.wav")

pygame.mixer.music.load("sounds/zombie_theme.wav")
pygame.mixer.music.play(-1)

level = Level1()

surface = Surface(SURFACE_SIZE, TILE_SIZE, level)

end_tile = Surface.get_tile_by_number(173)
level.end = End(end_tile.x, end_tile.y)

player_position = Surface.get_tile_by_number(level.player_position)

player = Player(player_position.x, player_position.y, TILE_SIZE)

bg = pygame.image.load("images/bg.png")

game_screen = pygame.display.set_mode(SURFACE_SIZE)

pygame.display.set_caption("Zombie")