• pygame --- 可怜的小乌龟


    来于----@小甲鱼工作室

    import pygame
    import sys
    from pygame.locals import *
    #初始化
    pygame.init()
    
    size = width,height=600,400 #设置背景的大小
    speed = [-2,1]      #设置图片移动的速度
    bg=(255,255,255)
    fullscreen = False  #初始化全屏为False
    screen = pygame.display.set_mode(size,RESIZABLE)    #屏幕大小为最初设置的大小,并且屏幕的大小可以调整
    
    pygame.display.set_caption("Hello")                 #屏幕的名称
    
    turtle = pygame.image.load("1.jpg")                 #本地导入的图片名称
    
    position = turtle.get_rect()                        #图片的位置
    l_head = turtle
    r_head = pygame.transform.flip(turtle,True,False)   #图片可以水平翻转不可垂直翻转
    while True:
        for event in pygame.event.get():                #退出程序
            if event.type == pygame.QUIT:
                sys.exit()
    
            if event.type == KEYDOWN:                   #键盘输入对现实的屏幕和里面的图片进行操作
                if event.key == K_LEFT:                 #图片的左右上下移动   我用的是上下左右,是米字形并且左右移动转换方向
                    turtle = l_head
                    speed = [-1,0]
                    speed = [-2,-1]
                if event.key == K_RIGHT:
                    turtle = r_head
                    speed = [1,0]
                    speed = [2,1]
                if event.key == K_UP:
                    #speed = [0,-1]
                    speed = [2,-1]
                if event.key == K_DOWN:
                    #speed = [0,1]
                    speed = [-2,1]
                if event.key == K_F11:                  #F11为设置屏幕全屏模式
                    fullscreen = not fullscreen
                    if fullscreen:
                        screen = pygame.display.set_mode((1024,768),FULLSCREEN|HWSURFACE)
                        width,height = 1024,768
                    else:
                        screen = pygame.display.set_mode(size)
    
            if event.type == VIDEORESIZE:               #对屏幕进行大小的更改,并且输出当前调整的屏幕的大小,并且更新当前的screen的大小
                size = event.size
                width,height = size
                print(size)
                screen = pygame.display.set_mode(size,RESIZABLE)
                        
        if position.bottom > height:                    #每当屏幕大小改变时对乌龟的位置进行修改,防止当屏幕缩小时,覆盖乌龟,乌龟不能动的时候
            position.bottom = height
        if position.right > 
            position.right = width
        if position.top < 0:
            position.top = 0
        if position.left < 0:
            position.left = 0
        position = position.move(speed)
        if position.left < 0 or position.right >  #防止乌龟跑出屏幕
    
            turtle = pygame.transform.flip(turtle,True,False)
            speed[0] = -speed[0]
        if position.top < 0 or position.bottom > height:
    
            speed[1] = -speed[1]
        screen.fill(bg)                                 #设置当前的屏幕为初始的默认的bg的颜色  在内存中进行,当更新完毕之后通过更新显示
        screen.blit(turtle,position)                    #将移动的Turtle镶嵌到屏幕中   在内存中进行,当更新完毕之后通过更新显示
        pygame.display.flip()                           #屏幕进行更新
        pygame.time.delay(10)                           #时延为10毫秒
       # clock.tick(200)

         

  • 相关阅读:
    无法嵌入互操作类型“ADOX.CatalogClass”。请改用适用的接口。
    编码:隐匿在计算机软硬件背后的语言(3)--二进制加法器
    编码:隐匿在计算机软硬件背后的语言(2)--二进制
    C#中Mutex的用法
    C#中创建二维数组,使用[][]和[,]的区别
    git同时存在两个账号(在同一台电脑上)——三步完成(已修正)
    C++之标准库vector
    C++之标准库map
    sublime和vscode 格式化Json ——两步走
    二十八、linux下权限管理chmod
  • 原文地址:https://www.cnblogs.com/chenyang920/p/4915409.html
Copyright © 2020-2023  润新知