diff --git a/backend/core/basic/roleinfo.py b/backend/core/basic/roleinfo.py
index 5b40ce94..61d1ef9a 100644
--- a/backend/core/basic/roleinfo.py
+++ b/backend/core/basic/roleinfo.py
@@ -13,8 +13,10 @@ class CharacterEquipInfo:
"""强化类型"""
enchant: str
"""附魔"""
- emblems: list[str]
- """徽章"""
+ emblem_0: str
+ """徽章1"""
+ emblem_1: str
+ """徽章2"""
fusion: int | None
"""贴膜ID"""
refine: int | None
diff --git a/frontend/src/components/calc/button/index.vue b/frontend/src/components/calc/button/index.vue
index 2afcedb9..bcd242a1 100644
--- a/frontend/src/components/calc/button/index.vue
+++ b/frontend/src/components/calc/button/index.vue
@@ -25,7 +25,6 @@ export default defineComponent({
default: "primary"
}
},
- emits: ["click"],
setup(props, { slots }) {
return () => {
const proerpties = {
diff --git a/frontend/src/pages/Character/Equipment/Index.vue b/frontend/src/pages/Character/Equipment/Index.vue
index 8ac8cbc2..344ca63c 100644
--- a/frontend/src/pages/Character/Equipment/Index.vue
+++ b/frontend/src/pages/Character/Equipment/Index.vue
@@ -1,8 +1,14 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/pages/Character/Equipment/components/Suit.vue b/frontend/src/pages/Character/Equipment/components/Suit.vue
index 26ca9d12..4ccf9b65 100644
--- a/frontend/src/pages/Character/Equipment/components/Suit.vue
+++ b/frontend/src/pages/Character/Equipment/components/Suit.vue
@@ -13,6 +13,7 @@
:alt="suit.name"
:style="{ filter: curSuit === suit.value ? '' : 'grayscale(100%)' }"
@click="curSuit = suit.value"
+ @dblclick="handleDoubleClick"
/>
@@ -22,7 +23,13 @@
-
+
+
+
+
+
+
+
@@ -57,7 +64,7 @@ const suits = computed(() => {
})
const suitEquipments = computed(() => {
- const equs = infoStore.equips.filter((a) => a.suit.includes(curSuit.value.toString()) && a.suit.length === 1)
+ const equs = infoStore.equips.filter((a) => a.suit.includes(curSuit.value.toString()) && a.suit.length === 1 )
const res: (IEquipment | undefined)[] = []
const raritiyList = ['神器','传说','史诗']
@@ -80,7 +87,15 @@ const chooseEqu = async(equip: IEquipment | undefined) => {
if (equip && configStore.config.equips[equip.itemDetailType]) {
configStore.config.equips[equip.itemDetailType].id = equip.id
}
- await configStore.calc()
+ // await configStore.calc()
+}
+
+const handleDoubleClick = () => {
+ if(!curRarity.value) return
+ if(curRarity.value == '太初') return
+ suitEquipments.value.filter(a=>!!a && a.rarity == curRarity.value).splice(0,11).forEach((a) => {
+ chooseEqu(a)
+ })
}
diff --git a/frontend/src/pages/Character/Forge/components/equipment.vue b/frontend/src/pages/Character/Forge/components/equipment.vue
index 56d0da02..870c6921 100644
--- a/frontend/src/pages/Character/Forge/components/equipment.vue
+++ b/frontend/src/pages/Character/Forge/components/equipment.vue
@@ -1,52 +1,64 @@
diff --git a/frontend/src/pages/Character/Forge/index.vue b/frontend/src/pages/Character/Forge/index.vue
index e04f31f3..07d5544e 100644
--- a/frontend/src/pages/Character/Forge/index.vue
+++ b/frontend/src/pages/Character/Forge/index.vue
@@ -1,6 +1,6 @@
-
+
diff --git a/frontend/src/pages/Character/Index.vue b/frontend/src/pages/Character/Index.vue
index 03989e09..3b67fe76 100644
--- a/frontend/src/pages/Character/Index.vue
+++ b/frontend/src/pages/Character/Index.vue
@@ -25,7 +25,6 @@ const configStore = useConfigStore()
onMounted(async () => {
await infoStore.createCharacter(props.alter, '0')
configStore.loadConfig()
- console.log("~~~~~~~~")
window.addEventListener('beforeunload', () => {
configStore.saveConfig()
})
diff --git a/frontend/src/pages/Character/Skill/components/SkillTree/index.tsx b/frontend/src/pages/Character/Skill/components/SkillTree/index.tsx
index f84bc4ef..ff8e768b 100644
--- a/frontend/src/pages/Character/Skill/components/SkillTree/index.tsx
+++ b/frontend/src/pages/Character/Skill/components/SkillTree/index.tsx
@@ -107,10 +107,10 @@ export default defineComponent({
>
diff --git a/frontend/src/stores/config.ts b/frontend/src/stores/config.ts
index 3d9ca416..fd07a4d5 100644
--- a/frontend/src/stores/config.ts
+++ b/frontend/src/stores/config.ts
@@ -15,16 +15,19 @@ import api from '@/api'
// | '武器',
export interface IConfig {
skills: Record
- equips: Record
}
@@ -33,19 +36,19 @@ const defaultEqusConfig = {
reinforce: 0,
reinforceType: 0,
enchat: 0,
- emblems: [],
+ emblem_0: "0",
+ emblem_1: "0",
upgrade: 0,
refine: 0,
- adaptation: 0
+ adaptation: 0,
}
export const useConfigStore = defineStore('configStore', () => {
const config = ref({
skills: {},
- equips: {}
+ equips: {},
})
-
const loadConfig = () => {
const infoStore = useInfoStore()
const alter = infoStore.infos?.alter
@@ -56,24 +59,30 @@ export const useConfigStore = defineStore('configStore', () => {
config.value = JSON.parse(localConfig)
}
}
- if(!config.value) config.value = {
- skills: {},
- equips: {}
- }
- if(!config.value?.equips) config.value.equips = {}
- if(!config.value?.skills) config.value.skills = {}
+ if (!config.value)
+ config.value = {
+ skills: {},
+ equips: {},
+ }
+ if (!config.value?.equips) config.value.equips = {}
+ if (!config.value?.skills) config.value.skills = {}
- const part = infoStore.parts.filter(a => !config.value?.equips.hasOwnProperty(a))
+ const part = infoStore.parts.filter((a) => !config.value?.equips.hasOwnProperty(a))
- const skillIDs = infoStore.skills.map(skill => skill.id.toString()).filter(a => !config.value?.skills.hasOwnProperty(a))
+ const skillIDs = infoStore.skills
+ .map((skill) => skill.id.toString())
+ .filter((a) => !config.value?.skills.hasOwnProperty(a))
- part.forEach(p => {
+ part.forEach((p) => {
config.value && (config.value.equips[p] = { ...defaultEqusConfig })
- });
+ })
- skillIDs.forEach(id => {
- config.value && (config.value.skills[id] = { lv: infoStore.skills.find(skill => skill.id.toString() === id)?.maxLearnLv ?? 0 })
- });
+ skillIDs.forEach((id) => {
+ config.value &&
+ (config.value.skills[id] = {
+ lv: infoStore.skills.find((skill) => skill.id.toString() === id)?.maxLearnLv ?? 0,
+ })
+ })
}
const saveConfig = () => {
@@ -84,7 +93,7 @@ export const useConfigStore = defineStore('configStore', () => {
}
}
- const calc = async()=>{
+ const calc = async () => {
await api.calc(config.value)
}
@@ -92,6 +101,6 @@ export const useConfigStore = defineStore('configStore', () => {
config,
loadConfig,
saveConfig,
- calc
+ calc,
}
})
diff --git a/frontend/src/style/icon.scss b/frontend/src/style/icon.scss
index 33823e3c..f501656d 100644
--- a/frontend/src/style/icon.scss
+++ b/frontend/src/style/icon.scss
@@ -1,31 +1,31 @@
.icon-reset {
- background-image: url("@/assets/img/icon/reset.png");
+ background-image: url("@/assets/img/icon/reset.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/reset_hover.png");
+ background-image: url("@/assets/img/icon/reset_hover.png") !important ;
}
&:active {
- background-image: url("@/assets/img/icon/reset_active.png");
+ background-image: url("@/assets/img/icon/reset_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/reset_disabled.png");
+ background-image: url("@/assets/img/icon/reset_disabled.png") !important;
}
}
.icon-set {
- background-image: url("@/assets/img/icon/set.png");
+ background-image: url("@/assets/img/icon/set.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/set_hover.png");
+ background-image: url("@/assets/img/icon/set_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/set_active.png");
+ background-image: url("@/assets/img/icon/set_active.png") !important ;
}
// &:disabled {
// background-image: url("@/assets/img/icon/set_disabled.png");
@@ -33,50 +33,50 @@
}
.icon-prev {
- background-image: url("@/assets/img/icon/prev.png");
+ background-image: url("@/assets/img/icon/prev.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 16px !important;
height: 16px !important;
&:hover {
- background-image: url("@/assets/img/icon/prev_hover.png");
+ background-image: url("@/assets/img/icon/prev_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/prev_active.png");
+ background-image: url("@/assets/img/icon/prev_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/prev_disabled.png");
+ background-image: url("@/assets/img/icon/prev_disabled.png") !important;
}
}
.icon-next {
- background-image: url("@/assets/img/icon/next.png");
+ background-image: url("@/assets/img/icon/next.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 16px !important;
height: 16px !important;
&:hover {
- background-image: url("@/assets/img/icon/next_hover.png");
+ background-image: url("@/assets/img/icon/next_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/next_active.png");
+ background-image: url("@/assets/img/icon/next_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/next_disabled.png");
+ background-image: url("@/assets/img/icon/next_disabled.png") !important;
}
}
.icon-dropdown {
- background-image: url("@/assets/img/icon/dropdown.png");
+ background-image: url("@/assets/img/icon/dropdown.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 16px !important;
height: 16px !important;
&:hover {
- background-image: url("@/assets/img/icon/dropdown_hover.png");
+ background-image: url("@/assets/img/icon/dropdown_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/dropdown_active.png");
+ background-image: url("@/assets/img/icon/dropdown_active.png") !important;
}
&:disabled {
background-image: url("@/assets/img/icon/dropdown_disabled.png");
@@ -84,197 +84,197 @@
}
.icon-search {
- background-image: url("@/assets/img/icon/search.png");
+ background-image: url("@/assets/img/icon/search.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/search_hover.png");
+ background-image: url("@/assets/img/icon/search_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/search_active.png");
+ background-image: url("@/assets/img/icon/search_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/search_disabled.png");
+ background-image: url("@/assets/img/icon/search_disabled.png" ) !important;
}
}
.icon-increase {
- background-image: url("@/assets/img/icon/increase.png");
+ background-image: url("@/assets/img/icon/increase.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 16px !important;
height: 16px !important;
&:hover {
- background-image: url("@/assets/img/icon/increase_hover.png");
+ background-image: url("@/assets/img/icon/increase_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/increase_active.png");
+ background-image: url("@/assets/img/icon/increase_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/increase_disabled.png");
+ background-image: url("@/assets/img/icon/increase_disabled.png") !important ;
}
}
.icon-reduce {
- background-image: url("@/assets/img/icon/reduce.png");
+ background-image: url("@/assets/img/icon/reduce.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 16px !important;
height: 16px !important;
&:hover {
- background-image: url("@/assets/img/icon/reduce_hover.png");
+ background-image: url("@/assets/img/icon/reduce_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/reduce_active.png");
+ background-image: url("@/assets/img/icon/reduce_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/reduce_disabled.png");
+ background-image: url("@/assets/img/icon/reduce_disabled.png") !important;
}
}
.icon-plus {
- background-image: url("@/assets/img/icon/plus.png");
+ background-image: url("@/assets/img/icon/plus.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/plus_hover.png");
+ background-image: url("@/assets/img/icon/plus_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/plus_active.png");
+ background-image: url("@/assets/img/icon/plus_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/plus_disabled.png");
+ background-image: url("@/assets/img/icon/plus_disabled.png") !important;
}
}
.icon-detail {
- background-image: url("@/assets/img/icon/detail.png");
+ background-image: url("@/assets/img/icon/detail.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/detail_hover.png");
+ background-image: url("@/assets/img/icon/detail_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/detail_active.png");
+ background-image: url("@/assets/img/icon/detail_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/detail_disabled.png");
+ background-image: url("@/assets/img/icon/detail_disabled.png") !important;
}
}
.icon-home {
- background-image: url("@/assets/img/icon/home.png");
+ background-image: url("@/assets/img/icon/home.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/home_hover.png");
+ background-image: url("@/assets/img/icon/home_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/home_active.png");
+ background-image: url("@/assets/img/icon/home_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/home_disabled.png");
+ background-image: url("@/assets/img/icon/home_disabled.png") !important;
}
}
.icon-reflesh {
- background-image: url("@/assets/img/icon/reflesh.png");
+ background-image: url("@/assets/img/icon/reflesh.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/reflesh_hover.png");
+ background-image: url("@/assets/img/icon/reflesh_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/reflesh_active.png");
+ background-image: url("@/assets/img/icon/reflesh_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/reflesh_disabled.png");
+ background-image: url("@/assets/img/icon/reflesh_disabled.png") !important;
}
}
.icon-update {
- background-image: url("@/assets/img/icon/update.png");
+ background-image: url("@/assets/img/icon/update.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/update_hover.png");
+ background-image: url("@/assets/img/icon/update_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/update_active.png");
+ background-image: url("@/assets/img/icon/update_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/update_disabled.png");
+ background-image: url("@/assets/img/icon/update_disabled.png") !important;
}
}
.icon-share {
- background-image: url("@/assets/img/icon/share.png");
+ background-image: url("@/assets/img/icon/share.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/share_hover.png");
+ background-image: url("@/assets/img/icon/share_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/share_active.png");
+ background-image: url("@/assets/img/icon/share_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/share_disabled.png");
+ background-image: url("@/assets/img/icon/share_disabled.png") !important;
}
}
.icon-import {
- background-image: url("@/assets/img/icon/import.png");
+ background-image: url("@/assets/img/icon/import.png") !important;
background-repeat: no-repeat !important;
background-size: 100% 100% !important;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/import_hover.png");
+ background-image: url("@/assets/img/icon/import_hover.png") !important;
}
&:active {
- background-image: url("@/assets/img/icon/import_active.png");
+ background-image: url("@/assets/img/icon/import_active.png") !important;
}
&:disabled {
- background-image: url("@/assets/img/icon/import_disabled.png");
+ background-image: url("@/assets/img/icon/import_disabled.png") !important;
}
}
.icon-menu-drug {
- background-image: url("@/assets/img/icon/menu/drug.png");
+ background-image: url("@/assets/img/icon/menu/drug.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/menu/drug_hover.png");
+ background-image: url("@/assets/img/icon/menu/drug_hover.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:active {
- background-image: url("@/assets/img/icon/menu/drug_active.png");
+ background-image: url("@/assets/img/icon/menu/drug_active.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:disabled {
- background-image: url("@/assets/img/icon/menu/drug_disabled.png");
+ background-image: url("@/assets/img/icon/menu/drug_disabled.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
@@ -282,26 +282,26 @@
}
.icon-menu-specificity {
- background-image: url("@/assets/img/icon/menu/specificity.png");
+ background-image: url("@/assets/img/icon/menu/specificity.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/menu/specificity_hover.png");
+ background-image: url("@/assets/img/icon/menu/specificity_hover.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:active {
- background-image: url("@/assets/img/icon/menu/specificity_active.png");
+ background-image: url("@/assets/img/icon/menu/specificity_active.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:disabled {
- background-image: url("@/assets/img/icon/menu/specificity_disabled.png");
+ background-image: url("@/assets/img/icon/menu/specificity_disabled.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
@@ -310,26 +310,26 @@
.icon-menu-favourite {
- background-image: url("@/assets/img/icon/menu/favourite.png");
+ background-image: url("@/assets/img/icon/menu/favourite.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/menu/favourite_hover.png");
+ background-image: url("@/assets/img/icon/menu/favourite_hover.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:active {
- background-image: url("@/assets/img/icon/menu/favourite_active.png");
+ background-image: url("@/assets/img/icon/menu/favourite_active.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:disabled {
- background-image: url("@/assets/img/icon/menu/favourite_disabled.png");
+ background-image: url("@/assets/img/icon/menu/favourite_disabled.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
@@ -337,26 +337,26 @@
}
.icon-menu-recommend {
- background-image: url("@/assets/img/icon/menu/recommend.png");
+ background-image: url("@/assets/img/icon/menu/recommend.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/menu/recommend_hover.png");
+ background-image: url("@/assets/img/icon/menu/recommend_hover.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:active {
- background-image: url("@/assets/img/icon/menu/recommend_active.png");
+ background-image: url("@/assets/img/icon/menu/recommend_active.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:disabled {
- background-image: url("@/assets/img/icon/menu/recommend_disabled.png");
+ background-image: url("@/assets/img/icon/menu/recommend_disabled.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
@@ -364,26 +364,26 @@
}
.icon-menu-set {
- background-image: url("@/assets/img/icon/menu/set.png");
+ background-image: url("@/assets/img/icon/menu/set.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
width: 20px !important;
height: 20px !important;
&:hover {
- background-image: url("@/assets/img/icon/menu/set_hover.png");
+ background-image: url("@/assets/img/icon/menu/set_hover.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:active {
- background-image: url("@/assets/img/icon/menu/set_active.png");
+ background-image: url("@/assets/img/icon/menu/set_active.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;
}
&:disabled {
- background-image: url("@/assets/img/icon/menu/set_disabled.png");
+ background-image: url("@/assets/img/icon/menu/set_disabled.png") !important;
background-repeat: no-repeat !important;
background-size: auto 100% !important;
background-position: center center;