Exemplo n.º 1
0
 def update(self):
     # Joypadによるカーソル操作
     # 各Joypadについて動きをチェックする
     for joypad_id in range(len(self.joypads)):
         # 直近のキー操作から
         xaxis = self.joypads[joypad_id].get_axis(0)
         yaxis = self.joypads[joypad_id].get_axis(1)
         time_now = time.time()
         if xaxis > 0.9:
             if (K_RIGHT in self.last_press_key[joypad_id]) and (time_now - self.last_press_key[joypad_id][K_RIGHT] < self.KEY_REPEAT_TIME): continue
             self.last_press_key[joypad_id][K_RIGHT] = time_now
         elif xaxis < -0.9:
             if (K_LEFT in self.last_press_key[joypad_id]) and (time_now - self.last_press_key[joypad_id][K_LEFT] < self.KEY_REPEAT_TIME): continue
             self.last_press_key[joypad_id][K_LEFT] = time_now
         elif yaxis > 0.9:
             if (K_DOWN in self.last_press_key[joypad_id]) and (time_now - self.last_press_key[joypad_id][K_DOWN] < self.KEY_REPEAT_TIME): continue
             self.last_press_key[joypad_id][K_DOWN] = time_now
         elif yaxis < -0.9:
             if (K_UP in self.last_press_key[joypad_id]) and (time_now - self.last_press_key[joypad_id][K_UP] < self.KEY_REPEAT_TIME): continue
             self.last_press_key[joypad_id][K_UP] = time_now
         else:
             pass
     
     # キーボードによるカーソル操作
     if Key.is_press(K_RETURN):
         # 設定を反映して戻る
         Game.get_scene_manager().change_scene('mainmenu')
     elif Key.is_press(K_BACKSPACE):
         # 設定を破棄して戻る
         Game.get_scene_manager().change_scene('mainmenu')
Exemplo n.º 2
0
 def update(self):
     self.decide_timer.tick()
     if self.decide_timer.is_over():
         Game.get_scene_manager().change_scene('game',
                                               players=self.player_number)
         self.bgm.fadeout(100)
     if self.decide_timer.is_active(): return
     self.bgm.play()
     for id, joypad in enumerate(self.joypads):
         xaxis = joypad.get_axis(0)
         yaxis = joypad.get_axis(1)
         length = sum(map(lambda x: x * x, list(self.cursor_threshold[id])))
         if abs(xaxis) > 0.5:
             self.cursor_threshold[id][0] += xaxis
             if not self.cursor_move[id] or abs(length) > 16:
                 self.cursor_sound.play()
                 self.set_cursor_pos(1 if xaxis > 0 else -1, 0)
         if abs(yaxis) > 0.5:
             self.cursor_threshold[id][1] += yaxis
             if not self.cursor_move[id] or abs(length) > 16:
                 self.cursor_sound.play()
                 self.set_cursor_pos(0, 1 if yaxis > 0 else -1)
         if abs(xaxis) > 0.5 or abs(yaxis) > 0.5:
             self.cursor_move[id] = True
         else:
             self.cursor_move[id] = False
         self.cursor_threshold[id] = [0, 0]
         if joypad.is_press(11):
             self.actions[self.cursor_logical_y][self.cursor_logical_x]()
Exemplo n.º 3
0
 def ready(self):
     self.background = Image(u'../resources/image/main/result/background.png')
     self.gauge1 = Image(u'../resources/image/main/result/gauge1_full.png', x=60, y=160)
     self.gauge2 = Image(u'../resources/image/main/result/gauge2_full.png', x=60, y=160)
     self.retry = Button(u'../resources/image/main/result/retry.png', w=180, h=80, x=140, y=460)
     self.menu = Button(u'../resources/image/main/result/menu.png', w=180, h=80, x=480, y=460)
     self.minute = Number(0, u'../resources/image/main/result/time.png', x=420, y=306, w=60, h=75)
     self.second10 = Number(0, u'../resources/image/main/result/time.png', x=540, y=306, w=60, h=75)
     self.second1 = Number(0, u'../resources/image/main/result/time.png', x=600, y=306, w=60, h=75)
     self.sprites = OrderedUpdates(self.gauge2, self.gauge1, self.minute, self.second10, self.second1, self.retry, self.menu)
     self.retry.on_release = lambda : Game.get_scene_manager().change_scene('game',self.stage.bomb, self.stage.cpu)
     self.menu.on_release = lambda : Game.get_scene_manager().change_scene('title')
     for button in [self.retry, self.menu]:
         button.hover_sound = '../resources/sound/on_cursor.wav'
         button.press_sound = '../resources/sound/selected.wav'
     
     self.gauge1.xscale = float(self.navigation.gauge.proportion[0])/100
     
     m, s = self.navigation.timer.convert_time()
     self.minute.n = m
     if s < 10:
         self.second10.n = 0
         self.second1.n = s
     else:
         self.second10.n = int(str(s)[0])
         self.second1.n = int(str(s)[1])    
     
     if self.stage.count[0] > self.stage.count[1]:
         self.sprites.add(Image(u'../resources/image/main/result/win.png', x=80, y=160))
         self.sprites.add(Image(u'../resources/image/main/result/lose.png', x=480, y=160))
     elif self.stage.count[0] < self.stage.count[1]:
         self.sprites.add(Image(u'../resources/image/main/result/win.png', x=480, y=160))
         self.sprites.add(Image(u'../resources/image/main/result/lose.png', x=80, y=160))
     else:
         self.sprites.add(Image(u'../resources/image/main/result/draw.png', x=280, y=170))
Exemplo n.º 4
0
 def update(self):
     self.decide_timer.tick()
     if self.decide_timer.is_over():
         Game.get_scene_manager().change_scene('game', players=self.player_number)
         self.bgm.fadeout(100)
     if self.decide_timer.is_active(): return
     self.bgm.play()
     for id, joypad in enumerate(self.joypads):
         xaxis = joypad.get_axis(0)
         yaxis = joypad.get_axis(1)
         length = sum(map(lambda x: x*x, list(self.cursor_threshold[id])))
         if abs(xaxis) > 0.5:
             self.cursor_threshold[id][0] += xaxis
             if not self.cursor_move[id] or abs(length) > 16:
                 self.cursor_sound.play()
                 self.set_cursor_pos(1 if xaxis > 0 else - 1, 0)
         if abs(yaxis) > 0.5:
             self.cursor_threshold[id][1] += yaxis
             if not self.cursor_move[id] or abs(length) > 16:
                 self.cursor_sound.play()
                 self.set_cursor_pos(0, 1 if yaxis > 0 else - 1)
         if abs(xaxis) > 0.5 or abs(yaxis) > 0.5:
             self.cursor_move[id] = True
         else:
             self.cursor_move[id] = False
         self.cursor_threshold[id] = [0, 0]
         if joypad.is_press(11):
             self.actions[self.cursor_logical_y][self.cursor_logical_x]()
Exemplo n.º 5
0
 def update(self):
     self.timer.tick()
     self.timer.play()
     if self.timer.is_over() or Mouse.is_press("LEFT") or Key.is_press(K_RETURN):
         Game.get_scene_manager().change_scene("mainmenu")
     elif self.timer.now < 60:
         self.logo.alpha = 255 * self.timer.now / 60
     elif 120 < self.timer.now:
         self.logo.alpha = 255 * (180 - self.timer.now) / 60
Exemplo n.º 6
0
 def update(self):
     self.timer.tick()
     self.timer.play()
     if self.timer.is_over() or Mouse.is_press('LEFT'):
         Game.get_scene_manager().change_scene('title')
     elif self.timer.now < 60:
         self.logo.alpha = 255*self.timer.now/60
     elif 120 < self.timer.now:
         self.logo.alpha = 255*(180-self.timer.now)/60
Exemplo n.º 7
0
    def draw(self):
        update_rect = []
#        for x in xrange(settings.STAGE_WIDTH):
#            for y in xrange(settings.STAGE_HEIGHT):
#                self._map[x][y].draw()
        update_rect += self.panels.draw(Game.get_screen())
        update_rect += self.unitmng.draw()
        update_rect += self.players.draw(Game.get_screen())
        update_rect += Effect.effects.draw(Game.get_screen())
        return update_rect
Exemplo n.º 8
0
 def update(self):
     self.timer.tick()
     self.timer.play()
     skip = self.mouse.is_press(Mouse.LEFT)
     for joypad in self.joypads:
         skip |= joypad.is_press(4)
     if self.timer.is_over() or skip:
         Game.get_scene_manager().change_scene('mainmenu')
     elif self.timer.now < 60:
         self.logo.alpha = 255 * self.timer.now / 60
     elif 120 < self.timer.now:
         self.logo.alpha = 255 * (180 - self.timer.now) / 60
Exemplo n.º 9
0
 def update(self):
     self.timer.tick()
     self.timer.play()
     skip = self.mouse.is_press(Mouse.LEFT)
     for joypad in self.joypads:
         skip |= joypad.is_press(4)
     if self.timer.is_over() or skip:
         Game.get_scene_manager().change_scene('mainmenu')
     elif self.timer.now < 60:
         self.logo.alpha = 255*self.timer.now/60
     elif 120 < self.timer.now:
         self.logo.alpha = 255*(180-self.timer.now)/60
Exemplo n.º 10
0
 def ready(self, *args, **kwargs):
     self.bgm = BGM(u'../resources/bgm/title_intro.wav', -1, u'../resources/bgm/title_loop.wav')
     self.player = Image(u'../resources/image/menu/title/player.png', x=410, y=-0)
     self.logo = Image(u'../resources/image/menu/title/logo.png', x=80, y=-70)
     self.play = Button(u'../resources/image/menu/title/cpu.png', w=270, h=80, x=110, y=370)
     self.vs = Button(u'../resources/image/menu/title/2p.png', w=270, h=80, x=420, y=370)
     self.hard = BombToggle(u'../resources/image/menu/title/hard.png', w=270, h=80, x=110, y=470)
     self.exit = Button(u'../resources/image/menu/title/exit.png', w=270, h=80, x=420, y=470)
     self.exit.on_release = lambda: Game.get_scene_manager().exit()
     self.vs.on_release = lambda: Game.get_scene_manager().change_scene('game', self.hard.bomb, False)
     self.play.on_release = lambda: Game.get_scene_manager().change_scene('game', self.hard.bomb, True)
     for button in [self.play, self.vs, self.hard, self.exit]:
         button.hover_sound = '../resources/sound/on_cursor.wav'
         button.press_sound = '../resources/sound/selected.wav'
     self.sprites.add(Image(u'../resources/image/menu/background.png'),
                      self.logo,self.play,self.vs,self.hard,self.exit, self.player
     )
     self.timer = Timer(60)
     self.timer.play()
Exemplo n.º 11
0
 def draw(self, surface=Game.get_screen()):
     #if not self.is_update: return []
     dirty_rects = [] 
     for sprite, offset in zip(self.images, self.OFFSET):
         rect = sprite.get_rect().move(self.x+offset[0], self.y+offset[1])
         dirty_rects.append(surface.blit(Image(u'../resources/image/main/background.png').image, rect, rect))
     for sprite, offset in zip(self.images, self.OFFSET):
         dest = sprite.get_rect().move(self.x+offset[0], self.y+offset[1])
         dirty_rects.append(surface.blit(sprite, dest))
     return dirty_rects
Exemplo n.º 12
0
 def draw(self, surface=Game.get_screen()):
     if self.n != self.pre_n:
         self.pre_n = self.n
         self._parse()
     dest = self.image.get_rect().move(self.x, self.y)
     if self.align == self.TEXTALIGNRIGHT:
         u"""右揃えに変更する"""
         dest = dest.move(-self.image.get_width(), 0)
     elif self.align == self.TEXTALIGNCENTER:
         u"""中央揃えに変更する"""
         dest = dest.move(-self.image.get_width()/2, 0)
     return surface.blit(self.image, dest=dest)
Exemplo n.º 13
0
 def draw(self, surface=Game.get_screen(), x=None, y=None):
     u"""
         x, y : 渡されたとき、その座標に描画。渡されていないときはself.pointを元に算出
     """
     if not x:
         self.x = settings.ROOT_POSITION[0] - self.point.y*37 + self.point.x*37
     else:
         self.x = x
     if not y:
         self.y = settings.ROOT_POSITION[1] + self.point.x*19 + self.point.y*19
     else:
         self.y = y
     super(Panel, self).draw(surface)
Exemplo n.º 14
0
 def ready(self, *args, **kwargs):
     super(MainMenuScene, self).ready()
     self.bgm = BGM(u'../resources/music/title.wav', -1)
     self.cursor_sound = Sound("../resources/sound/cursor.wav")
     self.decide_sound = Sound('../resources/sound/decide.wav')
     self.decide_timer = Timer(settings.FPS*2.5)
     self.num_joypads = JoyPad.get_num_joypads()
     self.joypads = [] 
     for i in xrange(0, self.num_joypads):
         self.joypads.append(JoyPad(i))
     self.background = Image(os.path.join(self.IMAGE_PATH, "background3.png"), alpha=False)
     self.logo = Image(os.path.join(self.IMAGE_PATH, "logo.png"))
     self.config = Image(os.path.join(self.IMAGE_PATH, "config.png"), alpha=False)
     self.exit = Image(os.path.join(self.IMAGE_PATH, "exit.png"), alpha=False)
     self.cursor = Image(os.path.join(self.IMAGE_PATH, "cursor.png"), alpha=True)
     self.cursor_threshold = [[0, 0], ] * self.num_joypads # ジョイスティックを倒したときに、axisがどれくらい倒れたかの総量
     self.cursor_move = [False] * self.num_joypads
     self.load_player_selection(self.num_joypads)
     self.logo.x = 280; self.logo.y = 20
     self.player2.x = 160; self.player2.y = 400
     self.player3.x = 380; self.player3.y = 400
     self.player4.x = 600; self.player4.y = 400
     self.config.x  = 380; self.config.y  = 460
     self.exit.x    = 600; self.exit.y    = 460
     # カーソル位置を初期化
     self.options = ((self.player2, self.player3, self.player4),
                     (None, self.config, self.exit))
     self.actions = ((lambda:self.start_game(2), # self.player2
                      lambda:self.start_game(3), # self.player3
                      lambda:self.start_game(4),)# self.player4
                    ,
                     (lambda:0, # None
                      lambda:Game.get_scene_manager().change_scene('keysetting'), #self.config
                      lambda:sys.exit()) # self.exit
                    )
     self.cursor_logical_x = 0;
     self.cursor_logical_y = 0;
     self.set_cursor_pos(0, 0)
     self.sprites.add(self.background)
     self.sprites.add(self.logo)
     self.sprites.add(self.player2)
     self.sprites.add(self.player3)
     self.sprites.add(self.player4)
     self.sprites.add(self.config)
     self.sprites.add(self.exit)
     self.sprites.add(self.cursor)
     
     self.last_press_key = [{}]
     for dummy in self.joypads:
         self.last_press_key.append({})
Exemplo n.º 15
0
 def draw(self, surface=Game.get_screen(), x=None, y=None):
     u"""
         x, y : 渡されたとき、その座標に描画。渡されていないときはself.pointを元に算出
     """
     if not x:
         self.x = settings.ROOT_POSITION[
             0] - self.point.y * 37 + self.point.x * 37
     else:
         self.x = x
     if not y:
         self.y = settings.ROOT_POSITION[
             1] + self.point.x * 19 + self.point.y * 19
     else:
         self.y = y
     super(Panel, self).draw(surface)
Exemplo n.º 16
0
 def ready(self, *args, **kwargs):
     super(MainMenuScene, self).ready()
     
     self.joypads = JoyPad().sticks
     
     self.logo = Image(os.path.join(self.IMAGE_PATH, "kawaz.png"), alpha=False)
     self.config = Image(os.path.join(self.IMAGE_PATH, "config.png"), alpha=False)
     self.exit = Image(os.path.join(self.IMAGE_PATH, "exit.png"), alpha=False)
     self.cursor = Image(os.path.join(self.IMAGE_PATH, "cursor.png"), alpha=True)
     self.load_player_selection(len(self.joypads))
     
     self.logo.x = 353; self.logo.y = 260
     self.player2.x = 160; self.player2.y = 400
     self.player3.x = 380; self.player3.y = 400
     self.player4.x = 600; self.player4.y = 400
     self.config.x  = 380; self.config.y  = 460
     self.exit.x    = 600; self.exit.y    = 460
     # カーソル位置を初期化
     self.menu_options = ((self.player2, self.player3, self.player4),
                          (None, self.config, self.exit))
     self.menu_actions = (
         (lambda:self.start_game(2), # self.player2
          lambda:self.start_game(3), # self.player3
          lambda:self.start_game(4),)# self.player4
         ,
         (lambda:0, # None
          lambda:Game.get_scene_manager().change_scene('keysetting'), #self.config
          lambda:sys.exit()) # self.exit
         )
     self.cursor_logical_x = 0;
     self.cursor_logical_y = 0;
     self.set_cursor_pos(0, 0)
     
     self.sprites.add(self.logo)
     self.sprites.add(self.player2)
     self.sprites.add(self.player3)
     self.sprites.add(self.player4)
     self.sprites.add(self.config)
     self.sprites.add(self.exit)
     self.sprites.add(self.cursor)
     
     self.keysupp = KeySuppressor(self.KEY_REPEAT_TIME)
Exemplo n.º 17
0
 def draw(self, surface=Game.get_screen()):
     return surface.blit(self.image, self.image.get_rect().move(self.x, self.y))
Exemplo n.º 18
0
def main():
    
    pygame.init() # pygameの初期化
    
    game = Game()
    game.get_scene_manager().set_scenes({
        'logo':LogoScene(),
        'game':GameScene(),
        'mainmenu':MainMenuScene(),
        'keysetting':KeySettingScene(),
    })
    if settings.DEBUG:        
        game.get_scene_manager().change_scene('game')
    else:
        game.get_scene_manager().change_scene('logo')
    while 1:
        game._clock.tick(settings.FPS)
        scene = game.current_scene()
        if not scene: return
        game.update()
        rects = game.draw()
        pygame.display.update(rects) # 画面を反映
        for event in pygame.event.get(): # イベントチェック
            if event.type == QUIT: return
            if (event.type == KEYDOWN and event.key  == K_ESCAPE): return
Exemplo n.º 19
0
 def draw(self, surface=Game.get_screen()):
     self.x = settings.ROOT_POSITION[
         0] - self.point.y * 37 + self.point.x * 37 - self.OFFSET[0]
     self.y = settings.ROOT_POSITION[
         1] + self.point.x * 19 + self.point.y * 19 - self.OFFSET[1]
     super(Panel, self).draw(surface)
Exemplo n.º 20
0
 def draw(self, surface=Game.get_screen()):
     super(Player, self).draw(surface)
     self.city.draw()
Exemplo n.º 21
0
 def draw(self, surface=Game.get_screen()):
     super(Navigation, self).draw()
     self.population.draw()
     self.owner.next_road.draw(
         x=self.x + self.NEXT_POSITIONS[self.owner.number][0],
         y=self.y + self.NEXT_POSITIONS[self.owner.number][1])
Exemplo n.º 22
0
def main():
    
    pygame.init() # pygameの初期化
    
    game = Game()
    game.get_scene_manager().set_scenes({
        'logo':LogoScene(),
        'game':GameScene(),
        'mainmenu':MainMenuScene(),
        'keysetting':KeySettingScene(),
    })
    if settings.DEBUG:        
        game.get_scene_manager().change_scene('game')
    else:
        game.get_scene_manager().change_scene('logo')
    while 1:
        game._clock.tick(settings.FPS)
        Key.poll()
        scene = game.current_scene()
        if not scene: return
        game.update()
        rects = game.draw()
        pygame.display.update(rects) # 画面を反映
        for event in pygame.event.get(): # イベントチェック
            if event.type == QUIT: return
            if (event.type == KEYDOWN and event.key  == K_ESCAPE): return
Exemplo n.º 23
0
 def draw(self, surface=Game.get_screen()):
     self.x = settings.ROOT_POSITION[0] - self.point.y*37 + self.point.x*37 - self.OFFSET[0]
     self.y = settings.ROOT_POSITION[1] + self.point.x*19 + self.point.y*19 - self.OFFSET[1]
     super(Panel, self).draw(surface)
Exemplo n.º 24
0
def main():

    pygame.init()  # pygameの初期化

    game = Game()
    game.get_scene_manager().set_scenes(
        {"logo": LogoScene(), "game": GameScene(), "mainmenu": MainMenuScene(), "keysetting": KeySettingScene()}
    )
    if settings.DEBUG:
        game.get_scene_manager().change_scene("game")
    else:
        game.get_scene_manager().change_scene("logo")
    while 1:
        game._clock.tick(settings.FPS)
        scene = game.current_scene()
        if not scene:
            return
        game.update()
        rects = game.draw()
        pygame.display.update(rects)  # 画面を反映
        for event in pygame.event.get():  # イベントチェック
            if event.type == QUIT:
                return
            if event.type == KEYDOWN and event.key == K_ESCAPE:
                return
Exemplo n.º 25
0
 def draw(self, surface=Game.get_screen()):
     super(Navigation, self).draw()
     self.population.draw()
     self.owner.next_road.draw(x=self.x+self.NEXT_POSITIONS[self.owner.number][0], 
                               y=self.y+self.NEXT_POSITIONS[self.owner.number][1]
                               )
Exemplo n.º 26
0
 def ready(self, *args, **kwargs):
     Game.get_screen().fill(self.BACKGROUND)
Exemplo n.º 27
0
 def draw(self, surface=Game.get_screen()):
     super(Player, self).draw(surface)
     self.city.draw()
Exemplo n.º 28
0
    def ready(self, *args, **kwargs):
        super(MainMenuScene, self).ready()
        self.bgm = BGM(u'../resources/music/title.wav', -1)
        self.cursor_sound = Sound("../resources/sound/cursor.wav")
        self.decide_sound = Sound('../resources/sound/decide.wav')
        self.decide_timer = Timer(settings.FPS * 2.5)
        self.num_joypads = JoyPad.get_num_joypads()
        self.joypads = []
        for i in xrange(0, self.num_joypads):
            self.joypads.append(JoyPad(i))
        self.background = Image(os.path.join(self.IMAGE_PATH,
                                             "background3.png"),
                                alpha=False)
        self.logo = Image(os.path.join(self.IMAGE_PATH, "logo.png"))
        self.config = Image(os.path.join(self.IMAGE_PATH, "config.png"),
                            alpha=False)
        self.exit = Image(os.path.join(self.IMAGE_PATH, "exit.png"),
                          alpha=False)
        self.cursor = Image(os.path.join(self.IMAGE_PATH, "cursor.png"),
                            alpha=True)
        self.cursor_threshold = [
            [0, 0],
        ] * self.num_joypads  # ジョイスティックを倒したときに、axisがどれくらい倒れたかの総量
        self.cursor_move = [False] * self.num_joypads
        self.load_player_selection(self.num_joypads)
        self.logo.x = 280
        self.logo.y = 20
        self.player2.x = 160
        self.player2.y = 400
        self.player3.x = 380
        self.player3.y = 400
        self.player4.x = 600
        self.player4.y = 400
        self.config.x = 380
        self.config.y = 460
        self.exit.x = 600
        self.exit.y = 460
        # カーソル位置を初期化
        self.options = ((self.player2, self.player3, self.player4),
                        (None, self.config, self.exit))
        self.actions = (
            (
                lambda: self.start_game(2),  # self.player2
                lambda: self.start_game(3),  # self.player3
                lambda: self.start_game(4),
            )  # self.player4
            ,
            (
                lambda: 0,  # None
                lambda: Game.get_scene_manager().change_scene('keysetting'
                                                              ),  #self.config
                lambda: sys.exit())  # self.exit
        )
        self.cursor_logical_x = 0
        self.cursor_logical_y = 0
        self.set_cursor_pos(0, 0)
        self.sprites.add(self.background)
        self.sprites.add(self.logo)
        self.sprites.add(self.player2)
        self.sprites.add(self.player3)
        self.sprites.add(self.player4)
        self.sprites.add(self.config)
        self.sprites.add(self.exit)
        self.sprites.add(self.cursor)

        self.last_press_key = [{}]
        for dummy in self.joypads:
            self.last_press_key.append({})
Exemplo n.º 29
0
 def draw(self):
     if not self.timer.is_update and not self.gauge.is_update: return []
     self.timer.draw(self.image)
     self.gauge.draw(self.image)
     rects = [Game.get_screen().blit(self.image, self.image.get_rect().move(self.X, self.Y))]
     return rects
Exemplo n.º 30
0
 def draw(self, surface=Game.get_screen()):
     self.background.draw()
     self.navigation.background.draw(self.navigation.image)
     self.sprites.draw(Game.get_screen())
Exemplo n.º 31
0
 def draw(self, surface=Game.get_screen()):
     if self.n != self.pre_n:
         self.pre_n = self.n
         self._parse()
     dest = self.image.get_rect().move(self.x, self.y)
     return surface.blit(self.image, dest=dest)
Exemplo n.º 32
0
 def draw(self, surface=Game.get_screen()):
     update_rect = []
     update_rect += self.sprites.draw(surface)
     return update_rect
Exemplo n.º 33
0
def main():
    pygame.mixer.pre_init(44100, -16, 2, 1024*3)
    pygame.init() # pygameの初期化
    
    game = Game()
    game.get_scene_manager().set_scenes({'logo':LogoScene(),'game':GameScene(), 'title':TitleScene()})
    if settings.DEBUG:
        game.get_scene_manager().change_scene('game',False,True)
    else:
        game.get_scene_manager().change_scene('logo')
    while 1:
        game._clock.tick(settings.FPS)
        Key.poll()
        scene = game.current_scene()
        if not scene: return
        scene.sprites.clear(game.get_screen(), scene.BACKGROUND_SURFACE)
        game.update()
        rects = game.draw()
        pygame.display.update(rects) # 画面を反映
        for event in pygame.event.get(): # イベントチェック
            if event.type == QUIT: return
            if (event.type == KEYDOWN and event.key  == K_ESCAPE): return
Exemplo n.º 34
0
 def ready(self, *args, **kwargs):
     Game.get_screen().fill(self.BACKGROUND)
Exemplo n.º 35
0
 def draw(self, surface=Game.get_screen()):
     x = self.x - 7
     y = self.y - 25
     #pygame.draw.circle(surface, (255, 0, 0), (self.x, self.y), 3)
     # ToDo 画像を差し替えたら書き直すからとりあえずハードコーディング
     return super(Panel, self).draw(surface, dest=pygame.rect.Rect(x, y, settings.PANELSIZE, settings.PANELSIZE))
Exemplo n.º 36
0
 def draw(self, surface=Game.get_screen()):
     pygame.draw.rect(surface, self.BACKGROUND, (0, 0, settings.SCREENWIDTH, settings.SCREENHEIGHT))
     update_rect = []
     update_rect += self.sprites.draw(surface)
     return update_rect
Exemplo n.º 37
0
 def draw(self, surface=Game.get_screen()):
     pygame.draw.rect(surface, self.BACKGROUND,
                      (0, 0, settings.SCREENWIDTH, settings.SCREENHEIGHT))
     update_rect = []
     update_rect += self.sprites.draw(surface)
     return update_rect
Exemplo n.º 38
0
 def draw(self, surface=Game.get_screen()): pass
 def update(self): pass