mirror of
https://github.com/overte-org/overte.git
synced 2025-04-13 17:32:11 +02:00
updated nametags to work in selfie mode
This commit is contained in:
parent
f71dfa065c
commit
06244338d6
1 changed files with 29 additions and 0 deletions
|
@ -197,6 +197,27 @@ function toggleInterval() {
|
|||
}
|
||||
|
||||
|
||||
// Disconnect the camera mode updated signal if we have one connected for the selfie mode
|
||||
var cameraModeUpdatedSignalConnected = false;
|
||||
function maybeDisconnectCameraModeUpdatedSignal(){
|
||||
if (cameraModeUpdatedSignalConnected) {
|
||||
Camera.modeUpdated.disconnect(handleCameraModeChanged);
|
||||
cameraModeUpdatedSignalConnected = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Turn on the nametag for yourself if you are in selfie mode, other wise delete it
|
||||
function handleCameraModeChanged(mode) {
|
||||
if (mode === "selfie") {
|
||||
if (avatarNametagMode === "alwaysOn") {
|
||||
add(MyAvatar.sessionUUID);
|
||||
}
|
||||
} else {
|
||||
maybeRemove(MyAvatar.sessionUUID);
|
||||
}
|
||||
}
|
||||
|
||||
// Handle checking to see if we should add or delete nametags in persistent mode
|
||||
var alwaysOnAvatarDistanceCheck = false;
|
||||
var DISTANCE_CHECK_INTERVAL_MS = 1000;
|
||||
|
@ -215,6 +236,10 @@ function handleAlwaysOnMode(shouldTurnOnAlwaysOnMode) {
|
|||
});
|
||||
maybeClearAlwaysOnAvatarDistanceCheck();
|
||||
alwaysOnAvatarDistanceCheck = Script.setInterval(maybeAddOrRemoveIntervalCheck, DISTANCE_CHECK_INTERVAL_MS);
|
||||
|
||||
if (Camera.mode === "selfie") {
|
||||
add(MyAvatar.sessionUUID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -652,6 +677,7 @@ function reset() {
|
|||
_this.avatars = {};
|
||||
shouldToggleInterval();
|
||||
maybeClearAlwaysOnAvatarDistanceCheck();
|
||||
maybeDisconnectCameraModeUpdatedSignal();
|
||||
|
||||
return _this;
|
||||
}
|
||||
|
@ -662,11 +688,14 @@ var avatarNametagMode = "on";
|
|||
function handleAvatarNametagMode(newAvatarNametagMode) {
|
||||
if (avatarNametagMode === "alwaysOn") {
|
||||
handleAlwaysOnMode(false);
|
||||
maybeDisconnectCameraModeUpdatedSignal();
|
||||
}
|
||||
|
||||
avatarNametagMode = newAvatarNametagMode;
|
||||
if (avatarNametagMode === "alwaysOn") {
|
||||
handleAlwaysOnMode(true);
|
||||
Camera.modeUpdated.connect(handleCameraModeChanged);
|
||||
cameraModeUpdatedSignalConnected = true;
|
||||
}
|
||||
|
||||
if (avatarNametagMode === "off" || avatarNametagMode === "on") {
|
||||
|
|
Loading…
Reference in a new issue