diff --git a/src/components/BowTarget.vue b/src/components/BowTarget.vue index e7558a9..7da471d 100644 --- a/src/components/BowTarget.vue +++ b/src/components/BowTarget.vue @@ -43,6 +43,10 @@ const props = defineProps({ type: String, default: "solo", // solo 单排,team 双排 }, + missAsZero: { + type: Boolean, + default: false, + }, stop: { type: Boolean, default: false, @@ -78,6 +82,12 @@ const instance = getCurrentInstance(); const ROUND_TIP_OFFSET_Y = -32; const EXPERIENCE_TIP_OFFSET_Y = -68; +function getRoundText(shot) { + if (shot?.ringX) return "X环"; + if (shot?.ring) return `${shot.ring}环`; + return props.missAsZero ? "0环" : "未上靶"; +} + function buildShotEffectKey(team, shot, index) { return [ team, @@ -433,8 +443,7 @@ onBeforeUnmount(() => { v-if="latestOne" class="round-tip fade-in-out" :style="getRoundTipStyle(latestOne)" - >{{ latestOne.ringX ? "X" : latestOne.ring || "未上靶" - }} + >{{ getRoundText(latestOne) }} {{ bluelatestOne.ringX ? "X" : bluelatestOne.ring || "未上靶" - }}{{ getRoundText(bluelatestOne) }} { if (!arrow) return "-"; if (arrow.ringX && arrow.ring) return "X环"; - return arrow.ring ? `${arrow.ring}环` : "-"; + return `${Number(arrow.ring) || 0}环`; }; const isMember = (player = {}) => player.vip === true || player.sVip === true; diff --git a/src/components/PlayerSeats.vue b/src/components/PlayerSeats.vue index 5b029f8..5c38d56 100644 --- a/src/components/PlayerSeats.vue +++ b/src/components/PlayerSeats.vue @@ -20,6 +20,15 @@ const props = defineProps({ default: false, }, }); + +const isMember = (player = {}) => player.vip === true || player.sVip === true; + +const getMemberNicknameClass = (player = {}) => [ + "member-nickname", + player.vip === true && player.sVip !== true ? "member-nickname--vip" : "", + player.sVip === true ? "member-nickname--svip" : "", +]; + const seats = new Array(props.total).fill(1); @@ -40,10 +49,27 @@ const seats = new Array(props.total).fill(1); - {{ - players[index].name - }} - 虚位以待 + + {{ players[index].name }} + + {{ players[index].name }} + + + + {{ players[index].name }} + + + 虚位以待 + 管理员