Esempio n. 1
0
def main():
    #place main code here
    global screen, font, b_render, pygame, derpapi, RUN
    RUN = True
    screen.fill((230, 230, 230))
    buttons = b_render()
    number = ''
    print(4)
    while RUN:
        try:
            for event in pygame.event.get():
                if event.type == pygame.MOUSEMOTION:
                    collided = False
                    selected = None
                    for i in buttons:
                        if derpapi.collision(i, (140, 50), event.pos):
                            collided = True
                            selected = buttons.index(i)
                            b_render(darken=selected, dial=number)
                    if not collided:
                        b_render(dial=number)
                elif event.type == pygame.MOUSEBUTTONDOWN:
                    if selected != None:
                        number += str(selected)
                        if len(number) == 3 or len(number) == 7:
                            number += '-'
                        b_render(darken=selected, dial=number)
        except:
            pass
        if len(number) == 12:
            RUN = False
    final_num = ''.join(number.split(' '))
    print('Dialing ' + final_num)
    derpapi.call(final_num)
    hang = pygame.image.load('hangup.png')
    screen.fill((230, 230, 230))
    screen.blit(hang, (0, 0))
    pygame.display.flip()
    RUN = True
    while RUN:
        for event in pygame.event.get():
            if event.type == pygame.MOUSEBUTTONDOWN:
                if derpapi.collision((90, 10), (480, 320), event.pos):
                    RUN = False
        uart_rec = derpapi.rx()
        try:
            if uart_rec[len(uart_rec) - 1] == 'NO CARRIER':
                RUN = False
        except:
            pass
    derpapi.hangup()
    print('hung up')
Esempio n. 2
0
def main():
    global RUN, derpapi, cusfunc, screen, render, y, optpos, set_stor, c, font, optkeys
    #place main code here
    EXIT = pygame.image.load('exit.png')

    settings = derpapi.retrieve()
    for i in set_stor:
        if not i['name'] in settings.keys():
            settings[i['name']] = i['default']

    RUN = True
    while RUN:
        for event in pygame.event.get():
            if event.type == pygame.MOUSEBUTTONDOWN:
                if derpapi.collision((430, 0), (50, 50), event.pos):
                    RUN = False
                else:
                    cc = 0
                    for i in optkeys:
                        if derpapi.collision(optpos[i][0], optpos[i][1],
                                             event.pos):
                            if set_stor[cc]['type'] == 'switch':
                                if settings[set_stor[cc]['name']] == True:
                                    settings[set_stor[cc]['name']] = False
                                else:
                                    settings[set_stor[cc]['name']] = True
                            elif set_stor[cc]['type'] == 'custom':
                                cusfunc(set_stor[cc]['name'])
                        cc += 1
        screen.fill((230, 230, 230))
        screen.blit(font.render('SETTINGS', True, (0, 0, 0)), (10, 10))
        screen.blit(EXIT, (430, 0))
        y = 45
        optpos = {}
        optkeys = []
        c = 0
        for i in set_stor:
            if i['type'] == 'switch':
                if settings[i['name']] == True:
                    render('switch.on')
                else:
                    render('switch.off')
            elif i['type'] == 'custom':
                render('custom.custom', custom=True)
            y += 42
            c += 1
        pygame.display.flip()
    derpapi.store(data=settings)
Esempio n. 3
0
def main():
    global RUN, derpapi, git, pygame, install, urlretrieve, time, URLError, urlopen

    #place main code here
    try:
        font = pygame.font.Font('..\\..\\font_main.otf', 32)
    except:
        font = pygame.font.Font('font_main.otf', 32)
    screen = pygame.display.set_mode([480, 320], pygame.NOFRAME)
    screen.fill((230, 230, 230))
    screen.blit(font.render('LOADING...', True, (0, 0, 0)), (10, 10))
    pygame.display.flip()
    try:
        urlopen('https://www.youtube.com')
        wfi = True
    except URLError:
        wfi = False
    if wfi:
        #load _apps from github
        store = git.Github('iTecAI', 'Mi$ita6hc')
        CStore = store.get_user().get_repo('Derpi-apps').get_contents(
            '/STORE/')
        _apps = {}
        for i in CStore:
            _apps[i.path] = []
        app_display = {}
        for app in _apps.keys():
            dirs = [app]
            app_display[app.split('/')[len(app.split('/')) - 1]] = app
            while len(dirs) > 0:
                cur_dirs = dirs
                dirs = []
                for i in cur_dirs:
                    for file in store.get_user().get_repo(
                            'Derpi-apps').get_contents(i):
                        if file.type == 'dir':
                            dirs.append(file.path)
                        else:
                            _apps[app].append(
                                [file.download_url,
                                 file.path.strip('STORE/')])
        #start store

        #load images
        l_arrow = pygame.image.load('img\\LArrow.png')
        r_arrow = pygame.image.load('img\\RArrow.png')
        download = pygame.image.load('img\\download.png')

        RUN = True
        selected = 0
        while RUN:
            screen.fill((230, 230, 230))
            screen.blit(l_arrow, (10, 10))
            screen.blit(r_arrow, (440, 10))
            screen.blit(download, (215, 10))
            screen.blit(
                font.render(
                    list(app_display.keys())[selected], True, (0, 0, 0)),
                ((len(list(app_display.keys())[selected]) * 27) / 2, 150))
            pygame.display.flip()

            for event in pygame.event.get():
                if event.type == pygame.MOUSEBUTTONDOWN:
                    if derpapi.collision((10, 10), (30, 30), event.pos):
                        selected -= 1
                        if selected < 0:
                            selected = len(list(app_display.keys())) - 1
                    if derpapi.collision((440, 10), (30, 30), event.pos):
                        selected += 1
                        if selected == len(list(app_display.keys())):
                            selected = 0
                    if derpapi.collision((215, 10), (50, 50), event.pos):
                        install(
                            _apps[app_display[list(
                                app_display.keys())[selected]]],
                            list(app_display.keys())[selected])
                    print(selected)
                if event.type == pygame.KEYDOWN:
                    print(event.unicode)
                    if event.unicode == 'x':
                        print('EX')
                        pygame.quit()
                        sys.exit()
    else:
        screen.fill((230, 230, 230))
        screen.blit(font.render('No connection', True, (0, 0, 0)), (10, 10))
        screen.blit(font.render('Exiting', True, (0, 0, 0)), (10, 50))
        pygame.display.flip()
        time.sleep(3)
        sys.exit()
Esempio n. 4
0
def main():
    global RUN, random, derpapi
    #place main code here
    HS = derpapi.retrieve('HISCORE')
    if HS == None:
        HS = 0
    screen = pygame.display.set_mode([480, 320], pygame.NOFRAME)
    screen.fill((230, 230, 230))
    try:
        font = pygame.font.Font('..\\..\\font_main.otf', 32)
    except:
        font = pygame.font.Font('font_main.otf', 32)
    RUN = True
    spd = 0.3
    paddle_x = 0
    cp = [240, 160]
    cpd = [random.choice([-1 * spd, spd]), random.choice([-1 * spd, spd])]
    lt = 0
    lst = 0
    s_mult = 1
    score = 0
    lives = 5
    lost_one = False

    pause = pygame.image.load('pause.png')
    paused = 1

    while RUN:
        pygame.time.Clock().tick(300)
        for event in pygame.event.get():
            if event.type == pygame.MOUSEMOTION and paused % 2 == 1:
                if event.pos[0] <= 20:
                    paddle_x = 0
                elif event.pos[0] >= 460:
                    paddle_x = 440
                else:
                    paddle_x = event.pos[0] - 20
            if event.type == pygame.KEYDOWN:
                if event.unicode == 'x':
                    pygame.display.quit()
                    sys.exit()
                if event.unicode == 'p':
                    paused += 1
            if event.type == pygame.MOUSEBUTTONDOWN:
                if derpapi.collision((215, 10), (50, 50), event.pos):
                    paused += 1
        if paused % 2 == 0:
            screen.fill((200, 200, 200))
            screen.blit(pygame.Surface((40, 10)), (paddle_x, 300))
            screen.blit(pause, (215, 10))
            pygame.draw.circle(screen, (0, 0, 0), (int(cp[0]), int(cp[1])), 5)
            screen.blit(font.render(str(score), True, (0, 0, 0)), (10, 10))
            screen.blit(font.render('HI ' + str(HS), True, (0, 0, 0)),
                        (10, 40))
            screen.blit(font.render(str(lives), True, (0, 0, 0)), (450, 10))
            pygame.display.flip()
        else:
            screen.fill((230, 230, 230))
            screen.blit(pygame.Surface((40, 10)), (paddle_x, 300))
            screen.blit(pause, (215, 10))
            pygame.draw.circle(screen, (0, 0, 0), (int(cp[0]), int(cp[1])), 5)
            screen.blit(font.render(str(score), True, (0, 0, 0)), (10, 10))
            screen.blit(font.render('HI ' + str(HS), True, (0, 0, 0)),
                        (10, 40))
            screen.blit(font.render(str(lives), True, (0, 0, 0)), (450, 10))
            pygame.display.flip()
            cp = [cp[0] + cpd[0], cp[1] + cpd[1]]
            if cp[0] <= 5 or cp[0] >= 475:
                cpd[0] = cpd[0] * -1
            if cp[1] <= 5 or cp[1] >= 315:
                cpd[1] = cpd[1] * -1
            if derpapi.collision(
                (paddle_x, 300), (40, 10),
                (cp[0], cp[1] + 5)) and round(time.time()) != lst:
                cpd[1] = cpd[1] * -1
                score += s_mult
                lst = round(time.time())

            if round(time.time()) % 30 == 0 and round(time.time()) != lt:
                lt = round(time.time())
                cpd = [cpd[0] * 1.1, cpd[1] * 1.1]
                s_mult += 1
                print('SPD' + str(cpd[0] * 1.1))

            if cp[1] >= 310 and not lost_one:
                lost_one = True
                lives -= 1
            elif cp[1] < 280:
                lost_one = False

            if lives == 0:
                RUN = False

            if score > int(HS):
                HS = score

    screen.fill((230, 230, 230))
    screen.blit(font.render('GAME OVER', True, (0, 0, 0)), (10, 10))
    screen.blit(font.render('Your score is ' + str(score), True, (0, 0, 0)),
                (10, 60))
    if HS == score:
        screen.blit(font.render('NEW HIGHSCORE', True, (0, 0, 0)), (10, 100))
        derpapi.store("HISCORE", HS)
    else:
        screen.blit(font.render('HI ' + HS, True, (0, 0, 0)), (10, 100))
    pygame.display.flip()
    time.sleep(4)