闪电侠接金币设计框架_pygame滚动背景类

闪电侠接金币封面设计


"""Python创意编程之闪电侠接金币,横版过关游戏,闪电侠披星戴月,快速奔跑,几近光速,不过来了个逆闪。
  这是由电脑控制的AI角色。它和闪电侠抢夺金币!一边玩游戏一边记单词的一个横版过关游戏,声效震撼,气场宏大。
   这里是设计框架! 实现了向后滚动的背景,其它class请自行编写,需要订制python创意程序请联系本人.
"""

import pygame
from pygame.locals import *

class Background:
    """不断向后移动的滚动背景"""
    def __init__(self,image,screen):
        """初始化函数"""
        self.screen = screen
        self.w = screen.get_width()     # 记录屏幕宽度
        self.h = screen.get_height()    # 记录屏幕高度
        self.image = image              # image是一个surface
        self.image2 = image
        self.rect = self.image.get_rect()
        self.rect2 = self.image2.get_rect()
        self.rect2.left = self.w        # 两个surface相隔一个屏幕宽度
        self.dx = -50
        
    def update(self):
        """更新两个矩形的坐标"""
        self.rect.move_ip(self.dx,0)
        self.rect2.move_ip(self.dx,0)
        if self.rect.right<=0:self.rect.left = self.w   # 到了最左边,瞬移到最右边
        if self.rect2.right<=0:self.rect2.left = self.w # 到了最左边,瞬移到最右边

    def draw(self):
        """重画"""
        self.screen.blit(self.image,self.rect)
        self.screen.blit(self.image2,self.rect2)      
        
class Coin(pygame.sprite.Sprite):
    """金币类,它们在同一个组中,生成后会不断地切换造型"""
    def __init__(self,images,mygroup):
        pass # 实现无障碍

class FlashMan(pygame.sprite.Sprite):
    """闪电侠类,生成后可由鼠标或键盘控制"""
    def __init__(self,images,mygroup):
        pass # 实现无障碍
        
class AIMan(pygame.sprite.Sprite):
    """AI逆闪电侠类,由电脑自动控制的人工智能角色"""
    def __init__(self,images,mygroup):
        pass # 实现无障碍
    
if __name__ == "__main__":

    width,height = 960,720
    screen = pygame.display.set_mode((width,height))
    pygame.display.set_caption("闪电侠接金币设计框架 www.lixingqiu.com")

    bgs = pygame.image.load("space.png")
    background = Background(bgs,screen)

    clock = pygame.time.Clock()
    running = True
    while running:
        for event in pygame.event.get():
            if event.type == QUIT:running = False
            
        background.update()
        
        background.draw()
        pygame.display.update()

    pygame.quit()        
本站所有作品,教程等皆为原创,盗版必究。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。扫码付款后的朋友可以加QQ: 406273900,提供技术支持及发送作品图片与配音素材。亦可直接向微信号scratch8付款购买。
李兴球的博客_Python创意编程技术前沿 » 闪电侠接金币设计框架_pygame滚动背景类

学本领,探索更大的世界!

李兴球博客 风火轮编程主页
error: Content is protected !!