react-simple-game-engine 0.2.102 → 0.2.104
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/classes/entities/entity-sult.d.ts +6 -2
- package/lib/classes/entities/entity-sult.d.ts.map +1 -1
- package/lib/classes/entities/entity-sult.js +8 -4
- package/lib/classes/entities/entity.d.ts +24 -3
- package/lib/classes/entities/entity.d.ts.map +1 -1
- package/lib/classes/entities/entity.js +18 -6
- package/lib/classes/sprites/sprite.d.ts.map +1 -1
- package/lib/classes/sprites/sprite.js +4 -1
- package/lib/classes/world-management.d.ts.map +1 -1
- package/lib/classes/world-management.js +9 -3
- package/lib/export-types.d.ts +1 -0
- package/lib/export-types.d.ts.map +1 -1
- package/package.json +1 -1
@@ -33,12 +33,16 @@ export declare abstract class EntitySult<P = any> implements Initialler<P> {
|
|
33
33
|
getProperty<T>(name: string): T;
|
34
34
|
preInitial(worldManagement: WorldManagement): void;
|
35
35
|
active(_: WorldManagement): void;
|
36
|
+
bootstrapCompleted(_: WorldManagement): void;
|
36
37
|
/**
|
37
|
-
* invoke when
|
38
|
+
* invoke when entity is added into world
|
38
39
|
* @void
|
39
40
|
*/
|
40
|
-
bootstrapCompleted(_: WorldManagement): void;
|
41
41
|
onActive(): void;
|
42
|
+
/**
|
43
|
+
* invoke when scene bootstrap completed, if entity that added after scene completed like ex: prefab, bullet,... then this function will not invoke
|
44
|
+
* @void
|
45
|
+
*/
|
42
46
|
onBootstrapCompleted(): void;
|
43
47
|
initial(params: P): void;
|
44
48
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"entity-sult.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity-sult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,8BAAsB,UAAU,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,UAAU,CAAC,CAAC,CAAC;IACzD,YAAY,EAAE,YAAY,CAAC;IAClC,SAAgB,EAAE,EAAE,MAAM,CAA8C;IAExE,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAK;IAEtB,QAAQ,CAAC,MAAM,IAAI,IAAI;IACvB,QAAQ,CAAC,IAAI,IAAI,IAAI;IAErB,IAAI,QAAQ,IAIY,EAAE,CAFzB;IAED,IAAI,QAAQ,CAAC,SAAS,EAAE,EAAE,EAMzB;IAED,IAAI,QAAQ,sBAEX;IAED,IAAI,UAAU,IAQc,MAAM,CANjC;IAED,IAAI,IAAI,IAWQ,MAAM,CATrB;IAED,IAAI,UAAU,CAAC,WAAW,EAAE,MAAM,EAKjC;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAUrB;IAED,IAAI,MAAM,oBAET;IAED,IAAI,KAAK,eAER;IAED,IAAI,eAAe,CAAC,gBAAgB,EAAE,eAAe,EAOpD;IAED,IAAI,eAAe,IATmB,eAAe,CAWpD;IAED,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IASxD,WAAW,CAAC,MAAM,EAAE,UAAU;IAK9B,OAAO,CAAC,MAAM,EAAE,UAAU;IAO1B,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAI/B,UAAU,CAAC,eAAe,EAAE,eAAe;IAO3C,MAAM,CAAC,CAAC,EAAE,eAAe;IAKzB
|
1
|
+
{"version":3,"file":"entity-sult.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity-sult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,8BAAsB,UAAU,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,UAAU,CAAC,CAAC,CAAC;IACzD,YAAY,EAAE,YAAY,CAAC;IAClC,SAAgB,EAAE,EAAE,MAAM,CAA8C;IAExE,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAK;IAEtB,QAAQ,CAAC,MAAM,IAAI,IAAI;IACvB,QAAQ,CAAC,IAAI,IAAI,IAAI;IAErB,IAAI,QAAQ,IAIY,EAAE,CAFzB;IAED,IAAI,QAAQ,CAAC,SAAS,EAAE,EAAE,EAMzB;IAED,IAAI,QAAQ,sBAEX;IAED,IAAI,UAAU,IAQc,MAAM,CANjC;IAED,IAAI,IAAI,IAWQ,MAAM,CATrB;IAED,IAAI,UAAU,CAAC,WAAW,EAAE,MAAM,EAKjC;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAUrB;IAED,IAAI,MAAM,oBAET;IAED,IAAI,KAAK,eAER;IAED,IAAI,eAAe,CAAC,gBAAgB,EAAE,eAAe,EAOpD;IAED,IAAI,eAAe,IATmB,eAAe,CAWpD;IAED,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IASxD,WAAW,CAAC,MAAM,EAAE,UAAU;IAK9B,OAAO,CAAC,MAAM,EAAE,UAAU;IAO1B,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAI/B,UAAU,CAAC,eAAe,EAAE,eAAe;IAO3C,MAAM,CAAC,CAAC,EAAE,eAAe;IAKzB,kBAAkB,CAAC,CAAC,EAAE,eAAe;IAIrC;;;OAGG;IACH,QAAQ;IAER;;;OAGG;IACH,oBAAoB;IAEpB,OAAO,CAAC,MAAM,EAAE,CAAC;CAClB"}
|
@@ -118,14 +118,18 @@ var EntitySult = /** @class */ (function () {
|
|
118
118
|
// console.log(`Active entity (name : ${this._name})`);
|
119
119
|
this.onActive();
|
120
120
|
};
|
121
|
-
/**
|
122
|
-
* invoke when scene bootstrap completed, if entity that added after scene completed like ex: prefab, bullet,... then this function will not invoke
|
123
|
-
* @void
|
124
|
-
*/
|
125
121
|
EntitySult.prototype.bootstrapCompleted = function (_) {
|
126
122
|
this.onBootstrapCompleted();
|
127
123
|
};
|
124
|
+
/**
|
125
|
+
* invoke when entity is added into world
|
126
|
+
* @void
|
127
|
+
*/
|
128
128
|
EntitySult.prototype.onActive = function () { };
|
129
|
+
/**
|
130
|
+
* invoke when scene bootstrap completed, if entity that added after scene completed like ex: prefab, bullet,... then this function will not invoke
|
131
|
+
* @void
|
132
|
+
*/
|
129
133
|
EntitySult.prototype.onBootstrapCompleted = function () { };
|
130
134
|
EntitySult.prototype.initial = function (params) { };
|
131
135
|
return EntitySult;
|
@@ -25,8 +25,16 @@ export declare abstract class Entity<P extends Record<string, any> = Record<stri
|
|
25
25
|
};
|
26
26
|
set sprite(sprite: Sprite<any>);
|
27
27
|
get sprite(): Sprite<any>;
|
28
|
-
get position(): Matter.Vector
|
29
|
-
|
28
|
+
get position(): Matter.Vector | {
|
29
|
+
x: number;
|
30
|
+
y: number;
|
31
|
+
};
|
32
|
+
get body(): MasterBody | {
|
33
|
+
position: {
|
34
|
+
x: number;
|
35
|
+
y: number;
|
36
|
+
};
|
37
|
+
};
|
30
38
|
get props(): P;
|
31
39
|
/**
|
32
40
|
* @param {TerminateOptions} options
|
@@ -41,12 +49,25 @@ export declare abstract class Entity<P extends Record<string, any> = Record<stri
|
|
41
49
|
* @void
|
42
50
|
*/
|
43
51
|
onTimer(interval: number, job: TimerJobListener, defaultRun?: boolean): () => void;
|
44
|
-
createBody(transform: CreateBodyDefine["transform"], options?: CreateBodyDefine["bodyOptions"]): MasterBody
|
52
|
+
createBody(transform: CreateBodyDefine["transform"], options?: CreateBodyDefine["bodyOptions"]): MasterBody | {
|
53
|
+
position: {
|
54
|
+
x: number;
|
55
|
+
y: number;
|
56
|
+
};
|
57
|
+
};
|
45
58
|
protected abstract onCreateBody(transform: CreateBodyDefine["transform"], options?: CreateBodyDefine["bodyOptions"]): Matter.Body;
|
46
59
|
initial({ transform, sprite: spriteComponent, bodyOptions, props, ...params }: EntityInitial<this>): void;
|
47
60
|
protected abstract onInitial(): EntityInitial<this>;
|
61
|
+
/**
|
62
|
+
* invoke before entity setup completed, this is need to provide infomation of name, sprite, animation, animator, transform,...
|
63
|
+
* @void
|
64
|
+
*/
|
48
65
|
protected onPrepare(): EntityPrepare<this>;
|
49
66
|
update(): void;
|
67
|
+
/**
|
68
|
+
* invoke in every frame, this is necessary for logic that need to run in every frame
|
69
|
+
* @void
|
70
|
+
*/
|
50
71
|
onUpdate(): void;
|
51
72
|
draw(): void;
|
52
73
|
abstract getSpriteWidthHeight(): {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAwB,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,aAAK,gBAAgB,GAAG,MAAM,IAAI,CAAC;AAEnC,aAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;CACjD,CAAC;AAEF,8BAAsB,MAAM,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACnD,SAAQ,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAwB,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,aAAK,gBAAgB,GAAG,MAAM,IAAI,CAAC;AAEnC,aAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;CACjD,CAAC;AAEF,8BAAsB,MAAM,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACnD,SAAQ,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAsD;IACnE,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,iBAAiB,CAKhB;IACT,OAAO,CAAC,WAAW,CAAS;IAErB,cAAc,EAAE,OAAO,CAAQ;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC;IAErB,QAAQ,KAAK,IAAI,IAAI;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EAG7B;IAED,IAAI,MAAM,IALS,MAAM,CAAC,GAAG,CAAC,CAO7B;IAED,IAAI,QAAQ;;;MAEX;IAED,IAAI,IAAI;;;;;MAEP;IAED,IAAI,KAAK,MAER;IAED;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB;IAoBpC;;;;OAIG;IACH,OAAO,CACL,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,gBAAgB,EACrB,UAAU,UAAQ,GACjB,MAAM,IAAI;IAiBb,UAAU,CACR,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC;;;;;;IAO3C,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,MAAM,CAAC,IAAI;IAEd,OAAO,CAAC,EACN,SAAS,EACT,MAAM,EAAE,eAAe,EACvB,WAAW,EACX,KAAU,EACV,GAAG,MAAM,EACV,EAAE,aAAa,CAAC,IAAI,CAAC;IAoDtB,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAEnD;;;OAGG;IACH,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAI1C,MAAM;IAgBN;;;OAGG;IACH,QAAQ;IAER,IAAI;IAMJ,QAAQ,CAAC,oBAAoB,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAElE,WAAW,CAAC,MAAM,EAAE,MAAM;IAC1B,cAAc,CAAC,MAAM,EAAE,MAAM;IAC7B,iBAAiB,CAAC,MAAM,EAAE,MAAM;CACjC"}
|
@@ -92,10 +92,12 @@ var Entity = /** @class */ (function (_super) {
|
|
92
92
|
if (options) {
|
93
93
|
var _a = options.duration, duration = _a === void 0 ? 0.2 : _a, effect = options.effect;
|
94
94
|
this.isTerminate = true;
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
95
|
+
if (this.body instanceof Body) {
|
96
|
+
Body.setVelocity(this.body, {
|
97
|
+
y: 0,
|
98
|
+
x: 0,
|
99
|
+
});
|
100
|
+
}
|
99
101
|
this.addChild(effect);
|
100
102
|
setTimeout(function () {
|
101
103
|
_this.worldManagement.removeEntity(_this);
|
@@ -136,8 +138,10 @@ var Entity = /** @class */ (function (_super) {
|
|
136
138
|
var transform = _a.transform, spriteComponent = _a.sprite, bodyOptions = _a.bodyOptions, _b = _a.props, props = _b === void 0 ? {} : _b, params = __rest(_a, ["transform", "sprite", "bodyOptions", "props"]);
|
137
139
|
var _c = this.onInitial(), _d = _c.transform, _e = _d === void 0 ? {} : _d, _f = _e.x, x = _f === void 0 ? 0 : _f, _g = _e.y, y = _g === void 0 ? 0 : _g, dfTransform = __rest(_e, ["x", "y"]), dfBodyOptions = _c.bodyOptions, dfSpriteComponent = _c.sprite, _h = _c.props, dfProps = _h === void 0 ? {} : _h, dfParams = __rest(_c, ["transform", "bodyOptions", "sprite", "props"]);
|
138
140
|
copyProperties(this._props, __assign(__assign({}, dfProps), props));
|
139
|
-
var _j = this.onPrepare(), transformAlt = _j.transform, bodyOptionsAlt = _j.bodyOptions, spriteComponentAlt = _j.sprite, _k = _j.props, propsAlt = _k === void 0 ? {} : _k, paramsAlt = __rest(_j, ["transform", "bodyOptions", "sprite", "props"]);
|
140
|
-
|
141
|
+
var _j = this.onPrepare(), transformAlt = _j.transform, bodyOptionsAlt = _j.bodyOptions, spriteComponentAlt = _j.sprite, _k = _j.props, propsAlt = _k === void 0 ? {} : _k, _l = _j.enabledPhysicBody, enabledPhysicBody = _l === void 0 ? true : _l, paramsAlt = __rest(_j, ["transform", "bodyOptions", "sprite", "props", "enabledPhysicBody"]);
|
142
|
+
if (enabledPhysicBody) {
|
143
|
+
this.createBody(__assign(__assign(__assign({ x: x, y: y }, dfTransform), transform), transformAlt), __assign(__assign(__assign({}, dfBodyOptions), bodyOptions), bodyOptionsAlt));
|
144
|
+
}
|
141
145
|
copyProperties(this._props, __assign({}, propsAlt));
|
142
146
|
copyProperties(this, __assign(__assign(__assign({}, dfParams), params), paramsAlt));
|
143
147
|
//@ts-ignore
|
@@ -147,6 +151,10 @@ var Entity = /** @class */ (function (_super) {
|
|
147
151
|
(spriteComponentAlt === null || spriteComponentAlt === void 0 ? void 0 : spriteComponentAlt.output()) ||
|
148
152
|
new ColorSprite();
|
149
153
|
};
|
154
|
+
/**
|
155
|
+
* invoke before entity setup completed, this is need to provide infomation of name, sprite, animation, animator, transform,...
|
156
|
+
* @void
|
157
|
+
*/
|
150
158
|
Entity.prototype.onPrepare = function () {
|
151
159
|
return {};
|
152
160
|
};
|
@@ -166,6 +174,10 @@ var Entity = /** @class */ (function (_super) {
|
|
166
174
|
jobListener.timeCounter = timeCounter;
|
167
175
|
}
|
168
176
|
};
|
177
|
+
/**
|
178
|
+
* invoke in every frame, this is necessary for logic that need to run in every frame
|
179
|
+
* @void
|
180
|
+
*/
|
169
181
|
Entity.prototype.onUpdate = function () { };
|
170
182
|
Entity.prototype.draw = function () {
|
171
183
|
if (!this.isTerminate) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/sprite.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/sprite.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,oBAAY,UAAU,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC;AAE3D,oBAAY,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;CAC3E,CAAC;AAEF,8BAAsB,MAAM,CAAC,UAAU,SAAS,UAAU;IACjD,MAAM,EAAE,UAAU,CAAC;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,UAAU,CAAC,CAAmC;IAEtD,IAAI,SAAS,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,QAAQ,EAQlD;IAED,IAAI,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC,CAErC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAKxB;IAED,IAAI,MAAM,IAPS,MAAM,CASxB;IAED,IAAI,KAAK,WAER;IAED,IAAI,MAAM,WAET;IAED,IAAI;IAmBJ,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,OAAO,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC;CAexC"}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { Body } from "matter-js";
|
1
2
|
import { Animator } from "../animations/animator";
|
2
3
|
import { LogicComponent } from "../logic-component";
|
3
4
|
var Sprite = /** @class */ (function () {
|
@@ -58,7 +59,9 @@ var Sprite = /** @class */ (function () {
|
|
58
59
|
var _a = this.entity, body = _a.body, position = _a.position, simpleCamera = _a.simpleCamera;
|
59
60
|
Renderer.push();
|
60
61
|
Renderer.translate(Renderer.width / 2 + position.x - simpleCamera.x, Renderer.height / 2 + position.y - simpleCamera.y);
|
61
|
-
|
62
|
+
if (body instanceof Body) {
|
63
|
+
Renderer.rotate(body.angle);
|
64
|
+
}
|
62
65
|
Renderer.noStroke();
|
63
66
|
this.onDraw();
|
64
67
|
Renderer.pop();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"world-management.d.ts","sourceRoot":"","sources":["../../src/classes/world-management.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAuB,MAAM,WAAW,CAAC;AAIxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,eAAe;IAWd,OAAO,CAAC,OAAO;IAAgB,OAAO,CAAC,MAAM;IAVzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAGtB;IACP,OAAO,CAAC,QAAQ,CAAC,YAAY,CACxB;IAEL,OAAO,CAAC,OAAO,CAAS;gBAEJ,OAAO,EAAE,YAAY,EAAU,MAAM,EAAE,KAAK;
|
1
|
+
{"version":3,"file":"world-management.d.ts","sourceRoot":"","sources":["../../src/classes/world-management.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAuB,MAAM,WAAW,CAAC;AAIxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,eAAe;IAWd,OAAO,CAAC,OAAO;IAAgB,OAAO,CAAC,MAAM;IAVzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAGtB;IACP,OAAO,CAAC,QAAQ,CAAC,YAAY,CACxB;IAEL,OAAO,CAAC,OAAO,CAAS;gBAEJ,OAAO,EAAE,YAAY,EAAU,MAAM,EAAE,KAAK;IAoDhE,IAAI,MAAM,WAET;IAED,IAAI,MAAM,iBAET;IAED,IAAI,KAAK,eAER;IAED,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,OAAO;IAWf,UAAU;IAKV,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAK3D,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM;IAKpD,kBAAkB;IAMlB,SAAS,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACzC,IAAI,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,CAAA;KAAE,GAC3B,CAAC;IAgBJ,SAAS,CAAC,MAAM,EAAE,UAAU;IAa5B,YAAY,CAAC,MAAM,EAAE,UAAU;IAiB/B,MAAM;IAON,IAAI;CAKL"}
|
@@ -12,7 +12,9 @@ var WorldManagement = /** @class */ (function () {
|
|
12
12
|
Events.on(this.engine, "beforeUpdate", function () {
|
13
13
|
var gravity = _this.engine.gravity;
|
14
14
|
_this.iterateEntities(function (entity) {
|
15
|
-
if (entity instanceof Entity &&
|
15
|
+
if (entity instanceof Entity &&
|
16
|
+
!entity.enabledGravity &&
|
17
|
+
entity.body instanceof Body) {
|
16
18
|
Body.applyForce(entity.body, entity.position, {
|
17
19
|
x: -gravity.x * gravity.scale * entity.body.mass,
|
18
20
|
y: -gravity.y * gravity.scale * entity.body.mass,
|
@@ -143,13 +145,17 @@ var WorldManagement = /** @class */ (function () {
|
|
143
145
|
this.entitiesHash[entity.id] = entity;
|
144
146
|
this.entitiesName[entity.name] = entity.id;
|
145
147
|
if (entity instanceof Entity) {
|
146
|
-
|
148
|
+
if (entity.body instanceof Body) {
|
149
|
+
World.add(this.engine.world, entity.body);
|
150
|
+
}
|
147
151
|
}
|
148
152
|
entity.active(this);
|
149
153
|
};
|
150
154
|
WorldManagement.prototype.removeEntity = function (entity) {
|
151
155
|
if (entity instanceof Entity) {
|
152
|
-
|
156
|
+
if (entity.body instanceof Body) {
|
157
|
+
World.remove(this.engine.world, entity.body);
|
158
|
+
}
|
153
159
|
}
|
154
160
|
for (var _i = 0, _a = entity.children; _i < _a.length; _i++) {
|
155
161
|
var child = _a[_i];
|
package/lib/export-types.d.ts
CHANGED
@@ -25,6 +25,7 @@ export declare type EntityInitial<E extends Entity> = {
|
|
25
25
|
bodyOptions?: BodyOptionsArgs<E>;
|
26
26
|
sprite?: import("./classes/logic-component").LogicComponent<Sprite<any>>;
|
27
27
|
sound?: Sound;
|
28
|
+
enabledPhysicBody?: boolean;
|
28
29
|
enabledGravity?: boolean;
|
29
30
|
name?: string;
|
30
31
|
props?: Partial<E["props"]>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"export-types.d.ts","sourceRoot":"","sources":["../src/export-types.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"export-types.d.ts","sourceRoot":"","sources":["../src/export-types.ts"],"names":[],"mappings":"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"}
|