腾讯云AI代码助手编程挑战赛——贪吃蛇小游戏
作品介绍
贪吃蛇小游戏需要控制蛇的移动方向,使其吃掉地图上随机出现的食物,每吃掉一个食物,蛇的身体就会增长一格,是一款老少皆宜的小游戏,我们可以用腾讯ai助手生成全部代码,简单方便快捷。
技术架构
python语言的tk库来完成的GUI页面设计,通过代码来完成具体的业务逻辑。
实现过程
我们通过对腾讯ai助手进行提问,并不断改进,最后得到完整代码。
项目源码
import pygame
import time
import random# 初始化 Pygame
pygame.init()# 设置窗口大小
width = 600
height = 400
dis = pygame.display.set_mode((width, height))# 设置游戏标题
pygame.display.set_caption('美化版贪吃蛇游戏')# 定义颜色
white = (255, 255, 255)
yellow = (255, 255, 102)
black = (0, 0, 0)
red = (213, 50, 80)
green = (0, 255, 0)
blue = (50, 153, 213)# 加载背景图片
background = pygame.image.load('background.jpg') # 确保你有背景图片# 设置时钟以控制游戏速度
clock = pygame.time.Clock()snake_block = 20 # 蛇的尺寸
snake_speed = 10 # 降低蛇的速度# 设置字体样式
font_style = pygame.font.SysFont("bahnschrift", 25)
score_font = pygame.font.SysFont("comicsansms", 35)def our_snake(snake_block, snake_list):"""绘制蛇"""for x in snake_list:pygame.draw.rect(dis, black, [x[0], x[1], snake_block, snake_block])def message(msg, color):"""显示消息"""mesg = font_style.render(msg, True, color)dis.blit(mesg, [width / 6, height / 3])def gameLoop():"""游戏主循环"""game_over = Falsegame_close = False# 初始位置x1 = width / 2y1 = height / 2# 变化量x1_change = 0y1_change = 0snake_List = []Length_of_snake = 1# 食物位置foodx = round(random.randrange(0, width - snake_block) / 20.0) * 20.0foody = round(random.randrange(0, height - snake_block) / 20.0) * 20.0while not game_over:while game_close == True:dis.blit(background, (0, 0)) # 显示背景图片message("游戏结束! 按 Q 退出或按 C 重新开始", red)pygame.display.update()for event in pygame.event.get():if event.type == pygame.KEYDOWN:if event.key == pygame.K_q:game_over = Truegame_close = Falseif event.key == pygame.K_c:gameLoop()for event in pygame.event.get():if event.type == pygame.QUIT:game_over = Trueif event.type == pygame.KEYDOWN:if event.key == pygame.K_LEFT:x1_change = -snake_blocky1_change = 0elif event.key == pygame.K_RIGHT:x1_change = snake_blocky1_change = 0elif event.key == pygame.K_UP:y1_change = -snake_blockx1_change = 0elif event.key == pygame.K_DOWN:y1_change = snake_blockx1_change = 0# 检查边界if x1 >= width or x1 < 0 or y1 >= height or y1 < 0:game_close = Truex1 += x1_changey1 += y1_changedis.blit(background, (0, 0)) # 显示背景图片pygame.draw.rect(dis, green, [foodx, foody, snake_block, snake_block])snake_Head = []snake_Head.append(x1)snake_Head.append(y1)snake_List.append(snake_Head)if len(snake_List) > Length_of_snake:del snake_List[0]# 检查是否吃到自己for x in snake_List[:-1]:if x == snake_Head:game_close = Trueour_snake(snake_block, snake_List)pygame.display.update()# 检查是否吃到食物if x1 == foodx and y1 == foody:foodx = round(random.randrange(0, width - snake_block) / 20.0) * 20.0foody = round(random.randrange(0, height - snake_block) / 20.0) * 20.0Length_of_snake += 1clock.tick(snake_speed)pygame.quit()quit()if __name__ == "__main__":gameLoop()
使用说明
上下左右键控制蛇蛇移动方向,使其吃掉地图上随机出现的食物,每吃掉一个食物,蛇的身体就会增长一格,蛇撞墙或咬身体则游戏结束,按 Q 退出或按 C 重新开始。
开发环境
系统:win11系统
工具:VS Code
插件:安装腾讯云AI代码助手插件
腾讯云AI代码助手在上述过程中全程助力
完整的助力于开发的整个生命周期,包括初始页面到数据展示以及操作,最后进行打包exe文件。
效果展示
腾讯云AI代码助手编程挑战赛——贪吃蛇小游戏_哔哩哔哩_bilibili
相关文章:
腾讯云AI代码助手编程挑战赛——贪吃蛇小游戏
作品介绍 贪吃蛇小游戏需要控制蛇的移动方向,使其吃掉地图上随机出现的食物,每吃掉一个食物,蛇的身体就会增长一格,是一款老少皆宜的小游戏,我们可以用腾讯ai助手生成全部代码,简单方便快捷。 技术架构 …...
水水水水水
为了拿推广卷,但不想把我原本完整的文章拆成零散的多篇,只能出此下策随便发一篇,认真写的都笔记专栏里 5G与未来网络 5G技术一直是近几年讨论的热点。它不仅仅是提升手机上网速度,更是对万物互联(IoT)的一次…...
Spring整合SpringMVC
目录 【pom.xml】文件; 新建【applicationContext.xml】文件 新建【springmvc.xml】文件; 配置【src/main/webapp/WEB-INF/web.xml】文件; 新建【com.gupaoedu.service.IUserService】; 新建【com.gupaoedu.service.impl.Use…...
【Rust自学】10.4. trait Pt.2:trait作为参数和返回类型、trait bound
喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 说句题外话,写这篇的时间比写所有权还还花的久,trait是真的比较难理解的概念。 10.4.1. 把trait作为参数 继续以…...
嵌入式系统 (2.嵌入式硬件系统基础)
2.嵌入式硬件系统基础 2.1嵌入式硬件系统的组成 嵌入式硬件系统以嵌入式微处理器为核心,主要由嵌入式微处理器、总线、存储器、输入/输出接口和设备组成。 嵌入式微处理器 嵌入式微处理器采用冯诺依曼结构或哈佛结构:前者指令和数据共享同一存储空间…...
Linux 下 Vim 环境安装踩坑问题汇总及解决方法(重置版)
导航 安装教程导航 Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(初版)Linux 下Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(重置版)Windows …...
OpenAI 故障复盘 - 阿里云容器服务与可观测产品如何保障大规模 K8s 集群稳定性
本文作者: 容器服务团队:刘佳旭、冯诗淳 可观测团队:竺夏栋、麻嘉豪、隋吉智 一、前言 Kubernetes(K8s)架构已经是当今 IT 架构的主流与事实标准(CNCF Survey[1])。随着承接的业务规模越来越大,用户也在使…...
安卓触摸对焦
1. 相机坐标说明 触摸对焦需要通过setFocusAreas()设置对焦区域,而该方法的参数的坐标,与屏幕坐标并不相同,需要做一个转换。 对Camera(旧版相机API)来说,相机的坐标区域是一个2000*2000,原点…...
jupyter出现“.ipynb appears to have died. It will restart automatically.”解决方法
原因 解决方法:更新jupyter的版本 1.打开anaconda prompt 2、更新jupyter版本 在anaconda prompt输入以下指令 conda update jupyter如图:...
20250108-实验+神经网络
实验3. 神经网络与反向传播算法 3.1 计算图:复合函数的计算图 实验要求1:基于numpy实现 ( y 1 , y 2 ) f ( x 1 , x 2 , x 3 ) (y_1,y_2) f(x_1,x_2,x_3) (y1,y2)f(x1,x2,x3) 的反向传播算法(不允许使用自动微分)&a…...
【权限管理】CAS(Central Authentication Service)
CAS(Central Authentication Service)是一种广泛应用的 单点登录(SSO) 协议,它允许用户在一个集中式的身份验证系统中登录一次后,便可以无缝访问多个应用系统,而无需重复登录。CAS 通过统一的身…...
Golang笔记:使用net包进行TCP监听回环测试
文章目录 前言TCP监听回环代码演示 附:UDP监听回环 前言 TCP是比较基础常用的网络通讯方式,这篇文章将使用Go语言实现TCP监听回环测试。 本文中使用 Packet Sender 工具进行测试,其官网地址如下: https://packetsender.com/ TC…...
《浮岛风云》V1.0中文学习版
《浮岛风云》中文版https://pan.xunlei.com/s/VODadt0vSGdbrVOBEsW9Xx8iA1?pwdy7c3# 一款有着类似暗黑破坏神的战斗系统、类似最终幻想的奇幻世界和100%可破坏体素环境的动作冒险RPG。...
Day10——爬虫
爬虫概念 网络请求 爬虫分类 基本流程 请求头...
10. C语言 函数详解
本章目录: 前言1. C 语言函数概述1.1 函数的定义与结构1.2 函数声明1.3 函数调用 2. 函数参数传递2.1 传值调用2.2 传引用调用(模拟)2.3 引用调用(C 特性) 3. 内部函数与外部函数3.1 内部函数3.2 外部函数3.3 示例:多个…...
NRC优先级中比较特殊的—NRC0x13和NRC0x31
1、基础知识 大家都了解 NRC0x13,表示长度错误和格式错误 NRC0x31,表示DID不支持和数据格式不支持 2、为什么说这两个NRC比较特殊 看下图的标注部分: 2.1、先看NRC0x13 步骤一:仔细看是先判断Minmun Length Check ࿰…...
ref() 和 reactive() 区别
ref() 和 reactive() 都是 Vue 3 中用于创建响应式数据的方法,但它们之间存在一些关键差异。 首先,ref() 用于创建响应式的标量值,比如数字、字符串、布尔值等基本数据类型,以及对象和数组等复杂数据类型。当你使用 ref() 时&…...
深度学习与计算机视觉 (博士)
文章目录 零、计算机视觉概述一、深度学习相关概念1.学习率η2.batchsize和epoch3.端到端(End-to-End)、序列到序列(Seq-to-Seq)4.消融实验5.学习方式6.监督学习的方式(1)有监督学习(2)强监督学习(3)弱监督学习(4)半监督学习(5)自监督学习(6)无监督学习(7)总结:不同…...
Sprint Boot教程之五十:Spring Boot JpaRepository 示例
Spring Boot JpaRepository 示例 Spring Boot建立在 Spring 之上,包含 Spring 的所有功能。由于其快速的生产就绪环境,使开发人员能够直接专注于逻辑,而不必费力配置和设置,因此如今它正成为开发人员的最爱。Spring Boot 是一个基…...
NaVILA:用于足式机器人导航的VLA模型
论文地址:https://navila-bot.github.io/static/navila_paper.pdf 项目地址:https://navila-bot.github.io/ 本文提出了一种名为NaVILA的机器人导航模型,旨在解决视觉语言导航问题,并允许机器人在更具挑战性和杂乱的场景中进行导…...
全面掌握AdvancedSessionsPlugin:从基础到进阶的实战指南
全面掌握AdvancedSessionsPlugin:从基础到进阶的实战指南 【免费下载链接】AdvancedSessionsPlugin Advanced Sessions Plugin for UE4 项目地址: https://gitcode.com/gh_mirrors/ad/AdvancedSessionsPlugin 副标题:构建高性能多人游戏的会话管理…...
DeepTutor云服务配置:利用云端资源提升AI性能
DeepTutor云服务配置:利用云端资源提升AI性能 【免费下载链接】DeepTutor "DeepTutor: Agent-Native Personalized Learning Assistant" 项目地址: https://gitcode.com/GitHub_Trending/dee/DeepTutor DeepTutor是一款强大的Agent-Native个性化学…...
Granite TimeSeries FlowState R1与工作流引擎n8n集成:自动化预测任务流水线
Granite TimeSeries FlowState R1与工作流引擎n8n集成:自动化预测任务流水线 你是不是也遇到过这样的场景?每天都要手动从数据库里拉取最新的销售数据,然后运行预测模型,再盯着结果看有没有异常,一旦发现问题还得赶紧…...
探索Mesa:构建复杂系统仿真的Python框架
探索Mesa:构建复杂系统仿真的Python框架 【免费下载链接】mesa Mesa is an open-source Python library for agent-based modeling, ideal for simulating complex systems and exploring emergent behaviors. 项目地址: https://gitcode.com/gh_mirrors/me/mesa …...
暗黑破坏神2终极单机增强插件:PlugY完全指南,三步搞定无限仓库与技能重置
暗黑破坏神2终极单机增强插件:PlugY完全指南,三步搞定无限仓库与技能重置 【免费下载链接】PlugY PlugY, The Survival Kit - Plug-in for Diablo II Lord of Destruction 项目地址: https://gitcode.com/gh_mirrors/pl/PlugY 你是否曾经在暗黑破…...
Oracle数据库sqlplus登录卡死问题排查与fast_recovery_area空间优化
1. 当sqlplus登录突然卡死时,我该从哪里入手? 上周五凌晨2点,我被一阵急促的电话铃声惊醒。客户的生产数据库突然无法登录,所有运维人员通过sqlplus连接时都卡在登录界面,连CtrlC都无法中断。这种场景对DBA来说就像半夜…...
CLAUDE.md 写到 500 行还管不住 AI?Skills 分层食用指南 + AGENTS.md 跨工具吃遍天下
一个资深 Claude Code 用户的心路历程:从写 CLAUDE.md 写到手抽筋,到三层 Skills 按需拼装,再到一份规则走通 Codex、Cursor、Aider 全家桶。这篇把坑都给你踩平。 写在前面 场景还原一下: 你在项目 A 里精心写了一份 CLAUDE.md…...
5步轻松搞定WE Learn高效学习:AI自动答题+智能刷课提升300%效率
5步轻松搞定WE Learn高效学习:AI自动答题智能刷课提升300%效率 【免费下载链接】WELearnHelper 显示WE Learn随行课堂题目答案;支持班级测试;自动答题;刷时长;基于生成式AI(ChatGPT)的答案生成 项目地址: https://gi…...
NBIO与标准net/http对比:10倍性能提升的秘密
NBIO与标准net/http对比:10倍性能提升的秘密 【免费下载链接】nbio Pure Go 1000k connections solution, support tls/http1.x/websocket and basically compatible with net/http, with high-performance and low memory cost, non-blocking, event-driven, easy-…...
Wan2.2-I2V-A14B镜像免配置:内置模型权重42GB,节省下载与校验时间
Wan2.2-I2V-A14B镜像免配置:内置模型权重42GB,节省下载与校验时间 1. 镜像概述与核心优势 Wan2.2-I2V-A14B是一款专为文生视频任务优化的私有部署镜像,针对RTX 4090D 24GB显存显卡进行了深度优化。这个镜像最大的特点是内置了完整的42GB模型…...
