@ debuffjp/图示
卸载时的提力:已切开,分批渲染 draw,瓦片相撞,以及 铺设 财务报告和审定财务报表 LDtk 数字。 。 。 .
import { fromTiled } from "@debuffjp/tilemap";
const map = fromTiled(assets.json("level1"), { image: (path) => assets.image("tiles") });
const player = { x: 32, y: 32, w: 12, h: 14 };
// update(dt)
const hit = map.move(player, vx * dt, vy * dt);
if (hit.onGround) vy = 0;
// render(draw)
draw.withCamera(game.camera, () => map.draw(draw, { camera: game.camera }));
绘制地图
- 铺设 (单位:千美元)
.tmj:fromTiled(json, { image, tilesets? }). Orthogonal mapers, CSV 或 无压缩 Base64, 无限地图, 层组(offets, 不透明, parallax), 翻转和旋转旗, 外部平板, 对象层. - LDtk 数字 (单位:千美元)
.ldtk:fromLdtk(project, { level?, image, intGrid? }). 平面, AutoLayer(被打碎的平面变为多层), IntGrid相撞, 实体和平面字段. - 在代码中数字 :
new Tilemap({ width, height, tileWidth, tileHeight, tilesets, layers }),则map.set(layer, col, row, id)用于程序层面.
碰撞
| 来源 | 成为 |
|---|---|
平地平地财产 solid 编号 : collides | 固态 |
平地平地财产 oneWay | 单向( 从上而来) |
平铺层属性 collision: true | 层中的每一块瓷砖都是坚固的 |
| LDttk 内嵌值 | 固态; 数值命名 oneWay, (中文(简体) ), one_way 或者说 platform 单向; 以 intGrid |
| 代码 | map.setCollision(col, row, Collision.Solid) |
map.move(body, dx, dy, { dropThrough? }) 移动 { x, y, w, h } 框中,解析 X 然后解析 Y。 它能快速地走入瓦片大小的台阶 所以没有隧道,然后返回 onGround, (中文(简体) ), hitCeiling, (中文(简体) ), hitLeft, (中文(简体) ), hitRight。 。 。 . map.edges 绘图边框为固态的控件(默认:侧为固态,上下打开).
API 密码
map.draw(draw, { camera?, layers? }): 仅绘制视图中的平面, 应用平面, 不分配每平面map.get / set / tileAt, (中文(简体) ),map.tileProperties(id), (中文(简体) ),map.objects(layer), (中文(简体) ),map.propertiesmap.collisionAt(col, row), (中文(简体) ),map.collideFrom(layers, { everyTile? }), (中文(简体) ),overlapsSolid(map, body)- 资产管道装载量
.tmj, (中文(简体) ),.tsj财务报告和审定财务报表.ldtk作为 JSON 的文件