Пример #1
0
def main():
    """Just used to set up the engine and screen"""

    league.Settings.width = 800
    league.Settings.height = 640
    "Sets the size of the window. 800 x 640 is 25 x 20 32bit sprites"

    engine = league.Engine("Gricelda")
    engine.init_pygame()

    user = Player(engine, 5, 10)
    engine.objects.append(user)

    screen = Screen(user, engine)

    over = Overlay(user)
    engine.drawables.add(over)
    engine.objects.append(over)

    "Screen is passed the player to allow them to be changed by the world"
    "   and engine to allow all world updates"
    engine.objects.append(screen)

    pygame.mixer.init()
    background_track = pygame.mixer.Sound("../assets/track6.ogg")
    background_track.play(-1)

    engine.drawables.remove(user)
    showTitleScreen(screen, engine)
    engine.drawables.add(user)

    engine.events[pygame.QUIT] = engine.stop
    engine.run()
Пример #2
0
def main() :
    e = league.Engine("Spook City")
    e.init_pygame()
    timer = pygame.time.set_timer(pygame.USEREVENT + 1, 1000 // league.Settings.gameTimeFactor)
    count = 0

    p = Player(1, 400, 300)
    spawner = EnemySpawner(e,p)
    crate = createInteract(e,p)

    spawner.createEnemy(2,128,128)
    crate.createLanternContainer(2,128,300)
    crate.createBeartrapContainer(2,256,300)

    mapRenderer = MapRenderer("first room", e)
    world_size = mapRenderer.renderBackground()
    p.world_size = world_size
    mapRenderer.renderForeGround()
    d = Door(2, 300, 4, 300, 416, "second room", e)
    e.light_points = p.raycast_points
    e.player = p
    overlay = Overlay(p)
    e.overlay = overlay
    e.objects.append(p)
    e.objects.append(overlay)
    e.objects.append(d)

    # any objects to be created on the fly
    p.items = e.dynamic_instances
    p.interactables.add(d)

    # add all drawables
    e.drawables.add(p)
    e.drawables.add(d)
    mapRenderer.renderForeGround()

    p.resetx = 300
    p.resety = 416

    bgm = BackgroundMusic("lavender town")
    bgm.start_music()
  
    # add all impassable sprites to classes which need them
    for impassable in mapRenderer.getAllImpassables():
        p.blocks.add(impassable)

    # create room object in engine
    e.room = Room(p, e, overlay)
    p.room = e.room

    e.key_events[pygame.K_a] = p.move_left
    e.key_events[pygame.K_d] = p.move_right
    e.key_events[pygame.K_w] = p.move_up
    e.key_events[pygame.K_s] = p.move_down
    e.key_events[pygame.K_e] = p.interact
    e.key_events[pygame.K_SPACE] = p.use_active_item
    e.key_events[pygame.K_ESCAPE] = e.stop
    e.events[pygame.QUIT] = e.stop
    e.run()
Пример #3
0
def main():
    e = league.Engine("Neon Souls")
    e.init_pygame()

    # create background and level
    init_map(e)

    
    e.events[pygame.QUIT] = e.stop
    e.run()
Пример #4
0
def main():
    gamin = True  #reset indicator
    while (gamin):
        gamin = False
        e = league.Engine("Go Nutts!")
        e.init_pygame()

        ##sprites = league.Spritesheet('../assets/base_chip_pipo.png', league.Settings.tile_size, 8)
        backgroundMaterial = league.Spritesheet(
            '../assets/woodlandMaterials.png', league.Settings.tile_size, 5)
        directionalInfo = league.Spritesheet('../assets/directions.png',
                                             league.Settings.tile_size, 3)
        t = league.Tilemap('../assets/woodland.lvl',
                           backgroundMaterial,
                           layer=1)
        ##d = league.Tilemap('../assets/directions.lvl', directionalInfo, layer = 2)
        b = league.Tilemap('../assets/background.lvl',
                           backgroundMaterial,
                           layer=0)
        world_size = (t.wide * league.Settings.tile_size,
                      t.high * league.Settings.tile_size)
        e.drawables.add(b.passable.sprites())
        e.drawables.add(t.passable.sprites())
        ##e.drawables.add(d.passable.sprites())
        m = SoundManager()
        m.bgm_start('Song_For_Someone.wav')
        p = Player(2, 420, 120)
        o = Overlay(p)
        bu = MusicButton()
        p.blocks.add(t.impassable)
        p.world_size = world_size
        p.rect = p.image.get_rect()

        s = Spider(10, 2810, 2527, 210, "v")
        s.blocks.add(t.impassable)
        s.world_size = world_size
        s.rect = s.image.get_rect()

        s2 = Spider(10, 1590, 630, 200, "v")
        s2.blocks.add(t.impassable)
        s2.world_size = world_size
        s2.rect = s2.image.get_rect()

        s3 = Spider(10, 3090, 700, 230, "v")
        s3.blocks.add(t.impassable)
        s3.world_size = world_size
        s3.rect = s3.image.get_rect()

        s4 = Spider(10, 3530, 957, 200, "fL")
        s4.blocks.add(t.impassable)
        s4.world_size = world_size
        s4.rect = s4.image.get_rect()

        b = Bee(10, 3482, 3134, 220, "v")
        b.blocks.add(t.impassable)
        b.world_size = world_size
        b.rect = b.image.get_rect()

        b2 = Bee(10, 2486, 790, 200, "s")
        b2.blocks.add(t.impassable)
        b2.world_size = world_size
        b2.rect = b2.image.get_rect()

        b3 = Bee(10, 5940, 1078, 170, "fL")
        b3.blocks.add(t.impassable)
        b3.world_size = world_size
        b3.rect = b3.image.get_rect()

        b4 = Bee(10, 6185, 1509, 250, "s")
        b4.blocks.add(t.impassable)
        b4.world_size = world_size
        b4.rect = b4.image.get_rect()

        ac = Acorn(10, 7000, 3300)
        ac.blocks.add(t.impassable)
        ac.world_size = world_size
        ac.rect = ac.image.get_rect()

        l = Leafbug(10, 2213, 3103, 500, "h")
        l.blocks.add(t.impassable)
        l.world_size = world_size
        l.rect = l.image.get_rect()

        l2 = Leafbug(10, 1230, 167, 400, "h")
        l2.blocks.add(t.impassable)
        l2.world_size = world_size
        l2.rect = l2.image.get_rect()

        l3 = Leafbug(10, 4259, 30, 150, "s")
        l3.blocks.add(t.impassable)
        l3.world_size = world_size
        l3.rect = l3.image.get_rect()

        l4 = Leafbug(10, 6559, 1215, 250, "h")
        l4.blocks.add(t.impassable)
        l4.world_size = world_size
        l4.rect = l4.image.get_rect()

        resetL = Overlay_Button(200, 250, False, "            Reset",
                                (209, 45, 25), (0, 0, 0), (255, 255, 255), e)
        quL = Overlay_Button(375, 250, False, "         Quit", (209, 45, 25),
                             (0, 0, 0), (255, 255, 255), e)
        resetW = Overlay_Button(200, 250, False, "            Reset",
                                (53, 50, 150), (209, 45, 25), (255, 255, 255),
                                e)
        quW = Overlay_Button(375, 250, False, "         Quit", (53, 50, 150),
                             (209, 45, 25), (255, 255, 255), e)

        lose = Lose_Overlay(p, resetL, quL, e)
        w = Win_Overlay(p, resetW, quW, e)
        c = league.LessDumbCamera(800, 400, p, e.drawables, world_size)

        e.objects.append(p)

        e.objects.append(b)
        e.objects.append(b2)
        e.objects.append(b3)
        e.objects.append(b4)
        e.objects.append(ac)

        e.objects.append(l)
        e.objects.append(l2)
        e.objects.append(l3)
        e.objects.append(l4)

        e.objects.append(s)
        e.objects.append(s2)
        e.objects.append(s3)
        e.objects.append(s4)

        #Adding Drawables
        e.drawables.add(p)
        e.drawables.add(s)

        e.drawables.add(b)
        e.drawables.add(b2)
        e.drawables.add(b3)
        e.drawables.add(b4)
        e.drawables.add(ac)

        e.drawables.add(l)
        e.drawables.add(l2)
        e.drawables.add(l3)
        e.drawables.add(l4)

        e.drawables.add(s)
        e.drawables.add(s2)
        e.drawables.add(s3)
        e.drawables.add(s4)

        e.drawables.add(o)
        e.drawables.add(bu)

        e.objects.append(resetL)
        e.objects.append(quL)
        e.objects.append(resetW)
        e.objects.append(quW)
        e.objects.append(lose)
        e.objects.append(c)
        e.objects.append(o)
        e.objects.append(w)
        e.objects.append(bu)

        e.drawables.add(quL)
        e.drawables.add(resetL)
        e.drawables.add(quW)
        e.drawables.add(resetW)
        e.drawables.add(lose)
        e.drawables.add(w)

        e.collisions[(p,
                      p.ouch)] = [s, s2, s3, s4, b, b2, b3, b4, l, l2, l3, l4]
        e.collisions[(p, p.win)] = [ac]

        #Bees
        pygame.time.set_timer(pygame.USEREVENT + 1,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 2,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 3,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 4,
                              100 // league.Settings.gameTimeFactor)
        #Leafbugs
        pygame.time.set_timer(pygame.USEREVENT + 10,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 11,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 12,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 13,
                              100 // league.Settings.gameTimeFactor)
        #Spiders
        pygame.time.set_timer(pygame.USEREVENT + 20,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 21,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 22,
                              100 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 23,
                              100 // league.Settings.gameTimeFactor)
        #Nutthaniel
        pygame.time.set_timer(pygame.USEREVENT + 30,
                              10 // league.Settings.gameTimeFactor)
        pygame.time.set_timer(pygame.USEREVENT + 31,
                              5 // league.Settings.gameTimeFactor)
        #Acorn
        pygame.time.set_timer(pygame.USEREVENT + 5,
                              100 // league.Settings.gameTimeFactor)

        e.add_key(pygame.K_a, p.move_left)
        e.add_key(pygame.K_d, p.move_right)
        e.add_key(pygame.K_w, p.move_up)
        e.add_key(pygame.K_s, p.move_down)

        e.add_key(pygame.K_q, p.print_place)

        e.add_key(pygame.K_b, p.climb_on)
        e.add_key(pygame.K_SPACE, p.jump)

        e.events[pygame.MOUSEBUTTONDOWN] = bu.mouse_click

        e.events[pygame.USEREVENT + 1] = b.move
        e.events[pygame.USEREVENT + 2] = b2.move
        e.events[pygame.USEREVENT + 3] = b3.move
        e.events[pygame.USEREVENT + 4] = b4.move
        e.events[pygame.USEREVENT + 5] = ac.move
        e.events[pygame.USEREVENT + 10] = l.move
        e.events[pygame.USEREVENT + 11] = l2.move
        e.events[pygame.USEREVENT + 12] = l3.move
        e.events[pygame.USEREVENT + 13] = l4.move
        e.events[pygame.USEREVENT + 20] = s.move
        e.events[pygame.USEREVENT + 21] = s2.move
        e.events[pygame.USEREVENT + 22] = s3.move
        e.events[pygame.USEREVENT + 23] = s4.move
        e.events[pygame.USEREVENT + 30] = p.move_down_gravity
        e.events[pygame.USEREVENT + 31] = p.update_jump

        e.events[pygame.QUIT] = e.stop
        e.run()
        if e.reset:
            gamin = True
Пример #5
0
def main():

    e = league.Engine("The Lone Ranger")
    e.init_pygame()

    sprites = league.Spritesheet('./assets/base_chip_pipo.png',
                                 league.Settings.tile_size, 8)
    t = league.Tilemap('./assets/world.lvl', sprites, layer=1)
    b = league.Tilemap('./assets/background.lvl', sprites, layer=0)
    world_size = (t.wide * league.Settings.tile_size,
                  t.high * league.Settings.tile_size)

    e.drawables.add(t.passable.sprites())
    e.drawables.add(b.passable.sprites())

    p = Player(2, 400, 300)
    o = Overlay(p)
    p.blocks.add(t.impassable)
    p.world_size = world_size
    p.rect = p.image.get_rect()

    e.drawables.add(p)

    e.drawables.add(o)

    c = league.LessDumbCamera(800, 600, p, e.drawables, world_size)

    e.objects.append(c)
    e.objects.append(o)

    wave = 1
    zombieCount = 0

    #Register events?
    pygame.time.set_timer(pygame.USEREVENT + 0,
                          250 // league.Settings.gameTimeFactor)
    pygame.time.set_timer(pygame.USEREVENT + 1,
                          250 // league.Settings.gameTimeFactor)

    #Player movements

    zombies = []

    def shoot(time):
        now = pygame.time.get_ticks()
        if now - p.lastShot > 500:
            bullet = Bullet(p.direction, 10, p.x, p.y)
            e.objects.append(bullet)
            e.drawables.add(bullet)

            for z in zombies:
                e.collisions[z] = (bullet, z.ouch)

            p.lastShot = now

    '''
    Spawns Zombies with a 25% freqency every 250ms
    '''

    def spwanZombies(time):
        if p.zombieCount < p.wave * 5:
            if random.randint(1, 100) > 75:
                z = Zombie(p, 10, p.x, p.y)
                e.drawables.add(z)
                e.objects.append(z)
                e.collisions[z] = (p, p.ouch)
                p.zombieCount = p.zombieCount + 1
                zombies.append(z)

    def moveAndShoot(time):
        keys = pygame.key.get_pressed()
        if keys[pygame.K_w] or keys[pygame.K_a] or keys[pygame.K_s] or keys[
                pygame.K_d]:
            p.move(time, pygame.key.get_pressed())
        if keys[pygame.K_SPACE]:
            shoot(time)

    '''
    Moves zombies every 250ms
    '''

    def updateZoms(time):
        for i in e.objects:
            if isinstance(i, Zombie):
                if random.randint(1, 100) > 25:
                    i.move_towards_player(time)
                if i.health <= 0:
                    e.objects.remove(i)
                    e.drawables.remove(i)
            if isinstance(i, Bullet):
                if i.ttl > 10:
                    i.kill()
        e.objects.remove(c)
        e.objects.append(c)

    e.key_events[pygame.K_a] = moveAndShoot
    e.key_events[pygame.K_d] = moveAndShoot
    e.key_events[pygame.K_w] = moveAndShoot
    e.key_events[pygame.K_s] = moveAndShoot
    e.key_events[pygame.K_SPACE] = moveAndShoot

    #Register zombie movements in event list
    e.events[pygame.USEREVENT] = updateZoms
    e.events[pygame.USEREVENT + 1] = spwanZombies

    #Sets up exit button to quit game
    e.events[pygame.QUIT] = e.stop

    #Runs the main game loop
    e.run()
Пример #6
0
import sys
sys.path.append('..')
import league
from player import Player


def all_done(self):
    print("Peace out ya'll.")
    pygame.quit()
    sys.exit()


league.Settings.width = 768
league.Settings.height = 768

e = league.Engine("Really sucky PvZ")
e.init_pygame()

e.events[pygame.QUIT] = all_done

sprites = league.Spritesheet('./assets/base_chip_pipo.png',
                             league.Settings.tile_size, 8)
t = league.Tilemap('./assets/defense.lvl', sprites, layer=0)

scs = []
scs_b = []
sc = sprites.sprites[155]
sc_b = sprites.sprites[163]
for i in range(6):
    scs.append(league.Drawable())
    scs_b.append(league.Drawable())