Python小游戏实现实例之接苹果

 更新时间:2022年03月23日 10:11:00   作者:五包辣条!  
其实利用Python编写的小游戏很简单,下面这篇文章主要给大家介绍了关于Python小游戏实现实例之接苹果的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

直接上效果

游戏素材

1.背景图

2.篮子

3.苹果

代码

"""
   接苹果小游戏,本程序实现手动控制帧率
   Sprite类是继承自Turtle的一个类,所以归于海龟画图。
"""

 1.新建屏幕

from sprites import *
 
screen = Screen()                        # 新建屏幕
screen.tracer(0,0)                       # 追踪命令                  
screen.setup(800,500)

 2.导入图片

screen.bgpic('greenforest.png')
 
basket = Sprite('basket.png')

3.属性设置

counter = 0
fps = 60
start_time = time.perf_counter()

动态效果

1.产生一个苹果

while 1:
    if random.randint(1,10)==1:          # 产生一个苹果
        x = random.randint(-380,380)
        y = 400
        a = Sprite('apple.png',pos=(x,y),tag='apple')        
        a.scale(max(0.5,random.random()))

2.移动逻辑

for apple in screen.turtles():
    if apple.get_tag()!= 'apple':continue      
    apple.move(0,-5)                   # 在水平和垂直方向移动
    if apple.collide(basket):
        apple.remove()                 # 移除苹果
        counter += 1                   # 接到苹果了进行统计
        continue
    if apple.ycor() < -250:apple.remove()

3.控制频率

mx,my = mousepos()                    # 获取鼠标指针的x,y坐标
basket.goto(mx,-180)    
screen.update()
screen.title('大海老师接苹果游戏,已接到:' + str(counter) + '个苹果')
 
# 以下代码实现手动控制帧率为60
end_time = time.perf_counter()
if end_time - start_time < 1/fps:
    time.sleep(1/fps - (end_time - start_time))
start_time = time.perf_counter()

总结

到此这篇关于Python小游戏之接苹果的文章就介绍到这了,更多相关Python接苹果小游戏内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于Python中模块的简介、定义与使用

    关于Python中模块的简介、定义与使用

    这篇文章主要介绍了关于Python中模块的简介、定义与使用,模块是Python的重要组成部分,需要的朋友可以参考下
    2023-04-04
  • NumPy数组复制与视图详解

    NumPy数组复制与视图详解

    NumPy 数组的复制和视图是两种不同的方式来创建新数组,它们之间存在着重要的区别,本文将给大家详细介绍一下NumPy数组复制与视图,并通过代码示例讲解的非常详细,需要的朋友可以参考下
    2024-05-05
  • python 简单搭建阻塞式单进程,多进程,多线程服务的实例

    python 简单搭建阻塞式单进程,多进程,多线程服务的实例

    下面小编就为大家带来一篇python 简单搭建阻塞式单进程,多进程,多线程服务的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • python的paramiko模块实现远程控制和传输示例

    python的paramiko模块实现远程控制和传输示例

    本篇文章主要介绍了python的paramiko模块实现远程控制和传输示例,非常具有实用价值,需要的朋友可以参考下
    2017-10-10
  • 利用Python+eval函数构建数学表达式计算器

    利用Python+eval函数构建数学表达式计算器

    Python 中的函数eval()​是一个非常有用的工具。在本文中,云朵君将和大家一起学习 eval() 如何工作,以及如何在 Python 程序中安全有效地使用它,需要的可以参考一下
    2022-09-09
  • python 合并多个excel中同名的sheet

    python 合并多个excel中同名的sheet

    这篇文章主要介绍了python 如何合并多个excel中同名的sheet,帮助大家更好的利用python处理excel表格,感兴趣的朋友可以了解下
    2021-01-01
  • python每天定时运行某程序代码

    python每天定时运行某程序代码

    这篇文章主要介绍了python每天定时运行某程序代码,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Python日志模块logging简介

    Python日志模块logging简介

    这篇文章主要介绍了Python日志模块logging简介,本文讲解了Logger、Handler、Formatter、日志配置管理、通过文件配置管理日志等内容,需要的朋友可以参考下
    2015-04-04
  • 利用matlab与Excel交互之单元格操作

    利用matlab与Excel交互之单元格操作

    Excel是广泛使用的“电子表格”,Matlab则具有强大的数值计算、统计分析以及图形可视化能力,这篇文章主要给大家介绍了关于利用matlab与Excel交互之单元格操作的相关资料,需要的朋友可以参考下
    2021-08-08
  • 解决torch.autograd.backward中的参数问题

    解决torch.autograd.backward中的参数问题

    今天小编就为大家分享一篇解决torch.autograd.backward中的参数问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01

最新评论