dev
This commit is contained in:
@@ -13,8 +13,10 @@ class CharacterEquipInfo:
|
|||||||
"""强化类型"""
|
"""强化类型"""
|
||||||
enchant: str
|
enchant: str
|
||||||
"""附魔"""
|
"""附魔"""
|
||||||
emblems: list[str]
|
emblem_0: str
|
||||||
"""徽章"""
|
"""徽章1"""
|
||||||
|
emblem_1: str
|
||||||
|
"""徽章2"""
|
||||||
fusion: int | None
|
fusion: int | None
|
||||||
"""贴膜ID"""
|
"""贴膜ID"""
|
||||||
refine: int | None
|
refine: int | None
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ export default defineComponent({
|
|||||||
default: "primary"
|
default: "primary"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
emits: ["click"],
|
|
||||||
setup(props, { slots }) {
|
setup(props, { slots }) {
|
||||||
return () => {
|
return () => {
|
||||||
const proerpties = {
|
const proerpties = {
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex flex-col gap-20px mx-10px">
|
<div class="flex flex-col mx-10px">
|
||||||
<Weapon></Weapon>
|
<calc-collapse title="武器">
|
||||||
<Suit></Suit>
|
<Weapon></Weapon>
|
||||||
<Universal></Universal>
|
</calc-collapse>
|
||||||
|
<calc-collapse title="套装">
|
||||||
|
<Suit></Suit>
|
||||||
|
</calc-collapse>
|
||||||
|
<calc-collapse title="通宝">
|
||||||
|
<Universal></Universal>
|
||||||
|
</calc-collapse>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
:alt="suit.name"
|
:alt="suit.name"
|
||||||
:style="{ filter: curSuit === suit.value ? '' : 'grayscale(100%)' }"
|
:style="{ filter: curSuit === suit.value ? '' : 'grayscale(100%)' }"
|
||||||
@click="curSuit = suit.value"
|
@click="curSuit = suit.value"
|
||||||
|
@dblclick="handleDoubleClick"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -22,7 +23,13 @@
|
|||||||
|
|
||||||
<div class="flex flex-wrap gap-4px content-start" :style="{width: `${rowCount * 32}px`}">
|
<div class="flex flex-wrap gap-4px content-start" :style="{width: `${rowCount * 32}px`}">
|
||||||
<template v-for="(equip,_) in suitEquipments" :key="_">
|
<template v-for="(equip,_) in suitEquipments" :key="_">
|
||||||
<EquipmentIcon :equipment="equip" :inactive="configStore.config.equips[equip?.itemDetailType ?? '']?.id != equip?.id" @click="chooseEqu(equip)"/>
|
<template v-if="equip?.rarity == curRarity || !curRarity">
|
||||||
|
<EquipmentIcon :equipment="equip" :inactive="configStore.config.equips[equip?.itemDetailType ?? '']?.id != equip?.id" @click="chooseEqu(equip)"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template v-else>
|
||||||
|
<EquipmentIcon/>
|
||||||
|
</template>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -57,7 +64,7 @@ const suits = computed(() => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const suitEquipments = 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 res: (IEquipment | undefined)[] = []
|
||||||
const raritiyList = ['神器','传说','史诗']
|
const raritiyList = ['神器','传说','史诗']
|
||||||
@@ -80,7 +87,15 @@ const chooseEqu = async(equip: IEquipment | undefined) => {
|
|||||||
if (equip && configStore.config.equips[equip.itemDetailType]) {
|
if (equip && configStore.config.equips[equip.itemDetailType]) {
|
||||||
configStore.config.equips[equip.itemDetailType].id = equip.id
|
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)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,52 +1,64 @@
|
|||||||
<script lang="tsx">
|
<script lang="tsx">
|
||||||
import { computed, defineComponent, ref, renderList } from "vue"
|
import { computed, defineComponent, ref, renderList } from 'vue'
|
||||||
import type { IEnchantingInfo } from "@/api/info/type"
|
import type { IEnchantingInfo } from '@/api/info/type'
|
||||||
import { useInfoStore, useConfigStore } from "@/stores"
|
import { useInfoStore, useConfigStore } from '@/stores'
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "Equip",
|
name: 'Equip',
|
||||||
props: {
|
props: {
|
||||||
part: {
|
part: {
|
||||||
type: String,
|
type: String,
|
||||||
default: "头肩"
|
default: '头肩',
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
setup(props) {
|
setup(props) {
|
||||||
const configStore = useConfigStore()
|
const configStore = useConfigStore()
|
||||||
const can_upgrade = computed(() => {
|
const can_upgrade = computed(() => {
|
||||||
return !["称号", "宠物"].includes(props.part as string)
|
return !['称号', '宠物'].includes(props.part as string)
|
||||||
})
|
})
|
||||||
|
|
||||||
// const globalStore = useGlobalStore()
|
// const globalStore = useGlobalStore()
|
||||||
|
|
||||||
/** 是否有徽章 */
|
/** 是否有徽章 */
|
||||||
const has_socket = computed(() => !["称号", "宠物", "耳环", "武器"].includes(props.part as string))
|
const has_socket = computed(
|
||||||
|
() => !['称号', '宠物', '耳环', '武器'].includes(props.part as string),
|
||||||
|
)
|
||||||
/** 是否有右侧徽章 */
|
/** 是否有右侧徽章 */
|
||||||
const has_socket_right = computed(() => has_socket.value && !["辅助装备", "魔法石"].includes(props.part as string))
|
const has_emblem_1 = computed(
|
||||||
|
() => has_socket.value && !['辅助装备', '魔法石'].includes(props.part as string),
|
||||||
|
)
|
||||||
const basicInfoStore = useInfoStore()
|
const basicInfoStore = useInfoStore()
|
||||||
|
|
||||||
const enchanting_list = computed<IEnchantingInfo[] | undefined>(() => {
|
const enchanting_list = computed<IEnchantingInfo[] | undefined>(() => {
|
||||||
return basicInfoStore.enchantings
|
return basicInfoStore.enchantings
|
||||||
?.filter(item => item.position.includes(props.part) && !item.position.includes("武器装扮") && !item.position.includes("宠物装备"))
|
?.filter(
|
||||||
|
(item) =>
|
||||||
|
item.position.includes(props.part) &&
|
||||||
|
!item.position.includes('武器装扮') &&
|
||||||
|
!item.position.includes('宠物装备'),
|
||||||
|
)
|
||||||
.sort((a, b) => b.rate - a.rate)
|
.sort((a, b) => b.rate - a.rate)
|
||||||
})
|
})
|
||||||
|
|
||||||
const emblem_list = computed<IEnchantingInfo[] | undefined>(() => {
|
const emblem_list = computed<IEnchantingInfo[] | undefined>(() => {
|
||||||
return basicInfoStore.emblems.filter(item => item.position.includes(props.part))
|
return basicInfoStore.emblems.filter((item) => item.position.includes(props.part))
|
||||||
})
|
})
|
||||||
|
|
||||||
const global_change = ref(false)
|
const global_change = ref(false)
|
||||||
|
|
||||||
const currentInfo = function<T>(name: string, defaultValue?: T) {
|
const currentInfo = function <T>(name: string, defaultValue?: T) {
|
||||||
return computed<string | number>({
|
return computed<string | number>({
|
||||||
get() {
|
get() {
|
||||||
return (configStore.config.equips?.[props.part] as Record<string, any>)?.[name] ?? defaultValue ?? 0
|
return (
|
||||||
|
(configStore.config.equips?.[props.part] as Record<string, any>)?.[name] ??
|
||||||
|
defaultValue ??
|
||||||
|
0
|
||||||
|
)
|
||||||
},
|
},
|
||||||
set(val) {
|
set(val) {
|
||||||
console.log(name, val)
|
|
||||||
if (val == undefined) {
|
if (val == undefined) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (name == "socket_right" && !has_socket_right.value) {
|
if (name == 'emblem_1' && !has_emblem_1.value) {
|
||||||
// configStore.setForge(props.part, name, 0)
|
// configStore.setForge(props.part, name, 0)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@@ -54,61 +66,64 @@ export default defineComponent({
|
|||||||
let parts: string[] = []
|
let parts: string[] = []
|
||||||
|
|
||||||
if (global_change.value) {
|
if (global_change.value) {
|
||||||
if (name === "enchanting") {
|
if (name === 'enchanting') {
|
||||||
const enchant = basicInfoStore?.enchantings?.find(item => item.id == val) as IEnchantingInfo | undefined
|
const enchant = basicInfoStore?.enchantings?.find((item) => item.id == val) as
|
||||||
|
| IEnchantingInfo
|
||||||
|
| undefined
|
||||||
if (enchant?.position) {
|
if (enchant?.position) {
|
||||||
parts = enchant.position
|
parts = enchant.position
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (["socket_left", "socket_right"].includes(name)) {
|
if (['emblem_0', 'emblem_1'].includes(name)) {
|
||||||
const emblem = basicInfoStore?.emblems?.find(item => item.id.toString() == val.toString()) as IEnchantingInfo | undefined
|
const emblem = basicInfoStore?.emblems?.find(
|
||||||
|
(item) => item.id.toString() == val.toString(),
|
||||||
|
) as IEnchantingInfo | undefined
|
||||||
if (emblem?.position) {
|
if (emblem?.position) {
|
||||||
parts = emblem.position.filter(item => !["皮肤", "武器装扮", "光环"].includes(item))
|
parts = emblem.position.filter(
|
||||||
|
(item) => !['皮肤', '武器装扮', '光环'].includes(item),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (["cursed_type", "cursed_number"].includes(name)) {
|
if (['reinforce_type', 'reinforce'].includes(name)) {
|
||||||
parts = basicInfoStore.parts.filter(e => !["称号", "宠物"].includes(e))
|
parts = basicInfoStore.parts.filter((e) => !['称号', '宠物'].includes(e))
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
parts = [props.part]
|
parts = [props.part]
|
||||||
}
|
}
|
||||||
console.log(parts,val)
|
|
||||||
|
|
||||||
for (const part of parts) {
|
for (const part of parts) {
|
||||||
if (configStore.config.equips[part]) {
|
if (configStore.config.equips[part]) {
|
||||||
(configStore.config.equips[part] as Record<string, any>)[name] = val
|
(configStore.config.equips[part] as Record<string, any>)[name] = val
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 附魔
|
// 附魔
|
||||||
const enchanting = currentInfo<string | number>("enchanting")
|
const enchanting = currentInfo<string | number>('enchanting')
|
||||||
|
|
||||||
// 镶嵌栏1
|
// 镶嵌栏1
|
||||||
const socket_left = currentInfo<string | number>("socket_left", 0)
|
const emblem_0 = currentInfo<string | number>('emblem_0', 0)
|
||||||
|
|
||||||
// 镶嵌栏2
|
// 镶嵌栏2
|
||||||
const socket_right = currentInfo<string | number>("socket_right")
|
const emblem_1 = currentInfo<string | number>('emblem_1')
|
||||||
|
|
||||||
// 增幅
|
// 增幅
|
||||||
const reinforce_type = currentInfo<string | number>("reinforce_type", 1)
|
const reinforce_type = currentInfo<string | number>('reinforce_type', 1)
|
||||||
|
|
||||||
// 增幅数值
|
// 增幅数值
|
||||||
const reinforce = currentInfo<string | number>("reinforce")
|
const reinforce = currentInfo<string | number>('reinforce')
|
||||||
|
|
||||||
|
|
||||||
// 锻造数值
|
// 锻造数值
|
||||||
const dz_number = currentInfo<string | number>("dz_number")
|
const dz_number = currentInfo<string | number>('dz_number')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 同步徽章1到徽章2
|
* 同步徽章1到徽章2
|
||||||
* @param val
|
* @param val
|
||||||
*/
|
*/
|
||||||
function changeSocket(val: number) {
|
function changeSocket(val: number) {
|
||||||
if (has_socket_right.value) {
|
if (has_emblem_1.value) {
|
||||||
socket_right.value = val
|
emblem_1.value = val
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,7 +133,15 @@ export default defineComponent({
|
|||||||
<div class="equ-profile-item">
|
<div class="equ-profile-item">
|
||||||
<div class="mr-10px row-name">当前部位</div>
|
<div class="mr-10px row-name">当前部位</div>
|
||||||
<span> {props.part}</span>
|
<span> {props.part}</span>
|
||||||
{can_upgrade.value ? <calc-checkbox style="margin-left:auto" v-model={global_change.value} label="全局修改"></calc-checkbox> : <div></div>}
|
{can_upgrade.value ? (
|
||||||
|
<calc-checkbox
|
||||||
|
style="margin-left:auto"
|
||||||
|
v-model={global_change.value}
|
||||||
|
label="全局修改"
|
||||||
|
></calc-checkbox>
|
||||||
|
) : (
|
||||||
|
<div></div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
{can_upgrade.value ? (
|
{can_upgrade.value ? (
|
||||||
<div class="equ-profile-item">
|
<div class="equ-profile-item">
|
||||||
@@ -128,15 +151,17 @@ export default defineComponent({
|
|||||||
<calc-option value={2}>强化</calc-option>
|
<calc-option value={2}>强化</calc-option>
|
||||||
</calc-select>
|
</calc-select>
|
||||||
<calc-select v-model={reinforce.value} class="flex-1 !h-20px">
|
<calc-select v-model={reinforce.value} class="flex-1 !h-20px">
|
||||||
{renderList(32, i => (
|
{renderList(32, (i) => (
|
||||||
<calc-option value={i - 1}>{i - 1}</calc-option>
|
<calc-option value={i - 1}>{i - 1}</calc-option>
|
||||||
))}
|
))}
|
||||||
</calc-select>
|
</calc-select>
|
||||||
{props.part == '武器' && (<calc-select v-model={dz_number.value} class="flex-1 !h-20px">
|
{props.part == '武器' && (
|
||||||
{renderList(9, i => (
|
<calc-select v-model={dz_number.value} class="flex-1 !h-20px">
|
||||||
|
{renderList(9, (i) => (
|
||||||
<calc-option value={i - 1}>锻造+ {i - 1}</calc-option>
|
<calc-option value={i - 1}>锻造+ {i - 1}</calc-option>
|
||||||
))}
|
))}
|
||||||
</calc-select>)}
|
</calc-select>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<div></div>
|
<div></div>
|
||||||
@@ -145,7 +170,7 @@ export default defineComponent({
|
|||||||
<div class="row-name">附魔</div>
|
<div class="row-name">附魔</div>
|
||||||
<calc-select v-model={enchanting.value} class="flex-1 !h-20px">
|
<calc-select v-model={enchanting.value} class="flex-1 !h-20px">
|
||||||
<calc-option value={0}>无</calc-option>
|
<calc-option value={0}>无</calc-option>
|
||||||
{renderList(enchanting_list.value ?? [], item => (
|
{renderList(enchanting_list.value ?? [], (item) => (
|
||||||
<calc-option value={item.id}>{item.props}</calc-option>
|
<calc-option value={item.id}>{item.props}</calc-option>
|
||||||
))}
|
))}
|
||||||
</calc-select>
|
</calc-select>
|
||||||
@@ -153,17 +178,25 @@ export default defineComponent({
|
|||||||
{has_socket.value ? (
|
{has_socket.value ? (
|
||||||
<div class="equ-profile-item">
|
<div class="equ-profile-item">
|
||||||
<div class="row-name">徽章</div>
|
<div class="row-name">徽章</div>
|
||||||
<calc-select onChange={changeSocket} v-model={socket_left.value} class="flex-1 !h-20px">
|
<calc-select
|
||||||
|
onChange={changeSocket}
|
||||||
|
v-model={emblem_0.value}
|
||||||
|
class="flex-1 !h-20px"
|
||||||
|
>
|
||||||
<calc-option value={0}>无</calc-option>
|
<calc-option value={0}>无</calc-option>
|
||||||
{renderList(emblem_list.value ?? [], item => (
|
{renderList(emblem_list.value ?? [], (item) => (
|
||||||
<calc-option value={item.id}>{`${item.rarity}${item.type}徽章[${item.props}]`}</calc-option>
|
<calc-option
|
||||||
|
value={item.id}
|
||||||
|
>{`${item.rarity}${item.type}徽章[${item.props}]`}</calc-option>
|
||||||
))}
|
))}
|
||||||
</calc-select>
|
</calc-select>
|
||||||
{has_socket_right.value && (
|
{has_emblem_1.value && (
|
||||||
<calc-select v-model={socket_right.value} class="flex-1 !h-20px">
|
<calc-select v-model={emblem_1.value} class="flex-1 !h-20px">
|
||||||
<calc-option value={0}>无</calc-option>
|
<calc-option value={0}>无</calc-option>
|
||||||
{renderList(emblem_list.value ?? [], item => (
|
{renderList(emblem_list.value ?? [], (item) => (
|
||||||
<calc-option value={item.id}>{`${item.rarity}${item.type}徽章[${item.props}]`}</calc-option>
|
<calc-option
|
||||||
|
value={item.id}
|
||||||
|
>{`${item.rarity}${item.type}徽章[${item.props}]`}</calc-option>
|
||||||
))}
|
))}
|
||||||
</calc-select>
|
</calc-select>
|
||||||
)}
|
)}
|
||||||
@@ -174,7 +207,7 @@ export default defineComponent({
|
|||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<calc-collapse class="w-510px" title="装备打造(点击人物部位切换)">
|
<calc-collapse class="w-40%" title="装备打造(点击人物部位切换)">
|
||||||
<equipment />
|
<equipment />
|
||||||
</calc-collapse>
|
</calc-collapse>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ const configStore = useConfigStore()
|
|||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
await infoStore.createCharacter(props.alter, '0')
|
await infoStore.createCharacter(props.alter, '0')
|
||||||
configStore.loadConfig()
|
configStore.loadConfig()
|
||||||
console.log("~~~~~~~~")
|
|
||||||
window.addEventListener('beforeunload', () => {
|
window.addEventListener('beforeunload', () => {
|
||||||
configStore.saveConfig()
|
configStore.saveConfig()
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -107,10 +107,10 @@ export default defineComponent({
|
|||||||
<div class="absolute">
|
<div class="absolute">
|
||||||
<div class="w-36px h-55px bg-gradient-linear bg-gradient-[180deg,#f8e26c_0%,#f87c43_94.34%] z-1"></div>
|
<div class="w-36px h-55px bg-gradient-linear bg-gradient-[180deg,#f8e26c_0%,#f87c43_94.34%] z-1"></div>
|
||||||
<div class="flex bottom--5px relative z-2 transform -translate-x-1/4">
|
<div class="flex bottom--5px relative z-2 transform -translate-x-1/4">
|
||||||
<CalcButton onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'subMax')}}><</CalcButton>
|
<div onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'subMax')}}><</div>
|
||||||
<CalcButton onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'sub')}}>-</CalcButton>
|
<div onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'sub')}}>-</div>
|
||||||
<CalcButton icon="plus" onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'add')}}></CalcButton>
|
<div onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'add')}}>+</div>
|
||||||
<CalcButton icon="next" onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'addMax')}}></CalcButton>
|
<div onClick={(e:Event) => {e.stopPropagation();actionSkillLv(skill, 'addMax')}}>></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -15,16 +15,19 @@ import api from '@/api'
|
|||||||
// | '武器',
|
// | '武器',
|
||||||
export interface IConfig {
|
export interface IConfig {
|
||||||
skills: Record<string, { lv: number }>
|
skills: Record<string, { lv: number }>
|
||||||
equips: Record<string,
|
equips: Record<
|
||||||
{ id: string,
|
string,
|
||||||
reinforce: number,
|
{
|
||||||
reinforceType: number,
|
id: string
|
||||||
enchat: number,
|
reinforce: number
|
||||||
emblems: string[],
|
reinforceType: number
|
||||||
upgrade: number,
|
enchat: number
|
||||||
refine: number,
|
emblem_0: string
|
||||||
adaptation:number
|
emblem_1: string
|
||||||
}
|
upgrade: number
|
||||||
|
refine: number
|
||||||
|
adaptation: number
|
||||||
|
}
|
||||||
>
|
>
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -33,19 +36,19 @@ const defaultEqusConfig = {
|
|||||||
reinforce: 0,
|
reinforce: 0,
|
||||||
reinforceType: 0,
|
reinforceType: 0,
|
||||||
enchat: 0,
|
enchat: 0,
|
||||||
emblems: [],
|
emblem_0: "0",
|
||||||
|
emblem_1: "0",
|
||||||
upgrade: 0,
|
upgrade: 0,
|
||||||
refine: 0,
|
refine: 0,
|
||||||
adaptation: 0
|
adaptation: 0,
|
||||||
}
|
}
|
||||||
|
|
||||||
export const useConfigStore = defineStore('configStore', () => {
|
export const useConfigStore = defineStore('configStore', () => {
|
||||||
const config = ref<IConfig>({
|
const config = ref<IConfig>({
|
||||||
skills: {},
|
skills: {},
|
||||||
equips: {}
|
equips: {},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
const loadConfig = () => {
|
const loadConfig = () => {
|
||||||
const infoStore = useInfoStore()
|
const infoStore = useInfoStore()
|
||||||
const alter = infoStore.infos?.alter
|
const alter = infoStore.infos?.alter
|
||||||
@@ -56,24 +59,30 @@ export const useConfigStore = defineStore('configStore', () => {
|
|||||||
config.value = JSON.parse(localConfig)
|
config.value = JSON.parse(localConfig)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!config.value) config.value = {
|
if (!config.value)
|
||||||
skills: {},
|
config.value = {
|
||||||
equips: {}
|
skills: {},
|
||||||
}
|
equips: {},
|
||||||
if(!config.value?.equips) config.value.equips = {}
|
}
|
||||||
if(!config.value?.skills) config.value.skills = {}
|
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 })
|
config.value && (config.value.equips[p] = { ...defaultEqusConfig })
|
||||||
});
|
})
|
||||||
|
|
||||||
skillIDs.forEach(id => {
|
skillIDs.forEach((id) => {
|
||||||
config.value && (config.value.skills[id] = { lv: infoStore.skills.find(skill => skill.id.toString() === id)?.maxLearnLv ?? 0 })
|
config.value &&
|
||||||
});
|
(config.value.skills[id] = {
|
||||||
|
lv: infoStore.skills.find((skill) => skill.id.toString() === id)?.maxLearnLv ?? 0,
|
||||||
|
})
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const saveConfig = () => {
|
const saveConfig = () => {
|
||||||
@@ -84,7 +93,7 @@ export const useConfigStore = defineStore('configStore', () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const calc = async()=>{
|
const calc = async () => {
|
||||||
await api.calc(config.value)
|
await api.calc(config.value)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -92,6 +101,6 @@ export const useConfigStore = defineStore('configStore', () => {
|
|||||||
config,
|
config,
|
||||||
loadConfig,
|
loadConfig,
|
||||||
saveConfig,
|
saveConfig,
|
||||||
calc
|
calc,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1,31 +1,31 @@
|
|||||||
.icon-reset {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/reset_hover.png");
|
background-image: url("@/assets/img/icon/reset_hover.png") !important ;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/reset_active.png");
|
background-image: url("@/assets/img/icon/reset_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/reset_disabled.png");
|
background-image: url("@/assets/img/icon/reset_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-set {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/set_hover.png");
|
background-image: url("@/assets/img/icon/set_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/set_active.png");
|
background-image: url("@/assets/img/icon/set_active.png") !important ;
|
||||||
}
|
}
|
||||||
// &:disabled {
|
// &:disabled {
|
||||||
// background-image: url("@/assets/img/icon/set_disabled.png");
|
// background-image: url("@/assets/img/icon/set_disabled.png");
|
||||||
@@ -33,50 +33,50 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.icon-prev {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
height: 16px !important;
|
height: 16px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/prev_hover.png");
|
background-image: url("@/assets/img/icon/prev_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/prev_active.png");
|
background-image: url("@/assets/img/icon/prev_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/prev_disabled.png");
|
background-image: url("@/assets/img/icon/prev_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-next {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
height: 16px !important;
|
height: 16px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/next_hover.png");
|
background-image: url("@/assets/img/icon/next_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/next_active.png");
|
background-image: url("@/assets/img/icon/next_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/next_disabled.png");
|
background-image: url("@/assets/img/icon/next_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-dropdown {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
height: 16px !important;
|
height: 16px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/dropdown_hover.png");
|
background-image: url("@/assets/img/icon/dropdown_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/dropdown_active.png");
|
background-image: url("@/assets/img/icon/dropdown_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/dropdown_disabled.png");
|
background-image: url("@/assets/img/icon/dropdown_disabled.png");
|
||||||
@@ -84,197 +84,197 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.icon-search {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/search_hover.png");
|
background-image: url("@/assets/img/icon/search_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/search_active.png");
|
background-image: url("@/assets/img/icon/search_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/search_disabled.png");
|
background-image: url("@/assets/img/icon/search_disabled.png" ) !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-increase {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
height: 16px !important;
|
height: 16px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/increase_hover.png");
|
background-image: url("@/assets/img/icon/increase_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/increase_active.png");
|
background-image: url("@/assets/img/icon/increase_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/increase_disabled.png");
|
background-image: url("@/assets/img/icon/increase_disabled.png") !important ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-reduce {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
height: 16px !important;
|
height: 16px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/reduce_hover.png");
|
background-image: url("@/assets/img/icon/reduce_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/reduce_active.png");
|
background-image: url("@/assets/img/icon/reduce_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/reduce_disabled.png");
|
background-image: url("@/assets/img/icon/reduce_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-plus {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/plus_hover.png");
|
background-image: url("@/assets/img/icon/plus_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/plus_active.png");
|
background-image: url("@/assets/img/icon/plus_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/plus_disabled.png");
|
background-image: url("@/assets/img/icon/plus_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-detail {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/detail_hover.png");
|
background-image: url("@/assets/img/icon/detail_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/detail_active.png");
|
background-image: url("@/assets/img/icon/detail_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/detail_disabled.png");
|
background-image: url("@/assets/img/icon/detail_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.icon-home {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/home_hover.png");
|
background-image: url("@/assets/img/icon/home_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/home_active.png");
|
background-image: url("@/assets/img/icon/home_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/home_disabled.png");
|
background-image: url("@/assets/img/icon/home_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-reflesh {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/reflesh_hover.png");
|
background-image: url("@/assets/img/icon/reflesh_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/reflesh_active.png");
|
background-image: url("@/assets/img/icon/reflesh_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/reflesh_disabled.png");
|
background-image: url("@/assets/img/icon/reflesh_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-update {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/update_hover.png");
|
background-image: url("@/assets/img/icon/update_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/update_active.png");
|
background-image: url("@/assets/img/icon/update_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/update_disabled.png");
|
background-image: url("@/assets/img/icon/update_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-share {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/share_hover.png");
|
background-image: url("@/assets/img/icon/share_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/share_active.png");
|
background-image: url("@/assets/img/icon/share_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/share_disabled.png");
|
background-image: url("@/assets/img/icon/share_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-import {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: 100% 100% !important;
|
background-size: 100% 100% !important;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&:hover {
|
||||||
background-image: url("@/assets/img/icon/import_hover.png");
|
background-image: url("@/assets/img/icon/import_hover.png") !important;
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-image: url("@/assets/img/icon/import_active.png");
|
background-image: url("@/assets/img/icon/import_active.png") !important;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&:disabled {
|
||||||
background-image: url("@/assets/img/icon/import_disabled.png");
|
background-image: url("@/assets/img/icon/import_disabled.png") !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-menu-drug {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:active {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
@@ -282,26 +282,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.icon-menu-specificity {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:active {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
@@ -310,26 +310,26 @@
|
|||||||
|
|
||||||
|
|
||||||
.icon-menu-favourite {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:active {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
@@ -337,26 +337,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.icon-menu-recommend {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:active {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
@@ -364,26 +364,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.icon-menu-set {
|
.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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
width: 20px !important;
|
width: 20px !important;
|
||||||
height: 20px !important;
|
height: 20px !important;
|
||||||
&:hover {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:active {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
}
|
}
|
||||||
&:disabled {
|
&: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-repeat: no-repeat !important;
|
||||||
background-size: auto 100% !important;
|
background-size: auto 100% !important;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
|
|||||||
Reference in New Issue
Block a user