From a2f3e912732b544f1899734b191dd9a8a5215752 Mon Sep 17 00:00:00 2001 From: Tnze Date: Sun, 14 Apr 2024 11:30:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=B2=89=E7=90=83=E2=80=9C?= =?UTF-8?q?=E5=A5=BD=E5=85=86=E5=A4=B4=E2=80=9D=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cargo.lock | 125 ++++++++++++++------------ package.json | 2 +- src-libs/src/lib.rs | 25 +++--- src-tauri/Cargo.toml | 4 +- src-tauri/tauri.conf.json | 2 +- src/assets/locales/en-US.ftl | 1 + src/assets/locales/ja-JP.ftl | 1 + src/assets/locales/zh-CN.ftl | 1 + src/components/designer/Condition.vue | 4 + src/libs/Craft.ts | 2 + 10 files changed, 93 insertions(+), 74 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b291277..57dddcd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -108,9 +108,9 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.16" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "android-tzdata" @@ -129,13 +129,13 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.81" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247" +checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519" [[package]] name = "app" -version = "0.13.7" +version = "0.14.0" dependencies = [ "app-libs", "crossbeam-channel", @@ -229,9 +229,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.79" +version = "0.1.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681" +checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", @@ -509,9 +509,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.92" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41" +checksum = "17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7" [[package]] name = "cesu8" @@ -541,9 +541,9 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.15.7" +version = "0.15.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" dependencies = [ "smallvec", "target-lexicon", @@ -571,7 +571,7 @@ dependencies = [ "iana-time-zone", "num-traits", "serde", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -647,9 +647,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "combine" -version = "4.6.6" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ "bytes", "memchr", @@ -1044,9 +1044,9 @@ checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" [[package]] name = "either" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a" +checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2" dependencies = [ "serde", ] @@ -1073,9 +1073,9 @@ checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" [[package]] name = "encoding_rs" -version = "0.8.33" +version = "0.8.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" dependencies = [ "cfg-if", ] @@ -1166,9 +1166,9 @@ dependencies = [ [[package]] name = "ffxiv-crafting" -version = "6.3.3" +version = "6.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedbae17bf831c2450dbf74b2e0c22841a3c9bbb5112113b0551603ac169850b" +checksum = "36a5904e92273ba12118f49d432301ccd85008d6fb04a05f271bde9b71a7f0f2" dependencies = [ "serde", ] @@ -2334,7 +2334,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" dependencies = [ "cfg-if", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -3348,9 +3348,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.35" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] @@ -4672,7 +4672,7 @@ version = "6.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" dependencies = [ - "cfg-expr 0.15.7", + "cfg-expr 0.15.8", "heck 0.5.0", "pkg-config", "toml 0.8.12", @@ -5029,9 +5029,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.34" +version = "0.3.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" dependencies = [ "deranged", "itoa 1.0.11", @@ -5050,9 +5050,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.17" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" +checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" dependencies = [ "num-conv", "time-core", @@ -5224,7 +5224,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.5", + "winnow 0.6.6", ] [[package]] @@ -5941,7 +5941,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -5990,7 +5990,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -6010,17 +6010,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" dependencies = [ - "windows_aarch64_gnullvm 0.52.4", - "windows_aarch64_msvc 0.52.4", - "windows_i686_gnu 0.52.4", - "windows_i686_msvc 0.52.4", - "windows_x86_64_gnu 0.52.4", - "windows_x86_64_gnullvm 0.52.4", - "windows_x86_64_msvc 0.52.4", + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", ] [[package]] @@ -6031,11 +6032,11 @@ checksum = "f838de2fe15fe6bac988e74b798f26499a8b21a9d97edec321e79b28d1d7f597" [[package]] name = "windows-version" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75aa004c988e080ad34aff5739c39d0312f4684699d6d71fc8a198d057b8b9b4" +checksum = "6998aa457c9ba8ff2fb9f13e9d2a930dabcea28f1d0ab94d687d8b3654844515" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -6052,9 +6053,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" [[package]] name = "windows_aarch64_msvc" @@ -6082,9 +6083,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" [[package]] name = "windows_i686_gnu" @@ -6112,9 +6113,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.4" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" [[package]] name = "windows_i686_msvc" @@ -6142,9 +6149,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" [[package]] name = "windows_x86_64_gnu" @@ -6172,9 +6179,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" [[package]] name = "windows_x86_64_gnullvm" @@ -6190,9 +6197,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" [[package]] name = "windows_x86_64_msvc" @@ -6220,9 +6227,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" [[package]] name = "winnow" @@ -6235,9 +6242,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8" +checksum = "f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352" dependencies = [ "memchr", ] diff --git a/package.json b/package.json index 4a9d24a..2234d71 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "ffxiv-best-craft", "private": true, - "version": "0.13.7", + "version": "0.14.0", "scripts": { "dev": "VITE_BESTCRAFT_TARGET=tauri vite", "build": "VITE_BESTCRAFT_TARGET=tauri vite build", diff --git a/src-libs/src/lib.rs b/src-libs/src/lib.rs index c05513e..1f94176 100644 --- a/src-libs/src/lib.rs +++ b/src-libs/src/lib.rs @@ -90,17 +90,20 @@ pub fn simulate_one_step( }); } if !matches!(action, Actions::FinalAppraisal | Actions::HeartAndSoul) { - status.condition = if force_success { - Condition::Normal - } else { - ConditionIterator::new( - status.recipe.conditions_flag as i32, - status.attributes.level as i32, - ) - .collect::>() - .choose_weighted(&mut rng, |c| c.1) - .unwrap() - .0 + status.condition = match status.condition { + Condition::Good if force_success => Condition::Normal, + Condition::Poor if force_success => Condition::Excellent, + Condition::GoodOmen => Condition::Good, + _ => { + ConditionIterator::new( + status.recipe.conditions_flag as i32, + status.attributes.level as i32, + ) + .collect::>() + .choose_weighted(&mut rng, |c| c.1) + .unwrap() + .0 + } }; } Ok(SimulateOneStepResult { status, is_success }) diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 1318bd9..626863e 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -7,7 +7,7 @@ license = "AGPL-3.0-or-later" name = "app" repository = "https://github.com/Tnze/ffxiv-best-craft" rust-version = "1.71" -version = "0.13.7" +version = "0.14.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -16,7 +16,7 @@ tauri-build = { version = "1.5", features = [] } [dependencies] crossbeam-channel = "0.5.12" -ffxiv-crafting = { version = "6.3.3", features = ["serde-support"] } +ffxiv-crafting = { version = "6.5.0", features = ["serde-support"] } futures = "0.3" micro_ndarray = "0.6" msgbox = "0.7.0" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index ed53045..54ae1fd 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "package": { "productName": "BestCraft", - "version": "0.13.7" + "version": "0.14.0" }, "build": { "distDir": "../dist", diff --git a/src/assets/locales/en-US.ftl b/src/assets/locales/en-US.ftl index 4fbb234..e46c19a 100644 --- a/src/assets/locales/en-US.ftl +++ b/src/assets/locales/en-US.ftl @@ -79,6 +79,7 @@ sturdy = Sturdy pliant = Pliant malleable = Malleable primed = Primed +goodomen = Good Omen # Updater update-available = Update Available: v{ $version } diff --git a/src/assets/locales/ja-JP.ftl b/src/assets/locales/ja-JP.ftl index 36997f7..eeba897 100644 --- a/src/assets/locales/ja-JP.ftl +++ b/src/assets/locales/ja-JP.ftl @@ -71,6 +71,7 @@ sturdy = 頑丈 pliant = 高能率 malleable = 高進捗 primed = 長持続 +goodomen = 良兆候 update-available = 利用可能なアップデート: v{ $version } update-now = 今すぐ更新 diff --git a/src/assets/locales/zh-CN.ftl b/src/assets/locales/zh-CN.ftl index 847badc..11989c0 100644 --- a/src/assets/locales/zh-CN.ftl +++ b/src/assets/locales/zh-CN.ftl @@ -114,6 +114,7 @@ sturdy = 结实 pliant = 高效 malleable = 大进展 primed = 长持续 +goodomen = 好兆头 # 更新器 update-available = 更新可用:v{ $version } diff --git a/src/components/designer/Condition.vue b/src/components/designer/Condition.vue index 6489388..93f71d8 100644 --- a/src/components/designer/Condition.vue +++ b/src/components/designer/Condition.vue @@ -118,6 +118,10 @@ const dark = useDark() .primed { color: purple; } + +.goodomen { + color: pink; +} diff --git a/src/libs/Craft.ts b/src/libs/Craft.ts index 593474a..ad5fca1 100644 --- a/src/libs/Craft.ts +++ b/src/libs/Craft.ts @@ -118,6 +118,8 @@ export enum Conditions { Malleable = 'Malleable', // 紫:技能效果持续增加两回合 Primed = 'Primed', + // 粉:下一回合必定是红球 + GoodOmen = "GoodOmen", } export enum Jobs {