JavaWeb jetbrains search cakephp devise gdb Echojs jquery选择子元素 math保留两位小数 完全去vm去虚拟化工具 idea批量替换快捷键 js基本数据类型有哪些 mysql教程 python的安装 random函数用法 python基础代码 java中的抽象类 javasocket通信 java字符串查找 javapattern java网课 javalist转数组 php整站源码 球中的小鬼 不寻常的指南针 labview宝典 在线手册 firework下载 王者荣耀自动刷冒险 存储过程写法 pr书写效果 lrc软件 cad乘号 平原门下客三千 mac修改器 追评可以删除吗 js绑定事件的方法 服务器备份软件 数据库密码忘了怎么办 5g网络技术
当前位置: 首页 > 学习教程  > python

Python游戏开发入门2 壁球小游戏与图像的基本使用

2021/2/8 15:55:47 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

目录 小球碰壁运动 控制小球的运行的节奏 壁球小游戏(操控型)与键盘的基本使用 小球碰壁运动 import pygame, syspygame.init()size width, height 600, 400 speed [1, 1] BLACK 0, 0, 0 screen pygame.display.set_mode((600, 400)) pygame.display.set_caption("…

目录

小球碰壁运动

控制小球的运行的节奏

壁球小游戏(操控型)与键盘的基本使用


小球碰壁运动

import pygame, sys

pygame.init()

size = width, height = 600, 400
speed = [1, 1]
BLACK = 0, 0, 0
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Pygame for Game")
ball = pygame.image.load("PYG02-ball.gif")
ballRect = ball.get_rect()

while True:
    for event in pygame.event.get():

        if event.type == pygame.QUIT:
            sys.exit()

    ballRect = ballRect.move(speed[0], speed[1])
    if ballRect.left < 0 or ballRect.right > width:
        speed[0] = -speed[0]
    if ballRect.top < 0 or ballRect.bottom > height:
        speed[1] = -speed[1]

    screen.fill(BLACK)
    screen.blit(ball, ballRect)
    pygame.display.update()



    pygame.display.update()

pygame.image.load(filename)
将filename路径下的图像载入游戏,支持JPG、
PNG、GIF(非动画)等13种常用图片格式

ballrect.move(x,y)
矩形移动一个偏移量(x,y),即在横轴方向移
动x像素,纵轴方向移动y像素,xy为整数

screen.fill(color)
显示窗口背景填充为color颜色,采用RGB色
彩体系。由于壁球不断运动,运动后原有位置
将默认填充白色,因此需要不断刷新背景色

控制小球的运行的节奏

import pygame, sys
import math

pygame.init()

size = width, height = 600, 400
speed = [2, 2]
BLACK = 0, 0, 0
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Pygame for Game")
ball = pygame.image.load("PYG02-ball.gif")
ballRect = ball.get_rect()

fps = 100
fclock = pygame.time.Clock()

while True:
    for event in pygame.event.get():

        if event.type == pygame.QUIT:
            sys.exit()

    ballRect = ballRect.move(speed[0], speed[1])
    if ballRect.left < 0 or ballRect.right > width:
        speed[0] = -speed[0]*abs(math.cos(ballRect.left))
    if ballRect.top < 0 or ballRect.bottom > height:
        speed[1] = -speed[1]

    screen.fill(BLACK)
    screen.blit(ball, ballRect)
    pygame.display.update()
    fclock.tick(fps)

壁球小游戏(操控型)与键盘的基本使用

 

import pygame, sys
import math

pygame.init()

size = width, height = 600, 400
speed = [2, 2]
BLACK = 0, 0, 0
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Pygame for Game")
ball = pygame.image.load("PYG02-ball.gif")
ballRect = ball.get_rect()

fps = 100
fclock = pygame.time.Clock()

while True:
    for event in pygame.event.get():

        if event.type == pygame.QUIT:
            sys.exit()

        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT: # 如果减为零就不用减了
                speed[0] == speed[0] if speed[0] == 0 else (abs(speed[0]) - 1)*int(speed[0]/abs(speed[0]))
            if event.key == pygame.K_RIGHT:
                speed[0] = speed[0] + 1 if speed[0] > 0 else speed[0] -1
            if event.key == pygame.K_UP:
                speed[1] = speed[1] + 1 if speed[1] > 0 else speed[1] -1
            if event.key == pygame.K_DOWN:# 如果减为零就不用减了
                speed[1] = speed[1] if speed[1] == 0 else (abs(speed[1]) - 1)*int(speed[1]/abs(speed[1]))


    ballRect = ballRect.move(speed[0], speed[1])
    if ballRect.left < 0 or ballRect.right > width:
        speed[0] = -speed[0]*abs(math.cos(ballRect.left))
    if ballRect.top < 0 or ballRect.bottom > height:
        speed[1] = -speed[1]

    screen.fill(BLACK)
    screen.blit(ball, ballRect)
    pygame.display.update()
    fclock.tick(fps)




 

 

 

 

 

 

 

 

 


本文链接: http://www.dtmao.cc/news_show_2000374.shtml

附件下载

上一篇:Vue学习--Day3

下一篇:GUI从python2到python3

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?