@flashist/appframework 0.0.180 → 0.0.182

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.
@@ -28,9 +28,10 @@ export declare class ECSManager extends BaseAppManager {
28
28
  queries: {
29
29
  get: <EntityType extends IEntity<IComponent>>(includeTypes: string[], excludeTypes?: string[]) => EntitiesQuery<EntityType>;
30
30
  };
31
- protected addEntityToQueries(entity: IEntity): void;
31
+ protected addEntityToQueries(entity: IEntity, queries?: EntitiesQuery[]): void;
32
32
  protected removeEntityFromAllQueries(entity: IEntity): void;
33
33
  protected updateAllQueriesForEntity(entity: IEntity): void;
34
+ protected updateAllEntitiesForQuery(query: EntitiesQuery): void;
34
35
  systems: {
35
36
  add: (system: System) => void;
36
37
  };
@@ -42,7 +42,7 @@ export class ECSManager extends BaseAppManager {
42
42
  }
43
43
  };
44
44
  this.queries = {
45
- get: (includeTypes, excludeTypes = null) => {
45
+ get: (includeTypes, excludeTypes) => {
46
46
  var _a;
47
47
  const includeTypesSortedKey = includeTypes.concat().sort().join();
48
48
  let excludeTypesSortedKey = "";
@@ -57,6 +57,7 @@ export class ECSManager extends BaseAppManager {
57
57
  }
58
58
  this.queriesToTypesMap[includeTypesSortedKey][excludeTypesSortedKey] = result;
59
59
  this.queriesList.push(result);
60
+ this.updateAllEntitiesForQuery(result);
60
61
  }
61
62
  return result;
62
63
  }
@@ -81,8 +82,11 @@ export class ECSManager extends BaseAppManager {
81
82
  onTimeUpdate() {
82
83
  this.update(this.timeState.time.lastTimeDelta);
83
84
  }
84
- addEntityToQueries(entity) {
85
- for (let singleQuery of this.queriesList) {
85
+ addEntityToQueries(entity, queries) {
86
+ if (!queries) {
87
+ queries = this.queriesList;
88
+ }
89
+ for (let singleQuery of queries) {
86
90
  if (singleQuery.entities.indexOf(entity) === -1) {
87
91
  let hasAllIncludeTypes = true;
88
92
  for (let singleQueryIncludeType of singleQuery.includeTypes) {
@@ -115,6 +119,11 @@ export class ECSManager extends BaseAppManager {
115
119
  this.removeEntityFromAllQueries(entity);
116
120
  this.addEntityToQueries(entity);
117
121
  }
122
+ updateAllEntitiesForQuery(query) {
123
+ for (let singleEntity of this.entitiesList) {
124
+ this.addEntityToQueries(singleEntity, [query]);
125
+ }
126
+ }
118
127
  update(timeDelta) {
119
128
  for (let singleSystem of this.systemsList) {
120
129
  singleSystem.update(timeDelta);
@@ -1 +1 @@
1
- {"version":3,"file":"ECSManager.js","sourceRoot":"","sources":["../../../src/ecs/managers/ECSManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ECSManager.js","sourceRoot":"","sources":["../../../src/ecs/managers/ECSManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flashist/appframework",
3
- "version": "0.0.180",
3
+ "version": "0.0.182",
4
4
  "scripts": {
5
5
  "build": "gulp",
6
6
  "publish:patch": "npm version patch && npm run build && cd ./dist && npm publish",