cocos2dx开发的 2048游戏的源码 亲测可用,代码文件 上传,cocos2dx2.2.3开发的
2021-12-07 09:35:34 5KB 2048 cocos2dx
1
2048_Java 该存储库包含完全用 Java 构建的 2048 游戏的代码。 游戏尝试使用面向对象的原则构建,主要实体或对象是 GameContainer(主游戏板)和 Block(Tiles)作为其中的块。 其他类是入门类或辅助类。 为每个类提供了适当的方法和实例变量,命名是不言自明的,但欢迎提出建议。 系统要求:Java SE 1.7、Apache Maven 你怎么跑? 步骤 1:使用以下命令将项目克隆到您计算机上的目录(任何目录)中: git 克隆 第 2 步:运行以下命令 mvn 清洁包 第 3 步:使用以下命令运行启动类 mvn exec:java -Dexec.mainClass=nkher.Twenty_Forty_Eight_Java.GameStarter 享受 ! 如有任何建议或反馈,请通过我
2021-12-06 15:32:55 10KB game-programming Java
1
游戏功能: 游戏界面由4×4的16个方格组成,每个方格中可以存放一个数字。玩家通过操纵Basys3开发板的上下左右四个方向键和中央的reset键,控制方格中的数字移动。界面由VGA和Pmod接口oled两种方式显示。游戏成功时显示笑脸,失败时显示骷髅。 游戏过程中,玩家每按动一次方向键,所有数字按照这个方向移动一次,该方向上相邻相同的数字合并为原来的2倍,并在反方向随机生成一个新的数字。玩家目标是在游戏中拼出2048或更高的数字,即为游戏成功。 DIY动手指南: Step1:材料准备 硬件: Basys3开发板 VGA连接线以及VGA显示器 (可选)sh1106驱动的oled显示屏一块 软件: Vivado 2016.2 Step2:系统框架 系统主要由以下几个模块构成,游戏主状态机、游戏数据寄存器{S16}、移动模块move、随机产生模块gen、随机数生成器ran、VGA驱动模块和oled驱动模块。 Step3:程序设计 接下来分模块进行分析。 1、按键去抖 对每个按键设计了一个32位长的FIFO,按键值从低位进入直至高位溢出。每过10ms,FIFO被完全刷新一次,只有当32位为FFFFFFFFh时认为输入为1,00000000h时认为输入为0。 2、游戏数据寄存器 用4×4=16个4bit寄存器,存放16个格子中的数据,记为{S16},以【log2对数】形式存放。即如果格子中是512,则存放9;如果格子中是128,则存放7。特例是0用0来存放。这种存放的特点是,可以节约寄存器数量,而且原本的加法128+128=256可以用加1来表示:7+1=8。寄存器位置定义如下: 3、游戏主状态机 游戏主状态机中,主要操纵数据寄存器{S16}的数值,通过对这个寄存器中数值的改变来实现游戏的进行。 状态机分为4个状态:检测按键+移动,产生随机数,游戏状态检测,游戏失败死循环。 其中游戏状态检测时,检查当前游戏是否已经结束或成功,如果成功,游戏不中断,玩家可以继续下去,如果已经结束,则跳入游戏失败的死循环中,结束游戏。 4、移动逻辑组合电路 本游戏有4种移动方式,即上下左右,每次移动4条线,但本质都是相同的,只需要一个模块即可完成。如下图所示 move(i3,i2,i1,i0,o3,o2,o1,o0) 我们默认向右移动。(为什么呢?因为当我们调用这个模块时,可以以各种方向调用:如果向右移动,则调用move(15,14,13,12)向右,如果向左移动,则调用move(12,13,14,15)向右即可,还可以调用move{15,11,7,3}向下,调用move{1,5,9,13}向上等等。) 那么向右移动时,用f3~f0判断这四位是否为空,通过对f3~f0的16种情况的mux来决定输出的值,如果有相同则合并后输出。(其实这个模块就是一个大mux) 例如,下图所示,左图右移后,变为右图。 再例如:2,2,4,8右移后变为0,4,4,8,再右移变为0,0,8,8再右移变为0,0,0,16 5、随机数生成器和随机产生模块 随机数产生器为随机产生模块gen服务。随机数生成器产生3组随机数,分别为8bit,12bit和16bit。分别对应2空格、3空格和4空格的情况。例如,如果右移后的图片如下图所示,那么黄色格子里的2就是在最左列3空格情况下随机产生的一个位置。 我们还是默认向右移动,那么最左边的四个格子(15,11,7,3)即可交给gen,在空白出产生一个随机位置的“2”。 这里需要注意的是,2048游戏中规定必须是“有效移动”后才产生一个数字,以杜绝有投机的玩家一直按同一个方向键可以作弊的情况。这一逻辑只需要对上一步中move前后做一下对比即可。 6、VGA显示模块 640×480分辨率,25MHz的时钟信号。 其中扫描时,将VGA坐标的后两位[1:0]舍去,即可将640×480像素变为160×120的色块。 (注:源码中的VGA画图一段和oled画图一段看上去很复杂,其实是画点的方式比较奇怪,两种画法都是先将132x64的点阵水平划分为8条,每条8行,再以每列为1个byte的方式画出来。。。那么为什么要这么复杂呢?因为oled的sh1106驱动就是这么要求的,我先做了oled,后面vga就直接引用了~) Step4:演示见视频~
2021-12-01 10:31:01 10.78MB basys3 电路方案
1
VI中,使用C语言编写的2048小游戏完整步骤,运行无忧~~
2021-11-30 13:48:27 6KB 2048 小游戏 2048小游戏
1
MT29F4G08ABBDAH4-ITD
2021-11-29 13:01:52 1.49MB MT29F4G08ABBDAH4
1
2048点FFT在定点DSP上的实现2048点FFT在定点DSP上的实现2048点FFT在定点DSP上的实现2048点FFT在定点DSP上的实现
2021-11-29 10:59:22 77KB FFT
1
2048游戏的c#语言程序设计,有精美游戏界面,有源代码,有程序设计与代码设计说明书。
2021-11-28 19:02:46 231KB 可视化 c# 2048 程序
Android开发自定义Viw实现2048数字图片无缝切换,玩的过程可自由切换模式。对应博文介绍:http://blog.csdn.net/talentclass_ctt/article/details/51952378
2021-11-27 18:20:24 7.15MB 自定义View
1
用eclipse,Java语言仿的2048小游戏,课程设计制作的,有环境的话可以直接运行。
2021-11-25 23:06:48 14KB java 2048
1
2048-in-php 关于 一款 2048 游戏,只适合一个 .php 文件,包括 Css。 它不会有任何 javascript 或 flash。 一切都将在服务器端计算。 我们的目标不是拥有一款完美的游戏,而是拥有一款不会在您的计算机上计算内容的游戏。 这更像是一个编程挑战......如果你对类似的 javascript 项目感兴趣,只需谷歌一下,你就会发现。 执照 版权所有 2015 Darkxell 根据 Apache 许可,版本 2.0(“许可”)获得许可; 除非遵守许可,否则您不得使用此文件。 您可以在以下网址获取许可证副本 http://www.apache.org/licenses/LICENSE-2.0 除非适用法律要求或书面同意,否则根据许可分发的软件是按“原样”分发的,没有任何类型的明示或暗示的保证或条件。 请参阅许可证以了解管理许可证下的许可和限制的特定语言
2021-11-25 17:26:02 11KB PHP
1