3 Commits
Author SHA1 Message Date
zhangyi d4d690cb8e update:更新protocol 2026-09-15 18:12:39 +08:00
zhangyi 88febb92e5 update:更换语音 2026-09-15 15:44:14 +08:00
zhangyi c8533de5cf update:优化测距展示 2026-09-03 10:35:16 +08:00
7 changed files with 7 additions and 10 deletions
+3 -3
View File
@@ -2,7 +2,7 @@ export const AUDIO_INTERRUPTION_BEGIN_EVENT = "audio-interruption-begin";
export const AUDIO_INTERRUPTION_END_EVENT = "audio-interruption-end"; export const AUDIO_INTERRUPTION_END_EVENT = "audio-interruption-end";
export const RHYTHM_SHOOT_WINDOW_AUDIO_KEY = "请射箭"; export const RHYTHM_SHOOT_WINDOW_AUDIO_KEY = "请射箭";
export const STABILITY_START_AUDIO_KEY = export const STABILITY_START_AUDIO_KEY =
"请在计时结束能量条达到标记区域"; "请在计时结束能量条达到百分百";
export const STABILITY_ENERGY_50_AUDIO_KEY = "加油!到达50%啦"; export const STABILITY_ENERGY_50_AUDIO_KEY = "加油!到达50%啦";
export const STABILITY_ENERGY_70_AUDIO_KEY = export const STABILITY_ENERGY_70_AUDIO_KEY =
"70%啦!还差一点,胜利就在眼前"; "70%啦!还差一点,胜利就在眼前";
@@ -12,7 +12,7 @@ const TRAINING_START_AUDIO_KEY_MAP = Object.freeze({
endurance: "请于计时前完成累计环数和箭量", endurance: "请于计时前完成累计环数和箭量",
precision: "请射箭命中高亮区域", precision: "请射箭命中高亮区域",
rhythm: "请在读条推进到标记区间内射箭", rhythm: "请在读条推进到标记区间内射箭",
stability: STABILITY_START_AUDIO_KEY, stability: "请在计时结束前能量条达到百分百",
}); });
export const getTrainingStartAudioKey = (trainingType, fallback = "") => export const getTrainingStartAudioKey = (trainingType, fallback = "") =>
@@ -176,7 +176,7 @@ export const audioFils = {
练习开始: 练习开始:
"https://static.shelingxingqiu.com/attachment/2025-11-14/de88w0lmmt43nnfmoi.mp3", "https://static.shelingxingqiu.com/attachment/2025-11-14/de88w0lmmt43nnfmoi.mp3",
[STABILITY_START_AUDIO_KEY]: [STABILITY_START_AUDIO_KEY]:
"https://static.shelingxingqiu.com/shootmini/static/audio0820/%E8%AF%B7%E5%9C%A8%E8%AE%A1%E6%97%B6%E7%BB%93%E6%9D%9F%E6%97%B6%E8%83%BD%E9%87%8F%E6%9D%A1%E8%BE%BE%E5%88%B0%E6%A0%87%E8%AE%B0%E5%8C%BA%E5%9F%9F.MP3", "https://static.shelingxingqiu.com/shootaudio/%E8%AF%B7%E5%9C%A8%E8%AE%A1%E6%97%B6%E7%BB%93%E6%9D%9F%E5%89%8D%E8%83%BD%E9%87%8F%E6%9D%A1%E8%BE%BE%E5%88%B0%E7%99%BE%E5%88%86%E7%99%BE.MP3",
[STABILITY_ENERGY_50_AUDIO_KEY]: [STABILITY_ENERGY_50_AUDIO_KEY]:
"https://static.shelingxingqiu.com/shootmini/static/audio0820/%E5%8A%A0%E6%B2%B9%EF%BC%81%E5%88%B0%E8%BE%BE50%25%E5%95%A6.MP3", "https://static.shelingxingqiu.com/shootmini/static/audio0820/%E5%8A%A0%E6%B2%B9%EF%BC%81%E5%88%B0%E8%BE%BE50%25%E5%95%A6.MP3",
[STABILITY_ENERGY_70_AUDIO_KEY]: [STABILITY_ENERGY_70_AUDIO_KEY]:
-1
View File
@@ -155,7 +155,6 @@ onBeforeUnmount(() => {
</button> </button>
<view class="warnning-text"> <view class="warnning-text">
<block v-if="statusText"> <block v-if="statusText">
<text v-if="distance > 0">当前距离{{ distance }}</text>
<text>{{ statusText }}</text> <text>{{ statusText }}</text>
</block> </block>
<block v-else> <block v-else>
@@ -113,7 +113,6 @@ onBeforeUnmount(() => {
</button> </button>
<view class="warnning-text"> <view class="warnning-text">
<block v-if="statusText"> <block v-if="statusText">
<text v-if="distance > 0">当前距离{{ distance }}</text>
<text>{{ statusText }}</text> <text>{{ statusText }}</text>
</block> </block>
<block v-else> <block v-else>
@@ -150,7 +150,6 @@ onBeforeUnmount(() => {
<view class="warnning-text"> <view class="warnning-text">
<view class="target-tip">当前靶纸为<text class="text-yellow">{{ targetType }}cm</text>全环靶</view> <view class="target-tip">当前靶纸为<text class="text-yellow">{{ targetType }}cm</text>全环靶</view>
<block v-if="statusText"> <block v-if="statusText">
<text v-if="distance > 0">当前距离<text class="text-yellow">{{ distance }}</text></text>
<text>{{ statusText }}</text> <text>{{ statusText }}</text>
</block> </block>
<block v-else> <block v-else>
@@ -89,7 +89,7 @@ const previewLines = computed(() => {
} }
.difficulty-preview__copy { .difficulty-preview__copy {
width: 80%; width: 84%;
margin: 0 auto; margin: 0 auto;
display: block; display: block;
color: #ffffff; color: #ffffff;
+1 -1
View File
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -7,7 +7,7 @@ const { Reader, Writer } = protobuf;
// 所以这里使用 minimal Reader/Writer 做静态字段解码和客户端消息编码。 // 所以这里使用 minimal Reader/Writer 做静态字段解码和客户端消息编码。
// <match-schema-generated> // <match-schema-generated>
// 此区块由 scripts/generate-match-schema.mjs 自动生成,请勿手动修改。 // 此区块由 scripts/generate-match-schema.mjs 自动生成,请勿手动修改。
// 来源:src/utils/match.min.jssha256: bece92f31bde3072 // 来源:src/utils/match.min.jssha256: ec0371baeba9a9bf
// 协议命名空间:rpc;消息数:12;字段数:163 // 协议命名空间:rpc;消息数:12;字段数:163
export const ServerMessageType = { export const ServerMessageType = {
@@ -188,7 +188,7 @@ const SCHEMAS = {
43: { name: "calories", kind: "double" }, 43: { name: "calories", kind: "double" },
44: { name: "score_slot", kind: "int32" }, 44: { name: "score_slot", kind: "int32" },
45: { name: "current_energy", kind: "int32" }, 45: { name: "current_energy", kind: "int32" },
46: { name: "energy_cost_per_sec", kind: "int32" }, 46: { name: "energy_cost_per_sec", kind: "float" },
47: { name: "energy_per_hit", kind: "int32" }, 47: { name: "energy_per_hit", kind: "int32" },
48: { name: "energy_req_percent", kind: "int32" }, 48: { name: "energy_req_percent", kind: "int32" },
49: { name: "delta_current_energy", kind: "int32" }, 49: { name: "delta_current_energy", kind: "int32" },