Compare commits
3
Commits
71408adce9
..
demo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fbe7fc4e2b | ||
|
|
a758e7ddc0 | ||
|
|
67e606e549 |
-65
@@ -1,65 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"name": "Mike",
|
|
||||||
"time": 45.5,
|
|
||||||
"region": "大北区",
|
|
||||||
"store": "大连恒隆广场",
|
|
||||||
"timestamp": 1752309222243
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "小明",
|
|
||||||
"time": 98.2,
|
|
||||||
"region": "大西区",
|
|
||||||
"store": "太原万象城",
|
|
||||||
"timestamp": 1752309242794
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "小白",
|
|
||||||
"time": 83.2,
|
|
||||||
"region": "大西区",
|
|
||||||
"store": "太原万象城",
|
|
||||||
"timestamp": 1752309242794
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "兔宝",
|
|
||||||
"time": 138.2,
|
|
||||||
"region": "奥莱东区",
|
|
||||||
"store": "广州太古汇",
|
|
||||||
"timestamp": 1752309242794
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Elena",
|
|
||||||
"time": 122.2,
|
|
||||||
"region": "大南区",
|
|
||||||
"store": "深圳湾万象城",
|
|
||||||
"timestamp": 1752309242794
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Tom",
|
|
||||||
"time": 133.2,
|
|
||||||
"region": "免税",
|
|
||||||
"store": "海口新海港",
|
|
||||||
"timestamp": 1752309242794
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "阿迪斯",
|
|
||||||
"time": 1.9645,
|
|
||||||
"region": "奥莱",
|
|
||||||
"store": "北京斯普瑞斯",
|
|
||||||
"timestamp": 1752309530750
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "测试用户",
|
|
||||||
"time": 1.7116000000000005,
|
|
||||||
"region": "奥莱",
|
|
||||||
"store": "北京斯普瑞斯",
|
|
||||||
"timestamp": 1752632180489
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "ds",
|
|
||||||
"time": 4.486,
|
|
||||||
"region": "大东区",
|
|
||||||
"store": "杭州万象城",
|
|
||||||
"timestamp": 1753431870364
|
|
||||||
}
|
|
||||||
]
|
|
||||||
+10
-10
@@ -17,7 +17,9 @@ const gamePage = useTemplateRef('game-page');
|
|||||||
function startExploration(payload: { region: string; store: string; username: string }) {
|
function startExploration(payload: { region: string; store: string; username: string }) {
|
||||||
userData.value = payload;
|
userData.value = payload;
|
||||||
stage.value = 1;
|
stage.value = 1;
|
||||||
gamePage.value?.init();
|
setTimeout(() => {
|
||||||
|
gamePage.value?.init();
|
||||||
|
}, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -104,23 +106,21 @@ const gameKey = ref(10)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Loader class="page" v-if="stage == -1" @loaded="stage = 0"
|
<Loader class="page" v-if="stage == -1" @loaded="startExploration" style="z-index: 100;" />
|
||||||
style="z-index: 100;" />
|
|
||||||
|
|
||||||
<Transition name="fade" mode="out-in">
|
<Transition name="fade" mode="out-in">
|
||||||
<Page1 class="page page-1" v-if="stage == 0" style="z-index: 99;"
|
<Page1 class="page page-1" v-if="stage == 0" style="z-index: 99;" @start-exploration="startExploration" />
|
||||||
@start-exploration="startExploration" />
|
|
||||||
</Transition>
|
</Transition>
|
||||||
|
|
||||||
<Game class="page" :userdata="userData" :key="gameKey" v-if="stage >= 0"
|
<Transition name="fade" mode="out-in">
|
||||||
:style="{ opacity: stage === 1 ? 1 : 0 }" style="z-index: 98;"
|
<Game class="page" :userdata="userData" :key="gameKey" v-if="stage >= 0" :style="{ opacity: stage === 1 ? 1 : 0 }"
|
||||||
@cloud-down="cloudDown" @cloud-up="cloudUp" ref="game-page" @restart="gameKey++" />
|
style="z-index: 98;" @cloud-down="cloudDown" @cloud-up="cloudUp" ref="game-page" @restart="gameKey++" />
|
||||||
|
</Transition>
|
||||||
|
|
||||||
<div class="overlay page">
|
<div class="overlay page">
|
||||||
<div class="bgm"
|
<div class="bgm"
|
||||||
style="position: absolute; top: 16vw;right: 8vw;width: 8vw; cursor: pointer;pointer-events: all;">
|
style="position: absolute; top: 16vw;right: 8vw;width: 8vw; cursor: pointer;pointer-events: all;">
|
||||||
<img src="./assets/开启音乐.webp" @click="playingBgm = false" alt=""
|
<img src="./assets/开启音乐.webp" @click="playingBgm = false" alt="" v-if="playingBgm">
|
||||||
v-if="playingBgm">
|
|
||||||
<img src="./assets/关掉音乐.webp" @click="playingBgm = true" alt="" v-else>
|
<img src="./assets/关掉音乐.webp" @click="playingBgm = true" alt="" v-else>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+2
-2
@@ -572,7 +572,7 @@ window.addEventListener('keydown', (e) => {
|
|||||||
<div class="dot" v-if="gameState == GAME_STATE.ingame">
|
<div class="dot" v-if="gameState == GAME_STATE.ingame">
|
||||||
<div v-for="(_, index) in giftList" :key="index"
|
<div v-for="(_, index) in giftList" :key="index"
|
||||||
class="dot-item" :class="{ finished: index < giftProgress }"
|
class="dot-item" :class="{ finished: index < giftProgress }"
|
||||||
@click="giftProgress = index">
|
@click="0 && (giftProgress = index)">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -603,7 +603,7 @@ window.addEventListener('keydown', (e) => {
|
|||||||
<Transition name="fade">
|
<Transition name="fade">
|
||||||
<div class="game-end" v-if="gameState == GAME_STATE.gameEnd">
|
<div class="game-end" v-if="gameState == GAME_STATE.gameEnd">
|
||||||
<GatheringCloud ref="gatheringCloud" />
|
<GatheringCloud ref="gatheringCloud" />
|
||||||
<Button @click="startQuiz" class="start-quiz-btn">开始答题</Button>
|
|
||||||
</div>
|
</div>
|
||||||
</Transition>
|
</Transition>
|
||||||
|
|
||||||
|
|||||||
@@ -166,8 +166,8 @@ const confirmState = ref<'none' | 'confirmed'>('none');
|
|||||||
</div>
|
</div>
|
||||||
<div class="quiz-progress-text">答题进度 {{ qIndex + 1 }} / {{ total }}</div>
|
<div class="quiz-progress-text">答题进度 {{ qIndex + 1 }} / {{ total }}</div>
|
||||||
<div class="quiz-progress dot">
|
<div class="quiz-progress dot">
|
||||||
<div class="dot-item" v-for="(val, i) in Array.from({ length: total })" :key="i" @click="qIndex = i"
|
<div class="dot-item" v-for="(val, i) in Array.from({ length: total })" :key="i"
|
||||||
:class="{ active: i <= qIndex }"></div>
|
@click="0 && (qIndex = i)" :class="{ active: i <= qIndex }"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -397,7 +397,7 @@ const confirmState = ref<'none' | 'confirmed'>('none');
|
|||||||
height: 2vw;
|
height: 2vw;
|
||||||
}
|
}
|
||||||
|
|
||||||
.quiz-progress-text{
|
.quiz-progress-text {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 11.5%;
|
bottom: 11.5%;
|
||||||
font-size: 3.1vw;
|
font-size: 3.1vw;
|
||||||
|
|||||||
Reference in New Issue
Block a user