react-simple-game-engine 0.3.6 → 0.3.8
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.
@@ -9,6 +9,7 @@ declare type TimerJobListener = () => void;
|
|
9
9
|
declare type TerminateOptions = {
|
10
10
|
duration?: number;
|
11
11
|
effect?: EntitySuit | LogicComponent<EntitySuit>;
|
12
|
+
keepVisible?: boolean;
|
12
13
|
};
|
13
14
|
declare type TimerOptions = {
|
14
15
|
defaultRun?: boolean;
|
@@ -36,6 +37,7 @@ export declare abstract class Entity<P extends Record<string, any> = Record<stri
|
|
36
37
|
private _props;
|
37
38
|
private timerJobListeners;
|
38
39
|
private isTerminate;
|
40
|
+
private keepVisible;
|
39
41
|
debugSensor: boolean;
|
40
42
|
readonly sensors: Sensor[];
|
41
43
|
enabledGravity: boolean;
|
@@ -55,7 +57,7 @@ export declare abstract class Entity<P extends Record<string, any> = Record<stri
|
|
55
57
|
get havePhysicBody(): boolean;
|
56
58
|
/**
|
57
59
|
* @param {TerminateOptions} options
|
58
|
-
* #duration: time to disappear from the world in
|
60
|
+
* #duration: time to disappear from the world in milliseconds, default: 200 milliseconds
|
59
61
|
* #effect: effect to showing on duration time
|
60
62
|
* @void
|
61
63
|
*/
|
@@ -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,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,KAAK,EAEN,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;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,aAAK,gBAAgB,GAAG,MAAM,IAAI,CAAC;AAEnC,aAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"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"}
|
@@ -47,6 +47,7 @@ var Entity = /** @class */ (function (_super) {
|
|
47
47
|
_this._props = {};
|
48
48
|
_this.timerJobListeners = [];
|
49
49
|
_this.isTerminate = false;
|
50
|
+
_this.keepVisible = false;
|
50
51
|
_this.debugSensor = false;
|
51
52
|
_this.sensors = [];
|
52
53
|
_this.enabledGravity = true;
|
@@ -94,7 +95,7 @@ var Entity = /** @class */ (function (_super) {
|
|
94
95
|
});
|
95
96
|
/**
|
96
97
|
* @param {TerminateOptions} options
|
97
|
-
* #duration: time to disappear from the world in
|
98
|
+
* #duration: time to disappear from the world in milliseconds, default: 200 milliseconds
|
98
99
|
* #effect: effect to showing on duration time
|
99
100
|
* @void
|
100
101
|
*/
|
@@ -102,8 +103,9 @@ var Entity = /** @class */ (function (_super) {
|
|
102
103
|
var _this = this;
|
103
104
|
var _a;
|
104
105
|
if (options) {
|
105
|
-
var _b = options.duration, duration = _b === void 0 ?
|
106
|
+
var _b = options.duration, duration = _b === void 0 ? 200 : _b, effect = options.effect, _c = options.keepVisible, keepVisible = _c === void 0 ? false : _c;
|
106
107
|
this.isTerminate = true;
|
108
|
+
this.keepVisible = keepVisible;
|
107
109
|
if (this.havePhysicBody) {
|
108
110
|
Body.setVelocity(this.body, {
|
109
111
|
y: 0,
|
@@ -117,7 +119,7 @@ var Entity = /** @class */ (function (_super) {
|
|
117
119
|
var _a;
|
118
120
|
_this.worldManagement.removeEntity(_this);
|
119
121
|
(_a = _this.onTerminate) === null || _a === void 0 ? void 0 : _a.call(_this);
|
120
|
-
}, duration
|
122
|
+
}, duration);
|
121
123
|
}
|
122
124
|
else {
|
123
125
|
this.worldManagement.removeEntity(this);
|
@@ -252,6 +254,12 @@ var Entity = /** @class */ (function (_super) {
|
|
252
254
|
this.sprite.draw();
|
253
255
|
this.onDraw();
|
254
256
|
}
|
257
|
+
else {
|
258
|
+
if (this.keepVisible) {
|
259
|
+
this.sprite.draw();
|
260
|
+
this.onDraw();
|
261
|
+
}
|
262
|
+
}
|
255
263
|
};
|
256
264
|
/**
|
257
265
|
* invoke in every frame, this is necessary for draw that need to run in every frame
|