def init_game(self): self.maze = Maze(self, CANVAS_WIDTH, CANVAS_HEIGHT) self.pacman1 = Pacman(self, self.maze, 1, 1) self.pacman2 = Pacman(self, self.maze, self.maze.get_height() - 2, self.maze.get_width() - 2) self.pacman1_score_text = Text(self, 'P1: 0', 100, 20) self.pacman2_score_text = Text(self, 'P2: 0', 600, 20) self.elements.append(self.pacman1) self.elements.append(self.pacman2) self.pacman1_score = 0 self.pacman2_score = 0 self.command_map = { 'W': self.get_pacman_next_direction_function(self.pacman1, DIR_UP), 'A': self.get_pacman_next_direction_function(self.pacman1, DIR_LEFT), 'S': self.get_pacman_next_direction_function(self.pacman1, DIR_DOWN), 'D': self.get_pacman_next_direction_function(self.pacman1, DIR_RIGHT), 'J': self.get_pacman_next_direction_function(self.pacman2, DIR_LEFT), 'I': self.get_pacman_next_direction_function(self.pacman2, DIR_UP), 'K': self.get_pacman_next_direction_function(self.pacman2, DIR_DOWN), 'L': self.get_pacman_next_direction_function(self.pacman2, DIR_RIGHT), }
def init_game(self): self.ship = Ship(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.level = 1 self.level_text = Text(self, '', 100, 580) self.update_level_text() self.score = 0 self.score_wait = 0 self.score_text = Text(self, '', 100, 20) self.update_score_text() self.bomb_power = BOMB_FULL_POWER self.bomb_wait = 0 self.bomb_power_text = Text(self, '', 700, 20) self.update_bomb_power_text() self.elements.append(self.ship) self.init_key_handlers() self.enemies = [] self.bullets = [] self.enemy_creation_strategies = [ (0.2, StarEnemyGenerationStrategy()), (1.0, EdgeEnemyGenerationStrategy()) ]
def init_game(self): self.ship = Ship(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.score_wait = 0 self.level = 1 self.level_text = Text(self, '', 100, 580) self.update_level_text() self.score = StatusWithText(self, 100, 20, 'Score: %d', 0) self.bomb_power = BOMB_FULL_POWER self.bomb_wait = 0 self.bomb_power_text = Text(self, '', 700, 20) self.update_bomb_power_text() self.elements.append(self.ship) self.power_up = [] self.enemies = [] self.bullets = [] self.enemy_creation_strategies = [ StarEnemyGenerationStrategy(), EdgeEnemyGenerationStrategy(), GhostEnemyGenerationStrategy() ] self.init_key_handlers()
def init_game(self): self.maze = Maze(self, CANVAS_WIDTH, CANVAS_HEIGHT) self.pacman1 = Pacman(self, self.maze, 1, 1) self.pacman2 = Pacman(self, self.maze, self.maze.get_height() - 2, self.maze.get_width() - 2) self.pacman1_score_text = Text(self, 'P1: 0', 100, 20) self.pacman2_score_text = Text(self, 'P2: 0', 600, 20) self.elements.append(self.pacman1) self.elements.append(self.pacman2) # Adding attributes for Pacman scores self.pacman1_score = 0 self.pacman2_score = 0 # register self.dot_eaten_by_pacman1 to self.pacman1's observers self.pacman1.dot_eaten_observers.append(self.dot_eaten_by_pacman1) # register self.dot_eaten_by_pacman2 to self.pacman2's observers self.pacman2.dot_eaten_observers.append(self.dot_eaten_by_pacman2) self.command_map = { 'W': self.get_pacman_next_direction_function(self.pacman1, DIR_UP), 'A': self.get_pacman_next_direction_function(self.pacman1, DIR_LEFT), 'S': self.get_pacman_next_direction_function(self.pacman1, DIR_DOWN), 'D': self.get_pacman_next_direction_function(self.pacman1, DIR_RIGHT), 'J': self.get_pacman_next_direction_function(self.pacman2, DIR_LEFT), 'I': self.get_pacman_next_direction_function(self.pacman2, DIR_UP), 'K': self.get_pacman_next_direction_function(self.pacman2, DIR_DOWN), 'L': self.get_pacman_next_direction_function(self.pacman2, DIR_RIGHT) }
def create_sprites(self): self.dot = Dot(self, 'images/dot.png', CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.elements.append(self.dot) self.pillar_pair = PillarPair(self, 'images/pillar-pair.png', CANVAS_WIDTH, CANVAS_HEIGHT // 2) self.elements.append(self.pillar_pair) self.is_defeated = False self.score_text = Text(self, 0, CANVAS_WIDTH / 2, 40) self.defeated_text = Text(self, "", CANVAS_WIDTH / 2, CANVAS_WIDTH / 2)
def init_game(self): self.maze = Maze(self, CANVAS_WIDTH, CANVAS_HEIGHT) self.pacman1 = Pacman(self, self.maze, 1, 1) self.pacman2 = Pacman(self, self.maze, self.maze.get_height() - 2, self.maze.get_width() - 2) self.pacman1_score_text = Text(self, 'P1: 0', 100, 20) self.pacman2_score_text = Text(self, 'P2: 0', 600, 20) self.elements.append(self.pacman1) self.elements.append(self.pacman2)
def init_game(self): self.background = Sprite( self, "images/background.png", CANVAS_WIDTH//2, CANVAS_HEIGHT//2) self.ship = Ship(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.level = StatusWithText( self, 100, CANVAS_WIDTH-CANVAS_WIDTH*0.3, 'level: %d', 1) self.score_wait = 0 self.score = StatusWithText(self, 100, 20, 'Score: %d', 0) self.enemy_creation_strategies = [ [0.09, TieFighterEnemyGeration()], [0.03, StarEnemyGenerationStrategy()], [0.8, EdgeEnemyGenerationStrategy()] ] self.bomb_power = StatusWithText( self, CANVAS_WIDTH-100, 20, 'power: %d', BOMB_FULL_POWER) self.bomb_wait = 0 self.bomb_power_text = Text(self, '', 700, 20) self.health = StatusWithText( self, 700, CANVAS_WIDTH-CANVAS_WIDTH*0.3, 'health: %d', 4) self.elements.append(self.ship) self.boss = None self.turbo_power() self.enemies = [] self.bullets = [] self.init_key_handlers()
def __init__(self, app, x, y, text_template, default_value=0): self.x = x self.y = y self.text_template = text_template self._value = default_value self.label_text = Text(app, '', x, y) self.update_label()
def init_game(self): self.basket = Basket(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT - 50) self.elements.append(self.basket) self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = []
def init_game(self): self.cat = Cat(self, 50, CANVAS_HEIGHT // 2) self.elements.append(self.cat) self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = []
def init_game(self): self.basket = Basket(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT - 50) self.elements.append(self.basket) self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = [] self.basket.fruit_collect_observers.append(lambda: self.fruit_collect_basket())
def post_update(self): # Check for lose condition # 1. The dot falls of the screen. # 2. The dot hits the pillar if (self.dot.is_out_of_screen() or self.dot.is_hit()) and not self.is_gameover: self.is_gameover = True self.pillar_pair.game_over() self.dot.game_over() Text(app, "Game Over!!!", 400, 250) print("Game over")
def create_message_box(self): """A message box that shows which player is to take a turn, and other status messages. """ self.message_box = Text(self.canvas, " "*16, 20, 40, # show text in upper left corner of canvas fill="white", justify=tk.LEFT, anchor=tk.W, font=font.Font(family="Monospace",size=18) )
def init_game(self): self.ship = Ship(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.level = 1 self.level_text = Text(self, '', 100, 580) self.update_level_text() self.score = 0 self.score_wait = 0 self.score_text = Text(self, '', 100, 20) self.update_score_text() self.bomb_power = BOMB_FULL_POWER self.bomb_wait = 0 self.bomb_power_text = Text(self, '', 700, 20) self.update_bomb_power_text() self.elements.append(self.ship) self.enemies = [] self.bullets = []
def init_game(self): self.basket = Basket(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT - 50) self.elements.append(self.basket) self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = [] self.command_map = { 'Left': self.next_direction_function(self.basket, BASKET_LEFT), 'Right': self.next_direction_function(self.basket, BASKET_RIGHT), }
def init_game(self): self.cat = Cat(self, 50, CANVAS_HEIGHT // 2) self.cat.observer_subscribe(self.fruit_collected_observer) self.elements.append(self.cat) self.key_bindings = { 'Up': self.set_cat_dir(CAT_UP), 'Down': self.set_cat_dir(CAT_DOWN) } self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = []
def create_sprites(self): self.banana = Banana(self, 'banana.png', 100, 400) self.banana.set_speed(15, 25) self.monkey = Sprite(self, 'monkey.png', 100, 400) self.enemy = Sprite(self, 'monkey.png', 700, 400) self.elements.append(self.banana) self.elements.append(self.monkey) self.elements.append(self.enemy) self.speed_text = Text(self, 'Speed: XX', 40, 20) self.elements.append(self.speed_text)
def init_game(self): self.basket = Basket(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT - 50) self.elements.append(self.basket) self.score = 0 self.score_text = Text(self, 'Score: 0', 100, 40) self.fruits = [] self.command_map = { 'Left': self.get_pacman_next_direction_function(self.basket, BASKET_LEFT), 'Right': self.get_pacman_next_direction_function( self.basket, BASKET_RIGHT), # second improvement Implementing the pattern }
def __init__(self, app, x, y, text_template, default_value=0, default_level=1, default_bomb_power=10): self.x = x self.y = y self.text_template = text_template self.default_value = default_value self.label_text = Text(app, '', x, y) self.default_level = default_level self.default_bomb_power = default_bomb_power self.update_label()
def create_sprites(self): self.image_filename = 'images/bgggg.png' self.photo_image = tk.PhotoImage(file=self.image_filename) self.canvas_object_id = self.canvas.create_image(250, 200, image=self.photo_image) self.image_filename = 'images/bgggg.png' self.photo_image = tk.PhotoImage(file=self.image_filename) self.canvas_object_id = self.canvas.create_image(250, 100, image=self.photo_image) self.dot = Dot(self, 'images/dot.png',CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.elements.append(self.dot) self.pillar_pair = PillarPair(self, 'images/pillar-pair.png', CANVAS_WIDTH, CANVAS_HEIGHT // 2) self.elements.append(self.pillar_pair) self.dot.score.append(self.scoring) self.new_game = False self.counting_score = Text(self,'P1:0',100,20) self.counting_score = 0
def init_game(self): self.ship = Ship(self, CANVAS_WIDTH // 2, CANVAS_HEIGHT // 2) self.level = 1 self.level_text = Text(self, '', 100, 580) self.update_level_text() self.score_wait = 0 self.score = StatusWithText(self, 100, 20, 'Score: %d', 0) self.bomb_wait = 0 self.bomb_power = StatusWithText(self, 700, 20, 'Power: %d%%', 100) self.enemy_creation_strategies = [(0.2, StarEnemyGenerationStrategy()), (1.0, EdgeEnemyGenerationStrategy())] self.elements.append(self.ship) self.enemies = [] self.bullets = [] self.init_key_handlers()
def init_game(self): self.is_started = False self.is_gameover = False self.create_sprites() self.score = Text(self, 0, 50, 50)
def init_game(self): self.game_started = False self.superdot_started = False self.maze = Maze(self, CANVAS_WIDTH, CANVAS_HEIGHT) self.pacman1_image = tk.PhotoImage(file='images/pacman1.png') self.pacman2_image = tk.PhotoImage(file='images/pacman2.png') self.ghost1_image = tk.PhotoImage(file='images/ghost1.png') self.ghost2_image = tk.PhotoImage(file='images/ghost2.png') self.ghost3_image = tk.PhotoImage(file='images/ghost3.png') self.ghost4_image = tk.PhotoImage(file='images/ghost4.png') self.pacman1 = Pacman(self, self.maze, 1, 1, self.pacman1_image) self.pacman2 = Pacman(self, self.maze, self.maze.get_height() - 2, self.maze.get_width() - 2, self.pacman2_image) self.ghost1 = Ghost(self, self.maze, (self.maze.get_height() - 2) // 2, (self.maze.get_width() - 2) // 2, self.ghost1_image) self.ghost2 = Ghost(self, self.maze, (self.maze.get_height() - 2) // 2, self.maze.get_width() - 10, self.ghost2_image) self.ghost3 = Ghost(self, self.maze, (self.maze.get_height() - 2) // 2 + 1, (self.maze.get_width() - 2) // 2, self.ghost3_image) self.ghost4 = Ghost(self, self.maze, (self.maze.get_height() - 2) // 2 + 1, self.maze.get_width() - 10, self.ghost4_image) self.pacman1_score_text = Text(self, 'P1: 0', 100, 20) self.pacman2_score_text = Text(self, 'P2: 0', 600, 20) self.elements.append(self.pacman1) self.elements.append(self.pacman2) self.elements.append(self.ghost1) self.elements.append(self.ghost2) self.elements.append(self.ghost3) self.elements.append(self.ghost4) self.pacman1_score = 0 self.pacman2_score = 0 self.pacman1.dot_eaten_observers.append(self.dot_eaten_by_pacman1) self.pacman2.dot_eaten_observers.append(self.dot_eaten_by_pacman2) self.command_map = { 'W': self.get_pacman_next_direction_function(self.pacman1, DIR_UP), 'A': self.get_pacman_next_direction_function(self.pacman1, DIR_LEFT), 'S': self.get_pacman_next_direction_function(self.pacman1, DIR_DOWN), 'D': self.get_pacman_next_direction_function(self.pacman1, DIR_RIGHT), 'I': self.get_pacman_next_direction_function(self.pacman2, DIR_UP), 'J': self.get_pacman_next_direction_function(self.pacman2, DIR_LEFT), 'K': self.get_pacman_next_direction_function(self.pacman2, DIR_DOWN), 'L': self.get_pacman_next_direction_function(self.pacman2, DIR_RIGHT), }