今天改网盘密码时,找到了个很久前的东西:JavaScript版的坦克大战。07年的夏天制作花了好多个夜晚制作,那段着迷JS游戏的疯狂时光。但因为后来众多浏览器的出现,导致了游戏兼容性大大的下降,最终放弃了更新。

  

  尽管到了如今HTML5大红大紫,不过要兼容主流浏览器,还是逃不过IE这关。如此说来,还不如纯粹的div+css制作的js应用兼容性最好了:)  

  

  之前也发过,但是当时因为找不到源码,所以从压缩过的JS反向修改回来,导致代码混乱不堪。之前做的尺寸很小,今天把图片放大了一倍,晚上闲着把关数增加到了原版35关。

  (方向键:ASDW   射击:KL  连发:IO  确定:Enter  【第一次可以进入选关】)

  

  (源链接:http://goo.gl/uex0x)

  

  之前用jsmin压缩代码的,换成现在的google closure编译会出现问题。因此现在修改下框架结构和部分模块,现在可以用ADVANCED_OPTIMIZATIONS压缩了,如果有什么BUG留言。

  

  整个工程4000行左右的代码,包括一个叫WebPlay的游戏库。用到的都是很基本方法和概念,总体并不复杂。对于初学OOP思想,或者游戏基本概念的,都可以参考下! 作为2012贺岁礼物分享给大家吧~

  Source: http://files.cnblogs.com/index-html/BattleCity.rar

  

  

  Demo

本文转自:http://www.cnblogs.com/index-html/archive/2011/12/31/js_battlecity.html

曾经做的一个JS小游戏——《Battle City》的更多相关文章

  1. 一个js小游戏----总结

    花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...

  2. 制作一个 JavaScript 小游戏

    简评: 作者学习了编程两个月,边学边做了一个 JavaScript 小游戏,在文中总结了自己在这个过程中的一些体会,希望能给其他初学者一些帮助. 对于很多想学编程但一直没下定决心的同学来说,最大的问题 ...

  3. “倔驴”一个h5小游戏的实现和思考(码易直播)——总结与整理

    3月23日晚上8点半(中国队火拼韩国的时候),做了一期直播分享.15年做的一个小游戏,把核心代码拿出来,现场讲写了一遍,结果后面翻车了,写错了两个地方,导致运行效果有点问题,直播边说话边写代码还真不一 ...

  4. 用Python设计一个经典小游戏

    这是关于Python的第9篇文章,介绍如何用Python设计一个经典小游戏:猜大小. 在这个游戏中,将用到前面我介绍过的所有内容:变量的使用.参数传递.函数设计.条件控制和循环等,做个整体的总结和复习 ...

  5. 如何在CentOS上安装一个2048小游戏

    如何在centos上安装一个2048小游戏 最近在学习CentOS系统,就琢磨着玩点什么,然后我看到有人在玩2048小游戏,所有我就在想,为啥不装一个2048小游戏搞一下嘞,于是乎,我就开始工作啦 由 ...

  6. 50行代码写的一个插件,破解一个H5小游戏

    小游戏链接:测测你的眼睛对色差的辨识度http://www.webhek.com/post/color-test.html?from=timeline 废话不多说,先放代码: window.onloa ...

  7. JS小游戏-蓝色拼图

    // a[href=#viewSource]"); //查看源代码标签 viewSourceArr.attr("title", "查看源代码"); v ...

  8. 第一个windows 小游戏 贪吃蛇

    最近用dx尝试做了一个小的贪吃蛇游戏,代码放到github上面:https://github.com/nightwolf-chen/MyFreakout 说一下自己实现的过程: 首先,我把蛇这个抽象成 ...

  9. js小游戏:五子棋

    使用纯js的小游戏,五子棋 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  10. 用WPF做了几个小游戏

    最近看书看累了,参考别人的代码(其实差不多就是把代码重新打了一遍o(╯□╰)o),用wpf做了个<2048>小游戏,顺便在<Git教程>学习下git,也顺便把在<写让别人 ...

随机推荐

  1. Java并发之volatile关键字内存可见性问题

    Java并发之volatile关键字内存可见性问题 线程之间数据共享案例 我们先来看一个场景: Main函数启动后,调用一个线程向list中添加数据.List的size为5的时候,设置变量flag为t ...

  2. 鸿蒙系统(HarmonyOS)全局弹窗实现

    全局弹窗相对于自定义弹窗有以下优点: 封装更彻底,一行代码就能调用 跟组件耦合度低,只需要传入组件的UIContext对象,不需要跟自定义弹窗一样需要在组件内部实例化CustomDialogContr ...

  3. DOM – Web Animation API

    前言 以前写过相关的文章 angular2 学习笔记 ( animation 动画 ).但在项目种很少用到 Web Animation. 体会不到它的精髓,目前的感觉是,它对比 CSS Animati ...

  4. TypeScript – Get Started

    前言 我学 TypeScript 的时候是 Angular 2.0 beta 的年代... 现在 Angular 都快 14 了. 但由于已经有 1 年半没有写 Angular 和 TypeScrip ...

  5. BOOST 环形队列circular_buffer

    BOOST库的环形队列比较灵活,前插或后插,删除队首或删除队尾元素,都支持. 只贴代码: #include <boost/circular_buffer.hpp> #include < ...

  6. PMP——如何区分项目启动会和开踢会?

    在PMP考试中非常强调两个重要会议,一个叫做启动会(Initiating Meeting),另一个叫做开踢会议(Kick-off Meeting),俗称两会. 项目启动会的作用是通过发布项目章程来授权 ...

  7. spring上 -基于Xml配置bean笔记

    4,Spring 内容 7,快速入门 需求:通过 Spring 的方式[配置文件], 获取 JavaBean: Monster 的对象, 并给该的对象属性赋值, 输出该对象信息. 代码结构: lib ...

  8. Android Qcom USB Driver学习(四)

    VID/PID识别USB设备 CDC-ACM驱动介绍 CDC-ACM(Communication Device Class--Abstract Control Model)驱动实现以USB设备驱动和t ...

  9. 使用zipkin配置spring boot的链路器(httpclient、restTemplate)

    一.首先导入zipkin需要的依赖 <!--zipkin-brave start--> <dependency> <groupId>io.zipkin.brave& ...

  10. Oracle新增日志组成员

    Oracle新增日志组成员 查询当前的日志组信息: sql SELECT * FROM v$log; 查询日志组对应的日志文件: sql SELECT * FROM v$logfile; 查询日志组的 ...