diff --git a/html/src/app.js b/html/src/app.js
index d32bb6d4..08ca7e54 100644
--- a/html/src/app.js
+++ b/html/src/app.js
@@ -8084,6 +8084,66 @@ speechSynthesis.getVoices();
'CallUdonMethod'
];
+ $app.data.photonEmojis = [
+ 'Angry',
+ 'Blushing',
+ 'Crying',
+ 'Frown',
+ 'Hand Wave',
+ 'Hang Ten',
+ 'In Love',
+ 'Jack O Lantern',
+ 'Kiss',
+ 'Laugh',
+ 'Skull',
+ 'Smile',
+ 'Spooky Ghost',
+ 'Stoic',
+ 'Sunglasses',
+ 'Thinking',
+ 'Thumbs Down',
+ 'Thumbs Up',
+ 'Tongue Out',
+ 'Wow',
+ 'Bats',
+ 'Cloud',
+ 'Fire',
+ 'Snow Fall',
+ 'Snowball',
+ 'Splash',
+ 'Web',
+ 'Beer',
+ 'Candy',
+ 'Candy Cane',
+ 'Candy Corn',
+ 'Champagne',
+ 'Drink',
+ 'Gingerbread',
+ 'Ice Cream',
+ 'Pineapple',
+ 'Pizza',
+ 'Tomato',
+ 'Beachball',
+ 'Coal',
+ 'Confetti',
+ 'Gift',
+ 'Gifts',
+ 'Life Ring',
+ 'Mistletoe',
+ 'Money',
+ 'Neon Shades',
+ 'Sun Lotion',
+ 'Boo',
+ 'Broken Heart',
+ 'Exclamation',
+ 'Go',
+ 'Heart',
+ 'Music Note',
+ 'Question',
+ 'Stop',
+ 'Zzz'
+ ];
+
$app.methods.startLobbyWatcherLoop = function () {
if (!this.photonLobbyWatcherLoop) {
this.photonLobbyWatcherLoop = true;
@@ -8126,7 +8186,7 @@ speechSynthesis.getVoices();
var timeSinceLastEvent = dtNow - Date.parse(dt);
if (timeSinceLastEvent > this.photonLobbyTimeoutThreshold) {
var joinTime = this.photonLobbyJointime.get(id);
- if (!joinTime || joinTime + 60000 < dtNow) {
+ if (!joinTime || joinTime + 120000 < dtNow) {
// wait 1min for user to load in
var displayName = '';
var userId = '';
@@ -8179,18 +8239,17 @@ speechSynthesis.getVoices();
filteredHudTimeout.push(item);
}
});
- AppApi.ExecuteVrOverlayFunction(
- 'updateHudTimeout',
- JSON.stringify(filteredHudTimeout)
- );
} else {
- AppApi.ExecuteVrOverlayFunction(
- 'updateHudTimeout',
- JSON.stringify(hudTimeout)
- );
+ var filteredHudTimeout = hudTimeout;
}
+ AppApi.ExecuteVrOverlayFunction(
+ 'updateHudTimeout',
+ JSON.stringify(filteredHudTimeout)
+ );
}
this.photonLobbyTimeout = hudTimeout;
+
+ this.getCurrentInstanceUserList();
}
this.photonBotCheck(event7List);
});
@@ -8600,6 +8659,8 @@ speechSynthesis.getVoices();
var text = 'Beep';
} else if (data.EventType === 'ReloadAvatarNetworkedRPC') {
var text = 'AvatarReset';
+ } else if (data.EventType === 'SpawnEmojiRPC') {
+ var text = `SpawnEmoji ${this.photonEmojis[data.Data]}`;
} else {
var eventData = '';
if (data.Data) {
@@ -10648,7 +10709,7 @@ speechSynthesis.getVoices();
'VRCX_legendColorOverride',
this.legendColorOverride
);
- API.cachedUsers.forEach((ref, id) => {
+ API.cachedUsers.forEach((ref) => {
API.applyUserTrustLevel(ref);
});
};
@@ -12222,6 +12283,7 @@ speechSynthesis.getVoices();
var pushUser = function (ref) {
var photonId = '';
var masterId = 0;
+ var isFriend = false;
$app.photonLobbyCurrent.forEach((ref1, id) => {
if (masterId === 0 || masterId > id) {
masterId = id;
@@ -12243,11 +12305,22 @@ speechSynthesis.getVoices();
if (photonId === masterId) {
isMaster = true;
}
+ var timeoutTime = 0;
+ if (typeof ref.id !== 'undefined') {
+ isFriend = $app.friends.has(ref.id);
+ $app.photonLobbyTimeout.forEach((ref1) => {
+ if (ref1.userId === ref.id) {
+ timeoutTime = ref1.time;
+ }
+ });
+ }
users.push({
ref,
timer: ref.$location_at,
photonId,
- isMaster
+ isMaster,
+ isFriend,
+ timeoutTime
});
// get block, mute
};
diff --git a/html/src/index.pug b/html/src/index.pug
index 6937e123..de184ac6 100644
--- a/html/src/index.pug
+++ b/html/src/index.pug
@@ -104,19 +104,27 @@ html
div(style="margin-top:5px")
span(v-show="currentInstanceWorld.name !== currentInstanceWorld.description" v-text="currentInstanceWorld.description" style="font-size:12px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2")
div.current-instance-table
- data-tables(v-bind="currentInstanceUserList" @sort-change="updateTimers" @row-click="selectCurrentInstanceRow" style="margin-top:10px;cursor:pointer")
+ data-tables(v-bind="currentInstanceUserList" @row-click="selectCurrentInstanceRow" style="margin-top:10px;cursor:pointer")
el-table-column(label="Avatar" width="60" prop="photo")
template(v-once #default="scope")
template(v-if="userImage(scope.row.ref)")
el-popover(placement="right" height="500px" trigger="hover")
img.friends-list-avatar(slot="reference" v-lazy="userImage(scope.row.ref)")
img.friends-list-avatar(v-lazy="userImageFull(scope.row.ref)" style="height:500px;cursor:pointer" @click="openExternalLink(userImageFull(scope.row.ref))")
- el-table-column(label="Timer" width="90" prop="timer" sortable)
+ el-table-column(label="Timer" width="80" prop="timer" sortable)
template(v-once #default="scope")
timer(:epoch="scope.row.timer")
el-table-column(label="Photon Id" width="100" prop="photonId" sortable)
template(v-once #default="scope")
span(v-text="scope.row.photonId")
+ el-table-column(label="Icons" prop="isMaster" width="100")
+ template(v-once #default="scope")
+ el-tooltip(v-if="scope.row.isMaster" placement="left" content="Instance Master")
+ span 👑
+ el-tooltip(v-if="scope.row.isFriend" placement="left" content="Friend")
+ span 💚
+ el-tooltip(v-if="scope.row.timeoutTime" placement="left" content="Timeout")
+ span(style="color:red") 🔴{{ scope.row.timeoutTime }}s
el-table-column(label="Display Name" min-width="140" prop="ref.displayName")
template(v-once #default="scope")
span(v-text="scope.row.ref.displayName" :class="scope.row.ref.$trustColor")