打字机游戏Ⅱ之手速pk

前言

  demo预览->typewriter gameⅡ (chrome only 没做兼容

  别看一开始时速度不快,会线性增长的哦,反正楼主的score还没达到过40...

  为什么叫Ⅱ呢?之前写了个打字机游戏(试玩猛戳这里),数据上只是简单的手写了50个单词,全部输入正确即可过关,本来想改一下做成竞技类的(有分数的),但是一样的小游戏写俩没啥意思,正好最近看了下css3,突然有了某种灵感,于是typewriter gameⅡ粗线了。

过程

  之前的打字机游戏是基于canvas和粒子系统的,这次是基于dom和css3的,不过思路都是一样的。

  在看下文之前,可以先回顾下《Canvas之打字机游戏》和《css3实践之摩天轮式图片轮播+3D正方体+3D标签云(perspective、transform-style、perspective-origin)》,相同的内容就不多说了。

  html文件主要就是dom的一些css,核心文件主要就是两个js文件。

  初始化文件,主要构造单词数组以及整个游戏界面。

  单词直接从网上拉了个txt文件(看文件戳这里),然后用ajax和正则将里面的单词提取放在array数组中。


1

2

3

4

5

6

7

8

9

$.ajax ({

  type: ‘GET‘,

  url: ‘data.html‘,

  dataType: ‘html‘,

  async: false,  // 异步

  success: function (msg) {

    window.array = msg.split(/[^A-z]+/)

  }

});

  不得不说正则表达式实在是太屌,有时间一定要好好看看。

  接着构造了游戏的主要界面,9个正方体围成的一个圈,构造方法和前文说的摩天轮式图片轮播类似,可以参考前文。

  游戏的核心文件,控制整个小游戏的逻辑。

  简单说说整个逻辑。监听键盘,当正确打字时,字的颜色发生变化,不断旋转,不断出现新的单词,旋转速度也不断变快,直到游戏结束。

  这之中最纠结的是写createWord方法。因为得找一个时机创造新的单词替换旧单词,最终我选择当旋转位置如下时调用方法:

  刚好这一位置该div即将处在盲区,经过实践发现旋转角度满足28+40*n 时调用方法即可,哈希角度去重。

  还有一个问题,因为创造新的单词前,先要去掉旧的单词,jquery可以用empty方法,如果用原生的js将dom一个一个remove,要倒序写:


1

2

3

4

5

var c = d[i].getElementsByClassName(‘cell‘);

// 必须倒着来 notice

for(var j = c.length - 1; j >= 0; j--) {

  d[i].removeChild(c[j]);

}

  其他的话,主要是对旋转速度的控制,以及游戏过程中的各种index的控制,只要逻辑正确,随便怎么写都行。

总结

  有兴趣看完整的代码可以猛戳:打字机游戏Ⅱ源码

  有任何bug或者其他问题麻烦给我留言。

  css3很强大,正则表达式很强大,感概ing...

时间: 2024-08-06 05:56:13

打字机游戏Ⅱ之手速pk的相关文章

Java制作最难练手速游戏,Faker都坚持不了一分钟

想练手速,来啊,互相伤害啊 Java制作最难练手速游戏,目测Faker也坚持不了一分钟 制作思路:只靠Java实现.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java.Java. 字母模型应该是整个游戏的主角,因为整个游戏过程中都涉及到它的运动,比如坠落,消失,产生等,首先应该考虑字母随即出现的位置,在游戏中不断下落,计算下落的高

H5游戏和手游APP的差异在哪里?

首先,对于一款游戏来说最大的两个问题就是提升变现能力和对用户粘度问题的解决,这两个因素也是推动着游戏生态圈不断发展的终极动力!现在就以这两个角度对现在火热的H5与手游App进行一个大概区分! H5能已被逐渐证明的变现方式包括了以下几点:1.广告:2.游戏内道具付费:3.跨屏精准营销:4.企业定制服务.而手游App则以的付费模式基本和网络游戏的模式差不多 以道具收费为主,也包含了下载即付费(一般多为单机游戏) 设置付费点付费:当你玩到一定关卡的时候会提示你付费才能继续,(多为单机游戏).还有一种是

猫和老鼠 蓝桥杯/手速/暴力练习赛(暴力搜索)

猫和老鼠 蓝桥杯/手速/暴力练习赛 [题目描述] 猫和老鼠在10*10 的方格中运动,例如: *...*..... ......*... ...*...*.. .......... ...*.C.... *.....*... ...*...... ..M......* ...*.*.... .*.*...... C=猫(CAT) M=老鼠(MOUSE) *=障碍物 .=空地 猫和老鼠每秒中走一格,如果在某一秒末他们在同一格中,我们称他们“相遇”. 注意,“对穿”是不算相遇的.猫和老鼠的移动方式相

JY游戏之手游《打卡乐猫》

JY游戏之手游戏<打卡乐猫> JY是一款专门制作js小游戏的js库,它集成了一些对网页类小游戏的功能帮助 ,能帮你更快的完成js开发,它的主体框架包JY.JYG.Sprite.Sprite5.JYG5.SoundManage.cookie等.让你只用关心游戏的核心逻辑.JY 官网请点击 JY官网(http://www.lovewebgames.com) ,它开源在github上.https://github.com/tianxiangbing/JY 打卡乐猫游戏的灵感来源于打地鼠.它的演示地址

第X波抽奖,拼手速的时候到了!!!

拼手速抽奖!!! 本次抽奖,面向QQ群有效用户,限前5名留言回复者参与(保证中奖概率20%) 奖品:思科原版中文2.0教材一套(5本),价值200+RMB 开奖:11月23日,江苏七位数开奖,从左往右,第一个1-5之间的数,即为中奖楼层 备注:11月24日寄出,老规矩:非即日类抽奖,邮费自理,介意者请勿参与.

安逸花手速不够快,安逸花显示手速不够快怎么办

安逸花手速不够快,安逸花有额度借不出来,安逸花好几???亿被抢走了√信:759728375因为今年的网贷整改项目进行的如火如荼,很多新口子坚持不了多久就消失了,大多数坚持下来的都是老口子,安逸花也是其中一个,它从推出到现在人气一直都很高,哪怕它需要抢额度,老铁们也还是选择熬夜去抢.不过最近老铁们倒是反映了一个问题,就是安逸花明明显示有额度却借不出来,现在不知道该怎么办了,浪哥调查以后找到了几个解决方法,下面就通过口子评测来告诉大家! 原文地址:http://blog.51cto.com/1414

Canvas之打字机游戏

最近针对粒子化作了一点点的探究,决定结合其做个小游戏,于是这个简单的打字游戏出世了. 试玩地址:Typewriter game  仅在chorome下测试,请谨慎使用其他浏览器(特别是ff):加载速度有点慢,请耐心等待5~10秒.因为需要加载的粒子太多了... 游戏概况 游戏逻辑和代码其实是很简单的,都是h5的原生api没有用什么框架(其实也不会). 单词由一个个的粒子构成.画布中随机出现单词,监听键盘上的按键,和单词中的字母进行匹配:当整个单词完成匹配后,组成单词的粒子开始做平抛运动.直到游戏

提升产品研发管理效力,DevSuite助力谷得游戏驰骋手游市场

近日,TechExcel 喜签广州谷得游戏科技有限公司,采用TechExcel DevSuite游戏产品研发管理解决方案,构建一套游戏研发全过程管理平台,提升游戏研发管理效率和产品质量,确保谷得游戏在瞬息多变的市场环境中不断推陈出新,研发出符合广大玩家需求的网游产品,更好的服务游戏玩家,打造手机游戏精品品质. 谷得游戏成立于2011年3月,是一家立足于移动游戏研发领域.具有自主研发和运营能力的专业网络游戏公司.自成立以来,一直致力于打造自主知识产权的顶级手机网游精品.公司由多位拥有丰富移动互联网

python游戏练手--乒乓球

啥也不说了,就是个练手,丑是丑了一点,但是还可以抢救一下的 # -*- coding: utf-8 -*-import pygame as pgfrom pygame.locals import * #将pygame所有常量导入,如后面的QUITfrom time import sleepimport sys pg.init() #初始化,如果没有的话字体会报错等等scr=pg.display.set_mode((600,550)) #设置屏幕大小pg.display.set_caption((