auto-git:
[change] src/runtime-three/runtime-host.ts
This commit is contained in:
@@ -1093,19 +1093,36 @@ export class RuntimeHost {
|
||||
}
|
||||
|
||||
private isRuntimePaused(): boolean {
|
||||
return this.manualPauseActive || this.controlPauseActive;
|
||||
return (
|
||||
this.manualPauseActive ||
|
||||
this.controlPauseActive ||
|
||||
this.dialoguePauseActive
|
||||
);
|
||||
}
|
||||
|
||||
private publishRuntimePauseState(force = false) {
|
||||
const pauseSources: RuntimePauseState["source"][] = [];
|
||||
|
||||
if (this.manualPauseActive) {
|
||||
pauseSources.push("manual");
|
||||
}
|
||||
|
||||
if (this.controlPauseActive) {
|
||||
pauseSources.push("control");
|
||||
}
|
||||
|
||||
if (this.dialoguePauseActive) {
|
||||
pauseSources.push("dialogue");
|
||||
}
|
||||
|
||||
const nextState: RuntimePauseState = {
|
||||
paused: this.isRuntimePaused(),
|
||||
source: this.manualPauseActive
|
||||
? this.controlPauseActive
|
||||
? "mixed"
|
||||
: "manual"
|
||||
: this.controlPauseActive
|
||||
? "control"
|
||||
: null
|
||||
source:
|
||||
pauseSources.length === 0
|
||||
? null
|
||||
: pauseSources.length === 1
|
||||
? pauseSources[0]
|
||||
: "mixed"
|
||||
};
|
||||
|
||||
if (
|
||||
@@ -1143,6 +1160,15 @@ export class RuntimeHost {
|
||||
this.publishRuntimePauseState();
|
||||
}
|
||||
|
||||
private setDialoguePauseActive(paused: boolean) {
|
||||
if (this.dialoguePauseActive === paused) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.dialoguePauseActive = paused;
|
||||
this.publishRuntimePauseState();
|
||||
}
|
||||
|
||||
private activateDesiredNavigationController() {
|
||||
if (this.runtimeScene === null || !this.sceneReady) {
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user