示例#1
0
def main():
    screen = g.Canvas(fullscreen=True)

    player = g.Sprite(g.shapes.Circle(1), position=(int(screen.width / 2), 1))
    road = g.Sprite(Road(screen.width, screen.height, int(screen.width / 3)))
    score = g.Sprite(g.shapes.Text('Score: 0'))

    screen.sprites.append(player)
    screen.sprites.append(road)
    screen.sprites.append(score)

    lastFrame = time.time()
    with g.NonBlockingInput() as nbi:
        while not player.overlaps(screen, exclude=score):
            ch = nbi.char()
            if ch == ',':
                player.move(g.LEFT)
            if ch == '.':
                player.move(g.RIGHT)

            if time.time() - lastFrame >= .05:

                # Increase Score
                score.image.text = (score.image.text[:7] +
                                    str(int(score.image.text[7:]) + 1))

                road.image.move()

                print(screen, end='')
                lastFrame = time.time()
示例#2
0
def main():

    FPS = 15
    screen = g.Canvas(size=(36, 20))

    touchMeter = g.Sprite(g.shapes.Text(''), color=g.colors.RED)
    mover = g.Sprite(Car(), color=g.colors.WHITE)

    gridImg = ([[False, True, False, False] * 9] + ([[False] * 36]) * 3) * 5
    grid = g.Sprite(g.shapes.CustImage(gridImg),
                    color=g.colors.GREEN,
                    position=(0, 1))

    screen.sprites.append(touchMeter)
    screen.sprites.append(grid)
    screen.sprites.append(mover)

    frame = 0
    t = time.time()
    with g.NonBlockingInput() as nbi:
        while True:

            ch = nbi.char()
            if ch == '.':
                mover.move(g.RIGHT)
            if ch == ',':
                mover.move(g.LEFT)
            if ch == '/':
                mover.move(g.UP)
            if ch == 'm':
                mover.move(g.DOWN)

            str_ = ''
            if mover.touching(screen, 0):
                str_ += str(0)
            if mover.touching(screen, 1):
                str_ += str(1)
            if mover.touching(screen, 2):
                str_ += str(2)
            if mover.touching(screen, 3):
                str_ += str(3)
            if mover.touching(screen):
                str_ += 'T'

            touchMeter.image.text = str_

            if time.time() >= t + (1 / FPS):
                t = time.time()
                print(screen)
示例#3
0
def main():

    FPS = 15
    screen = g.Canvas(fullscreen=True, size=(36, 20), wrap=True)

    frameCount = g.Sprite(g.shapes.Text(''), color=g.colors.RED)
    car = g.Sprite(Car(), color=g.colors.WHITE)

    llimit = screen.height
    ulimit = car.image.height
    grndTerrain = genGround(screen.width, screen.height, car.image.height,
                            screen.height)

    ground = g.Sprite(g.shapes.CustImage(grndTerrain), color=g.colors.GREEN)

    screen.sprites.append(frameCount)
    screen.sprites.append(ground)
    screen.sprites.append(car)

    frame = 0
    frame1 = 0
    t = time.time()
    with g.NonBlockingInput() as nbi:
        while True:
            frame += 1
            frameCount.image.text = str(frame) + ':' + str(frame1)

            ch = nbi.char()
            if ch == '.':
                car.move(g.RIGHT)
            if ch == ',':
                car.move(g.LEFT)
            if ch == '/':
                car.image.length += 1
            if ch == '\\':
                car.image.length -= 1

            car.move(g.UP)
            while not car.touching(screen, side=0):
                car.move(g.DOWN)
            while car.touching(screen, side=0):
                car.move(g.UP)
            car.move(g.DOWN)

            if time.time() >= t + (1 / FPS):
                frame1 += 1
                t = time.time()
                print(screen)
示例#4
0
def main():
    screen = g.Canvas(size=(20, 20))

    line = g.Sprite(
        g.shapes.Vector(0, 10),
        (5, 5)
    )
    screen.sprites.append(line)

    with g.NonBlockingInput() as nbi:
        while True:

            if nbi.char() == ' ':
                line.image.angle += 5
                print(screen)

            time.sleep(.01)