From 314797f9bb8e7537b8902545e1afac4c01a7c052 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Sat, 17 May 2025 21:53:56 +0800 Subject: [PATCH 01/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=8D=E6=8E=89?= =?UTF-8?q?=E8=90=BD=E6=8A=A4=E7=94=B2BUG=EF=BC=8C=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E4=B8=A4=E4=B8=AAUI=E6=98=BE?= =?UTF-8?q?=E7=A4=BABUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/tool/random.ts | 2 +- src/views/illustrated/illustrated.vue | 2 +- src/views/point/point.vue | 57 +++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 2 deletions(-) diff --git a/src/tool/random.ts b/src/tool/random.ts index 9cd278c..f87e4f3 100644 --- a/src/tool/random.ts +++ b/src/tool/random.ts @@ -1,7 +1,7 @@ import { difficultys, Categorys, qualitys, extra_quality, extra_quality_rate, extra_quality_lv } from '@/config'; import * as Equips from '@/config/equips'; -const types = ['weapon', 'arrmor', 'neck', 'ring', 'jewelry', 'bracers', 'pants', 'shoes']; +const types = ['weapon', 'armor', 'neck', 'ring', 'jewelry', 'bracers', 'pants', 'shoes']; const normal: Categorys[] = new Array(); const uniques: Categorys[] = new Array(); const colorfuls: Categorys[] = new Array(); diff --git a/src/views/illustrated/illustrated.vue b/src/views/illustrated/illustrated.vue index b7876f1..47b1ef9 100644 --- a/src/views/illustrated/illustrated.vue +++ b/src/views/illustrated/illustrated.vue @@ -3,7 +3,7 @@ - + diff --git a/src/views/point/point.vue b/src/views/point/point.vue index 8665b51..0f7b186 100644 --- a/src/views/point/point.vue +++ b/src/views/point/point.vue @@ -213,4 +213,61 @@ onBeforeUnmount(() => { } } + +@media only screen and (max-width: 768px) { + + .message { + padding-bottom: 0.5rem; + + p { + margin: 0.5rem; + } + + .tips { + padding-left: 0.8rem; + } + + .btn-div { + padding: 0rem; + padding-right: 1rem; + } + } + + .points { + padding: 0.1rem; + width: 23.5rem; + + .info { + padding: 0.2rem; + } + + } + + .attributes { + padding: 0.05rem 0; + } + + .attribute { + padding: 0.2rem 0rem; + + p { + + span { + margin-left: 0.2rem; + } + } + + .group { + + input { + width: 4rem; + color: black; + height: 1.8rem; + font-size: 0.8rem; + } + + } + } + +} \ No newline at end of file From 7fc2ac9f0801e2feec03e7adcf1b8831aaf83640 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Sat, 17 May 2025 22:23:02 +0800 Subject: [PATCH 02/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=83=8C=E5=8C=85?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E5=B1=9E=E6=80=A7=E5=AF=B9=E4=B8=8D=E9=BD=90?= =?UTF-8?q?BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/backpack/player.vue | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/views/backpack/player.vue b/src/views/backpack/player.vue index db5bd73..e780303 100644 --- a/src/views/backpack/player.vue +++ b/src/views/backpack/player.vue @@ -89,6 +89,14 @@ onMounted(() => { }); text-align: start; } + .label, + .value { + div { + line-height: 1.5rem; + height: 1.5rem; + } + } + } .equips { @@ -181,6 +189,14 @@ onMounted(() => { }); text-align: start; } + .label, + .value { + div { + line-height: 1.2rem; + height: 1.2rem; + } + } + } .equips { From 6f8d63f6758004d99bee63f4f93d50d32c3be44e Mon Sep 17 00:00:00 2001 From: mengyxu Date: Sun, 18 May 2025 00:12:07 +0800 Subject: [PATCH 03/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=A7=BB=E5=8A=A8?= =?UTF-8?q?=E7=AB=AF=E6=88=98=E6=96=97=E4=B8=AD=E6=9B=B4=E6=8D=A2=E8=A3=85?= =?UTF-8?q?=E5=A4=87=E6=89=93=E4=B8=8D=E6=AD=BBBUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/config/beings.ts | 6 ++++++ src/tool/caller/attribute.ts | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/config/beings.ts b/src/config/beings.ts index 08888e4..71db175 100644 --- a/src/config/beings.ts +++ b/src/config/beings.ts @@ -52,6 +52,12 @@ export class Attribute { }); } } + + copy(attr: Attribute) { + Object.keys(attr).forEach((key) => { + this[key] = attr[key]; + }); + } } export class Player { diff --git a/src/tool/caller/attribute.ts b/src/tool/caller/attribute.ts index f0533b1..7863f4c 100644 --- a/src/tool/caller/attribute.ts +++ b/src/tool/caller/attribute.ts @@ -48,7 +48,8 @@ export const callPlayerAttribute = (player: Player, base: any) => { attribute.dps = Math.ceil((1 - crit + crit * critdmg) * atk * (1 + dmgPercent)); //计算减伤比例 attribute.reducPercent = callReducPercent(attribute.def, player.lv); - player.attribute = attribute; + + player.attribute.copy(attribute); }; /** From 9b9dd1fb0ac197717e4892ade42fe77da1e015af Mon Sep 17 00:00:00 2001 From: mengyxu Date: Mon, 19 May 2025 10:43:41 +0800 Subject: [PATCH 04/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=BC=BA=E5=8C=96BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复BUG:自动强化开启后,点击右上角叉叉并不会停止自动强化。 导致你接下来选择哪个装备就会自动强化哪个装备 --- src/components/dialog.vue | 1 + src/views/backpack/equip-menu.vue | 7 ++++--- src/views/backpack/inherited.vue | 8 +++++++- src/views/backpack/strengthen.vue | 2 ++ 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/components/dialog.vue b/src/components/dialog.vue index 4e6abac..993e65b 100644 --- a/src/components/dialog.vue +++ b/src/components/dialog.vue @@ -81,6 +81,7 @@ onMounted(() => { document.addEventListener('keydown', (e) => { if (e.keyCode == 27) { show.value = false; + emit('close'); } }) if (prop.obscured) { diff --git a/src/views/backpack/equip-menu.vue b/src/views/backpack/equip-menu.vue index 3906c2f..d38b74d 100644 --- a/src/views/backpack/equip-menu.vue +++ b/src/views/backpack/equip-menu.vue @@ -11,13 +11,13 @@ - + :obscured="true" @close="strengthen?.stopAuto()"> + - + @@ -47,6 +47,7 @@ const curEquip = computed(() => { } return state.playerAttribute[equip.value.type]; }) +const strengthen = ref(); defineExpose({ open }) diff --git a/src/views/backpack/inherited.vue b/src/views/backpack/inherited.vue index 80d7107..347b982 100644 --- a/src/views/backpack/inherited.vue +++ b/src/views/backpack/inherited.vue @@ -77,6 +77,7 @@ import { computed, onMounted, ref } from "vue"; import { useI18n } from "vue3-i18n"; import { strengthenAvgCoins, strengthenValue } from "@/tool"; import { EquipIcon, Confirm } from "@/components"; +import { qualitys } from "@/config"; const { t } = useI18n(); @@ -119,7 +120,12 @@ const confirmInherited = () => { emit('close'); } -onMounted(() => { }); +onMounted(() => { + const need = strengthenAvgCoins(100, 13, qualitys[5]); + const used = strengthenAvgCoins(1, 13, qualitys[0]); + console.log(need - used); + +}); \ No newline at end of file diff --git a/src/views/menu.vue b/src/views/menu.vue index 0a4b13c..4f54911 100644 --- a/src/views/menu.vue +++ b/src/views/menu.vue @@ -19,7 +19,6 @@ import { useI18n } from "vue3-i18n"; import Backpack from "./backpack"; import Shop from "./shop"; import Dungeon from './dungeon'; -import Reborn from "./reborn"; import Point from "./point"; import SaveGame from "./save-game.vue"; import Archive from "./archive.vue"; From 8c7196190f24f0d19d7885a3b051760b3f2066fb Mon Sep 17 00:00:00 2001 From: mengyxu Date: Mon, 19 May 2025 22:00:59 +0800 Subject: [PATCH 11/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=8A=E4=BC=A0/?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E5=AD=98=E6=A1=A3BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../idle/server/ctrl/ArchiveController.java | 2 +- .../idle/server/mapper/IArchiveMapper.java | 21 ++++++++++++++++--- .../vip/xumy/idle/server/pojo/Archive.java | 1 + .../idle/server/service/ArchiveService.java | 17 ++++++++------- src/api/index.ts | 4 ++-- src/views/archive.vue | 18 ++++++++++++++-- src/views/login.vue | 10 ++++----- 7 files changed, 52 insertions(+), 21 deletions(-) diff --git a/java/src/main/java/vip/xumy/idle/server/ctrl/ArchiveController.java b/java/src/main/java/vip/xumy/idle/server/ctrl/ArchiveController.java index 4c7bd31..507ad93 100644 --- a/java/src/main/java/vip/xumy/idle/server/ctrl/ArchiveController.java +++ b/java/src/main/java/vip/xumy/idle/server/ctrl/ArchiveController.java @@ -43,7 +43,7 @@ public class ArchiveController { if (archive == null) { return new BaseResponse(false, "未查询到你的存档"); } - return new BaseResponse(true, archive.getArchive()); + return new BaseResponse(archive.getArchive()); } } diff --git a/java/src/main/java/vip/xumy/idle/server/mapper/IArchiveMapper.java b/java/src/main/java/vip/xumy/idle/server/mapper/IArchiveMapper.java index 5ffcff3..5fdc624 100644 --- a/java/src/main/java/vip/xumy/idle/server/mapper/IArchiveMapper.java +++ b/java/src/main/java/vip/xumy/idle/server/mapper/IArchiveMapper.java @@ -1,18 +1,33 @@ package vip.xumy.idle.server.mapper; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Update; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import vip.xumy.idle.server.pojo.Archive; -/** Ownership belongs to the company +/** + * Ownership belongs to the company * - * @author:mengyxu - * @date:2025年5月19日 + * @author:mengyxu + * @date:2025年5月19日 */ @Mapper public interface IArchiveMapper extends BaseMapper { + @Update(""" + UPDATE archive + SET + lv = #{lv}, + coins = #{coins}, + strengthen_lv= #{strengthenLv} , + archive = #{archive} + WHERE + username = #{username} + and version = #{version} + """) + void update(Archive archive); + } diff --git a/java/src/main/java/vip/xumy/idle/server/pojo/Archive.java b/java/src/main/java/vip/xumy/idle/server/pojo/Archive.java index b22f33a..65e8f70 100644 --- a/java/src/main/java/vip/xumy/idle/server/pojo/Archive.java +++ b/java/src/main/java/vip/xumy/idle/server/pojo/Archive.java @@ -21,6 +21,7 @@ public class Archive { private String version; private int lv; private long coins; + private int strengthenLv; private String archive; } diff --git a/java/src/main/java/vip/xumy/idle/server/service/ArchiveService.java b/java/src/main/java/vip/xumy/idle/server/service/ArchiveService.java index 017201a..16fb66a 100644 --- a/java/src/main/java/vip/xumy/idle/server/service/ArchiveService.java +++ b/java/src/main/java/vip/xumy/idle/server/service/ArchiveService.java @@ -8,26 +8,27 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import vip.xumy.idle.server.mapper.IArchiveMapper; import vip.xumy.idle.server.pojo.Archive; -/** Ownership belongs to the company +/** + * Ownership belongs to the company * - * @author:mengyxu - * @date:2025年5月19日 + * @author:mengyxu + * @date:2025年5月19日 */ @Service public class ArchiveService { @Autowired private IArchiveMapper archiveMapper; - + public void saveOrUpdate(Archive archive) { Archive exit = getByKey(archive.getUsername(), archive.getVersion()); - if(exit == null) { + if (exit == null) { archiveMapper.insert(archive); - }else { - archiveMapper.updateById(archive); + } else { + archiveMapper.update(archive); } } - + public Archive getByKey(String username, String version) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("username", username); diff --git a/src/api/index.ts b/src/api/index.ts index 77350fa..490dfb5 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -16,6 +16,6 @@ export const getUser = () => { export const uploadArchive = (archive) => { return post(urls.archive, archive); }; -export const downArchive = () => { - return get(urls.archive); +export const downArchive = (param) => { + return get(urls.archive, param); }; diff --git a/src/views/archive.vue b/src/views/archive.vue index 3c4649c..099d754 100644 --- a/src/views/archive.vue +++ b/src/views/archive.vue @@ -38,6 +38,15 @@ const showArchive = computed(() => { const archive = ref(''); const key = 'KUf4hM5rThssysJhcRFCfxLR8Imihjl0eMsyhh1M7Wk'; let timeOut = 0; +const strengthenLv = computed(() => { + const player = state.playerAttribute; + const equips = [player.weapon, player.armor, player.neck, player.ring, player.jewelry, player.pants, player.shoes, player.bracers]; + let lv = 0; + equips.forEach(equip => { + equip && (lv += equip.strengthenLv) + }) + return lv; +}); const showMenu = () => { if (showArchive.value) { @@ -74,7 +83,7 @@ const uploadArchive = () => { API.getUser().then(user => { if (user) { const palyer = state.playerAttribute.attribute; - const data = { version: archive_version, lv: palyer.lv, coins: palyer.coins, archive: archive.value } + const data = { version: archive_version, lv: palyer.lv, coins: palyer.coins, strengthenLv: strengthenLv.value, archive: archive.value } API.uploadArchive(data).then(rsp => rsp && showMenu()); } else { state.showLogin = true; @@ -85,7 +94,12 @@ const uploadArchive = () => { const downArchive = () => { API.getUser().then(user => { if (user) { - API.downArchive().then(rsp => rsp && showMenu()); + API.downArchive({ version: archive_version }).then((rsp: any) => { + if (rsp) { + archive.value = rsp; + importArchive(); + } + }); } else { state.showLogin = true; } diff --git a/src/views/login.vue b/src/views/login.vue index ea4d521..f4557e5 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -8,7 +8,7 @@
{{ t('login.2') }}:
-
+
@@ -27,21 +27,21 @@ const { t } = useI18n(); const { state, commit, dispatch } = useStore(); const user = reactive({ username: '', - passowrd: '', + password: '', }) const login = () => { const username = user.username; - const passowrd = user.passowrd; + const password = user.password; if (!username) { commit('set_sys_info', { msg: t('login.4'), type: 'warning' }) return; } - if (!passowrd) { + if (!password) { commit('set_sys_info', { msg: t('login.5'), type: 'warning' }) return; } - const param = { username: username, passowrd: MD5(passowrd) }; + const param = { username: username, password: MD5(password) }; loginOrRegister(param).then(rsp => { rsp && (state.showLogin = false); }) From 08d3eaab4b45c95670f96fd6a4e612e332d5a2e8 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Mon, 19 May 2025 22:05:39 +0800 Subject: [PATCH 12/36] Update sys-info.vue --- src/views/message/sys-info.vue | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/views/message/sys-info.vue b/src/views/message/sys-info.vue index e74c521..bfed9fd 100644 --- a/src/views/message/sys-info.vue +++ b/src/views/message/sys-info.vue @@ -96,6 +96,7 @@ a { .crit_player>.msg { color: #FFD700; + font-size: 1.15rem; } .gain_player>.msg { @@ -109,13 +110,14 @@ a { .crit_monster, .crit_boss>.msg { color: #ff0505; + font-size: 1.15rem; } .attack_monster, .attack_boss>.msg, .extra_monster>.msg, .extra_boss>.msg { - color: #ff0000a1; + color: #ff0505; } .gain_monster, From 9b88b662fa1b1b38316577cb2a836fd2f6de30b6 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Mon, 19 May 2025 22:06:41 +0800 Subject: [PATCH 13/36] Update update-log.vue --- src/views/version/update-log.vue | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/views/version/update-log.vue b/src/views/version/update-log.vue index d8673a9..33fd3c7 100644 --- a/src/views/version/update-log.vue +++ b/src/views/version/update-log.vue @@ -39,6 +39,10 @@ const hisVersions = [ const updateLogs: any = [{ date: '2025-05-19', version: '1.0', + adjust: [ + '战斗信息做颜色区分', + '新增上传/下载存档功能', + ], bug: [ '修复复制存按钮档无效BUG', '修复不掉落护甲BUG,修复移动端两个UI显示BUG', From d5c48da08d0a413ac7b2db71511e87a771334d9f Mon Sep 17 00:00:00 2001 From: mengyxu Date: Tue, 20 May 2025 09:06:39 +0800 Subject: [PATCH 14/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=B2=98=E8=B4=B4?= =?UTF-8?q?=E5=AD=98=E6=A1=A3=E6=97=A0=E6=95=88BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/archive.vue | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/views/archive.vue b/src/views/archive.vue index 099d754..81d96a4 100644 --- a/src/views/archive.vue +++ b/src/views/archive.vue @@ -107,11 +107,16 @@ const downArchive = () => { } const pasteArchive = () => { - navigator.clipboard.readText().then((text) => { - archive.value = text; - commit('set_sys_info', { msg: t('pasteArchive.1'), type: 'win' }) - }, () => { - commit('set_sys_info', { msg: t('pasteArchive.2'), type: 'waring' }) + const name: any = 'clipboard-read'; + navigator.permissions.query({ name: name }).then(result => { + if (result.state === 'granted') { + navigator.clipboard.readText().then(text => { + archive.value = text; + commit('set_sys_info', { msg: t('pasteArchive.1'), type: 'win' }) + }); + } else { + commit('set_sys_info', { msg: t('pasteArchive.2'), type: 'waring' }) + } }); } From e39b54819b4b39230fa54cad1764549a35767c3c Mon Sep 17 00:00:00 2001 From: mengyxu Date: Tue, 20 May 2025 10:01:29 +0800 Subject: [PATCH 15/36] =?UTF-8?q?=E4=B8=80=E9=94=AE=E6=95=B4=E7=90=86?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8E=92=E5=BA=8F=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/backpack/grid.vue | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/views/backpack/grid.vue b/src/views/backpack/grid.vue index bc8d344..fd87817 100644 --- a/src/views/backpack/grid.vue +++ b/src/views/backpack/grid.vue @@ -62,15 +62,16 @@ const itemNum = computed(() => { }); const neaten = () => { - const tem = new Array(grid.value.length); - let i = 0; - grid.value.forEach((item) => { - if (item) { - tem[i] = item - i++; - } - }) - commit("set_backpack", tem); + grid.value.sort((a, b) => { + if (!a && !b) return 0; + else if (!a) return 1; + else if (!b) return -1; + let tmp = b.type.localeCompare(a.type, 'en'); + if (tmp != 0) return tmp; + tmp = b.base.name.localeCompare(a.base.name, 'en'); + if (tmp != 0) return tmp; + return b.lv - a.lv; + }); } const sellAll = () => { state.grid.forEach((item, index) => { From a24dad33a70052a8100238bae7994454a92be4ce Mon Sep 17 00:00:00 2001 From: mengyxu Date: Tue, 20 May 2025 10:01:45 +0800 Subject: [PATCH 16/36] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0ROLL=E5=80=BC=E7=99=BE=E5=88=86=E7=99=BE?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/equip.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/equip.vue b/src/components/equip.vue index 7e01745..9aa574b 100644 --- a/src/components/equip.vue +++ b/src/components/equip.vue @@ -20,7 +20,7 @@
- {{ t(v.type + '.0') }} : {{ v.showVal }} + {{ t(v.type + '.0') }} : {{ v.showVal }}({{ v.percent }}%) [{{ v.min }} - {{ v.max }}] From 0e31adab1f0a9a05d34eab5bf1e0792143251227 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Tue, 20 May 2025 10:07:22 +0800 Subject: [PATCH 17/36] Update sys-info.vue --- src/views/message/sys-info.vue | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/views/message/sys-info.vue b/src/views/message/sys-info.vue index bfed9fd..59b73f6 100644 --- a/src/views/message/sys-info.vue +++ b/src/views/message/sys-info.vue @@ -140,5 +140,12 @@ a { font-size: 0.6rem; } + .crit_player, + .crit_monster, + .crit_boss>.msg { + font-size: 1.1rem; + } + + } \ No newline at end of file From 9a95a7426d75940f1dffe778663137cd1032347f Mon Sep 17 00:00:00 2001 From: mengyxu Date: Tue, 20 May 2025 10:09:54 +0800 Subject: [PATCH 18/36] Update login.vue --- src/views/login.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/login.vue b/src/views/login.vue index f4557e5..552bbe6 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -1,6 +1,6 @@