From 469487ba730dbd9c19466ac4010268a9ade9c66f Mon Sep 17 00:00:00 2001
From: zhangyibo95 <690096405@qq.com>
Date: Thu, 27 Aug 2026 17:24:25 +0800
Subject: [PATCH] =?UTF-8?q?update=EF=BC=9A=E4=BC=98=E5=8C=96=E6=96=B0?=
=?UTF-8?q?=E6=89=8B=E6=95=99=E7=A8=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/BowTarget.vue | 15 +++++++++++++--
src/components/TestDistance.vue | 13 ++++++++++++-
src/pages/first-try.vue | 6 ++++--
src/pages/melee-battle.vue | 6 ++++++
src/pages/practise-one.vue | 7 ++++++-
src/pages/practise-two.vue | 7 ++++++-
src/pages/team-battle/components/BowTarget.vue | 15 +++++++++++++--
src/pages/team-battle/components/TestDistance.vue | 13 ++++++++++++-
src/pages/team-battle/index.vue | 6 ++++++
src/pages/training/components/BowTarget.vue | 15 +++++++++++++--
src/pages/training/components/TestDistance.vue | 9 ++++++++-
src/pages/training/practise-one.vue | 8 +++++++-
12 files changed, 106 insertions(+), 14 deletions(-)
diff --git a/src/components/BowTarget.vue b/src/components/BowTarget.vue
index ebd37d2..77127b9 100644
--- a/src/components/BowTarget.vue
+++ b/src/components/BowTarget.vue
@@ -51,6 +51,10 @@ const props = defineProps({
type: Boolean,
default: false,
},
+ targetType: {
+ type: [Number, String],
+ default: 40,
+ },
targetRadius: {
type: Number,
default: 20,
@@ -426,12 +430,19 @@ function getExperienceTipStyle(shot) {
);
}
const simulShoot = async () => {
- if (device.value.deviceId) await simulShootAPI(device.value.deviceId);
+ if (device.value.deviceId) {
+ await simulShootAPI(
+ device.value.deviceId,
+ undefined,
+ undefined,
+ props.targetType
+ );
+ }
};
const simulShoot2 = async () => {
if (device.value.deviceId) {
const r1 = Math.random() > 0.5 ? 0.01 : 0.02;
- await simulShootAPI(device.value.deviceId, r1, r1);
+ await simulShootAPI(device.value.deviceId, r1, r1, props.targetType);
}
};
diff --git a/src/components/TestDistance.vue b/src/components/TestDistance.vue
index 13ce54f..37b3b42 100644
--- a/src/components/TestDistance.vue
+++ b/src/components/TestDistance.vue
@@ -29,6 +29,10 @@ const props = defineProps({
type: Number,
default: 15,
},
+ targetType: {
+ type: [Number, String],
+ default: 40,
+ },
autoStart: {
type: Boolean,
default: false,
@@ -105,7 +109,14 @@ async function onReceiveMessage(msg) {
}
const simulShoot = async () => {
- if (device.value.deviceId) await simulShootAPI(device.value.deviceId);
+ if (device.value.deviceId) {
+ await simulShootAPI(
+ device.value.deviceId,
+ undefined,
+ undefined,
+ props.targetType
+ );
+ }
};
onMounted(() => {
diff --git a/src/pages/first-try.vue b/src/pages/first-try.vue
index b767cb3..f66dd2a 100644
--- a/src/pages/first-try.vue
+++ b/src/pages/first-try.vue
@@ -114,7 +114,7 @@ const createPractise = async (arrows) => {
const result = await createPractiseAPI(
arrows,
120,
- 1,
+ 2,
device.value.deviceId
);
if (result) practiseId.value = result.id;
@@ -384,7 +384,7 @@ const getResultTipSrc = (result = {}) => {
请完成以上步骤校准智能弓
-
+
{
:totalRound="step === 5 ? total : 0"
:scores="scores"
:isSvip="isSvip"
+ :targetType="40"
+ stable-shot-effect
/>
{
function recoverData(battleInfo, { force = false } = {}) {
battleInfo = normalizeBattleInfo(battleInfo);
if (!battleInfo) return;
+ const nextTargetType = Number(battleInfo.targetType ?? battleInfo.target_type);
+ if ([20, 40].includes(nextTargetType)) targetType.value = nextTargetType;
if (battleInfo.status !== undefined) {
battleEnded = [2, 4].includes(Number(battleInfo.status));
}
@@ -374,6 +377,7 @@ function onMatchSocketState(event) {
}
onLoad(async (options) => {
+ targetType.value = 20;
const returnSnapshot = options.fromReturn ? takeMatchReturnSnapshot() : null;
skipNextRestoreOnShow = false;
if (returnSnapshot?.matchId) battleId.value = returnSnapshot.matchId;
@@ -468,6 +472,7 @@ onShow(() => {
:guide="false"
:isBattle="true"
:count="readyTime"
+ :targetType="targetType"
/>
{
:totalRound="12"
:scores="playersScores.map((r) => r[user.id]).flat()"
:isSvip="isCurrentUserSvip"
+ :targetType="targetType"
:stop="halfRest"
stable-shot-effect
/>
diff --git a/src/pages/practise-one.vue b/src/pages/practise-one.vue
index 96a4462..3ed5de1 100644
--- a/src/pages/practise-one.vue
+++ b/src/pages/practise-one.vue
@@ -1,5 +1,5 @@