@gamelearn/arcade-components 0.22.12 → 0.23.0
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/dist/components/arcade-render/element/AnimateElement.js +2 -0
- package/dist/components/arcade-render/elements-list/index.js +5 -1
- package/dist/components/arcade-render/loading/LoadingLogic.js +9 -10
- package/dist/components/arcade-render/loading/index.js +0 -8
- package/dist/components/arcade-render/scene/index.js +20 -27
- package/dist/components/dialog-component/components/DialogComponent.js +210 -0
- package/dist/components/dialog-component/index.js +13 -0
- package/dist/components/dialog-component/mocks/mockForStory.js +15 -0
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +1 -1
- package/dist/components/index.js +32 -0
- package/dist/components/zoom-test/components/ZoomTest.js +91 -0
- package/dist/components/zoom-test/index.js +13 -0
- package/dist/components/zoom-test/mocks/mockForStory.js +23 -0
- package/package.json +1 -1
|
@@ -43,6 +43,8 @@ var AnimateElement = function AnimateElement(_ref) {
|
|
|
43
43
|
if (ref.current) {
|
|
44
44
|
mixer.stopAllAction();
|
|
45
45
|
var clip = animations[0];
|
|
46
|
+
ref.current.userData.defaultAnim = clip;
|
|
47
|
+
ref.current.userData.mixer = mixer;
|
|
46
48
|
|
|
47
49
|
if (clip) {
|
|
48
50
|
var action = mixer.clipAction(clip, ref.current);
|
|
@@ -73,7 +73,8 @@ var ElementsList = function ElementsList(_ref) {
|
|
|
73
73
|
name: "CLICKABLE_ELEMENTS"
|
|
74
74
|
}, elements === null || elements === void 0 ? void 0 : elements.map(function (_ref3) {
|
|
75
75
|
var id = _ref3.id,
|
|
76
|
-
|
|
76
|
+
name = _ref3.name,
|
|
77
|
+
element = _objectWithoutProperties(_ref3, ["id", "name"]);
|
|
77
78
|
|
|
78
79
|
switch (element.type) {
|
|
79
80
|
case 'character':
|
|
@@ -86,6 +87,7 @@ var ElementsList = function ElementsList(_ref) {
|
|
|
86
87
|
rotation: element.rotation,
|
|
87
88
|
scale: element.scale,
|
|
88
89
|
layers: 1,
|
|
90
|
+
name: element.uid,
|
|
89
91
|
visible: isVisible(element),
|
|
90
92
|
onClick: function onClick(e) {
|
|
91
93
|
return handleClick(e, element);
|
|
@@ -108,6 +110,7 @@ var ElementsList = function ElementsList(_ref) {
|
|
|
108
110
|
rotation: element.rotation,
|
|
109
111
|
scale: element.scale,
|
|
110
112
|
layers: 1,
|
|
113
|
+
name: element.uid,
|
|
111
114
|
visible: isVisible(element),
|
|
112
115
|
onClick: function onClick(e) {
|
|
113
116
|
return handleClick(e, element);
|
|
@@ -129,6 +132,7 @@ var ElementsList = function ElementsList(_ref) {
|
|
|
129
132
|
rotation: element.rotation,
|
|
130
133
|
scale: element.scale,
|
|
131
134
|
layers: 1,
|
|
135
|
+
name: element.uid,
|
|
132
136
|
visible: isVisible(element),
|
|
133
137
|
onClick: function onClick(e) {
|
|
134
138
|
return handleClick(e, element);
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.LoadingLogic = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
var _drei = require("@react-three/drei");
|
|
8
|
+
var _drawLOD = _interopRequireDefault(require("../../../helpers/drawLOD"));
|
|
11
9
|
|
|
12
10
|
var _fiber = require("@react-three/fiber");
|
|
13
11
|
|
|
14
|
-
var
|
|
12
|
+
var _react = require("react");
|
|
13
|
+
|
|
14
|
+
var _drei = require("@react-three/drei");
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -27,7 +27,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "und
|
|
|
27
27
|
|
|
28
28
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
29
29
|
|
|
30
|
-
function LoadingLogic(_ref) {
|
|
30
|
+
var LoadingLogic = function LoadingLogic(_ref) {
|
|
31
31
|
var onFinish = _ref.onFinish,
|
|
32
32
|
lodSettings = _ref.lodSettings;
|
|
33
33
|
var progress = (0, _drei.useProgress)(function (state) {
|
|
@@ -47,9 +47,8 @@ function LoadingLogic(_ref) {
|
|
|
47
47
|
onFinish();
|
|
48
48
|
(0, _drawLOD.default)(scene, camera, lodSettings);
|
|
49
49
|
}
|
|
50
|
-
}, [
|
|
50
|
+
}, [camera, percentage, lodSettings, onFinish, scene]);
|
|
51
51
|
return null;
|
|
52
|
-
}
|
|
52
|
+
};
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
exports.default = _default;
|
|
54
|
+
exports.LoadingLogic = LoadingLogic;
|
|
@@ -3,18 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "LoadingLogic", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _LoadingLogic.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
6
|
exports.default = void 0;
|
|
13
7
|
|
|
14
8
|
var _Loading = _interopRequireDefault(require("./Loading"));
|
|
15
9
|
|
|
16
|
-
var _LoadingLogic = _interopRequireDefault(require("./LoadingLogic"));
|
|
17
|
-
|
|
18
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
11
|
|
|
20
12
|
var _default = _Loading.default;
|
|
@@ -13,14 +13,12 @@ var _fiber = require("@react-three/fiber");
|
|
|
13
13
|
|
|
14
14
|
var _drei = require("@react-three/drei");
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _background = _interopRequireDefault(require("../background"));
|
|
19
|
-
|
|
20
|
-
var _loading = _interopRequireWildcard(require("../loading"));
|
|
16
|
+
var _loading = _interopRequireDefault(require("../loading"));
|
|
21
17
|
|
|
22
18
|
var _ConfigController = _interopRequireDefault(require("./ConfigController"));
|
|
23
19
|
|
|
20
|
+
var _LoadingLogic = require("../loading/LoadingLogic");
|
|
21
|
+
|
|
24
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
23
|
|
|
26
24
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
@@ -40,27 +38,26 @@ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "und
|
|
|
40
38
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
41
39
|
|
|
42
40
|
var Scene = function Scene(_ref) {
|
|
43
|
-
var _ref$
|
|
44
|
-
|
|
41
|
+
var _ref$sceneChanged = _ref.sceneChanged,
|
|
42
|
+
sceneChanged = _ref$sceneChanged === void 0 ? false : _ref$sceneChanged,
|
|
45
43
|
_ref$hasControls = _ref.hasControls,
|
|
46
44
|
hasControls = _ref$hasControls === void 0 ? false : _ref$hasControls,
|
|
47
45
|
_ref$has3Stats = _ref.has3Stats,
|
|
48
46
|
has3Stats = _ref$has3Stats === void 0 ? false : _ref$has3Stats,
|
|
49
|
-
_ref$backgroundData = _ref.backgroundData,
|
|
50
|
-
backgroundData = _ref$backgroundData === void 0 ? {} : _ref$backgroundData,
|
|
51
47
|
_ref$loadingText = _ref.loadingText,
|
|
52
48
|
loadingText = _ref$loadingText === void 0 ? '' : _ref$loadingText,
|
|
53
49
|
_ref$toggleShadows = _ref.toggleShadows,
|
|
54
50
|
toggleShadows = _ref$toggleShadows === void 0 ? true : _ref$toggleShadows,
|
|
55
51
|
_ref$lodSettings = _ref.lodSettings,
|
|
56
52
|
lodSettings = _ref$lodSettings === void 0 ? {} : _ref$lodSettings,
|
|
53
|
+
_ref$onLoadFinish = _ref.onLoadFinish,
|
|
54
|
+
onLoadFinish = _ref$onLoadFinish === void 0 ? function () {} : _ref$onLoadFinish,
|
|
57
55
|
_ref$stopAnimate = _ref.stopAnimate,
|
|
58
56
|
stopAnimate = _ref$stopAnimate === void 0 ? false : _ref$stopAnimate,
|
|
59
57
|
lookingSide = _ref.lookingSide,
|
|
60
|
-
|
|
61
|
-
emitEvent = _ref$emitEvent === void 0 ? function () {} : _ref$emitEvent;
|
|
58
|
+
children = _ref.children;
|
|
62
59
|
|
|
63
|
-
var _useState = (0, _react.useState)(
|
|
60
|
+
var _useState = (0, _react.useState)(false),
|
|
64
61
|
_useState2 = _slicedToArray(_useState, 2),
|
|
65
62
|
showLoad = _useState2[0],
|
|
66
63
|
setShowLoad = _useState2[1];
|
|
@@ -77,15 +74,16 @@ var Scene = function Scene(_ref) {
|
|
|
77
74
|
gl.physicallyCorrectLights = true;
|
|
78
75
|
};
|
|
79
76
|
|
|
80
|
-
var
|
|
81
|
-
|
|
82
|
-
type: 'sceneLoaded'
|
|
83
|
-
});
|
|
77
|
+
var onFinish = function onFinish() {
|
|
78
|
+
onLoadFinish();
|
|
84
79
|
setShowLoad(false);
|
|
85
|
-
}
|
|
80
|
+
};
|
|
81
|
+
|
|
86
82
|
(0, _react.useEffect)(function () {
|
|
87
|
-
|
|
88
|
-
|
|
83
|
+
if (sceneChanged) {
|
|
84
|
+
setShowLoad(true);
|
|
85
|
+
}
|
|
86
|
+
}, [sceneChanged]);
|
|
89
87
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_fiber.Canvas, {
|
|
90
88
|
className: "main-canvas",
|
|
91
89
|
style: {
|
|
@@ -111,15 +109,10 @@ var Scene = function Scene(_ref) {
|
|
|
111
109
|
fallback: /*#__PURE__*/_react.default.createElement(_loading.default, {
|
|
112
110
|
text: loadingText
|
|
113
111
|
})
|
|
114
|
-
}, showLoad && /*#__PURE__*/_react.default.createElement(
|
|
115
|
-
onFinish:
|
|
112
|
+
}, showLoad && /*#__PURE__*/_react.default.createElement(_LoadingLogic.LoadingLogic, {
|
|
113
|
+
onFinish: onFinish,
|
|
116
114
|
lodSettings: lodSettings
|
|
117
|
-
}),
|
|
118
|
-
elements: elements,
|
|
119
|
-
eventHandler: emitEvent
|
|
120
|
-
}) : null, Object.keys(backgroundData).length && /*#__PURE__*/_react.default.createElement(_background.default, {
|
|
121
|
-
data: backgroundData
|
|
122
|
-
}), /*#__PURE__*/_react.default.createElement(_drei.Preload, {
|
|
115
|
+
}), children, /*#__PURE__*/_react.default.createElement(_drei.Preload, {
|
|
123
116
|
all: true
|
|
124
117
|
})), has3Stats && /*#__PURE__*/_react.default.createElement(_drei.Stats, null), hasControls && /*#__PURE__*/_react.default.createElement(_drei.OrbitControls, null)), /*#__PURE__*/_react.default.createElement("div", {
|
|
125
118
|
id: "elements-projection"
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _drei = require("@react-three/drei");
|
|
13
|
+
|
|
14
|
+
var _fiber = require("@react-three/fiber");
|
|
15
|
+
|
|
16
|
+
var _three = require("three");
|
|
17
|
+
|
|
18
|
+
var _GLTFLoader = require("three/examples/jsm/loaders/GLTFLoader");
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
21
|
+
|
|
22
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
|
|
24
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
25
|
+
|
|
26
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
+
|
|
28
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
29
|
+
|
|
30
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
31
|
+
|
|
32
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
33
|
+
|
|
34
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
|
+
|
|
36
|
+
var DialogComponent = function DialogComponent(_ref) {
|
|
37
|
+
var emitEvent = _ref.emitEvent,
|
|
38
|
+
lines = _ref.lines,
|
|
39
|
+
actors = _ref.actors,
|
|
40
|
+
enableZoom = _ref.enableZoom;
|
|
41
|
+
|
|
42
|
+
var _useState = (0, _react.useState)(0),
|
|
43
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
44
|
+
line = _useState2[0],
|
|
45
|
+
changeLine = _useState2[1];
|
|
46
|
+
|
|
47
|
+
var _useState3 = (0, _react.useState)({
|
|
48
|
+
text: '',
|
|
49
|
+
name: ''
|
|
50
|
+
}),
|
|
51
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
52
|
+
currentMessage = _useState4[0],
|
|
53
|
+
setCurrentMessage = _useState4[1];
|
|
54
|
+
|
|
55
|
+
var _useThree = (0, _fiber.useThree)(function (state) {
|
|
56
|
+
return [state.camera, state.scene];
|
|
57
|
+
}),
|
|
58
|
+
_useThree2 = _slicedToArray(_useThree, 2),
|
|
59
|
+
camera = _useThree2[0],
|
|
60
|
+
scene = _useThree2[1];
|
|
61
|
+
|
|
62
|
+
var loader = (0, _react.useMemo)(function () {
|
|
63
|
+
return new _GLTFLoader.GLTFLoader();
|
|
64
|
+
}, []);
|
|
65
|
+
var messagePosition = (0, _react.useRef)(new _three.Vector3());
|
|
66
|
+
var defaultCamera = (0, _react.useRef)(camera.clone());
|
|
67
|
+
var animationStart = (0, _react.useRef)(false);
|
|
68
|
+
var currentLine = lines[line];
|
|
69
|
+
var lastLine = lines[line - 1];
|
|
70
|
+
var resetAnims = (0, _react.useCallback)(function (end) {
|
|
71
|
+
var slottedCharacters = currentLine.slots.filter(function (slot) {
|
|
72
|
+
return slot.uid;
|
|
73
|
+
});
|
|
74
|
+
var lastSlotterCharacters = lastLine === null || lastLine === void 0 ? void 0 : lastLine.slots.filter(function (slot) {
|
|
75
|
+
return slot.uid;
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
if (end) {
|
|
79
|
+
slottedCharacters === null || slottedCharacters === void 0 ? void 0 : slottedCharacters.forEach(function (slot) {
|
|
80
|
+
var element = scene.getObjectByName(slot.uid);
|
|
81
|
+
|
|
82
|
+
if (element) {
|
|
83
|
+
var mixer = element.userData.mixer;
|
|
84
|
+
mixer.stopAllAction();
|
|
85
|
+
var action = mixer.clipAction(element.userData.defaultAnim, element);
|
|
86
|
+
action.play();
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
lastSlotterCharacters === null || lastSlotterCharacters === void 0 ? void 0 : lastSlotterCharacters.forEach(function (slot) {
|
|
92
|
+
var element = scene.getObjectByName(slot.uid);
|
|
93
|
+
|
|
94
|
+
if (element) {
|
|
95
|
+
var mixer = element.userData.mixer;
|
|
96
|
+
mixer.stopAllAction();
|
|
97
|
+
var action = mixer.clipAction(element.userData.defaultAnim, element);
|
|
98
|
+
action.play();
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
}, [lastLine === null || lastLine === void 0 ? void 0 : lastLine.slots, currentLine, scene]);
|
|
102
|
+
var onKeyCallback = (0, _react.useCallback)(function (e) {
|
|
103
|
+
if (e.keyCode === 32) {
|
|
104
|
+
resetAnims(line >= lines.length - 1);
|
|
105
|
+
|
|
106
|
+
if (line < lines.length - 1) {
|
|
107
|
+
changeLine(line + 1);
|
|
108
|
+
} else {
|
|
109
|
+
messagePosition.current = defaultCamera.current.position.clone().add(new _three.Vector3(0, 5, -35));
|
|
110
|
+
animationStart.current = true;
|
|
111
|
+
setCurrentMessage({
|
|
112
|
+
text: ''
|
|
113
|
+
});
|
|
114
|
+
setTimeout(function () {
|
|
115
|
+
camera.copy(defaultCamera.current);
|
|
116
|
+
emitEvent({
|
|
117
|
+
type: 'success'
|
|
118
|
+
});
|
|
119
|
+
}, 2000);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}, [line, lines, camera, resetAnims, emitEvent]);
|
|
123
|
+
(0, _react.useEffect)(function () {
|
|
124
|
+
var talkingCharacter = currentLine.slots.find(function (slot) {
|
|
125
|
+
return slot.talking;
|
|
126
|
+
});
|
|
127
|
+
var slottedCharacters = currentLine.slots.filter(function (slot) {
|
|
128
|
+
return slot.uid;
|
|
129
|
+
});
|
|
130
|
+
var box = new _three.Box3();
|
|
131
|
+
slottedCharacters.forEach(function (slot) {
|
|
132
|
+
var element = scene.getObjectByName(slot.uid);
|
|
133
|
+
|
|
134
|
+
if (element) {
|
|
135
|
+
var mixer = element.userData.mixer;
|
|
136
|
+
var animation = slot.character.resource.animations[slot.emotion];
|
|
137
|
+
loader.load(animation.url, function (anim) {
|
|
138
|
+
mixer.stopAllAction();
|
|
139
|
+
var clip = anim.animations[0];
|
|
140
|
+
var action = mixer.clipAction(clip, element);
|
|
141
|
+
action.play();
|
|
142
|
+
|
|
143
|
+
if (talkingCharacter.uid === element.name) {
|
|
144
|
+
var head = element.getObjectByName('Head_M');
|
|
145
|
+
var size = box.setFromObject(head).getSize(new _three.Vector3());
|
|
146
|
+
messagePosition.current = head.getWorldPosition(new _three.Vector3());
|
|
147
|
+
messagePosition.current.add(new _three.Vector3(size.x + 3, 2.5, 0));
|
|
148
|
+
|
|
149
|
+
if (enableZoom) {
|
|
150
|
+
animationStart.current = true;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
setCurrentMessage({
|
|
154
|
+
text: talkingCharacter.text,
|
|
155
|
+
name: talkingCharacter.alias
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
}, [camera, currentLine, enableZoom, lastLine, scene, loader]);
|
|
162
|
+
(0, _react.useEffect)(function () {
|
|
163
|
+
window.addEventListener('keydown', onKeyCallback);
|
|
164
|
+
return function () {
|
|
165
|
+
window.removeEventListener('keydown', onKeyCallback);
|
|
166
|
+
};
|
|
167
|
+
}, [onKeyCallback]);
|
|
168
|
+
(0, _fiber.useFrame)(function (_ref2, delta) {
|
|
169
|
+
var camera = _ref2.camera;
|
|
170
|
+
|
|
171
|
+
if (animationStart.current) {
|
|
172
|
+
var target = messagePosition.current.clone();
|
|
173
|
+
target.add(new _three.Vector3(0, -5, 35));
|
|
174
|
+
camera.position.lerp(target, delta * 2.5);
|
|
175
|
+
|
|
176
|
+
if (target.distanceTo(camera.position) < 1) {
|
|
177
|
+
animationStart.current = false;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
return currentMessage.text ? /*#__PURE__*/_react.default.createElement(_drei.Html, {
|
|
182
|
+
position: messagePosition.current,
|
|
183
|
+
zIndexRange: [3, 0],
|
|
184
|
+
sprite: true
|
|
185
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
186
|
+
style: {
|
|
187
|
+
backgroundColor: 'white',
|
|
188
|
+
display: 'flex',
|
|
189
|
+
flexDirection: 'column',
|
|
190
|
+
borderRadius: '10px',
|
|
191
|
+
border: '2px solid black',
|
|
192
|
+
padding: '5px',
|
|
193
|
+
width: '240px',
|
|
194
|
+
maxWidth: '400px'
|
|
195
|
+
}
|
|
196
|
+
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
197
|
+
style: {
|
|
198
|
+
borderBottom: '2px solid black'
|
|
199
|
+
}
|
|
200
|
+
}, currentMessage.name), /*#__PURE__*/_react.default.createElement("span", {
|
|
201
|
+
style: {
|
|
202
|
+
fontSize: '20px',
|
|
203
|
+
wordWrap: 'break-word',
|
|
204
|
+
overflow: 'auto'
|
|
205
|
+
}
|
|
206
|
+
}, currentMessage.text))) : null;
|
|
207
|
+
};
|
|
208
|
+
|
|
209
|
+
var _default = DialogComponent;
|
|
210
|
+
exports.default = _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _DialogComponent = _interopRequireDefault(require("./components/DialogComponent"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _DialogComponent.default;
|
|
13
|
+
exports.default = _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.mockProps = void 0;
|
|
7
|
+
|
|
8
|
+
var emitEvent = function emitEvent() {
|
|
9
|
+
console.log('Emit event called');
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
var mockProps = {
|
|
13
|
+
emitEvent: emitEvent
|
|
14
|
+
};
|
|
15
|
+
exports.mockProps = mockProps;
|
package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js
CHANGED
|
@@ -152,7 +152,7 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
152
152
|
|
|
153
153
|
setCompleted(true);
|
|
154
154
|
var lastClicked = clickedZones[clickedZones.length - 1];
|
|
155
|
-
var lastSpecific = specificFeedbacks.correctFeedbacks.find(function (feed) {
|
|
155
|
+
var lastSpecific = specificFeedbacks === null || specificFeedbacks === void 0 ? void 0 : specificFeedbacks.correctFeedbacks.find(function (feed) {
|
|
156
156
|
return feed.id === lastClicked.id;
|
|
157
157
|
});
|
|
158
158
|
|
package/dist/components/index.js
CHANGED
|
@@ -11,6 +11,18 @@ Object.defineProperty(exports, "Scene", {
|
|
|
11
11
|
return _scene.default;
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
|
+
Object.defineProperty(exports, "ElementList", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function get() {
|
|
17
|
+
return _elementsList.default;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(exports, "Background", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function get() {
|
|
23
|
+
return _background.default;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
14
26
|
Object.defineProperty(exports, "NoticeComponent", {
|
|
15
27
|
enumerable: true,
|
|
16
28
|
get: function get() {
|
|
@@ -209,9 +221,25 @@ Object.defineProperty(exports, "TextClickPuzzleComponent", {
|
|
|
209
221
|
return _textClickPuzzleComponent.default;
|
|
210
222
|
}
|
|
211
223
|
});
|
|
224
|
+
Object.defineProperty(exports, "ZoomTest", {
|
|
225
|
+
enumerable: true,
|
|
226
|
+
get: function get() {
|
|
227
|
+
return _zoomTest.default;
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
Object.defineProperty(exports, "DialogComponent", {
|
|
231
|
+
enumerable: true,
|
|
232
|
+
get: function get() {
|
|
233
|
+
return _dialogComponent.default;
|
|
234
|
+
}
|
|
235
|
+
});
|
|
212
236
|
|
|
213
237
|
var _scene = _interopRequireDefault(require("./arcade-render/scene"));
|
|
214
238
|
|
|
239
|
+
var _elementsList = _interopRequireDefault(require("./arcade-render/elements-list"));
|
|
240
|
+
|
|
241
|
+
var _background = _interopRequireDefault(require("./arcade-render/background"));
|
|
242
|
+
|
|
215
243
|
var _noticeComponent = _interopRequireDefault(require("./notice-component"));
|
|
216
244
|
|
|
217
245
|
var _inventoryItem = _interopRequireDefault(require("./inventory-item"));
|
|
@@ -276,6 +304,10 @@ var _patternComponent = _interopRequireDefault(require("./pattern-component"));
|
|
|
276
304
|
|
|
277
305
|
var _textClickPuzzleComponent = _interopRequireDefault(require("./text-click-puzzle-component"));
|
|
278
306
|
|
|
307
|
+
var _zoomTest = _interopRequireDefault(require("./zoom-test"));
|
|
308
|
+
|
|
309
|
+
var _dialogComponent = _interopRequireDefault(require("./dialog-component"));
|
|
310
|
+
|
|
279
311
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
280
312
|
|
|
281
313
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _fiber = require("@react-three/fiber");
|
|
9
|
+
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
|
|
12
|
+
var _three = require("three");
|
|
13
|
+
|
|
14
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
15
|
+
|
|
16
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
17
|
+
|
|
18
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
19
|
+
|
|
20
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
21
|
+
|
|
22
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
23
|
+
|
|
24
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
25
|
+
|
|
26
|
+
var ZoomTest = function ZoomTest(_ref) {
|
|
27
|
+
var targetId = _ref.targetId,
|
|
28
|
+
emitEvent = _ref.emitEvent;
|
|
29
|
+
|
|
30
|
+
var _useState = (0, _react.useState)(false),
|
|
31
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
32
|
+
mounted = _useState2[0],
|
|
33
|
+
setMounted = _useState2[1];
|
|
34
|
+
|
|
35
|
+
var camera = (0, _fiber.useThree)(function (state) {
|
|
36
|
+
return state.camera;
|
|
37
|
+
});
|
|
38
|
+
var startAnimation = (0, _react.useRef)(false);
|
|
39
|
+
var defaultCamera = (0, _react.useRef)(null);
|
|
40
|
+
|
|
41
|
+
var onEnter = function onEnter(_ref2, delta) {
|
|
42
|
+
var scene = _ref2.scene,
|
|
43
|
+
camera = _ref2.camera;
|
|
44
|
+
var target = scene.getObjectByName(targetId);
|
|
45
|
+
|
|
46
|
+
if (target) {
|
|
47
|
+
var head = target.getObjectByName('Head_M');
|
|
48
|
+
var worldPos = head.getWorldPosition(new _three.Vector3());
|
|
49
|
+
|
|
50
|
+
if (camera.position.distanceTo(new _three.Vector3()) <= 5) {
|
|
51
|
+
onFinish({
|
|
52
|
+
scene: scene,
|
|
53
|
+
camera: camera
|
|
54
|
+
}, delta);
|
|
55
|
+
} else {
|
|
56
|
+
head.attach(camera);
|
|
57
|
+
camera.position.lerp(new _three.Vector3(), delta * 0.5);
|
|
58
|
+
camera.lookAt(worldPos);
|
|
59
|
+
}
|
|
60
|
+
} else {
|
|
61
|
+
startAnimation.current = false;
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
var onFinish = function onFinish(_ref3, delta) {
|
|
66
|
+
var camera = _ref3.camera;
|
|
67
|
+
startAnimation.current = false;
|
|
68
|
+
camera.parent = null;
|
|
69
|
+
camera.copy(defaultCamera.current);
|
|
70
|
+
emitEvent({
|
|
71
|
+
type: 'success'
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
(0, _react.useEffect)(function () {
|
|
76
|
+
if (!mounted) {
|
|
77
|
+
startAnimation.current = true;
|
|
78
|
+
defaultCamera.current = camera.clone();
|
|
79
|
+
setMounted(true);
|
|
80
|
+
}
|
|
81
|
+
}, [camera, mounted]);
|
|
82
|
+
(0, _fiber.useFrame)(function (state, delta) {
|
|
83
|
+
if (startAnimation.current) {
|
|
84
|
+
onEnter(state, delta);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
return null;
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
var _default = ZoomTest;
|
|
91
|
+
exports.default = _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _ZoomTest = _interopRequireDefault(require("./components/ZoomTest"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _ZoomTest.default;
|
|
13
|
+
exports.default = _default;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.mockProps = void 0;
|
|
7
|
+
|
|
8
|
+
var _bg001_street = _interopRequireDefault(require("../../arcade-render/mocks/scenes/bg001_street.json"));
|
|
9
|
+
|
|
10
|
+
var _characters = require("../../arcade-render/mocks/scenes/characters.json");
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
var mockProps = {
|
|
15
|
+
background: _bg001_street.default,
|
|
16
|
+
elements: _characters.elements,
|
|
17
|
+
scene: {
|
|
18
|
+
sceneChanged: true,
|
|
19
|
+
loadingText: 'Cargando... {percent}%',
|
|
20
|
+
hasControls: false
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
exports.mockProps = mockProps;
|