首页 > 其他分享 >贪吃蛇之食物(苹果)产生模块设计

贪吃蛇之食物(苹果)产生模块设计

时间:2024-04-29 16:03:03浏览次数:18  
标签:蛇头 apple 食物 贪吃蛇 坐标 模块 block 苹果

贪吃蛇之食物(苹果)产生模块设计

1. 设计目标

初始化后,产生食物坐标(24,10),然后判断蛇头的坐标与食物的坐标是否相同,若相同,代表食物被吃掉,然后用随机数产生新的食物坐标。

2. 区域划分

游戏的基本单位block还是用16*16像素,屏幕四周用1个block宽度的边框代表墙,食物用一个block表示大小,蛇头也是1个block大小。

 

 

3. 代码设计

(1) 分数累加

if(apple-x == head_x && apple_y == head_y)

add_cube <= add_cube + 1;

当食物坐标与蛇头坐标相等时,即表示食物被吃掉。

(2) 产生新的食物坐标

always@(posedge clk)

random_num  <= random_num + 999;

用加法电路产生随机数。random_num的高六位作为apple_x,低5位作为apple_y。通过判断坐标值,确定是在有效区域,还是已经撞墙,再指定新的值。

 

 

参考:

https://mp.weixin.qq.com/s/EVDtWSQH-SD69iSWyeTQoA

 

标签:蛇头,apple,食物,贪吃蛇,坐标,模块,block,苹果
From: https://www.cnblogs.com/halflife/p/18165939

相关文章

  • rust模块管理示例1
    1、创建如下rust工程不用管其中代码的作用是什么,只要知道有一个main.rs和四个模块s1、s2、s3、s4即可。2、s1模块使用了Rust2015的模块格式,即:需要创建s1文件夹,在s1下创建功能文件hello.rs及名为mod.rs的模块定义文件。s1/hello.rspubfnsay_hello(){println!("hellofr......
  • 揭秘Python中的JSON数据格式与Requests模块
    From: https://mp.weixin.qq.com/s/QgGyn2efYtVKI65RwXoiEA------------------------------------------------------------------------------------importpytestimportjsonimportrequestsfromrequests.authimportHTTPBasicAuthfromrequests.adaptersimportHTTPA......
  • BOSHIDA 如何选择适合自己需求的DC电源模块?
    BOSHIDA如何选择适合自己需求的DC电源模块?在选择适合自己需求的DC电源模块时,需要考虑一些关键因素,以确保选择的模块能够满足电源要求并具有良好的性能。下面是一些值得考虑的因素: 1.电压输出范围:首先,要确定所需的电源电压范围。不同的应用需要不同的电压输出,因此需要选择能......
  • C#的基于.net framework的Dll模块编程(四) - 编程手把手系列文章
          这次继续这个系列的介绍: 一、命名空间的起名;对于C#来说,一般命名空间的建议是:公司名(或个人名称).产品名.分类名,比如我这边是用的这个:Lzhdim.LPF.Helper,意思是个人名Lzhdim,加上LPF为平台名,加上Helper分类为帮助类,其它的更长的请读者自己添加。  ......
  • 模块的基础知识点
    一:模块的定义模块:就是一系列功能的集合体,分为三大类1.内置(就是解释器里自带的)2.自定义:可以是任何语言写的(py文件本身就是一个模块,文件名叫xx.py,模块名就叫xx)3.第三方:既不是自带的,也不是自己写的,是别人的直接拿过来ps:模块分为四种形式......
  • [题解]P2015 二叉苹果树
    P2015二叉苹果树树形dp,一般用dfs辅助解决。当我们搜索到\(u\),此时剩下\(cnt\)条边可以用,也就是说\(u\)为根节点的子树最多可以保留\(cnt\)条边。由于上一层的需求,我们显然需要枚举剩余边数\(i\)(\(1\leqi\leqcnt\))。接下来对于每个\(i\),我们考虑剩余的\(u\)条边可以怎么放。......
  • Python (GUI编程)模块 使用方法
    GraphicalUserInterface,简称GUI,中文名为图形用户界面,又称图形用户接口,是一种通过图形元素(如按钮、文本框、图像等)来与计算机程序进行交互的方式。与传统的命令行界面相比,GUI更加直观和易于使用,因为用户可以直接通过点击、拖拽等方式来完成任务,而无需记忆和输入复杂的命令。GUI......
  • 陈畅亮搞的专利在Windows上利用加解密DLL模块对数据库连接字符串进行加解密
    陈畅亮搞的专利在Windows上利用加解密DLL模块对数据库连接字符串进行加解密  这种专利权人是公司,个人是发明人,专利年费是申请人先垫付,然后公司报销了,这个专利本身就不属于员工的这个是公司是专利权人, 使用权是公司,如果想要维持权利的话,需要缴纳年费,专利发明现在一个市......
  • AI模块(有限状态机、行为树)-应用在cocos中
    前言:本模块是在cocos项目中运用战斗框架,根据学习别人的文章来结合项目进行编写的,若有不对不合理的地方有劳大家指正,万分感谢!!!若有能有用的上的,万分荣幸!简介:AI模块一般是对怪物的AI实现,或者托管等自动战斗的情况。具体方式可能根据项目的具体需求来选择,常用的有:有限状态机,行为树......
  • BOSHIDA 提升电子设备性能的秘密:优质DC电源模块
    BOSHIDA提升电子设备性能的秘密:优质DC电源模块电子设备在现代社会中起着至关重要的作用,而其性能的提升对于用户体验和功能的改进至关重要。在电子设备中,优质的DC电源模块是实现性能提升的关键因素之一。本文将介绍优质DC电源模块的作用以及如何提升电子设备的性能。首先,什么是D......