diff --git a/html/src/app.js b/html/src/app.js index 63424b23..d6203860 100644 --- a/html/src/app.js +++ b/html/src/app.js @@ -9072,6 +9072,7 @@ speechSynthesis.getVoices(); inVRMode: user.inVRMode, avatarEyeHeight: user.avatarEyeHeight }); + this.photonUserJoin(id, user.avatarDict, gameLogDate); } } else { this.parsePhotonUser( @@ -9093,6 +9094,11 @@ speechSynthesis.getVoices(); data.Parameters[251].inVRMode ); } + this.photonUserJoin( + data.Parameters[253], + data.Parameters[251].avatarDict, + gameLogDate + ); } break; case 42: @@ -9335,34 +9341,40 @@ speechSynthesis.getVoices(); id: this.getUserIdFromPhotonId(senderId), displayName }; - API.getInstanceFromShortName({shortName}) - .then((args) => { - var location = args.json.location; - var newShortName = args.json.shortName; - var portalType = 'Secure'; - if (shortName === newShortName) { - portalType = 'Unlocked'; - } - this.parsePhotonPortalSpawn( - datetime, - location, - ref, - portalType, - newShortName, - senderId - ); - return args; - }) - .catch(() => { - this.parsePhotonPortalSpawn( - datetime, - location, - ref, - 'Error', - shortName, - senderId - ); - }); + workerTimers.setTimeout(() => { + // Delay to fix 404? lol + API.getInstanceFromShortName({shortName}) + .then((args) => { + var location = args.json.location; + var newShortName = args.json.shortName; + var portalType = 'Secure'; + if (shortName === newShortName) { + portalType = 'Unlocked'; + } + this.parsePhotonPortalSpawn( + datetime, + location, + ref, + portalType, + newShortName, + senderId + ); + return args; + }) + .catch(() => { + this.parsePhotonPortalSpawn( + datetime, + '', + ref, + 'Error', + shortName, + senderId + ); + this.failedGetRequests.delete( + `instances/s/${shortName}` + ); + }); + }, 1000); return; } else if (eventData.EventName === '_SendOnSpawn') { return; @@ -18707,6 +18719,9 @@ speechSynthesis.getVoices(); }; $app.methods.checkVRChatCache = async function (ref) { + if (!ref.unityPackages) { + return [-1, 0]; + } var cacheDir = await this.getVRChatCacheDir(); var assetUrl = ''; for (var i = ref.unityPackages.length - 1; i > -1; i--) { diff --git a/html/src/app.scss b/html/src/app.scss index 146ef81e..41f197c2 100644 --- a/html/src/app.scss +++ b/html/src/app.scss @@ -100,6 +100,7 @@ .el-dialog__body { padding: 20px; + word-break: unset; } .el-dialog__footer > .el-button + .el-button { diff --git a/html/src/index.pug b/html/src/index.pug index ff27fde5..4e4b5491 100644 --- a/html/src/index.pug +++ b/html/src/index.pug @@ -226,7 +226,7 @@ html span(v-else-if="scope.row.previousStatus === 'ask me'") Ask Me span(v-else-if="scope.row.previousStatus === 'busy'") Do Not Disturb span(v-else) Offline - i.x-user-status(:class="statusClass(scope.row.previousStatus)" style="margin-left:10px") + i.x-user-status(:class="statusClass(scope.row.previousStatus)" style="margin-left:5px") span i.el-icon-right el-tooltip(placement="top") @@ -237,7 +237,7 @@ html span(v-else-if="scope.row.status === 'busy'") Do Not Disturb span(v-else) Offline i.x-user-status(:class="statusClass(scope.row.status)") - span(v-if="scope.row.statusDescription !== scope.row.previousStatusDescription" v-text="scope.row.statusDescription" style="margin-left:10px") + span(v-if="scope.row.statusDescription !== scope.row.previousStatusDescription" v-text="scope.row.statusDescription" style="margin-left:5px") span.x-link(v-else-if="scope.row.type === 'PortalSpawn'" @click="showWorldDialog(scope.row.location, scope.row.shortName)") | PortalSpawn #[location(:location="scope.row.location" :hint="scope.row.worldName" :link="false")] span(v-else-if="scope.row.type === 'ChatBoxMessage'") @@ -279,7 +279,7 @@ html span(v-else-if="scope.row.previousStatus === 'ask me'") Ask Me span(v-else-if="scope.row.previousStatus === 'busy'") Do Not Disturb span(v-else) Offline - i.x-user-status(:class="statusClass(scope.row.previousStatus)" style="margin-left:10px") + i.x-user-status(:class="statusClass(scope.row.previousStatus)" style="margin-left:5px") span i.el-icon-right el-tooltip(placement="top") @@ -290,7 +290,7 @@ html span(v-else-if="scope.row.status === 'busy'") Do Not Disturb span(v-else) Offline i.x-user-status(:class="statusClass(scope.row.status)") - span(v-if="scope.row.statusDescription !== scope.row.previousStatusDescription" v-text="scope.row.statusDescription" style="margin-left:10px") + span(v-if="scope.row.statusDescription !== scope.row.previousStatusDescription" v-text="scope.row.statusDescription" style="margin-left:5px") span.x-link(v-else-if="scope.row.type === 'PortalSpawn'" @click="showWorldDialog(scope.row.location, scope.row.shortName)") | PortalSpawn #[location(:location="scope.row.location" :hint="scope.row.worldName" :link="false")] span(v-else-if="scope.row.type === 'ChatBoxMessage'") diff --git a/html/src/vr.pug b/html/src/vr.pug index 56323cb7..2bdaa8dd 100644 --- a/html/src/vr.pug +++ b/html/src/vr.pug @@ -465,8 +465,6 @@ html template(v-else-if="feed.type === 'OnPlayerJoined'") span(style="margin-left:10px") has joined - span(v-text="feed.avatar.name" style="margin-left:10px") - span(v-if="feed.avatar.releaseStatus === 'public'" style="margin-left:10px;color:#67c23a") (Public) - span(v-else-if="feed.avatar.releaseStatus === 'private'" style="margin-left:10px;color:#e6a23c") (Private) span(v-else-if="feed.color === 'yellow'" v-text="feed.text" style="color:yellow;margin-left:10px") span(v-else style="margin-left:10px" v-text="feed.text") template(v-if="feed.combo > 1")