react-simple-game-engine 0.2.96 → 0.2.98

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.
@@ -33,7 +33,7 @@ var _Saver = /** @class */ (function () {
33
33
  };
34
34
  _Saver.prototype.getWithDefault = function (key, defaultValue, type) {
35
35
  var value = this.get(key, type);
36
- return value === undefined ? defaultValue : value;
36
+ return value !== null && value !== void 0 ? value : defaultValue;
37
37
  };
38
38
  _Saver.STORAGE_PREFIX = "rsgn::";
39
39
  return _Saver;
@@ -0,0 +1,5 @@
1
+ import { EntitySult } from "../classes/entities/entity-sult";
2
+ export declare function useEntity<T extends EntitySult = EntitySult>(...entityClasses: {
3
+ new (): T;
4
+ }[]): T[];
5
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/hooks/entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,wBAAgB,SAAS,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACzD,GAAG,aAAa,EAAE;IAChB,QAAQ,CAAC,CAAC;CACX,EAAE,OAOJ"}
@@ -0,0 +1,12 @@
1
+ import { useContext, useMemo } from "react";
2
+ import { UISceneContext } from "../react-context";
3
+ export function useEntity() {
4
+ var entityClasses = [];
5
+ for (var _i = 0; _i < arguments.length; _i++) {
6
+ entityClasses[_i] = arguments[_i];
7
+ }
8
+ var scene = useContext(UISceneContext);
9
+ return useMemo(function () {
10
+ return entityClasses.map(function (cls) { return scene.worldManagement.getEntity(cls); });
11
+ }, [scene]);
12
+ }
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { Scene } from "./classes/scene";
3
+ export declare const UISceneContext: import("react").Context<Scene<any>>;
4
+ //# sourceMappingURL=react-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-context.d.ts","sourceRoot":"","sources":["../src/react-context.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,eAAO,MAAM,cAAc,qCAAkC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { createContext } from "react";
2
+ export var UISceneContext = createContext(null);
@@ -1 +1 @@
1
- {"version":3,"file":"scene-runner.d.ts","sourceRoot":"","sources":["../../src/ui-components/scene-runner.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,SAAS,EAKV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAKzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIrD,OAAO,EAAmB,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG3E,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACvD,CAAC;AAEF,aAAK,gBAAgB,GAAG,sBAAsB,GAAG;IAC/C,OAAO,EAAE,KAAK,CAAC;CAChB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,OAAO,EACP,UAAiC,EAEjC,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,YAAY,EAAE,YAAY,EAC1B,QAAQ,GACT,EAAE,gBAAgB,eA+HlB"}
1
+ {"version":3,"file":"scene-runner.d.ts","sourceRoot":"","sources":["../../src/ui-components/scene-runner.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,SAAS,EAKV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAKzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAKrD,OAAO,EAAmB,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG3E,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACvD,CAAC;AAEF,aAAK,gBAAgB,GAAG,sBAAsB,GAAG;IAC/C,OAAO,EAAE,KAAK,CAAC;CAChB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,OAAO,EACP,UAAiC,EAEjC,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,YAAY,EAAE,YAAY,EAC1B,QAAQ,GACT,EAAE,gBAAgB,eAoIlB"}
@@ -14,6 +14,7 @@ import { useEffect, useMemo, useRef, useState, } from "react";
14
14
  import { Scaler } from "../classes/scaler";
15
15
  import { getClassname, useWindowSize } from "../utils";
16
16
  import { LayoutMode } from "../export-enums";
17
+ import { UISceneContext } from "../react-context";
17
18
  import { ScalerContainer } from "./scaler-container";
18
19
  import { Sketch } from "./sketch";
19
20
  import { MovementControl } from "./movement-control";
@@ -48,8 +49,11 @@ export function SceneRunner(_a) {
48
49
  // Don't Dependency on assetsFailBehavior
49
50
  }, [current, assetsDelay]);
50
51
  var setup = function (simpleCamera) {
51
- current.bootstrap(simpleCamera);
52
- setBootDone(true);
52
+ setBootDone(false);
53
+ setTimeout(function () {
54
+ current.bootstrap(simpleCamera);
55
+ setBootDone(true);
56
+ }, 0);
53
57
  };
54
58
  var draw = function () {
55
59
  current.action();
@@ -78,5 +82,5 @@ export function SceneRunner(_a) {
78
82
  }
79
83
  return rendered;
80
84
  })()
81
- : assetsLoader })) : (_jsx(_Fragment, { children: isBootDone ? (_jsxs(_Fragment, { children: [_jsx(current.UI, __assign({ scene: current }, current.getUIProps())), joystick && (_jsx(MovementControl, __assign({ scene: current }, (joystick === true ? {} : joystick)))), _jsx("div", { className: getClassname("scene-modal-stack"), id: "scene-modal-stack" })] })) : (_jsx("div", {})) })) }))] })));
85
+ : assetsLoader })) : (_jsx(_Fragment, { children: isBootDone ? (_jsxs(_Fragment, { children: [_jsx(UISceneContext.Provider, __assign({ value: current }, { children: _jsx(current.UI, __assign({ scene: current }, current.getUIProps())) })), joystick && (_jsx(MovementControl, __assign({ scene: current }, (joystick === true ? {} : joystick)))), _jsx("div", { className: getClassname("scene-modal-stack"), id: "scene-modal-stack" })] })) : (_jsx("div", {})) })) }))] })));
82
86
  }
@@ -4,4 +4,5 @@ export * from "./ui-components/modal";
4
4
  export * from "./ui-components/control";
5
5
  export * from "./ui-components/control-container";
6
6
  export * from "./hooks/interact";
7
+ export * from "./hooks/watcher";
7
8
  //# sourceMappingURL=utilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../src/utilities.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../src/utilities.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
package/lib/utilities.js CHANGED
@@ -4,3 +4,4 @@ export * from "./ui-components/modal";
4
4
  export * from "./ui-components/control";
5
5
  export * from "./ui-components/control-container";
6
6
  export * from "./hooks/interact";
7
+ export * from "./hooks/watcher";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-simple-game-engine",
3
- "version": "0.2.96",
3
+ "version": "0.2.98",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib",