@rpgjs/common 3.0.0-beta.6 → 3.0.0-beta.9
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/lib/Event.d.ts +1 -1
- package/lib/Event.js +3 -2
- package/lib/Event.js.map +1 -1
- package/lib/Game.d.ts +9 -9
- package/lib/Game.js +46 -27
- package/lib/Game.js.map +1 -1
- package/lib/Hit.d.ts +17 -5
- package/lib/Hit.js +23 -11
- package/lib/Hit.js.map +1 -1
- package/lib/Map.d.ts +67 -2
- package/lib/Map.js +87 -8
- package/lib/Map.js.map +1 -1
- package/lib/Module.d.ts +3 -1
- package/lib/Module.js +89 -60
- package/lib/Module.js.map +1 -1
- package/lib/Player.d.ts +14 -24
- package/lib/Player.js +189 -123
- package/lib/Player.js.map +1 -1
- package/lib/Plugin.d.ts +8 -1
- package/lib/Plugin.js +7 -1
- package/lib/Plugin.js.map +1 -1
- package/lib/Scheduler.js +1 -1
- package/lib/Scheduler.js.map +1 -1
- package/lib/Shape.d.ts +14 -2
- package/lib/Shape.js +78 -20
- package/lib/Shape.js.map +1 -1
- package/lib/Utils.d.ts +3 -3
- package/lib/Utils.js +11 -3
- package/lib/Utils.js.map +1 -1
- package/lib/WorldMaps.d.ts +103 -0
- package/lib/WorldMaps.js +170 -0
- package/lib/WorldMaps.js.map +1 -0
- package/lib/index.d.ts +6 -5
- package/lib/index.js +11 -7
- package/lib/index.js.map +1 -1
- package/lib/transports/io.d.ts +4 -2
- package/lib/transports/io.js +12 -5
- package/lib/transports/io.js.map +1 -1
- package/lib/workers/move.js +32 -21
- package/lib/workers/move.js.map +1 -1
- package/package.json +5 -3
package/lib/Event.d.ts
CHANGED
package/lib/Event.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RpgCommonEvent = void 0;
|
|
3
4
|
const Player_1 = require("./Player");
|
|
4
|
-
class
|
|
5
|
+
class RpgCommonEvent extends Player_1.RpgCommonPlayer {
|
|
5
6
|
}
|
|
6
|
-
exports.
|
|
7
|
+
exports.RpgCommonEvent = RpgCommonEvent;
|
|
7
8
|
//# sourceMappingURL=Event.js.map
|
package/lib/Event.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Event.js","sourceRoot":"","sources":["../src/Event.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Event.js","sourceRoot":"","sources":["../src/Event.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,MAAa,cAAe,SAAQ,wBAAe;CAAG;AAAtD,wCAAsD"}
|
package/lib/Game.d.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { EventEmitter } from './EventEmitter';
|
|
2
2
|
import { RpgCommonPlayer } from './Player';
|
|
3
3
|
import { GameWorker } from './Worker';
|
|
4
|
-
export
|
|
5
|
-
|
|
4
|
+
export declare enum GameSide {
|
|
5
|
+
Server = "server",
|
|
6
|
+
Client = "client",
|
|
7
|
+
Worker = "worker"
|
|
8
|
+
}
|
|
9
|
+
export declare class RpgCommonGame extends EventEmitter {
|
|
10
|
+
side: GameSide;
|
|
6
11
|
events: any;
|
|
7
12
|
world: any;
|
|
8
|
-
|
|
9
|
-
standalone: boolean;
|
|
10
|
-
clientEngine: any;
|
|
11
|
-
renderer: any;
|
|
12
|
-
_playerClass: any;
|
|
13
|
-
constructor(side: string);
|
|
13
|
+
constructor(side: GameSide);
|
|
14
14
|
get isWorker(): boolean;
|
|
15
15
|
start(world: any): void;
|
|
16
16
|
createWorkers(options: any): GameWorker;
|
|
17
17
|
addObject(_class: any, playerId?: string): any;
|
|
18
18
|
addPlayer(playerClass: any, playerId?: string): any;
|
|
19
19
|
addEvent(eventClass: any, eventId?: string): any;
|
|
20
|
-
processInput(playerId: string):
|
|
20
|
+
processInput<RpgPlayer extends RpgCommonPlayer>(playerId: string): Promise<RpgPlayer>;
|
|
21
21
|
}
|
package/lib/Game.js
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RpgCommonGame = exports.GameSide = void 0;
|
|
3
13
|
const Utils_1 = require("./Utils");
|
|
4
14
|
const EventEmitter_1 = require("./EventEmitter");
|
|
5
15
|
const Player_1 = require("./Player");
|
|
6
16
|
const Input_1 = require("./Input");
|
|
7
17
|
const Plugin_1 = require("./Plugin");
|
|
8
18
|
const Worker_1 = require("./Worker");
|
|
9
|
-
|
|
19
|
+
var GameSide;
|
|
20
|
+
(function (GameSide) {
|
|
21
|
+
GameSide["Server"] = "server";
|
|
22
|
+
GameSide["Client"] = "client";
|
|
23
|
+
GameSide["Worker"] = "worker";
|
|
24
|
+
})(GameSide = exports.GameSide || (exports.GameSide = {}));
|
|
25
|
+
class RpgCommonGame extends EventEmitter_1.EventEmitter {
|
|
10
26
|
constructor(side) {
|
|
11
27
|
super();
|
|
12
28
|
this.side = side;
|
|
@@ -42,35 +58,38 @@ class Game extends EventEmitter_1.EventEmitter {
|
|
|
42
58
|
return event;
|
|
43
59
|
}
|
|
44
60
|
processInput(playerId) {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const inputData = player.pendingMove.shift();
|
|
53
|
-
let { input, deltaTimeInt } = inputData;
|
|
54
|
-
let moving = false;
|
|
55
|
-
if (input == Input_1.Control.Action) {
|
|
56
|
-
player.triggerCollisionWith(Player_1.RpgCommonPlayer.ACTIONS.ACTION);
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const player = this.world.getObject(playerId);
|
|
63
|
+
if (!player)
|
|
64
|
+
return player;
|
|
65
|
+
if (!player.canMove) {
|
|
66
|
+
player.pendingMove = [];
|
|
67
|
+
return player;
|
|
57
68
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
input
|
|
62
|
-
moving =
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
routesMove.push(inputData);
|
|
69
|
+
const routesMove = [];
|
|
70
|
+
while (player.pendingMove.length > 0) {
|
|
71
|
+
const inputData = player.pendingMove.shift();
|
|
72
|
+
let { input, deltaTimeInt } = inputData;
|
|
73
|
+
let moving = false;
|
|
74
|
+
if (input == Input_1.Control.Action) {
|
|
75
|
+
player.triggerCollisionWith(Player_1.RpgCommonPlayer.ACTIONS.ACTION);
|
|
66
76
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
77
|
+
else if (input == Player_1.Direction.Left ||
|
|
78
|
+
input == Player_1.Direction.Right ||
|
|
79
|
+
input == Player_1.Direction.Up ||
|
|
80
|
+
input == Player_1.Direction.Down) {
|
|
81
|
+
moving = true;
|
|
82
|
+
const isMove = yield player.moveByDirection(+input, deltaTimeInt || 1);
|
|
83
|
+
if (isMove) {
|
|
84
|
+
routesMove.push(inputData);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// TODO, is Worker
|
|
70
88
|
Plugin_1.RpgPlugin.emit('Server.onInput', [player, Object.assign(Object.assign({}, inputData), { moving })], true);
|
|
71
|
-
|
|
72
|
-
|
|
89
|
+
}
|
|
90
|
+
return player;
|
|
91
|
+
});
|
|
73
92
|
}
|
|
74
93
|
}
|
|
75
|
-
exports.
|
|
94
|
+
exports.RpgCommonGame = RpgCommonGame;
|
|
76
95
|
//# sourceMappingURL=Game.js.map
|
package/lib/Game.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":"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"}
|
package/lib/Hit.d.ts
CHANGED
|
@@ -3,9 +3,14 @@ export interface HitObject {
|
|
|
3
3
|
ellipse?: boolean;
|
|
4
4
|
gid?: number;
|
|
5
5
|
height: number;
|
|
6
|
-
polygon?:
|
|
6
|
+
polygon?: {
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
}[];
|
|
7
10
|
polyline?: any[];
|
|
8
|
-
properties?:
|
|
11
|
+
properties?: {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
};
|
|
9
14
|
rotation?: number;
|
|
10
15
|
visible?: boolean;
|
|
11
16
|
width: number;
|
|
@@ -14,15 +19,22 @@ export interface HitObject {
|
|
|
14
19
|
type?: string;
|
|
15
20
|
name?: string;
|
|
16
21
|
}
|
|
22
|
+
export declare enum HitType {
|
|
23
|
+
Box = "box",
|
|
24
|
+
Circle = "circle",
|
|
25
|
+
Polygon = "polygon"
|
|
26
|
+
}
|
|
17
27
|
declare class HitClass {
|
|
18
28
|
createObjectHitbox(x: number, y: number, z: number, w: number, h: number): SAT.Box;
|
|
19
29
|
getHitbox(obj: HitObject, offset?: {
|
|
20
30
|
x: number;
|
|
21
31
|
y: number;
|
|
22
32
|
}): {
|
|
23
|
-
properties:
|
|
24
|
-
|
|
25
|
-
|
|
33
|
+
properties: {
|
|
34
|
+
[key: string]: any;
|
|
35
|
+
} | undefined;
|
|
36
|
+
hitbox: SAT;
|
|
37
|
+
type: string;
|
|
26
38
|
name: string | undefined;
|
|
27
39
|
};
|
|
28
40
|
testPolyCollision(type: string, hit1: SAT, hit2: SAT): boolean;
|
package/lib/Hit.js
CHANGED
|
@@ -3,8 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Hit = void 0;
|
|
6
|
+
exports.Hit = exports.HitType = void 0;
|
|
7
7
|
const sat_1 = __importDefault(require("sat"));
|
|
8
|
+
const Utils_1 = require("./Utils");
|
|
9
|
+
var HitType;
|
|
10
|
+
(function (HitType) {
|
|
11
|
+
HitType["Box"] = "box";
|
|
12
|
+
HitType["Circle"] = "circle";
|
|
13
|
+
HitType["Polygon"] = "polygon";
|
|
14
|
+
})(HitType = exports.HitType || (exports.HitType = {}));
|
|
8
15
|
class HitClass {
|
|
9
16
|
createObjectHitbox(x, y, z, w, h) {
|
|
10
17
|
return new sat_1.default.Box(new sat_1.default.Vector(x, y - z), w, h);
|
|
@@ -16,15 +23,16 @@ class HitClass {
|
|
|
16
23
|
const x = obj.x + offset.x;
|
|
17
24
|
const y = obj.y + offset.y;
|
|
18
25
|
if (obj.ellipse) {
|
|
19
|
-
type =
|
|
20
|
-
|
|
26
|
+
type = HitType.Circle;
|
|
27
|
+
const radius = obj.width / 2;
|
|
28
|
+
hitbox = new sat_1.default.Circle(new sat_1.default.Vector(x + radius, y + radius), radius);
|
|
21
29
|
}
|
|
22
30
|
else if (obj.polygon) {
|
|
23
|
-
type =
|
|
31
|
+
type = HitType.Polygon;
|
|
24
32
|
hitbox = new sat_1.default.Polygon(new sat_1.default.Vector(x, y), obj.polygon.map(pos => new sat_1.default.Vector(+pos.x, +pos.y)));
|
|
25
33
|
}
|
|
26
34
|
else if (!obj.polygon && obj.width > 0 && obj.height > 0) {
|
|
27
|
-
type =
|
|
35
|
+
type = HitType.Box;
|
|
28
36
|
hitbox = new sat_1.default.Box(new sat_1.default.Vector(x, y), obj.width, obj.height);
|
|
29
37
|
}
|
|
30
38
|
else {
|
|
@@ -40,15 +48,19 @@ class HitClass {
|
|
|
40
48
|
}
|
|
41
49
|
testPolyCollision(type, hit1, hit2) {
|
|
42
50
|
let collided = false;
|
|
51
|
+
if (Utils_1.isInstanceOf(hit1, sat_1.default.Box))
|
|
52
|
+
hit1 = hit1.toPolygon();
|
|
53
|
+
if (Utils_1.isInstanceOf(hit2, sat_1.default.Box))
|
|
54
|
+
hit2 = hit2.toPolygon();
|
|
43
55
|
switch (type) {
|
|
44
|
-
case
|
|
45
|
-
collided = sat_1.default.testPolygonPolygon(hit1
|
|
56
|
+
case HitType.Box:
|
|
57
|
+
collided = sat_1.default.testPolygonPolygon(hit1, hit2);
|
|
46
58
|
break;
|
|
47
|
-
case
|
|
48
|
-
collided = sat_1.default.testPolygonCircle(hit1
|
|
59
|
+
case HitType.Circle:
|
|
60
|
+
collided = sat_1.default.testPolygonCircle(hit1, hit2);
|
|
49
61
|
break;
|
|
50
|
-
case
|
|
51
|
-
collided = sat_1.default.testPolygonPolygon(hit1, hit2
|
|
62
|
+
case HitType.Polygon:
|
|
63
|
+
collided = sat_1.default.testPolygonPolygon(hit1, hit2);
|
|
52
64
|
break;
|
|
53
65
|
}
|
|
54
66
|
return collided;
|
package/lib/Hit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hit.js","sourceRoot":"","sources":["../src/Hit.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAqB;
|
|
1
|
+
{"version":3,"file":"Hit.js","sourceRoot":"","sources":["../src/Hit.ts"],"names":[],"mappings":"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"}
|
package/lib/Map.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HitObject } from './Hit';
|
|
2
2
|
import { RpgShape } from './Shape';
|
|
3
3
|
import { VirtualGrid } from './VirtualGrid';
|
|
4
|
+
import { RpgCommonWorldMaps } from './WorldMaps';
|
|
4
5
|
export interface Tile {
|
|
5
6
|
id: number;
|
|
6
7
|
terrain: any[];
|
|
@@ -28,8 +29,16 @@ export interface LayerInfo {
|
|
|
28
29
|
objects: HitObject[];
|
|
29
30
|
tiles: Tile[];
|
|
30
31
|
}
|
|
31
|
-
export
|
|
32
|
+
export declare class RpgCommonMap {
|
|
33
|
+
/**
|
|
34
|
+
* @title map id
|
|
35
|
+
* @readonly
|
|
36
|
+
* @prop {string} [id]
|
|
37
|
+
* @memberof Map
|
|
38
|
+
* */
|
|
39
|
+
readonly id: string;
|
|
32
40
|
grid: VirtualGrid;
|
|
41
|
+
gridShapes: VirtualGrid;
|
|
33
42
|
/**
|
|
34
43
|
* @title Data of map
|
|
35
44
|
* @prop {object} [data]
|
|
@@ -64,8 +73,35 @@ export default class RpgCommonMap {
|
|
|
64
73
|
* @memberof RpgSceneMap
|
|
65
74
|
* */
|
|
66
75
|
layers: LayerInfo[];
|
|
67
|
-
private
|
|
76
|
+
private worldMapParent;
|
|
77
|
+
/**
|
|
78
|
+
* Retrieves the X position of the map in the world (0 if no world assigned)
|
|
79
|
+
*
|
|
80
|
+
* @title World X Position
|
|
81
|
+
* @prop {number} [worldX]
|
|
82
|
+
* @readonly
|
|
83
|
+
* @since 3.0.0-beta.8
|
|
84
|
+
* @memberof Map
|
|
85
|
+
* */
|
|
86
|
+
get worldX(): number;
|
|
87
|
+
/**
|
|
88
|
+
* Retrieves the Y position of the map in the world (0 if no world assigned)
|
|
89
|
+
*
|
|
90
|
+
* @title World Y Position
|
|
91
|
+
* @prop {number} [worldY]
|
|
92
|
+
* @readonly
|
|
93
|
+
* @since 3.0.0-beta.8
|
|
94
|
+
* @memberof Map
|
|
95
|
+
* */
|
|
96
|
+
get worldY(): number;
|
|
97
|
+
/**
|
|
98
|
+
* Memorize the maps so you don't have to make a new request or open a file each time you load a map
|
|
99
|
+
*/
|
|
68
100
|
static get buffer(): Map<any, any>;
|
|
101
|
+
/**
|
|
102
|
+
* In RPG mode, to avoid confusion with buffer, we have a new variable to memorize the maps
|
|
103
|
+
*/
|
|
104
|
+
static get bufferClient(): Map<any, any>;
|
|
69
105
|
load(data: any): void;
|
|
70
106
|
/**
|
|
71
107
|
* @title Width of the map in pixels
|
|
@@ -246,4 +282,33 @@ export default class RpgCommonMap {
|
|
|
246
282
|
* @returns TileInfo
|
|
247
283
|
*/
|
|
248
284
|
getTile(hitbox: any, x: number, y: number, z?: [number, number]): TileInfo;
|
|
285
|
+
/**
|
|
286
|
+
* Assign the map to a world
|
|
287
|
+
|
|
288
|
+
* @title Assign the map to a world
|
|
289
|
+
* @method map.setInWorldMaps(name)
|
|
290
|
+
* @param {RpgWorldMaps} worldMap world maps
|
|
291
|
+
* @since 3.0.0-beta.8
|
|
292
|
+
* @memberof Map
|
|
293
|
+
*/
|
|
294
|
+
setInWorldMaps(worldMap: RpgCommonWorldMaps): void;
|
|
295
|
+
/**
|
|
296
|
+
* Remove this map from the world
|
|
297
|
+
* @title Remove this map from the world
|
|
298
|
+
* @method map.removeFromWorldMaps()
|
|
299
|
+
* @returns {boolean | undefined}
|
|
300
|
+
* @since 3.0.0-beta.8
|
|
301
|
+
* @memberof Map
|
|
302
|
+
*/
|
|
303
|
+
removeFromWorldMaps(): boolean | undefined;
|
|
304
|
+
/**
|
|
305
|
+
* Recover the world attached to this map (`undefined` if no world attached)
|
|
306
|
+
|
|
307
|
+
* @title Get attached World
|
|
308
|
+
* @method map.getInWorldMaps()
|
|
309
|
+
* @return {RpgCommonWorldMaps | undefined}
|
|
310
|
+
* @since 3.0.0-beta.8
|
|
311
|
+
* @memberof Map
|
|
312
|
+
*/
|
|
313
|
+
getInWorldMaps(): RpgCommonWorldMaps | undefined;
|
|
249
314
|
}
|
package/lib/Map.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RpgCommonMap = void 0;
|
|
3
4
|
const Utils_1 = require("./Utils");
|
|
4
5
|
const Shape_1 = require("./Shape");
|
|
5
6
|
const Hit_1 = require("./Hit");
|
|
6
7
|
const VirtualGrid_1 = require("./VirtualGrid");
|
|
7
8
|
const buffer = new Map();
|
|
9
|
+
const bufferClient = new Map();
|
|
8
10
|
class RpgCommonMap {
|
|
9
11
|
constructor() {
|
|
10
12
|
this.width = 0;
|
|
@@ -33,11 +35,47 @@ class RpgCommonMap {
|
|
|
33
35
|
* @memberof RpgSceneMap
|
|
34
36
|
* */
|
|
35
37
|
this.layers = [];
|
|
36
|
-
|
|
38
|
+
/** @internal */
|
|
39
|
+
this.shapes = {};
|
|
37
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Retrieves the X position of the map in the world (0 if no world assigned)
|
|
43
|
+
*
|
|
44
|
+
* @title World X Position
|
|
45
|
+
* @prop {number} [worldX]
|
|
46
|
+
* @readonly
|
|
47
|
+
* @since 3.0.0-beta.8
|
|
48
|
+
* @memberof Map
|
|
49
|
+
* */
|
|
50
|
+
get worldX() {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
return ((_b = (_a = this.getInWorldMaps()) === null || _a === void 0 ? void 0 : _a.getMapInfo(this.id)) === null || _b === void 0 ? void 0 : _b.x) || 0;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Retrieves the Y position of the map in the world (0 if no world assigned)
|
|
56
|
+
*
|
|
57
|
+
* @title World Y Position
|
|
58
|
+
* @prop {number} [worldY]
|
|
59
|
+
* @readonly
|
|
60
|
+
* @since 3.0.0-beta.8
|
|
61
|
+
* @memberof Map
|
|
62
|
+
* */
|
|
63
|
+
get worldY() {
|
|
64
|
+
var _a, _b;
|
|
65
|
+
return ((_b = (_a = this.getInWorldMaps()) === null || _a === void 0 ? void 0 : _a.getMapInfo(this.id)) === null || _b === void 0 ? void 0 : _b.y) || 0;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Memorize the maps so you don't have to make a new request or open a file each time you load a map
|
|
69
|
+
*/
|
|
38
70
|
static get buffer() {
|
|
39
71
|
return buffer;
|
|
40
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* In RPG mode, to avoid confusion with buffer, we have a new variable to memorize the maps
|
|
75
|
+
*/
|
|
76
|
+
static get bufferClient() {
|
|
77
|
+
return bufferClient;
|
|
78
|
+
}
|
|
41
79
|
load(data) {
|
|
42
80
|
this.data = data;
|
|
43
81
|
this.width = data.width;
|
|
@@ -46,6 +84,7 @@ class RpgCommonMap {
|
|
|
46
84
|
this.height = data.height;
|
|
47
85
|
this.layers = data.layers;
|
|
48
86
|
this.grid = new VirtualGrid_1.VirtualGrid(this.width, this.tileWidth, this.tileHeight).zoom(10);
|
|
87
|
+
this.gridShapes = new VirtualGrid_1.VirtualGrid(this.width, this.tileWidth, this.tileHeight).zoom(20);
|
|
49
88
|
this._extractShapes();
|
|
50
89
|
}
|
|
51
90
|
/**
|
|
@@ -126,12 +165,15 @@ class RpgCommonMap {
|
|
|
126
165
|
* @memberof Map
|
|
127
166
|
*/
|
|
128
167
|
createShape(obj) {
|
|
129
|
-
obj.name = (obj.name || Utils_1.generateUID());
|
|
168
|
+
const id = obj.name = (obj.name || Utils_1.generateUID());
|
|
130
169
|
obj.properties = obj.properties || {};
|
|
131
170
|
const shape = new Shape_1.RpgShape(obj);
|
|
132
|
-
this.shapes
|
|
171
|
+
this.shapes[id] = shape;
|
|
172
|
+
if (!shape.isShapePosition()) {
|
|
173
|
+
this.gridShapes.insertInCells(id, shape.getSizeBox(this.tileWidth));
|
|
174
|
+
}
|
|
133
175
|
// trick to sync with client
|
|
134
|
-
return this.shapes[
|
|
176
|
+
return this.shapes[id];
|
|
135
177
|
}
|
|
136
178
|
/**
|
|
137
179
|
* Delete a shape
|
|
@@ -144,7 +186,8 @@ class RpgCommonMap {
|
|
|
144
186
|
*/
|
|
145
187
|
removeShape(name) {
|
|
146
188
|
// TODO: out players after delete shape
|
|
147
|
-
this.shapes = this.shapes.filter(shape => shape.name != name)
|
|
189
|
+
//this.shapes = this.shapes.filter(shape => shape.name != name)
|
|
190
|
+
delete this.shapes[name];
|
|
148
191
|
}
|
|
149
192
|
/**
|
|
150
193
|
* Return all shapes on the map
|
|
@@ -156,7 +199,7 @@ class RpgCommonMap {
|
|
|
156
199
|
* @memberof RpgSceneMap
|
|
157
200
|
*/
|
|
158
201
|
getShapes() {
|
|
159
|
-
return this.shapes;
|
|
202
|
+
return Object.values(this.shapes);
|
|
160
203
|
}
|
|
161
204
|
/**
|
|
162
205
|
* Returns a shape by its name. Returns undefined is nothing is found
|
|
@@ -169,7 +212,7 @@ class RpgCommonMap {
|
|
|
169
212
|
* @memberof RpgSceneMap
|
|
170
213
|
*/
|
|
171
214
|
getShape(name) {
|
|
172
|
-
return this.
|
|
215
|
+
return this.getShapes().find(shape => shape.name == name);
|
|
173
216
|
}
|
|
174
217
|
getPositionByShape(filter) {
|
|
175
218
|
const startsFind = this.getShapes().filter(filter);
|
|
@@ -353,6 +396,42 @@ class RpgCommonMap {
|
|
|
353
396
|
}
|
|
354
397
|
return tile;
|
|
355
398
|
}
|
|
399
|
+
/**
|
|
400
|
+
* Assign the map to a world
|
|
401
|
+
|
|
402
|
+
* @title Assign the map to a world
|
|
403
|
+
* @method map.setInWorldMaps(name)
|
|
404
|
+
* @param {RpgWorldMaps} worldMap world maps
|
|
405
|
+
* @since 3.0.0-beta.8
|
|
406
|
+
* @memberof Map
|
|
407
|
+
*/
|
|
408
|
+
setInWorldMaps(worldMap) {
|
|
409
|
+
this.worldMapParent = worldMap;
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* Remove this map from the world
|
|
413
|
+
* @title Remove this map from the world
|
|
414
|
+
* @method map.removeFromWorldMaps()
|
|
415
|
+
* @returns {boolean | undefined}
|
|
416
|
+
* @since 3.0.0-beta.8
|
|
417
|
+
* @memberof Map
|
|
418
|
+
*/
|
|
419
|
+
removeFromWorldMaps() {
|
|
420
|
+
var _a;
|
|
421
|
+
return (_a = this.worldMapParent) === null || _a === void 0 ? void 0 : _a.removeMap(this.id);
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Recover the world attached to this map (`undefined` if no world attached)
|
|
425
|
+
|
|
426
|
+
* @title Get attached World
|
|
427
|
+
* @method map.getInWorldMaps()
|
|
428
|
+
* @return {RpgCommonWorldMaps | undefined}
|
|
429
|
+
* @since 3.0.0-beta.8
|
|
430
|
+
* @memberof Map
|
|
431
|
+
*/
|
|
432
|
+
getInWorldMaps() {
|
|
433
|
+
return this.worldMapParent;
|
|
434
|
+
}
|
|
356
435
|
}
|
|
357
|
-
exports.
|
|
436
|
+
exports.RpgCommonMap = RpgCommonMap;
|
|
358
437
|
//# sourceMappingURL=Map.js.map
|
package/lib/Map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Map.js","sourceRoot":"","sources":["../src/Map.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Map.js","sourceRoot":"","sources":["../src/Map.ts"],"names":[],"mappings":"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"}
|
package/lib/Module.d.ts
CHANGED
|
@@ -10,5 +10,7 @@ export declare type ModuleType = ModuleSide | [
|
|
|
10
10
|
}
|
|
11
11
|
];
|
|
12
12
|
export declare function RpgModule<T>(options: T): (target: any) => void;
|
|
13
|
-
export declare function loadModules(modules: any, obj: any):
|
|
13
|
+
export declare function loadModules(modules: any, obj: any, middleware?: Function): Promise<{
|
|
14
|
+
playerProps: any;
|
|
15
|
+
}>;
|
|
14
16
|
export {};
|