diff --git a/src/stores/couple.js b/src/stores/couple.js index ef51a8e..bf83d08 100644 --- a/src/stores/couple.js +++ b/src/stores/couple.js @@ -2,6 +2,8 @@ import { defineStore } from 'pinia' export const useCoupleStore = defineStore('couple', { state: () => ({ + fragmentNotEnoughShow: false, //碎片不足 + helpShow: false, //帮助展示 topRewardShow: false, // 前三名奖励展示 diff --git a/src/views/Ranking/Couple/GamePlay/components/exchange.vue b/src/views/Ranking/Couple/GamePlay/components/exchange.vue index 7189545..06bb7b2 100644 --- a/src/views/Ranking/Couple/GamePlay/components/exchange.vue +++ b/src/views/Ranking/Couple/GamePlay/components/exchange.vue @@ -93,6 +93,8 @@ const getImgName = (filename) => { } const { + debris, // 碎片 + fragmentNotEnoughShow, // 碎片不足弹窗 exchangeConfirmShow, // 兑换确认弹窗 exchangeItem, // 当前兑换的物品 } = storeToRefs(coupleStore) @@ -113,6 +115,12 @@ const getActivityResource = async () => { // 用碎片兑换资源 const exchangeGoods = async (goods) => { + // 碎片不足提示 + if (debris.value < JSON.parse(goods.rule.jsonData).need_fragments) { + fragmentNotEnoughShow.value = true + return + } + exchangeItem.value = { userId: getUserId(), propsGroupId: goods.rule.id, diff --git a/src/views/Ranking/Couple/index.vue b/src/views/Ranking/Couple/index.vue index be61543..920cca4 100644 --- a/src/views/Ranking/Couple/index.vue +++ b/src/views/Ranking/Couple/index.vue @@ -944,11 +944,15 @@ border: 2px solid #fff; background: linear-gradient( 264deg, - rgba(220, 228, 255, 0.4) 10.17%, - rgba(151, 176, 255, 0.4) 60.22%, - rgba(220, 228, 255, 0.4) 103.12% + rgba(255, 220, 220, 0.4) 10.17%, + rgba(255, 151, 151, 0.4) 60.22%, + rgba(255, 220, 220, 0.4) 103.12% ); - box-shadow: 0 2.542px 5.084px 0 rgba(151, 176, 255, 0.15); + box-shadow: + 0 36.858px 13.981px 0 rgba(255, 106, 106, 0.02), + 0 20.335px 12.71px 0 rgba(255, 106, 106, 0.08), + 0 8.897px 8.897px 0 rgba(255, 106, 106, 0.13), + 0 2.542px 5.084px 0 rgba(255, 106, 106, 0.15); backdrop-filter: blur(4.5px); display: flex; @@ -1004,11 +1008,15 @@ border: 2px solid #fff; background: linear-gradient( 264deg, - rgba(220, 228, 255, 0.4) 10.17%, - rgba(151, 176, 255, 0.4) 60.22%, - rgba(220, 228, 255, 0.4) 103.12% + rgba(255, 220, 220, 0.4) 10.17%, + rgba(255, 151, 151, 0.4) 60.22%, + rgba(255, 220, 220, 0.4) 103.12% ); - box-shadow: 0 2.542px 5.084px 0 rgba(151, 176, 255, 0.15); + box-shadow: + 0 36.858px 13.981px 0 rgba(255, 106, 106, 0.02), + 0 20.335px 12.71px 0 rgba(255, 106, 106, 0.08), + 0 8.897px 8.897px 0 rgba(255, 106, 106, 0.13), + 0 2.542px 5.084px 0 rgba(255, 106, 106, 0.15); backdrop-filter: blur(4.5px); display: flex; @@ -1186,6 +1194,32 @@ /> + + +