コード例 #1
0
ファイル: stage.py プロジェクト: giginet/FormationPuzzle
    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
コード例 #2
0
ファイル: gauge.py プロジェクト: giginet/FormationPuzzle
 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
コード例 #3
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)
コード例 #4
0
ファイル: panel.py プロジェクト: giginet/MachiMatch
 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)
コード例 #5
0
ファイル: panel.py プロジェクト: giginet/MachiMatch
 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)
コード例 #6
0
ファイル: main.py プロジェクト: giginet/FormationPuzzle
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
コード例 #7
0
ファイル: number.py プロジェクト: giginet/FormationPuzzle
 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)
コード例 #8
0
ファイル: __init__.py プロジェクト: giginet/FormationPuzzle
 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
コード例 #9
0
ファイル: timer.py プロジェクト: giginet/FormationPuzzle
 def draw(self, surface=Game.get_screen()):
     return surface.blit(self.image, self.image.get_rect().move(self.x, self.y))
コード例 #10
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)
コード例 #11
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])
コード例 #12
0
 def draw(self, surface=Game.get_screen()):
     super(Player, self).draw(surface)
     self.city.draw()
コード例 #13
0
ファイル: player.py プロジェクト: maraigue/MachiMatch
 def draw(self, surface=Game.get_screen()):
     super(Player, self).draw(surface)
     self.city.draw()
コード例 #14
0
ファイル: abstractscene.py プロジェクト: giginet/MachiMatch
 def ready(self, *args, **kwargs):
     Game.get_screen().fill(self.BACKGROUND)
コード例 #15
0
ファイル: abstractscene.py プロジェクト: giginet/MachiMatch
 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
コード例 #16
0
ファイル: abstractscene.py プロジェクト: giginet/MachiMatch
 def ready(self, *args, **kwargs):
     Game.get_screen().fill(self.BACKGROUND)
コード例 #17
0
 def draw(self, surface=Game.get_screen()):
     update_rect = []
     update_rect += self.sprites.draw(surface)
     return update_rect
コード例 #18
0
ファイル: navigation.py プロジェクト: giginet/MachiMatch
 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]
                               )
コード例 #19
0
ファイル: result.py プロジェクト: giginet/FormationPuzzle
 def draw(self, surface=Game.get_screen()):
     self.background.draw()
     self.navigation.background.draw(self.navigation.image)
     self.sprites.draw(Game.get_screen())
コード例 #20
0
ファイル: immigrant.py プロジェクト: giginet/MachiMatch
 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))
コード例 #21
0
ファイル: building.py プロジェクト: giginet/MachiMatch
 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)
コード例 #22
0
ファイル: abstractscene.py プロジェクト: giginet/MachiMatch
 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
コード例 #23
0
ファイル: ground.py プロジェクト: giginet/MachiMatch
 def draw(self, surface=Game.get_screen()): pass
 def update(self): pass