diff options
author | metamuffin <metamuffin@disroot.org> | 2024-07-14 11:39:06 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-07-14 11:39:06 +0200 |
commit | e10e4aec0cb85ead7d2c6c5c9e5c77257c71155e (patch) | |
tree | a9bc0af2d02dc8f77bd628d011e5fe96442242ea /test-client/visual.ts | |
parent | 069b61be6d132bc2d9935bb1f846da4dc3d8b5d5 (diff) | |
download | hurrycurry-e10e4aec0cb85ead7d2c6c5c9e5c77257c71155e.tar hurrycurry-e10e4aec0cb85ead7d2c6c5c9e5c77257c71155e.tar.bz2 hurrycurry-e10e4aec0cb85ead7d2c6c5c9e5c77257c71155e.tar.zst |
hide messages when nametags are shown
Diffstat (limited to 'test-client/visual.ts')
-rw-r--r-- | test-client/visual.ts | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/test-client/visual.ts b/test-client/visual.ts index debf861e..d3f8a8b0 100644 --- a/test-client/visual.ts +++ b/test-client/visual.ts @@ -69,6 +69,9 @@ export function draw_ingame() { for (const [_, player] of players) if (player.message) draw_message(player.message) + for (const [_, player] of players) + draw_player_nametag(player) + // Draw interact target draw_interact_target() @@ -135,13 +138,16 @@ function draw_player(player: PlayerData) { if (player.boosting) ctx.scale(1.3, 1.3) draw_character(player.character) ctx.restore() + if (player.item) draw_item(player.item) +} +function draw_player_nametag(player: PlayerData) { if (nametag_scale_anim > 0.01) { ctx.save() ctx.translate(player.anim_position.x, player.anim_position.y) ctx.translate(0, -1) ctx.textAlign = "center" - ctx.font = "10px sans-serif" + ctx.font = "15px sans-serif" ctx.scale(nametag_scale_anim / camera_scale, nametag_scale_anim / camera_scale) const w = ctx.measureText(player.name).width + 20 ctx.fillStyle = "#fffa" @@ -153,8 +159,6 @@ function draw_player(player: PlayerData) { ctx.fillText(player.name, 0, 0) ctx.restore() } - - if (player.item) draw_item(player.item) } function draw_interact_target() { @@ -211,7 +215,8 @@ function draw_character(character: number) { function draw_message(m: MessageData) { ctx.save() ctx.translate(m.anim_position.x, m.anim_position.y) - ctx.scale(m.anim_size, m.anim_size) + const scale = Math.min(m.anim_size, 1 - nametag_scale_anim); + ctx.scale(scale, scale) if ("item" in m.inner) { ctx.fillStyle = "#fffa" ctx.beginPath() |