show kill details on team member hover instead of kill hover
This commit is contained in:
@ -12,18 +12,21 @@
|
|||||||
const entries = teams.map((team) => ({
|
const entries = teams.map((team) => ({
|
||||||
...team,
|
...team,
|
||||||
memberOne: Object.assign(team.memberOne, {
|
memberOne: Object.assign(team.memberOne, {
|
||||||
|
kills: deaths.filter((d) => d.killer?.id === team.memberOne.id) ?? [],
|
||||||
dead: deaths.find((d) => d.killed.id === team.memberOne.id) ?? null
|
dead: deaths.find((d) => d.killed.id === team.memberOne.id) ?? null
|
||||||
}),
|
}),
|
||||||
memberTwo: Object.assign(team.memberTwo, {
|
memberTwo: Object.assign(team.memberTwo, {
|
||||||
|
kills: deaths.filter((d) => d.killer?.id === team.memberTwo.id) ?? [],
|
||||||
dead: deaths.find((d) => d.killed.id === team.memberTwo.id) ?? null
|
dead: deaths.find((d) => d.killed.id === team.memberTwo.id) ?? null
|
||||||
}),
|
})
|
||||||
kills: deaths.filter((d) => d.killer?.id === team.memberOne.id || d.killer?.id === team.memberTwo.id)
|
|
||||||
}));
|
}));
|
||||||
entries.sort((a, b) => {
|
entries.sort((a, b) => {
|
||||||
const aBothSignedUp = a.memberOne.id != null && a.memberTwo.id != null;
|
const aBothSignedUp = a.memberOne.id != null && a.memberTwo.id != null;
|
||||||
|
const aBothKills = a.memberOne.kills.length + a.memberTwo.kills.length;
|
||||||
const aBothDead = a.memberOne.dead && a.memberTwo.dead;
|
const aBothDead = a.memberOne.dead && a.memberTwo.dead;
|
||||||
|
|
||||||
const bBothSignedUp = b.memberOne.id != null && b.memberTwo.id != null;
|
const bBothSignedUp = b.memberOne.id != null && b.memberTwo.id != null;
|
||||||
|
const bBothKills = b.memberOne.kills.length + b.memberTwo.kills.length;
|
||||||
const bBothDead = b.memberOne.dead && b.memberTwo.dead;
|
const bBothDead = b.memberOne.dead && b.memberTwo.dead;
|
||||||
|
|
||||||
if (!aBothSignedUp || !bBothSignedUp) {
|
if (!aBothSignedUp || !bBothSignedUp) {
|
||||||
@ -32,7 +35,7 @@
|
|||||||
return Number(!!aBothDead) - Number(!!bBothDead);
|
return Number(!!aBothDead) - Number(!!bBothDead);
|
||||||
}
|
}
|
||||||
|
|
||||||
return b.kills.length - a.kills.length;
|
return bBothKills.length - aBothKills.length;
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -65,7 +68,17 @@
|
|||||||
{/if}
|
{/if}
|
||||||
</td>
|
</td>
|
||||||
<td class="max-w-9 overflow-ellipsis">
|
<td class="max-w-9 overflow-ellipsis">
|
||||||
<div class="flex items-center gap-x-2 w-max tooltip" data-tip={team.memberOne.dead?.message}>
|
<div class="flex items-center gap-x-2 w-max tooltip">
|
||||||
|
{#if team.memberTwo.kills.length > 0 || team.memberTwo.dead}
|
||||||
|
<div class="tooltip-content text-left space-y-1">
|
||||||
|
{#each team.memberTwo.kills as kill (kill.killed.id)}
|
||||||
|
<p>🔪 {kill.killer!.username} → {kill.killed.username}</p>
|
||||||
|
{/each}
|
||||||
|
{#if team.memberTwo.dead}
|
||||||
|
<p class="mt-2 first:mt-initial">{team.memberTwo.dead.message}</p>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
{#if team.memberOne.id != null}
|
{#if team.memberOne.id != null}
|
||||||
<img class="h-4 pixelated" src="https://mc-heads.net/head/{team.memberOne.username}/8" alt="head" />
|
<img class="h-4 pixelated" src="https://mc-heads.net/head/{team.memberOne.username}/8" alt="head" />
|
||||||
{/if}
|
{/if}
|
||||||
@ -77,7 +90,17 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="flex items-center gap-x-2 w-max tooltip" data-tip={team.memberTwo.dead?.message}>
|
<div class="flex items-center gap-x-2 w-max tooltip">
|
||||||
|
{#if team.memberTwo.kills.length > 0 || team.memberTwo.dead}
|
||||||
|
<div class="tooltip-content text-left space-y-1">
|
||||||
|
{#each team.memberTwo.kills as kill (kill.killed.id)}
|
||||||
|
<p>🔪 {kill.killer!.username} → {kill.killed.username}</p>
|
||||||
|
{/each}
|
||||||
|
{#if team.memberTwo.dead}
|
||||||
|
<p class="mt-2 first:mt-initial">{team.memberTwo.dead.message}</p>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
{#if team.memberTwo.id != null}
|
{#if team.memberTwo.id != null}
|
||||||
<img class="h-4 pixelated" src="https://mc-heads.net/head/{team.memberTwo.username}/8" alt="head" />
|
<img class="h-4 pixelated" src="https://mc-heads.net/head/{team.memberTwo.username}/8" alt="head" />
|
||||||
{/if}
|
{/if}
|
||||||
@ -89,13 +112,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span class="text-xs sm:text-md tooltip tooltip-right">
|
<span class="text-xs sm:text-md">
|
||||||
<span class="tooltip-content text-left space-y-1">
|
{team.memberOne.kills.length + team.memberTwo.kills.length}
|
||||||
{#each team.kills as kill, i (i)}
|
|
||||||
<p>{kill.killer!.username} 🔪 {kill.killed.username}</p>
|
|
||||||
{/each}
|
|
||||||
</span>
|
|
||||||
{team.kills.length}
|
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
Reference in New Issue
Block a user