def __init__(self): pyxel.init(256, 150, caption='Corong', fps=60) self.virus = Virus() self.state = STATES['0'] self.player1 = Player('p1') self.player2 = Player('p2') self.score = Score(self.player1, self.player2) pyxel.load('assets/sprites.pyxres') pyxel.run(self.update, self.draw)
def __init__(self, name: str, scoreRecord: ScoreLineRecord = None): self.scoresheet = Score(self) self.dice = [] try: self.name = scoreRecord.NomJoueur self.is_active = scoreRecord.IsActif > 0 self.tries = scoreRecord.Tries self.id = scoreRecord.IdScore points = scoreRecord.getScoreDict() # Alimente la feuille de score du joueur avec les infos de la base de donnée for attr, value in points.items(): for i in range(len(self.scoresheet.table)): if self.scoresheet.table[i].name == attr: self.scoresheet.table[i].value = value except NameError or AttributeError: self.is_active = False self.name = name self.tries = 3 self.id = -1 for i in range(5): self.dice.append(Die())
def get_recent_play(osu_id): """ Gives the most recent play of a user in the last 24 hours Returns None if no plays in the last 24 hours :param osu_id: osu! ID `string` or `int` :return: Score class of the most recent play `Score` """ query = urlencode({'k': API_KEY, 'u': osu_id, 'type': 'id', 'limit': 1}) url = 'get_user_recent' + '?' + query scores = call_api(url) if len(scores) < 1: return None return Score(scores[0])
def get_user_map_best(beatmap_id, user_id): """ Gives best play of user on given beatmap Returns None if user has no plays on given beatmap :param beatmap_id: Beatmap ID `string` or `int` :param user_id: osu! ID `string` or `int` :return: Score class of best play `Score` """ query = urlencode({'k': API_KEY, 'b': beatmap_id, 'u': user_id}) url = 'get_scores' + '?' + query scores = call_api(url) if len(scores) < 1: return None return Score(scores[0], beatmap_id=beatmap_id)
def search(q): score = Score(cursor) return jsonify(score.search(q))
def score_id(id): score = Score(cursor) return jsonify(score.get_byid(id))
def score(): score = Score(cursor) return jsonify(score.get_all())
class Game: def __init__(self): pyxel.init(256, 150, caption='Corong', fps=60) self.virus = Virus() self.state = STATES['0'] self.player1 = Player('p1') self.player2 = Player('p2') self.score = Score(self.player1, self.player2) pyxel.load('assets/sprites.pyxres') pyxel.run(self.update, self.draw) def update(self): self.player1.update() self.player2.update() self.virus.update() self.check_state() self.check_screen_border() if self.virus.speed_x > 0: if self.check_colision(self.player2): self.virus.update_speed(self.player2) elif self.virus.speed_x < 0: if self.check_colision(self.player1): self.virus.update_speed(self.player1) def draw(self): pyxel.cls(0) self.player1.draw() self.player2.draw() self.virus.draw() self.score.draw() def check_state(self): if self.state == STATES['0']: if pyxel.btn(pyxel.KEY_SPACE): self.set_state('1') def check_screen_border(self): virus = self.virus if virus.pos_y <= 0 or virus.pos_y >= pyxel.height - virus.height: virus.invert_speed_y_direction() elif virus.pos_x <= 0: self.score.increase_score(self.player2) self.set_state('0') elif virus.pos_x >= pyxel.width - virus.width: self.score.increase_score(self.player1) self.set_state('0') def check_colision(self, player): for s_hbox in player.syringe.hitbox: if player.name == 'p1': v_hitbox = self.virus.hitbox[0] if v_hitbox[0] > float(s_hbox[0]): continue elif player.name == 'p2': v_hitbox = self.virus.hitbox[1] if v_hitbox[0] < float(s_hbox[0]): continue for v_hb in range(round(v_hitbox[1][0]), round(v_hitbox[1][1])): if s_hbox[1][0] <= v_hb <= s_hbox[1][1]: return True return False def set_state(self, state): self.state = STATES[state] if state == '0': self.virus = Virus() elif state == '1': player = self.score.last_to_score or random.choice( [self.player1, self.player2]) self.virus.throw_virus(player)
# Inicializar juego pygame.init() pygame.display.set_caption("PONG!") iconImage = pygame.image.load("assets/icon.png") pygame.display.set_icon(iconImage) # Configurar ventana de juego screenWidth = 800 screenHeight = 600 screen = pygame.display.set_mode((screenWidth, screenHeight)) # Crear jugadores players = [Player([50, 50], (pygame.K_w, pygame.K_s)), Player([718, 50])] # Crear puntaje para jugadores score = Score(players) # Crear pelota ball = Ball() # Sonido de puntaje scoreSound = pygame.mixer.Sound("assets/score.wav") # Juego running = True while running: # Renderizar fondo de pantalla screen.fill(cBlack) # Checar las acciones de los jugadores for event in pygame.event.get(): # Checar si se cerró el juego
class Game(turtle.Turtle): MAX_ENEMIES = 5 def __init__(self): turtle.Turtle.__init__(self) self.score = Score() self.player = Player() self.enemies = [] def setup(self): # Set up screen screen = turtle.Screen() screen.bgcolor("black") screen.title("Space Invaders") # Display splash screen for 5 seconds # screen.bgpic("splash.gif") # time.sleep(5) screen.bgpic("space_invaders_background.gif") # Draw border border = Border() border.draw_border() # Create enemies self.create_enemies() # Draw score self.score.draw_score() def create_enemies(self): # Add enemies to the list for _i in range(self.MAX_ENEMIES): self.enemies.append(Enemy()) def isCollision(self, t1, t2): distance = math.sqrt( math.pow(t1.xcor() - t2.xcor(), 2) + (math.pow(t1.ycor() - t2.ycor(), 2))) return True if distance < 20 else False def play_game(self): # Set up game screen, border, and enemies self.setup() # Define keyboard bindings turtle.listen() turtle.onkey(self.player.move_left, "Left") turtle.onkey(self.player.move_right, "Right") turtle.onkey(self.player.fire_bullet, "space") # Game loop while True: # Move enemies back and forth toward player for enemy in self.enemies: x = enemy.xcor() + Enemy.enemyspeed enemy.setx(x) if enemy.xcor() > 280 or enemy.xcor() < -280: # Move ALL enemies for e in self.enemies: y = e.ycor() - 40 e.sety(y) # Change enemy directions Enemy.enemyspeed *= -1 # Check for collision between bullet and enemy if self.isCollision(self.player.bullet, enemy): # Play explosion sound self.player.play_sound("explosion.wav") # Reset the bullet self.player.bullet.reset() # Reset enemy position enemy.reset_position() # Update score self.score.update_score() # Check for collison between enemy and player if self.isCollision(self.player, enemy) or enemy.ycor() < -250: # Play explosion sound self.player.play_sound("explosion.wav") # Game is over self.player.hideturtle() enemy.hideturtle() print("Game Over!") break # Move the bullet till it gets to the top boundary self.player.bullet.move() self.player.bullet.boundary_check()
def __init__(self): turtle.Turtle.__init__(self) self.score = Score() self.player = Player() self.enemies = []