Esempio n. 1
0
def main():
    # Init display & clock
    display = pygame.display.set_mode((800, 600), DOUBLEBUF)
    pygame.display.set_caption("Infinity Swarm")

    gem_list = ["amber", "amethyst", "emerald", "ruby", "sapphire", "topaz"]
    display_icon = pygame.transform.scale(
        pygame.image.load("assets/materials/" + random.choice(gem_list) +
                          ".png"), (64, 64))
    pygame.display.set_icon(display_icon)
    clock = pygame.time.Clock()

    # Player data holder
    player_data = PlayerData("Player")

    # Init screens
    screen_main = layouts.ScreenMain(display, player_data)
    screen_levelinfo = layouts.ScreenLevelInfo(display)
    screen_game = layouts.ScreenGame(display, player_data)

    current_screen = "main"
    screens = {
        "main": screen_main,
        "levelinfo": screen_levelinfo,
        "game": screen_game
    }

    frame = 0
    loop = True
    while loop:
        caught_events = pygame.event.get()
        for event in caught_events:
            if event.type == pygame.QUIT:
                loop = False
                break

        frame = (frame + 1) % 60

        if frame % 5 == 0:
            player_data.ccps_tick(12)

        cur_screen = screens[current_screen]
        upd_rects = cur_screen.update(caught_events)

        screen_switch = cur_screen.get_switch_screen()
        if screen_switch:
            current_screen = screen_switch
            screens[current_screen].init_screen(cur_screen)

        pygame.display.update(upd_rects)
        clock.tick(60)
Esempio n. 2
0
class EvaluatingApp(App):
    pdata = ObjectProperty(PlayerData())

    def build(self):
        '''kivy's app init point'''
        self.build_root()
        self.build_data()
        self.show_prepare()

    def build_root(self):
        self.build_scene(self.root.scene)

    def build_scene(self, scene):
        Builder.load_file('prepare.kv')
        Builder.load_file('result.kv')

        scene.prepare = self.build_prepare()
        scene.lwin    = self.build_result(self.pdata.lwin)
        scene.draw    = self.build_result(self.pdata.draw)
        scene.rwin    = self.build_result(self.pdata.rwin)

    def build_prepare(self):
        prepare = PrepareScene() 
        prepare.build()
        prepare.associate(self.pdata)
        return prepare

    def build_result(self, ratefunc):
        result = ResultScene()
        result.build()
        result.associate(self.pdata, ratefunc)
        return result

    def build_data(self):
        players = self.pdata.players 
        cteam   = self.pdata.cteam
        for name in PLAYERS:
            players[name] = (MEAN, STDDEV)
            cteam.append(name)

    def show_prepare(self):
        self.root.show_prepare()
Esempio n. 3
0
            filter(PlayerGameStat.create_dt > cutoff_dt).\
            filter(Player.nick != None).\
            filter(Player.player_id > 2).\
            filter(Player.active_ind == True).\
            limit(NUM_PLAYERS).all()
else:
    players = DBSession.query(distinct(Player.player_id)).\
            filter(Player.player_id == PlayerElo.player_id).\
            filter(Player.player_id == PlayerGameStat.player_id).\
            filter(PlayerGameStat.create_dt > cutoff_dt).\
            filter(Player.nick != None).\
            filter(Player.player_id > 2).\
            filter(Player.active_ind == True).\
            all()

playerdata = PlayerData()

if len(players) > 0:
    stop = datetime.now()
    td = stop - start
    print "Query took %.2f seconds" % (datetime_seconds(td))

    print "Creating badges for %d players ..." % len(players)
    start = datetime.now()
    data_time, render_time = 0, 0
    for player_id in players:
        req.matchdict['id'] = player_id

        sstart = datetime.now()
        playerdata.get_data(player_id)
        sstop = datetime.now()