def __init__(self):
     self.time = 0
     self.plimg = []
     self.plimg.append(
         cache.cache_set_alpha(
             cache.cache_rotate(globe.mgame.rsmanager.anime["player"][5],
                                90), 128))
     self.plimg.append(
         cache.cache_set_alpha(
             cache.cache_rotate(globe.mgame.rsmanager.anime["player"][6],
                                90), 128))
     self.plimg.append(
         cache.cache_set_alpha(cache.cache_flip(self.plimg[1]), 128))
     self.player_bullet = []
     self.plrc = self.plimg[0].get_rect()
     self.plspeed = 10
     self.enemy_bullet = set()
     global player_point
     player_point = globe.scgame.player.point
Exemplo n.º 2
0
    def draw(self, screen):
        for i in self.plbullet:
            screen.blit(self.plimg[i[1]], i[0])

        for i in self.enbullet:
            if i.orbit.theta != 0:
                tpimg = cache.cache_rotate(i.bltype.image, i.orbit.theta)
                tprc = tpimg.get_rect()
            else:
                tpimg = i.bltype.image
                tprc = tpimg.get_rect()
            tprc.center = i.orbit.point
            screen.blit(tpimg, tprc)
    def draw(self, screen):
        """子弹绘制函数, 维护全部的子弹绘制"""
        for i in self.player_bullet:
            screen.blit(self.plimg[i[1]], i[0])

        for i in self.enemy_bullet:
            if i.orbit.theta != 0:
                tpimg = cache.cache_rotate(i.bullet_type.image, i.orbit.theta)
                tprc = tpimg.get_rect()
            else:
                tpimg = i.bullet_type.image
                tprc = tpimg.get_rect()
            tprc.center = i.orbit.point
            screen.blit(tpimg, tprc)
Exemplo n.º 4
0
    def draw(self, screen):

        self.rect.centerx = int(self.point[0])
        self.rect.centery = int(self.point[1])

        if self.status != cstatus["normal"] and self.status != cstatus["hit"]:
            tmp = cache.cache_set_alpha(self.anime[self.aindex],
                                        (self.frame % 15) * 60 / 15 + 100,
                                        True)
            tmp = cache.cache_set_mask(tmp, (100, 0, 100, 40), True)
            screen.blit(tmp, self.rect)
        else:
            screen.blit(self.anime[self.aindex], self.rect)

        tmp = cache.cache_rotate(canime["panding"], self.frame, True)
        tprc = tmp.get_rect()
        if self.keys[pygame.K_LSHIFT]:
            if self.status != cstatus["crash"]:
                tprc.center = self.rect.center
                screen.blit(tmp, tprc)
        if self.status == cstatus["crash"]:
            tprc.center = self.tmppd
            screen.blit(tmp, tprc)
 def update(self):
     global player
     self.image = cache.cache_rotate(self.tmimg, globe.scgame.time * 2,
                                     True)
     for i in range(4):
         self.rect[i].size = self.image.get_size()
     power = player.power
     if player.keys[pygame.K_LSHIFT]:
         dis = 18
     else:
         dis = 28
     if power < 100:
         pass
     elif power < 200:
         self.rect[0].center = player.point
         self.rect[0].top -= dis
     elif power < 300:
         self.rect[0].center = player.point
         self.rect[0].left -= dis
         self.rect[1].center = player.point
         self.rect[1].left += dis
     elif power < 400:
         self.rect[0].center = player.point
         self.rect[0].left -= dis
         self.rect[1].center = player.point
         self.rect[1].left += dis
         self.rect[2].center = player.point
         self.rect[2].top -= dis
     else:
         self.rect[0].center = player.point
         self.rect[0].left -= dis
         self.rect[1].center = player.point
         self.rect[1].left += dis
         self.rect[2].center = self.rect[0].center
         self.rect[2].left -= (dis - 10)
         self.rect[3].center = self.rect[1].center
         self.rect[3].left += (dis - 10)
 def update_enemy(self, enemy):
     enemy.image = cache.cache_rotate(enemy.entype.anime, enemy.frame * 18)
     enemy.rect = enemy.image.get_rect()
     enemy.rect.center = self.point