@rpgjs/tiledmap 5.0.0-beta.2 → 5.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/index.js +35 -49
- package/dist/client/index2.js +3998 -12
- package/dist/client/index3.js +38 -5221
- package/dist/client/index4.js +11 -18
- package/dist/client/index5.js +20 -49
- package/dist/client.d.ts +2 -1
- package/dist/index.d.ts +1 -1
- package/dist/server/index.js +12 -14
- package/dist/server/index2.js +3997 -15
- package/dist/server/index3.js +53 -4943
- package/dist/server/index4.js +15 -72
- package/dist/server.d.ts +2 -2
- package/package.json +8 -8
package/dist/server/index4.js
CHANGED
|
@@ -1,72 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
if (!Array.isArray(objects) || !Array.isArray(mapData?.events)) {
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
for (const obj of objects) {
|
|
20
|
-
if (!obj?.point) {
|
|
21
|
-
continue;
|
|
22
|
-
}
|
|
23
|
-
mapData.events = mapData.events.map((eventEntry) => {
|
|
24
|
-
if (eventEntry?.name === obj.name) {
|
|
25
|
-
return {
|
|
26
|
-
event: eventEntry,
|
|
27
|
-
x: obj.x,
|
|
28
|
-
y: obj.y
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
return eventEntry;
|
|
32
|
-
}).filter((eventEntry) => eventEntry !== null);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
function collectBlockedTileHitboxes(tiledMap) {
|
|
36
|
-
const hitboxes = [];
|
|
37
|
-
const mapWidth = tiledMap.width;
|
|
38
|
-
const mapHeight = tiledMap.height;
|
|
39
|
-
const tileWidth = tiledMap.tilewidth;
|
|
40
|
-
const tileHeight = tiledMap.tileheight;
|
|
41
|
-
for (let y = 0; y < mapHeight; y++) {
|
|
42
|
-
for (let x = 0; x < mapWidth; x++) {
|
|
43
|
-
const tileInfo = tiledMap.getTileByPosition(x * tileWidth, y * tileHeight, [0, 0], {
|
|
44
|
-
populateTiles: true
|
|
45
|
-
});
|
|
46
|
-
if (tileInfo.hasCollision) {
|
|
47
|
-
hitboxes.push({
|
|
48
|
-
id: createTiledHitboxId(x, y),
|
|
49
|
-
x: x * tileWidth,
|
|
50
|
-
y: y * tileHeight,
|
|
51
|
-
width: tileWidth,
|
|
52
|
-
height: tileHeight
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return hitboxes;
|
|
58
|
-
}
|
|
59
|
-
function mergeTiledHitboxes(existingHitboxes, tiledHitboxes) {
|
|
60
|
-
const preservedHitboxes = Array.isArray(existingHitboxes) ? existingHitboxes.filter((hitbox) => !isGeneratedTiledHitbox(hitbox)) : [];
|
|
61
|
-
return [...preservedHitboxes, ...tiledHitboxes];
|
|
62
|
-
}
|
|
63
|
-
function isGeneratedTiledHitbox(hitbox) {
|
|
64
|
-
return typeof hitbox?.id === "string" && hitbox.id.startsWith(TILED_HITBOX_ID_PREFIX);
|
|
65
|
-
}
|
|
66
|
-
function createTiledHitboxId(x, y) {
|
|
67
|
-
return `${TILED_HITBOX_ID_PREFIX}${x},${y}`;
|
|
68
|
-
}
|
|
69
|
-
export {
|
|
70
|
-
applyTiledPointEvents,
|
|
71
|
-
prepareTiledPhysicsData
|
|
72
|
-
};
|
|
1
|
+
import { applyTiledPointEvents, prepareTiledPhysicsData } from "./index3.js";
|
|
2
|
+
import { defineModule } from "@rpgjs/common";
|
|
3
|
+
//#region src/server.ts
|
|
4
|
+
var server_default = defineModule({ map: {
|
|
5
|
+
onBeforeUpdate(mapData, map) {
|
|
6
|
+
prepareTiledPhysicsData(mapData, map);
|
|
7
|
+
applyTiledPointEvents(mapData);
|
|
8
|
+
return map;
|
|
9
|
+
},
|
|
10
|
+
onPhysicsInit(map, context) {
|
|
11
|
+
prepareTiledPhysicsData(context?.mapData, map);
|
|
12
|
+
}
|
|
13
|
+
} });
|
|
14
|
+
//#endregion
|
|
15
|
+
export { server_default as default };
|
package/dist/server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RpgMap } from '@rpgjs/server';
|
|
1
|
+
import { RpgMap, RpgServer } from '@rpgjs/server';
|
|
2
2
|
import { MapClass } from '@canvasengine/tiled';
|
|
3
3
|
declare module "@rpgjs/server" {
|
|
4
4
|
interface RpgMap {
|
|
@@ -8,5 +8,5 @@ declare module "@rpgjs/server" {
|
|
|
8
8
|
export interface RpgTiledMap extends RpgMap {
|
|
9
9
|
tiled: MapClass;
|
|
10
10
|
}
|
|
11
|
-
declare const _default:
|
|
11
|
+
declare const _default: RpgServer;
|
|
12
12
|
export default _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rpgjs/tiledmap",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.3",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
"description": "RPGJS is a framework for creating RPG/MMORPG games",
|
|
24
24
|
"peerDependencies": {
|
|
25
25
|
"@canvasengine/presets": "*",
|
|
26
|
-
"@rpgjs/client": "5.0.0-beta.
|
|
27
|
-
"@rpgjs/common": "5.0.0-beta.
|
|
28
|
-
"@rpgjs/server": "5.0.0-beta.
|
|
29
|
-
"@rpgjs/vite": "5.0.0-beta.
|
|
26
|
+
"@rpgjs/client": "5.0.0-beta.3",
|
|
27
|
+
"@rpgjs/common": "5.0.0-beta.3",
|
|
28
|
+
"@rpgjs/server": "5.0.0-beta.3",
|
|
29
|
+
"@rpgjs/vite": "5.0.0-beta.3",
|
|
30
30
|
"canvasengine": "*"
|
|
31
31
|
},
|
|
32
32
|
"publishConfig": {
|
|
33
33
|
"access": "public"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@canvasengine/compiler": "^2.0.0-beta.
|
|
37
|
-
"vite": "^
|
|
36
|
+
"@canvasengine/compiler": "^2.0.0-beta.58",
|
|
37
|
+
"vite": "^8.0.10",
|
|
38
38
|
"vite-plugin-dts": "^4.5.4"
|
|
39
39
|
},
|
|
40
40
|
"type": "module",
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@canvasengine/tiled": "^2.0.0-beta.
|
|
42
|
+
"@canvasengine/tiled": "^2.0.0-beta.58"
|
|
43
43
|
},
|
|
44
44
|
"scripts": {
|
|
45
45
|
"dev": "vite build --watch",
|