From f14d5d7f2990308209d97502ddaeac0efbdbac53 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Sun, 10 Jul 2022 01:49:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=8B=E6=9C=BA=E7=AB=AF=E7=BC=A9=E7=95=A5?= =?UTF-8?q?=E5=9B=BE=E6=A8=A1=E7=B3=8A=20&=20terrains=E6=A8=A1=E7=B3=8A=20?= =?UTF-8?q?&=20=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 30 ++++++++++++++++++++++++++++++ _docs/index.md | 3 ++- _docs/script.md | 2 +- _docs/start.md | 3 +++ _server/CodeMirror/defs.js | 2 +- libs/control.js | 2 +- libs/maps.js | 9 +++++---- libs/ui.js | 6 +++--- project/materials/terrains.png | Bin 24527 -> 9272 bytes runtime.d.ts | 8 ++++++-- 10 files changed, 52 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 872a268e..2415a409 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,8 @@ HTML5 canvas制作的魔塔样板,支持全平台游戏! * [Demo / 样板效果](https://ckcz123.com/games/template/) * [Docs / 使用文档说明](https://ckcz123.github.io/mota-js/) * [Video / 视频教程](https://www.bilibili.com/video/av32781473/) +* [Video / 新版视频教程](https://www.bilibili.com/video/BV1SB4y1p7bg?share_source=copy_web) +* [Video / 脚本教程](https://www.bilibili.com/video/BV1uL411J7yZ?share_source=copy_web) ![样板](./docs/sample0.png) @@ -65,6 +67,34 @@ HTML5 canvas制作的魔塔样板,支持全平台游戏! ## 更新说明 +### 2022.7.10 HTML5魔塔样板V2.9.1 + +* [x] 修复更新状态栏延迟到下一动画帧引发的一系列bug,修改为增加一个是否立即更新的参数 +* [x] 修复resize导致canvas被清空的bug +* [x] 修复怪物属性栏光环叠加的说明bug +* [x] 修复自2.7.3增加薄墙以来导致的terrains模糊 +* [x] 修复手机端绘制缩略图的模糊问题 +* [x] 更新部分文档 + +### 2022.2.2 HTML5魔塔样板V2.9 + +* [x] 修复浏览地图使用楼传可无视楼梯边的bug +* [x] 修复utils.js里面的语法bug +* [x] 修复设置前景层背景层的图块后立刻刷新地图导致图块重新出现的bug +* [x] 修复商店长按与keyUp冲突的bug +* [x] 修复图片缩放以后缩放浏览器导致图片大小还原的bug +* [x] 修复缩略图不高清的bug +* [x] 修复大怪物的boxAnimate的bug +* [x] 优化updateStatusBar的性能 +* [x] \i支持enemy48和npc48 +* [x] 启动服务加入魔塔小课堂 +* [x] 分离怪物属性,将value分离成zone laser repulse等 +* [x] 复写可以新增参数 +* [x] 杀掉main.log +* [x] 完善runtime.d.ts,建议使用vscode进行编辑脚本 +* [x] 自动缩放最大化 +* [x] 缩放最高支持2.5倍缩放 + ### 2021.9.1 HTML5魔塔样板V2.8.2 * [x] 在游戏中,可以在大地图长按后拖动预览。(超大地图福音!) diff --git a/_docs/index.md b/_docs/index.md index 9899d8ec..8412bf8c 100644 --- a/_docs/index.md +++ b/_docs/index.md @@ -17,7 +17,8 @@ ckcz123)特意制作了这样一部HTML5魔塔样板。 继续查看文档的详细介绍,让你学会如何使用这一个样板来制作属于自己的HTML5魔塔,或者……任何非即时的网格地图游戏。 -本说明文档配有较为过时的B站视频教程,可供参考:[https://www.bilibili.com/video/av32781473/](https://www.bilibili.com/video/av32781473/)。 +* [新版视频教程](https://www.bilibili.com/video/BV1SB4y1p7bg?share_source=copy_web) +* [脚本教程](https://www.bilibili.com/video/BV1uL411J7yZ?share_source=copy_web) ========================================================================================== diff --git a/_docs/script.md b/_docs/script.md index e6333c5f..27af22b4 100644 --- a/_docs/script.md +++ b/_docs/script.md @@ -4,7 +4,7 @@ 在V2.6版本中,基本对整个项目代码进行了重写,更加方便造塔者的使用。 -可配合基础js教学视频 https://www.bilibili.com/video/BV1uL411J7yZ/ 使用。 +* [脚本教程视频](https://www.bilibili.com/video/BV1uL411J7yZ?share_source=copy_web) ## 控制台的使用 diff --git a/_docs/start.md b/_docs/start.md index 2cf2bf6c..fb21b017 100644 --- a/_docs/start.md +++ b/_docs/start.md @@ -2,6 +2,9 @@ ?> 在这一节中,将详细介绍做一部塔的流程。现在,让我们来做一部单层塔! +* [新版视频教程](https://www.bilibili.com/video/BV1SB4y1p7bg?share_source=copy_web) +* [脚本教程](https://www.bilibili.com/video/BV1uL411J7yZ?share_source=copy_web) + ## 前置需求 你需要满足如下条件才能进行制作:[样板下载地址](https://github.com/ckcz123/mota-js/releases)。 1. 操作系统: diff --git a/_server/CodeMirror/defs.js b/_server/CodeMirror/defs.js index 57b421ca..1c16b253 100644 --- a/_server/CodeMirror/defs.js +++ b/_server/CodeMirror/defs.js @@ -3393,7 +3393,7 @@ var terndefs_f6783a0a_522d_417e_8407_94c67b692e50 = [ "!doc": "负责一切UI界面的绘制。主要包括三个部分:
- 设置某个画布的属性与在某个画布上绘制的相关API
- 具体的某个UI界面的绘制
- 动态创建画布相关的API", "resizeCanvas": { "!doc": "重新设置一个自定义画布的大小", - "!type": "fn(name: string, x: number, y: number)" + "!type": "fn(name: string, x?: number, y?: number, styleOnly?: bool, isTempCanvas?: bool)" }, "deleteCanvas": { "!doc": "删除一个自定义画布
name: 画布名,也可以传入一个函数对所有画布进行筛选", diff --git a/libs/control.js b/libs/control.js index 3c385ee1..0bbed9c3 100644 --- a/libs/control.js +++ b/libs/control.js @@ -3284,7 +3284,7 @@ control.prototype.resize = function () { else { // 竖屏 core.domStyle.isVertical = true; - core.domStyle.scale = Math.min(1, (clientWidth - 2 * BORDER) / CANVAS_WIDTH); + core.domStyle.scale = Math.min((clientWidth - 2 * BORDER) / CANVAS_WIDTH); core.domStyle.availableScale = []; extendToolbar = false; } diff --git a/libs/maps.js b/libs/maps.js index dab3ae7d..bb461c32 100644 --- a/libs/maps.js +++ b/libs/maps.js @@ -38,10 +38,11 @@ maps.prototype._resetFloorImages = function () { } } -maps.prototype._setHDCanvasSize = function (ctx, width, height) { +maps.prototype._setHDCanvasSize = function (ctx, width, height, isTempCanvas) { ctx.setTransform(1, 0, 0, 1, 0, 0); var ratio = core.domStyle.ratio; if (ctx === core.bigmap.tempCanvas) ratio = core.domStyle.scale; + if (isTempCanvas) ratio = core.domStyle.ratio; if (width != null) ctx.canvas.width = width * ratio; if (height != null) ctx.canvas.height = height * ratio; ctx.scale(ratio, ratio); @@ -1736,7 +1737,7 @@ maps.prototype._drawThumbnail_drawTempCanvas = function (floorId, blocks, option if (options.noHD) { tempCanvas.canvas.width = width * 32 * scale; tempCanvas.canvas.height = height * 32 * scale; - } else core.resizeCanvas(tempCanvas, width * 32 * scale, height * 32 * scale); + } else core.resizeCanvas(tempCanvas, width * 32 * scale, height * 32 * scale, false, true); tempCanvas.scale(scale, scale); } else if (width * height > core.bigmap.threshold) { options.v2 = true; @@ -1749,13 +1750,13 @@ maps.prototype._drawThumbnail_drawTempCanvas = function (floorId, blocks, option if (centerY == null) centerY = Math.floor(height / 2); var offsetX = core.clamp(centerX - core.__HALF_SIZE__, 0, width - core.__SIZE__), offsetY = core.clamp(centerY - core.__HALF_SIZE__, 0, height - core.__SIZE__); - tempCanvas.translate(-32 * offsetX, -32 * offsetY); + tempCanvas.translate(-32 * offsetX, -32 * offsetY, false, true); } else { options.v2 = false; if (options.noHD) { tempCanvas.canvas.width = width * 32; tempCanvas.canvas.height = height * 32; - } else core.resizeCanvas(tempCanvas, width * 32, height * 32); + } else core.resizeCanvas(tempCanvas, width * 32, height * 32, false, true); } options.ctx = tempCanvas; diff --git a/libs/ui.js b/libs/ui.js index de41794f..8a7622f8 100644 --- a/libs/ui.js +++ b/libs/ui.js @@ -3454,15 +3454,15 @@ ui.prototype.rotateCanvas = function (name, angle, centerX, centerY) { } ////// canvas重置 ////// -ui.prototype.resizeCanvas = function (name, width, height, styleOnly) { +ui.prototype.resizeCanvas = function (name, width, height, styleOnly, isTempCanvas) { var ctx = core.getContextByName(name); if (!ctx) return null; if (width != null) { - if (!styleOnly) core.maps._setHDCanvasSize(ctx, width, null); + if (!styleOnly) core.maps._setHDCanvasSize(ctx, width, null, isTempCanvas); ctx.canvas.style.width = width * core.domStyle.scale + 'px'; } if (height != null) { - if (!styleOnly) core.maps._setHDCanvasSize(ctx, null, height); + if (!styleOnly) core.maps._setHDCanvasSize(ctx, null, height, isTempCanvas); ctx.canvas.style.height = height * core.domStyle.scale + 'px'; } return ctx; diff --git a/project/materials/terrains.png b/project/materials/terrains.png index b98485c603f1b0f1bc8edb1a4f4749cb12a047b9..6d96b933be991bd051304f4c39f1a7b4180b93c3 100644 GIT binary patch literal 9272 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 Bsxbfn literal 24527 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 R6F0zX`5>n%+aPTo{%