diff --git a/src/components/ImageShare.vue b/src/components/ImageShare.vue index 3cdcd2e..ffaf51a 100644 --- a/src/components/ImageShare.vue +++ b/src/components/ImageShare.vue @@ -67,7 +67,7 @@ const saveImage = () => { - + {{ user.nickName }} 砖石1级 diff --git a/src/components/PlayerSeats.vue b/src/components/PlayerSeats.vue new file mode 100644 index 0000000..30e8e1c --- /dev/null +++ b/src/components/PlayerSeats.vue @@ -0,0 +1,90 @@ + + + + + diff --git a/src/constants.js b/src/constants.js index c09a042..80a8358 100644 --- a/src/constants.js +++ b/src/constants.js @@ -1,4 +1,20 @@ export const MESSAGETYPES = { - ShootSyncMeArrowID: parseInt("0x789b6b0d"), - ShootSyncMePracticeID: parseInt("0xD88AE05E"), + ShootSyncMeArrowID: parseInt("0x789b6b0d"), // 2023451405 + ShootSyncMePracticeID: parseInt("0xD88AE05E"), // 3632980062 + WaitForAllReady: parseInt("0x615C13BE"), // 1633424318 + AllReady: parseInt("0x1CCB49FD"), // 483084797 + ShootResult: parseInt("0xAA0795E2"), // 2852623842 + CurrentRoundEnded: parseInt("0x3E2CE041"), // 1043128385 + ToSomeoneShoot: parseInt("0x077ACD1A"), // 125488410 + SomeGuyIsReady: parseInt("0xAEE8C236"), // 2934489654 + MatchOver: parseInt("0xB7815EEF"), // 3078708975 +}; + +export const roundsName = { + 0: "一", + 1: "一", + 2: "二", + 3: "三", + 4: "四", + 5: "五", }; diff --git a/src/pages.json b/src/pages.json index f91b703..d1cbb76 100644 --- a/src/pages.json +++ b/src/pages.json @@ -113,6 +113,12 @@ "style": { "navigationBarTitleText": "排位赛" } + }, + { + "path": "pages/battle-result", + "style": { + "navigationBarTitleText": "对战结果" + } } ], "globalStyle": { diff --git a/src/pages/battle-result.vue b/src/pages/battle-result.vue new file mode 100644 index 0000000..3f94938 --- /dev/null +++ b/src/pages/battle-result.vue @@ -0,0 +1,121 @@ + + + + + diff --git a/src/pages/battle-room.vue b/src/pages/battle-room.vue index afdbc3c..4ea4440 100644 --- a/src/pages/battle-room.vue +++ b/src/pages/battle-room.vue @@ -2,8 +2,7 @@ import { ref, onUnmounted } from "vue"; import { onLoad } from "@dcloudio/uni-app"; import Container from "@/components/Container.vue"; -import AppBackground from "@/components/AppBackground.vue"; -import Header from "@/components/Header.vue"; +import PlayerSeats from "@/components/PlayerSeats.vue"; import Guide from "@/components/Guide.vue"; import SButton from "@/components/SButton.vue"; import BowTarget from "@/components/BowTarget.vue"; @@ -19,10 +18,9 @@ import useStore from "@/store"; import { storeToRefs } from "pinia"; const store = useStore(); const { user } = storeToRefs(store); -const step = ref(1); +const step = ref(3); const room = ref({}); const roomNumber = ref(""); -const seats = new Array(10).fill(1); const players = new Array(7).fill(1); const teams = [{ name: "选手1", avatar: "../static/avatar.png" }]; onLoad(async (options) => { @@ -80,27 +78,10 @@ const startGame = async () => { - - - - - - - - 选手{{ index + 1 }} - 虚位以待 - 创建者 - - - + { - + @@ -144,35 +125,6 @@ const startGame = async () => { height: calc(100% - 40px); overflow-x: hidden; } -.players { - display: flex; - flex-wrap: wrap; - justify-content: center; - column-gap: 15px; - row-gap: 10px; - margin-bottom: 20px; - font-size: 14px; -} -.players > view { - width: 45%; - display: flex; - align-items: center; - position: relative; - color: #fff; - height: 90px; - overflow: hidden; -} -.players > view > image:first-child { - width: 100%; - position: absolute; - z-index: -1; -} -.players > view > image:nth-child(2) { - width: 40px; - margin: 0 10px; - border: 1px solid #fff; - border-radius: 50%; -} .founder { position: absolute; background-color: #fed847; diff --git a/src/pages/practise-one.vue b/src/pages/practise-one.vue index 11200c7..002e23c 100644 --- a/src/pages/practise-one.vue +++ b/src/pages/practise-one.vue @@ -8,7 +8,7 @@ import ScorePanel2 from "@/components/ScorePanel2.vue"; import ScoreResult from "@/components/ScoreResult.vue"; import SButton from "@/components/SButton.vue"; import { createPractiseAPI } from "@/apis"; -import { MESSAGETYPES } from "@/constants"; +import { MESSAGETYPES, roundsName } from "@/constants"; import websocket from "@/websocket"; const start = ref(false); const showScore = ref(false); @@ -42,12 +42,6 @@ const onReady = async () => { }); }; -const roundsName = { - 1: "一", - 2: "二", - 3: "三", -}; - onUnmounted(() => { websocket.closeWebSocket(); }); diff --git a/src/pages/ranking.vue b/src/pages/ranking.vue index 7a36953..e009219 100644 --- a/src/pages/ranking.vue +++ b/src/pages/ranking.vue @@ -8,119 +8,129 @@ const handleSelect = (index) => { selectedIndex.value = index; }; -const toMatchPage = () => { +const toMatchPage = (gameType, teamSize) => { uni.navigateTo({ - url: "/pages/match-room", + url: `/pages/match-room?gameType=${gameType}&teamSize=${teamSize}`, }); };