diff --git a/src/components/ScoreResult.vue b/src/components/ScoreResult.vue
index d8b3741..bac37d6 100644
--- a/src/components/ScoreResult.vue
+++ b/src/components/ScoreResult.vue
@@ -4,6 +4,7 @@ import IconButton from "@/components/IconButton.vue";
import SButton from "@/components/SButton.vue";
import ScreenHint from "@/components/ScreenHint.vue";
import BowData from "@/components/BowData.vue";
+import UserUpgrade from "@/components/UserUpgrade.vue";
import { wxShare } from "@/util";
import { directionAdjusts } from "@/constants";
const props = defineProps({
@@ -31,6 +32,7 @@ const props = defineProps({
const showPanel = ref(true);
const showComment = ref(false);
const showBowData = ref(false);
+const showUpgrade = ref(false);
const finished = ref(false);
const totalRing = ref(0);
const closePanel = () => {
@@ -40,6 +42,9 @@ const closePanel = () => {
}, 300);
};
onMounted(() => {
+ if (props.result.lvl) {
+ showUpgrade.value = true;
+ }
if (props.result.arrows) {
totalRing.value = props.result.arrows.reduce(
(last, next) => last + next.ring,
@@ -55,7 +60,7 @@ onMounted(() => {
-
+
@@ -144,6 +149,11 @@ onMounted(() => {
:show="showBowData"
:onClose="() => (showBowData = false)"
/>
+
diff --git a/src/components/ShootProgress.vue b/src/components/ShootProgress.vue
index 60a4633..7ca1ed9 100644
--- a/src/components/ShootProgress.vue
+++ b/src/components/ShootProgress.vue
@@ -227,6 +227,9 @@ onUnmounted(() => {
font-size: 18px;
transform: translateY(-10px);
}
+.container > view:first-child > button:last-child {
+ overflow: visible;
+}
.container > view:first-child > button:last-child > image {
width: 40px;
transform: translateX(10px) translateY(-10px);
diff --git a/src/components/UserUpgrade.vue b/src/components/UserUpgrade.vue
new file mode 100644
index 0000000..336d594
--- /dev/null
+++ b/src/components/UserUpgrade.vue
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+ 恭喜你升级到
+ 射灵{{ lvl }}级
+
+
+
+
+
+
diff --git a/src/pages/battle-result.vue b/src/pages/battle-result.vue
index 8b5c3a0..88e6b93 100644
--- a/src/pages/battle-result.vue
+++ b/src/pages/battle-result.vue
@@ -2,6 +2,7 @@
import { ref, onMounted } from "vue";
import { onLoad } from "@dcloudio/uni-app";
import Avatar from "@/components/Avatar.vue";
+import UserUpgrade from "@/components/UserUpgrade.vue";
import { getGameAPI, getHomeData } from "@/apis";
import { topThreeColors, getBattleResultTips } from "@/constants";
import useStore from "@/store";
@@ -14,6 +15,7 @@ const ifWin = ref(false);
const data = ref({});
const totalPoints = ref(0);
const rank = ref(0);
+const showUpgrade = ref(false);
// onLoad(async (options) => {
// battleId.value = options.battleId;
@@ -181,6 +183,11 @@ const checkBowData = () => {
查看靶纸
退出
+
diff --git a/src/pages/battle-room.vue b/src/pages/battle-room.vue
index ef0fff0..3473d79 100644
--- a/src/pages/battle-room.vue
+++ b/src/pages/battle-room.vue
@@ -75,7 +75,7 @@ watch(
onLoad(async (options) => {
if (options.battleId) {
const battleInfo = uni.getStorageSync("current-battle");
- console.log("----battleInfo", battleInfo);
+ // console.log("----battleInfo", battleInfo);
if (battleInfo) {
battleId.value = battleInfo.id;
battleType.value = battleInfo.config.mode;
@@ -245,6 +245,7 @@ async function onReceiveMessage(messages = []) {
// 这里会掉多次;
timerSeq.value += 1;
battleId.value = msg.id;
+ startCount.value = true;
step.value = 2;
if (battleType.value === 1) {
redTeam.value = msg.groupUserStatus.redTeam;
@@ -335,7 +336,6 @@ async function onReceiveMessage(messages = []) {
}
if (msg.constructor === MESSAGETYPES.MeleeAllReady) {
start.value = true;
- startCount.value = true;
step.value = 3;
seq.value += 1;
timerSeq.value = 0;
@@ -424,7 +424,7 @@ async function onReceiveMessage(messages = []) {
}
}
if (msg.constructor === MESSAGETYPES.HalfTimeOver) {
- playersScores.value = {};
+ uni.$emit("update-ramain", 0);
[
...msg.groupUserStatus.redTeam,
...msg.groupUserStatus.blueTeam,
diff --git a/src/pages/melee-match.vue b/src/pages/melee-match.vue
index e7ba36d..638c206 100644
--- a/src/pages/melee-match.vue
+++ b/src/pages/melee-match.vue
@@ -117,6 +117,7 @@ async function onReceiveMessage(messages = []) {
// 这里会掉多次;
timerSeq.value += 1;
battleId.value = msg.id;
+ startCount.value = true;
players.value = [
...msg.groupUserStatus.redTeam,
...msg.groupUserStatus.blueTeam,
@@ -130,7 +131,6 @@ async function onReceiveMessage(messages = []) {
if (msg.id !== battleId.value) return;
if (msg.constructor === MESSAGETYPES.MeleeAllReady) {
start.value = true;
- startCount.value = true;
seq.value += 1;
timerSeq.value = 0;
tips.value = "请连续射出6支箭";
@@ -144,7 +144,7 @@ async function onReceiveMessage(messages = []) {
playersScores.value[msg.userId].push(msg.target);
}
if (msg.constructor === MESSAGETYPES.HalfTimeOver) {
- playersScores.value = {};
+ uni.$emit("update-ramain", 0);
[...msg.groupUserStatus.redTeam, ...msg.groupUserStatus.blueTeam].forEach(
(player) => {
playersScores.value[player.id] = player.arrows;
@@ -155,7 +155,7 @@ async function onReceiveMessage(messages = []) {
tips.value = "准备下半场";
}
if (msg.constructor === MESSAGETYPES.MatchOver) {
- uni.setStorageSync("last-battle", msg.endStatus);
+ uni.setStorageSync("last-battle", { ...msg.endStatus, lvl: msg.lvl });
if (msg.endStatus.noSaved) {
uni.showToast({
title: "游戏结束",
diff --git a/src/pages/practise-one.vue b/src/pages/practise-one.vue
index d43688e..a8e5b7b 100644
--- a/src/pages/practise-one.vue
+++ b/src/pages/practise-one.vue
@@ -63,6 +63,7 @@ async function onReceiveMessage(messages = []) {
practiseResult.value = {
...msg.practice,
arrows: JSON.parse(msg.practice.arrows),
+ lvl: msg.lvl,
};
generateCanvasImage(
"shareCanvas",
diff --git a/src/pages/team-match.vue b/src/pages/team-match.vue
index 04eeb59..988981c 100644
--- a/src/pages/team-match.vue
+++ b/src/pages/team-match.vue
@@ -225,7 +225,7 @@ async function onReceiveMessage(messages = []) {
}
}
if (msg.constructor === MESSAGETYPES.MatchOver) {
- uni.setStorageSync("last-battle", msg.endStatus);
+ uni.setStorageSync("last-battle", { ...msg.endStatus, lvl: msg.lvl });
if (msg.endStatus.noSaved) {
uni.showToast({
title: "游戏结束",