@flashist/appframework 0.0.179 → 0.0.181

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.
@@ -26,11 +26,12 @@ export declare class ECSManager extends BaseAppManager {
26
26
  removeComponents: (entity: IEntity, ...componentTypes: string[]) => void;
27
27
  };
28
28
  queries: {
29
- get: <EntityType extends IEntity<IComponent>>(includeTypes: string[], excludeTypes: string[]) => EntitiesQuery<EntityType>;
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
  };
@@ -45,7 +45,10 @@ export class ECSManager extends BaseAppManager {
45
45
  get: (includeTypes, excludeTypes) => {
46
46
  var _a;
47
47
  const includeTypesSortedKey = includeTypes.concat().sort().join();
48
- const excludeTypesSortedKey = excludeTypes.concat().sort().join();
48
+ let excludeTypesSortedKey = "";
49
+ if (excludeTypes) {
50
+ excludeTypesSortedKey = excludeTypes.concat().sort().join();
51
+ }
49
52
  let result = (_a = this.queriesToTypesMap[includeTypesSortedKey]) === null || _a === void 0 ? void 0 : _a[excludeTypesSortedKey];
50
53
  if (!result) {
51
54
  result = new EntitiesQuery(includeTypes, excludeTypes);
@@ -78,8 +81,11 @@ export class ECSManager extends BaseAppManager {
78
81
  onTimeUpdate() {
79
82
  this.update(this.timeState.time.lastTimeDelta);
80
83
  }
81
- addEntityToQueries(entity) {
82
- for (let singleQuery of this.queriesList) {
84
+ addEntityToQueries(entity, queries) {
85
+ if (!queries) {
86
+ queries = this.queriesList;
87
+ }
88
+ for (let singleQuery of queries) {
83
89
  if (singleQuery.entities.indexOf(entity) === -1) {
84
90
  let hasAllIncludeTypes = true;
85
91
  for (let singleQueryIncludeType of singleQuery.includeTypes) {
@@ -112,6 +118,11 @@ export class ECSManager extends BaseAppManager {
112
118
  this.removeEntityFromAllQueries(entity);
113
119
  this.addEntityToQueries(entity);
114
120
  }
121
+ updateAllEntitiesForQuery(query) {
122
+ for (let singleEntity of this.entitiesList) {
123
+ this.addEntityToQueries(singleEntity, [query]);
124
+ }
125
+ }
115
126
  update(timeDelta) {
116
127
  for (let singleSystem of this.systemsList) {
117
128
  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.179",
3
+ "version": "0.0.181",
4
4
  "scripts": {
5
5
  "build": "gulp",
6
6
  "publish:patch": "npm version patch && npm run build && cd ./dist && npm publish",