前言

本程序仅仅学习,顺便回忆小学玩的游戏。 项目初心为了验证一些对 Canvas 想法。 项目大量运用 ES6,无 ";" 写法。

目录

  • 文件介绍
  • 职责分类
  • 缺点

文件

  • img

    • jxk(剑侠客图片)
    • background(地图图片)
  • js
    • base

      • runloop.js(循环)
    • view
      • jxk.js(剑侠客)
      • map_one.js(地图)
    • game.js
    • index.js
  • index.html

职责分类

    <script type="text/javascript" src="js/base/runloop.js"></script><script type="text/javascript" src="js/view/map_one.js"></script><script type="text/javascript" src="js/view/jxk.js"></script><script type="text/javascript" src="js/game.js"></script><script type="text/javascript" src="js/index.js"></script>
复制代码

js/base/runloop.js:主要负责 window.requestAnimationFrame 循环

js/view/map_one.js:地图渲染

js/view/jxk.js:剑侠客渲染

js/game.js:初始化 Canvas ,处理击事件

js/index.js:项目入口

缺点

  1. 人物走在地图边界没有站立状态,这都怪我没有拆分地图与人物之间x,y关系。最近看到微信小程序打飞机源码,发现值得学习。
  2. Canvas 对点击事件支持弱,获取不到绘制在上面的状态,我也没有找到完美的解决方法。

结尾

GitHub: https://github.com/liangtongzhuo/game_web 本想做成联网,大家一起在上面走,想了想,为了代码的干净,还是以后另外开项目再加把。

体验地址:https://liangtongzhuo.github.io/game_web/

在GitHub 打开速度非常慢,加载了50张以上的图,另外记得打开手机调试,并没有适配 PC,获取不到点击事件

转载于:https://juejin.im/post/5a518e5151882573432cfc92

Web 游戏 「梦幻西游」地图 Demo ,纯 Canvas 画相关推荐

  1. 20年,1人写出70万行代码!沙盒游戏「鼻祖」13年靠玩家捐赠维生

    本文转载自 新智元 一款游戏,让一位玩家皈依佛教. 这位玩家曾寄信开发者,因其开发的游戏理解了「众生皆苦,世事无常」. 究竟是什么游戏还能让人看破红尘? Dwarf Fortress (矮人堡垒)! ...

  2. 机器人笔记psv中文_游戏「机器人笔记」、「月英学园」将登陆PSV平台

    "科学ADV系列"第三弹「机器人笔记」将发售PSV版,将于今年冬季发售.声优杉田智和原作游戏「月英学园」的PSV版将于10月10日发售,名为「月英学园-kou-」. 5pb.与Ni ...

  3. Scratch闯关游戏「离子反应」游戏规则

    请查看 Scratch闯关游戏作品:「离子反应」 下载资源. 单人游戏规则: 使用鼠标瞄准和射击,<Q>丢弃物品,<R>填充药剂,<滚轮>切换武器,<E> ...

  4. pygame精灵组有哪些方法_利用 pygame 开发一款游戏:「跳跳兔」(六)

    HackPython 改名为「懒编程」,纯粹是因为我有另外一个写杂文的号叫「懒写作」,此外,感觉「懒编程」比 HackPython 好记. 前言 在第 5 节内容中,实现了积分机制.玩家死亡逻辑以及游 ...

  5. linux 换行符_「linux」libevent demo详细分析(对比epoll)

    libevent默认情况下是单线程,每个线程有且仅有一个event_base,对应一个struct event_base结构体,以及赋予其上的事件管理器,用来安排托管给它的一系列的事件. 当有一个事件 ...

  6. 使用JMeter之前,你应该要掌握的基础元件《购买本专栏「私信」送Demo》

    目录 JMeter(二十一):使用BeanShell解析Json格式的报文https://tester-joe.blog.csdn.net/article/details/103954794 JMet ...

  7. MacBook上可以玩的游戏「分手厨房」

    一年一度的「七夕」就快到了,给分享推荐一款我最近在玩的游戏「Overcooked」. 非常适合情侣玩哦

  8. 营收下滑,腾讯游戏还能保持「王者」地位吗?

    作者 | 曾响铃 文 | 响铃说 国内游戏市场,面临发展瓶颈.腾讯游戏这个「行业巨头」也未能幸免. 最新财报数据显示,二季度腾讯游戏本土与海外市场总营收约为425亿,相比去年同期(营收430亿)和今年 ...

  9. 怎样对流媒体进行压力测试_对node工程进行压力测试与性能分析「干货」

    作者:小黎 转发链接:https://mp.weixin.qq.com/s/WBe7ZLoqFD9UqNusnv_IDA 前言 在系统上线前,为了看下系统能承受多大的并发和并发下的负载情况,常常会先进 ...

最新文章

  1. 高通量测序技术的原理及各平台优势和实践应用的分析
  2. 框架应用 : Spring - 开发详述
  3. 文字图片垂直居中对齐
  4. 图形界面不卡的linux,图形化界面linux(linaro)的安装小结
  5. 32GSSD组建RAID0后对硬盘的加速效果
  6. 字符串拼接数字 java_使用JAVA代码实现字符串的简单拼接
  7. wordpress html音乐,WordPress引用百度Ting音乐方法
  8. webapi实现AJAX多文件上传,AJAX调用webapi上传图片或文件
  9. NumPy 简介及安装
  10. 异步Udp监听关闭 出现异常,访问已释放的资源或者其他错误的解决方法
  11. C++string类常用函数 c++中的string常用函数用法总结
  12. CenturyLink设定NG-PON2部署阶段 业务、无线回程为初始服务目标
  13. 新的默认设置:Sass颜色同义词库
  14. centos usb转网口_Linux环境下使用 USB转串口驱动(一)
  15. navicat中文破解
  16. c语言扩展欧几里得算法编程实现,C语言实现欧几里得算法与扩展欧几里得算法.doc...
  17. 计算机图像双曲线的代码,双曲线
  18. RTI DDS 记录
  19. Rhinoceros mac版(犀牛三维建模软件)中文版
  20. vue中弹幕实现及优化

热门文章

  1. APP动效设计需要遵守哪些原则?
  2. python电商项目-首页广告展示
  3. oracle数值两倍函数,oracle函数总结:第二部分 数值型函数总结
  4. C4D致富经典入门到精通(一)
  5. POI对word进行基本导出(段落、表格)
  6. Pandas 毫秒级时间解析
  7. 银联商务PHP和JAVA实现3DES加密
  8. 【电气专业知识问答】问:什么叫变压器的接线组别?什么是变压器的接线组别的“时钟表示法“?
  9. CH4-面向对象下 (8个案例实现)
  10. 【34个项目实战案例】面对强势的甲方PM 怎么逆袭?