@gamelearn/arcade-components 2.15.2 → 2.15.3
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.
|
@@ -19,8 +19,6 @@ var _arcadeThreeCore = require("@gamelearn/arcade-three-core");
|
|
|
19
19
|
|
|
20
20
|
var _gsap = _interopRequireDefault(require("gsap"));
|
|
21
21
|
|
|
22
|
-
var _decisionComponent = _interopRequireDefault(require("../../decision-component"));
|
|
23
|
-
|
|
24
22
|
var _helpers = require("../../../helpers");
|
|
25
23
|
|
|
26
24
|
var _useTimeout2 = _interopRequireDefault(require("../../../helpers/useTimeout"));
|
|
@@ -31,14 +29,14 @@ var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
|
|
|
31
29
|
|
|
32
30
|
var _BubbleWrapper = _interopRequireDefault(require("./BubbleWrapper"));
|
|
33
31
|
|
|
32
|
+
var _DialogDecision = _interopRequireDefault(require("./DialogDecision"));
|
|
33
|
+
|
|
34
34
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
35
|
|
|
36
36
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
37
37
|
|
|
38
38
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
|
|
39
39
|
|
|
40
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
41
|
-
|
|
42
40
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
43
41
|
|
|
44
42
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -533,10 +531,7 @@ var DialogComponent = function DialogComponent(_ref) {
|
|
|
533
531
|
|
|
534
532
|
|
|
535
533
|
(0, _react.useEffect)(function () {
|
|
536
|
-
if (
|
|
537
|
-
zoomStarted.current = false;
|
|
538
|
-
resetCameraView();
|
|
539
|
-
} else if (isVoiceOver) {
|
|
534
|
+
if (isVoiceOver) {
|
|
540
535
|
resetCameraView();
|
|
541
536
|
setCurrentMessage({
|
|
542
537
|
text: currentLineData === null || currentLineData === void 0 ? void 0 : currentLineData.text,
|
|
@@ -548,36 +543,36 @@ var DialogComponent = function DialogComponent(_ref) {
|
|
|
548
543
|
avatar: getAvatarURL(talkingCharacter),
|
|
549
544
|
show: true
|
|
550
545
|
});
|
|
551
|
-
} else if (!lastSet.current) {
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
executeDefaultAnimation(element);
|
|
566
|
-
}
|
|
567
|
-
}); // Check not talking elements emotion
|
|
546
|
+
} else if (!lastSet.current && !isDecision) {
|
|
547
|
+
// Talking element logic
|
|
548
|
+
if (talkingCharacter) {
|
|
549
|
+
var slottedCharacters = currentLineData === null || currentLineData === void 0 ? void 0 : currentLineData.slots.filter(function (slot) {
|
|
550
|
+
return slot.uid && !slot.talking;
|
|
551
|
+
});
|
|
552
|
+
var currentParticipants = [].concat(_toConsumableArray(slottedCharacters.map(function (slot) {
|
|
553
|
+
return slot.uid;
|
|
554
|
+
}) || []), [talkingCharacter === null || talkingCharacter === void 0 ? void 0 : talkingCharacter.uid]);
|
|
555
|
+
var notInvolvedParticipants = charactersInvolved.filter(function (charUid) {
|
|
556
|
+
return !currentParticipants.includes(charUid);
|
|
557
|
+
});
|
|
558
|
+
notInvolvedParticipants.forEach(function (uid) {
|
|
559
|
+
var element = getCurrentVisible(uid);
|
|
568
560
|
|
|
569
|
-
|
|
570
|
-
|
|
561
|
+
if (element) {
|
|
562
|
+
executeDefaultAnimation(element);
|
|
563
|
+
}
|
|
564
|
+
}); // Check not talking elements emotion
|
|
571
565
|
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
var startAction = element.userData.lastEmotion ? element.userData.lastEmotion : defaultAction;
|
|
575
|
-
(0, _helpers.executeCrossFade)(startAction, action, crossFadeDuration);
|
|
576
|
-
});
|
|
577
|
-
}
|
|
578
|
-
}); // Talking element logic
|
|
566
|
+
slottedCharacters.forEach(function (slot) {
|
|
567
|
+
var element = getCurrentVisible(slot.uid);
|
|
579
568
|
|
|
580
|
-
|
|
569
|
+
if (element) {
|
|
570
|
+
loadEmotion(slot, element, function (_, action, defaultAction) {
|
|
571
|
+
var startAction = element.userData.lastEmotion ? element.userData.lastEmotion : defaultAction;
|
|
572
|
+
(0, _helpers.executeCrossFade)(startAction, action, crossFadeDuration);
|
|
573
|
+
});
|
|
574
|
+
}
|
|
575
|
+
});
|
|
581
576
|
var element = getCurrentVisible(talkingCharacter.uid);
|
|
582
577
|
var object = actors.find(function (a) {
|
|
583
578
|
return a.uid === talkingCharacter.uid;
|
|
@@ -727,6 +722,14 @@ var DialogComponent = function DialogComponent(_ref) {
|
|
|
727
722
|
onStart: function onStart() {
|
|
728
723
|
zoomStarted.current = true;
|
|
729
724
|
},
|
|
725
|
+
onUpdate: function onUpdate() {
|
|
726
|
+
if (changedMats.current.length) {
|
|
727
|
+
changedMats.current.forEach(function (o) {
|
|
728
|
+
var object = o.object;
|
|
729
|
+
object.material.visible = true;
|
|
730
|
+
});
|
|
731
|
+
}
|
|
732
|
+
},
|
|
730
733
|
onComplete: function onComplete() {
|
|
731
734
|
onZoomEnd.current();
|
|
732
735
|
|
|
@@ -755,33 +758,16 @@ var DialogComponent = function DialogComponent(_ref) {
|
|
|
755
758
|
y: animationTarget.current.position.y,
|
|
756
759
|
z: animationTarget.current.position.z
|
|
757
760
|
});
|
|
758
|
-
} else {
|
|
761
|
+
} else if (zoomStarted.current) {
|
|
759
762
|
zoomStarted.current = false;
|
|
760
763
|
}
|
|
761
|
-
}, [animationRunning]);
|
|
762
|
-
// 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥
|
|
763
|
-
|
|
764
|
-
(0, _fiber.useFrame)(function () {
|
|
765
|
-
if (animationRunning) {
|
|
766
|
-
if (changedMats.current.length) {
|
|
767
|
-
changedMats.current.forEach(function (o) {
|
|
768
|
-
var object = o.object;
|
|
769
|
-
object.material.visible = true;
|
|
770
|
-
});
|
|
771
|
-
}
|
|
772
|
-
}
|
|
773
|
-
});
|
|
774
|
-
var container = document.querySelector('.screens--container');
|
|
775
|
-
var cleanStyle = {
|
|
776
|
-
width: '100vw',
|
|
777
|
-
height: '100vh',
|
|
778
|
-
position: 'static'
|
|
779
|
-
};
|
|
764
|
+
}, [animationRunning]);
|
|
780
765
|
var disableBackButton = (0, _react.useMemo)(function () {
|
|
781
766
|
var disabled = line === 0 || previousLineWasDecision();
|
|
782
767
|
return disabled;
|
|
783
768
|
}, [line, previousLineWasDecision]);
|
|
784
769
|
keyboardControl(isDecision || disableBackButton || animationRunning ? null : manualBackLine, isDecision || animationRunning ? null : manualNextLine);
|
|
770
|
+
var container = document.querySelector('.screens--container');
|
|
785
771
|
|
|
786
772
|
if (isDecision) {
|
|
787
773
|
var decisionPayload = _objectSpread(_objectSpread({}, currentLineData.payload), {}, {
|
|
@@ -795,22 +781,16 @@ var DialogComponent = function DialogComponent(_ref) {
|
|
|
795
781
|
emitEvent: emitEvent,
|
|
796
782
|
pause: pause,
|
|
797
783
|
soundActions: soundActions,
|
|
798
|
-
keyboardControl: keyboardControl
|
|
784
|
+
keyboardControl: keyboardControl,
|
|
785
|
+
onMount: function onMount() {
|
|
786
|
+
resetCameraView();
|
|
787
|
+
},
|
|
788
|
+
onUnMount: function onUnMount() {
|
|
789
|
+
zoomStarted.current = false;
|
|
790
|
+
}
|
|
799
791
|
});
|
|
800
792
|
|
|
801
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
802
|
-
zIndexRange: [6, 6],
|
|
803
|
-
style: cleanStyle,
|
|
804
|
-
portal: container ? {
|
|
805
|
-
current: container
|
|
806
|
-
} : undefined,
|
|
807
|
-
onOcclude: function onOcclude() {},
|
|
808
|
-
calculatePosition: function calculatePosition() {
|
|
809
|
-
return [0, 0];
|
|
810
|
-
}
|
|
811
|
-
}, /*#__PURE__*/_react.default.createElement(_decisionComponent.default, _extends({
|
|
812
|
-
inScene: true
|
|
813
|
-
}, decisionPayload)));
|
|
793
|
+
return /*#__PURE__*/_react.default.createElement(_DialogDecision.default, decisionPayload);
|
|
814
794
|
}
|
|
815
795
|
|
|
816
796
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, currentMessage.text ? /*#__PURE__*/_react.default.createElement(_BubbleWrapper.default, {
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _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 _arcadeThreeCore = require("@gamelearn/arcade-three-core");
|
|
13
|
+
|
|
14
|
+
var _decisionComponent = _interopRequireDefault(require("../../decision-component"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
|
|
20
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
|
|
21
|
+
|
|
22
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
23
|
+
|
|
24
|
+
var cleanStyle = {
|
|
25
|
+
width: '100vw',
|
|
26
|
+
height: '100vh',
|
|
27
|
+
position: 'static'
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
var DialogDecision = function DialogDecision(props) {
|
|
31
|
+
var container = document.querySelector('.screens--container');
|
|
32
|
+
(0, _react.useEffect)(function () {
|
|
33
|
+
if (props.onMount) props.onMount();
|
|
34
|
+
return function () {
|
|
35
|
+
if (props.onUnMount) props.onUnMount();
|
|
36
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
37
|
+
}, []);
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.HtmlPro, {
|
|
39
|
+
zIndexRange: [6, 6],
|
|
40
|
+
style: cleanStyle,
|
|
41
|
+
portal: container ? {
|
|
42
|
+
current: container
|
|
43
|
+
} : undefined,
|
|
44
|
+
onOcclude: function onOcclude() {},
|
|
45
|
+
calculatePosition: function calculatePosition() {
|
|
46
|
+
return [0, 0];
|
|
47
|
+
}
|
|
48
|
+
}, /*#__PURE__*/_react.default.createElement(_decisionComponent.default, _extends({
|
|
49
|
+
inScene: true
|
|
50
|
+
}, props)));
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var _default = DialogDecision;
|
|
54
|
+
exports.default = _default;
|