2048项目制作

2048游戏共有16个格子,初始时初始数字由2或者4构成。

1.键盘向一个方向滑动,所有格子会向那个方向运动。

2.相同数字的两个格子,相撞时数字会相加。

3.每次滑动时,空白处会随机刷新出一个数字的格子。

4.当界面不可运动时(当界面全部被数字填满时),游戏结束;

把这款游戏看成是一个对象,这些就是对象的属性跟方法

首先我们要创造一个html文件,加一个css文件,一个js文件,这是最基础的准备

然后再html文件中创建好最基础的页面,16个盒子,并且用一个大盒子将他们包起来,然后给他们设置CSS样式,

让大的盒子居中并设置宽高,给个背景严重以及边框圆角。给小的盒子也设置宽高以及外边距并让其左浮动,设置好边框圆角以及文本居中和文本大小。第一步就完成了

第二步

在JS中创建一个对象名为GAME

定义一个date 数组 ;RN 行数 ; CN列数  score 分数,然后创建一个开始方法,具体内容及思路如下图

第三步

我们需要一个生成随机2,或者4的方法,那么就创建一个创造随机数方法,代码及解释如下图

第四步,随机数方法有了,我们还需要一个能将数组内容同步到html中的方法

这些都完成后就是上下左右以及结束方法,结束方法的话我是放在了每个上下左右移动方法的结尾,并且在页面更新方法中添加了游戏结束后的展现页面。

如果游戏结束方法返回true那就执行更新页面中的gameover()内容。

接下来就放上gameover()方法以及上下左右方法的图片。

最后调用game对象的start方法

原文地址:https://www.cnblogs.com/yzxyzx/p/11332372.html

时间: 2024-10-19 12:20:45

2048项目制作的相关文章

2048游戏制作(个人修改版)

需要运用Jquery,响应式2048. CSS代码: header{        display: block;        margin: 0 auto;        width: 100%;        text-align: center;    }    header h1{        font-family: Arial;        font-size: 40px;        font-weight: bold;        margin: 10px auto; 

Web版2048游戏制作

写在前面 工作之余参与了<慕课网2048游戏制作>的学习视频,视频断断续续看完了,游戏也制作成功了.因为其他的事情也没来的及总结,一拖时间也就过去了,整理磁盘的时候发现了2048源码,思考一下还是将之push到github上了(后面贴出),也顺便写篇总结,回顾一下,同时也谢谢liuyubobobo老师的授课. 不过源码在手,不运行下玩玩,怎么说的过去呢,哈哈!下面是游戏截图. 大图是PC端运行的效果,小图则是在iphone5s上的运行效果(Chrome浏览器debug,具体如何做参考文章:ht

AndroidStudio项目制作倒计时模块

前言 大家好,给大家带来AndroidStudio项目制作倒计时模块的概述,希望你们喜欢 项目难度 AndroidStudio项目制作倒计时模块的难度,不是很大,就是主要用了Timer和TimerTask这两个,接着就是现实界面的一些基础效果. 设计界面 做个倒计时的界面就比较好想了,就如下界面控件 填写倒计时时间 获取倒计时时间 显示倒计时 开始计时 停止计时 就在自动创建的activity_main.xml中写入代码: <?xml version="1.0" encoding

008_项目制作拍摄视频篇之_《人脸识别》

此项目为合作项目 需求: 采用人脸识别算法.AT89C51单片机.蓝牙模块.安卓软件设计一个门禁系统,可以实现人脸识别.面部信息添加.存储.删除:安卓与单片机连接:门禁开关.指示.报警等功能. 具体要求: 制作一个简单安卓动态人脸识别APP,APP可以添加.存储.删除面部信息,人脸识别时正确匹配到存储的面部信息之后通过手机蓝牙给装有蓝牙模块的AT89C51单片机传输一个信号,AT89C51单片机根据信号来实现简单门禁系统,开门之后手动关门,开门用LED灯表示,关门用开关代替,关门之后表示开门的灯

个人项目制作(PSP)

计划: 软件的此功能的实现,个人估算需要一个周的时间. 开发阶段: 需求分析: 1> 运动员希望软件可以记录自己的得分项. 2> 运动员希望软件可以记录自己的得分具体细节. 3>运动员希望软件可以记录自己的失分项. 4>运动员希望软件可以记录自己的总分. 5> 运动员希望软件可以给自己建议. 设计文档: 1)运动员可以登录到自己的计分界面. 2)运动员可以在界面清晰的记录自己的得分. 3 运动员可以在失分项记录自己的失分情况. 4 运动员可以计算自己的总分,和查看自己的能力分

AndroidStudio项目制作SDK和打包成jar

这里将详细介绍AndroidStuido项目,开发过程中将AS项目打包成jar,及arr的使用 1.新建一个项目(步骤省略) 2.(在步骤1的基础上)点击File-->New-->New Module->选择Android Library-->点击Next(如下图:) 3.定义好Library的工程名:mylibrary(如下图: 4.在项目中会引入该Module (app下的build.gradle 5.创建之前我先在mylibrary工程中建一个测试类,方便测试调用: 6.在m

图像处理项目——制作自己的人脸数据集

制作自己的人脸数据集 *开发环境为visual studio2010*使用的是opencv中的Haart特征分类器,harr Cascades*检测对象为人脸照片  一:主要步骤 1.加载人脸检测器2.打开电脑摄像头,载入视频流,抽取帧,进行灰度化处理3.识别人脸,采集20张保存到文件中 二 :代码 1 /**************************************************** 2 制作自己的人脸数据集: 3 1.加载人脸检测器 4 2.打开电脑摄像头,载入视频流

009_项目制作拍摄视频篇之_《热水壶》

此项目为合作项目 需求: 1.LED灯提示水温状况:温度传感器模块所采集的数据通过串行口发送给单片机主控模块,单片机控制LED灯显示不同颜色的灯光,让用户能够直观了解到水温的基本状况.(绿色光为凉水,黄色光为温水,红色光为开水) 2.水烧开声音提示:水壶装有蜂鸣器,水烧开后单片机控制蜂鸣器发出急促的响声提示用户水已烧开并且断开继电器开关停止加热.3. 除氯:当水烧开后,加热装置不会立即停止工作,此时加热片会再加热3分钟,使水再微沸一会儿,将水里的氯含量降至安全饮用标准.4.防止重复煮沸:水温下降

vue - 小日历项目制作中的问题与解决思路

效果图: 项目难点: 1. 每个月的日期数是不定的,拢共需要几个格子? 按照教程的做法需要42个.所以遍历数字42,得到42个div做格子. 2. 格子的排版怎么做? 顶部的星期布局使用的flex水平方向两边对齐并单项flex为1占满空间. 下边格子用了grid布局(具体见源码css) 3. 本月一号是星期几怎么计算? 可以利用Date对象提供的公式计算: new Date(目标年份,目标月份 - 1,1).getDay(); 4. 本月最大天数是几怎么计算? 可以利用口诀计算:... 也可以利