genshin-world 4.3.1 → 4.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ElementDamageBonusAttributeMap-r29fkvtM.js → ElementDamageBonusAttributeMap-Cf1kBcTu.js} +2 -3
- package/dist/{EnemyState-DV57Bh7L.js → EnemyState-BdsrVDVv.js} +1 -2
- package/dist/{GameDataset-B6H7oezV.js → GameDataset-oS0Tc9KV.js} +7 -14
- package/dist/{KitEventKind-CGMNB7W9.js → KitEventKind-DinObjiq.js} +1 -2
- package/dist/{ReactionType-hpFnoVev.js → ReactionType-BTiek5WA.js} +6 -11
- package/dist/{TransformativeReactionType-CleFzf8J.js → TransformativeReactionType-DYhIEAoe.js} +1 -2
- package/dist/{addKitEffect-B922PsCn.js → addKitEffect-DEhZUuxo.js} +1 -2
- package/dist/{addKitStatus-B0kqLgt1.js → addKitStatus-CecgwPmO.js} +2 -3
- package/dist/{ainoKit-9nNWJtt8.js → ainoKit-Z23iOdpE.js} +7 -8
- package/dist/{albedoKit-CqDSRYSS.js → albedoKit-h6MSXqhl.js} +7 -8
- package/dist/{alhaithamKit-CPqHnLHg.js → alhaithamKit-2VrwmZzn.js} +8 -9
- package/dist/{aloyKit-mX4ue1UK.js → aloyKit-Dlk_fLbL.js} +6 -7
- package/dist/{alyoshaKit-BT4RmJiZ.js → alyoshaKit-3ky4aL_z.js} +1 -2
- package/dist/{amberKit-DiseylUk.js → amberKit-BuYU5ACZ.js} +2 -3
- package/dist/{arlecchinoKit-Ktk2qBrZ.js → arlecchinoKit-B2WJP5Y5.js} +3 -4
- package/dist/{ayakaKit-B8lRaVEX.js → ayakaKit-D7K6RdMw.js} +5 -6
- package/dist/{ayatoKit-C1d3zZO0.js → ayatoKit-qQp-Ayun.js} +7 -8
- package/dist/{baizhuKit-BahbIHOM.js → baizhuKit-9i8Hvfeg.js} +6 -7
- package/dist/{barbaraKit-DyVdn4JU.js → barbaraKit-DMo_2qWo.js} +9 -10
- package/dist/{beidouKit-DtdW2iYD.js → beidouKit-1lURCwhO.js} +4 -5
- package/dist/{bennettKit-DMybe5yt.js → bennettKit-B-ipp-MR.js} +6 -7
- package/dist/{candaceKit-D2JxxJ-U.js → candaceKit-oGYu9t5n.js} +8 -9
- package/dist/{castKitField-_74Co83C.js → castKitField-BhB1fy3l.js} +4 -6
- package/dist/{characterPack-COXASMYv.d.ts → characterPack-B3e_YsdJ.d.ts} +0 -28
- package/dist/{characterPack-DibegH5Y.js → characterPack-DzYMqBNM.js} +28 -54
- package/dist/characterPack.d.ts +1 -1
- package/dist/characterPack.js +2 -2
- package/dist/{charlotteKit-BHanMBgA.js → charlotteKit-BjNvcN8w.js} +6 -7
- package/dist/{chascaKit-CF8KPyfH.js → chascaKit-isny33W1.js} +3 -4
- package/dist/{checkIsKitShieldLive-Ch8BgpHZ.js → checkIsKitShieldLive-DEn8yb0C.js} +1 -2
- package/dist/{chevreuseKit-CH5xu1yJ.js → chevreuseKit-BppMndmv.js} +7 -8
- package/dist/{chioriKit-CyJV9RuV.js → chioriKit-CKfqMVtb.js} +1 -2
- package/dist/{chongyunKit-Bfp6g05V.js → chongyunKit-DeZG-qOb.js} +8 -9
- package/dist/{citlaliKit-BFxlFfsf.js → citlaliKit-BLY9P2cd.js} +5 -6
- package/dist/{clorindeKit-CVP7rxb2.js → clorindeKit-DGNp_1SZ.js} +3 -4
- package/dist/{collectKitEnergyDrops-Bt4C9o5I.js → collectKitEnergyDrops-4kTI3aGH.js} +11 -16
- package/dist/{colleiKit-CCIYW8bc.js → colleiKit-CVBvP9-k.js} +5 -6
- package/dist/{columbinaKit-CJ0as-TP.js → columbinaKit-BqmNtRDK.js} +11 -13
- package/dist/{computeFacingAngle-BaRnmfMH.js → computeFacingAngle-DapXsgDc.js} +1 -2
- package/dist/{constants-CFW7hhnp.js → constants-6NEnGOni.js} +2 -3
- package/dist/{constants-C5MNdAtu.js → constants-BIXoNz1x.js} +4 -5
- package/dist/{constants-CSFiwyHy.js → constants-DWgLZz-I.js} +1 -2
- package/dist/{constants-DCZ-jxqC.js → constants-jHIdcxxW.js} +1 -2
- package/dist/{constants--ARZpp1u.js → constants-r10WzaUG.js} +1 -2
- package/dist/{consumeKitResource-CbrNQtZP.js → consumeKitResource-DknosO6e.js} +5 -6
- package/dist/{countKitResource-DvrWXcCc.js → countKitResource-CPve-dw2.js} +2 -3
- package/dist/{createWindriseGroundPaint-3I4-42A5.js → createWindriseGroundPaint-CtFTL5uW.js} +6 -12
- package/dist/{cynoKit-BsdVe5ip.js → cynoKit-bhub8RfD.js} +10 -11
- package/dist/{dahliaKit-BvAE-bdw.js → dahliaKit-BeEPFn33.js} +2 -3
- package/dist/{dehyaKit-DiC7yHRH.js → dehyaKit-1qJYvLv-.js} +3 -4
- package/dist/{dilucKit-C9Nz6xLi.js → dilucKit-DslGKmxO.js} +5 -6
- package/dist/{dionaKit-CSA9iGCG.js → dionaKit-B33zk3GI.js} +5 -6
- package/dist/{doriKit-MallfU4i.js → doriKit-BmYySQcG.js} +2 -3
- package/dist/{durinKit-Cwno0X9u.js → durinKit-CpCXxj-r.js} +3 -4
- package/dist/{emilieKit-WNRG1HiW.js → emilieKit-BZqz4PVs.js} +2 -3
- package/dist/{emitKitEvent-MEMMkn9X.js → emitKitEvent-Cb-ZHu50.js} +2 -3
- package/dist/{escoffierKit-DC0knooj.js → escoffierKit-DFRj0Hpo.js} +4 -5
- package/dist/{eulaKit-B714Qm9u.js → eulaKit-BzD8ye_S.js} +9 -10
- package/dist/{faruzanKit-Bnz3BRKw.js → faruzanKit-C5WQz91G.js} +4 -5
- package/dist/{findKitStatus-c5kVgwo6.js → findKitStatus-Dj_zauGj.js} +1 -2
- package/dist/{fischlKit-BKJSDlae.js → fischlKit-e4xAt26v.js} +5 -6
- package/dist/{flinsKit-CP5D22yk.js → flinsKit-D82N06z5.js} +2 -3
- package/dist/{freminetKit-BKugfnRC.js → freminetKit-Dq9ebIts.js} +2 -3
- package/dist/{furinaKit-BGd_lLjr.js → furinaKit-CzTKkE0N.js} +12 -13
- package/dist/{gainKitResource-Cb8C2L3s.js → gainKitResource-3F1z8Aco.js} +3 -4
- package/dist/{gainPartyMemberEnergy-D9hiqeb4.js → gainPartyMemberEnergy-DUbIxe6i.js} +3 -5
- package/dist/{gamingKit-kIgqMnFq.js → gamingKit-yxYvslgf.js} +3 -4
- package/dist/{ganyuKit-DemmOZho.js → ganyuKit-B2pxzHKL.js} +3 -4
- package/dist/{getActiveCharacterId-BAGBdS2c.js → getActiveCharacterId-D9TtVSWj.js} +2 -3
- package/dist/{getBuffedCombatant-B7Fe7E_P.js → getBuffedCombatant-CwXmBrc6.js} +13 -20
- package/dist/{getDeployedCharacterIds-ED-6JY4w.js → getDeployedCharacterIds-TuIRCNKb.js} +1 -2
- package/dist/{getDeployedCombatants-BqXm9a6o.js → getDeployedCombatants-BQdLjZha.js} +3 -4
- package/dist/{getPartyMember-CPyR8-gA.js → getPartyMember-BAb9wUiz.js} +1 -2
- package/dist/{gorouKit-D1aEnA6A.js → gorouKit--Luf6-WZ.js} +7 -8
- package/dist/{heizouKit-ePG5r1Cn.js → heizouKit-DRleoyzF.js} +6 -7
- package/dist/{huTaoKit-4-GOh-Vv.js → huTaoKit-WDMpqAzD.js} +7 -8
- package/dist/{iansanKit-CRWpDWLi.js → iansanKit-BPzX4C36.js} +9 -10
- package/dist/{ifaKit-DIM0kU9K.js → ifaKit-Z57TFRSg.js} +7 -8
- package/dist/{illugaKit-D1QkAPS6.js → illugaKit-86u4wqrU.js} +10 -11
- package/dist/{index-CPoeaSkB.d.ts → index-C5rNBYhp.d.ts} +12 -6110
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2575 -4994
- package/dist/{ineffaKit-vPT9zyfI.js → ineffaKit-D0SA01X2.js} +8 -9
- package/dist/{ittoKit-DzOW-TE9.js → ittoKit-hM51Mywb.js} +7 -8
- package/dist/{jahodaKit-9YGHCAcA.js → jahodaKit-CqtBpzVS.js} +11 -14
- package/dist/{jeanKit-9eNCZ6dx.js → jeanKit-fwjmnF1v.js} +5 -6
- package/dist/{kachinaKit-BrwrswKB.js → kachinaKit-Dyh5F-ob.js} +2 -3
- package/dist/{kaeyaKit-CY35PXmA.js → kaeyaKit-SBM0QxJ5.js} +7 -8
- package/dist/{kavehKit-BE7gKtWP.js → kavehKit-1XyMxtUb.js} +3 -4
- package/dist/{kazuhaKit-qOCjcrqH.js → kazuhaKit-C726LLZy.js} +8 -9
- package/dist/{keqingKit-BzAWT9BG.js → keqingKit-O_V-tx1h.js} +5 -6
- package/dist/{kinichKit-CymKuu1M.js → kinichKit-DIVa0P5s.js} +4 -5
- package/dist/{kiraraKit-DyhPmhEL.js → kiraraKit-nS9iOECm.js} +2 -3
- package/dist/{kleeKit-BwHcJznq.js → kleeKit-DzbELTyN.js} +7 -8
- package/dist/{kokomiKit-CA0CzriO.js → kokomiKit-BRzXNRVb.js} +4 -5
- package/dist/{kujouSaraKit-BW83jN0G.js → kujouSaraKit-BpN3Ipay.js} +9 -10
- package/dist/{kukiKit-AxsqxqeV.js → kukiKit-DRdmE41e.js} +5 -6
- package/dist/{lanYanKit-ttJg9kuB.js → lanYanKit-CRK1J-LX.js} +2 -3
- package/dist/{laumaKit-Byo_-u9y.js → laumaKit-CRc88J5l.js} +10 -11
- package/dist/{laylaKit-L2t_Rj6L.js → laylaKit-B7Pjqgzw.js} +12 -13
- package/dist/{linneaKit-DlVhnbGM.js → linneaKit-CVZeam_T.js} +1 -2
- package/dist/{lisaKit-BsYIJpRR.js → lisaKit-BJqj8t7j.js} +3 -4
- package/dist/{lohenKit-D-uagI_g.js → lohenKit-BZk4IiPV.js} +1 -2
- package/dist/{lynetteKit-N8fgD5-q.js → lynetteKit-CfwhsLsJ.js} +4 -5
- package/dist/{lyneyKit-T586Gpbd.js → lyneyKit-BQiI15dt.js} +2 -3
- package/dist/{mavuikaKit-nJaEDdfr.js → mavuikaKit-MMBY1DJn.js} +2 -3
- package/dist/{mikaKit-CdLY5aCh.js → mikaKit-BIMafqBI.js} +2 -3
- package/dist/{mizukiKit-BEXzx_Y6.js → mizukiKit-CC34yGgJ.js} +4 -5
- package/dist/{monaKit-ONoXQhmJ.js → monaKit-BlrXXHlB.js} +8 -9
- package/dist/{mualaniKit-DXSW984Q.js → mualaniKit-BUTB11j2.js} +1 -2
- package/dist/{nahidaKit-f_e4vgfj.js → nahidaKit-ZHrD7-m7.js} +9 -10
- package/dist/{naviaKit-BtcUuWFE.js → naviaKit-DDttg5Dp.js} +7 -8
- package/dist/{neferKit-12ZI_Dj4.js → neferKit-Z-QBM46z.js} +5 -6
- package/dist/{neuvilletteKit-l08eZ2jR.js → neuvilletteKit-B4EhID2O.js} +5 -7
- package/dist/{nicoleKit-BGBQ8CMU.js → nicoleKit-Dmrpe0yU.js} +12 -13
- package/dist/{nilouKit-BH5jWBqC.js → nilouKit-CoztU-uZ.js} +7 -8
- package/dist/{ningguangKit-YmHdRYcn.js → ningguangKit-BGOXmwd-.js} +6 -7
- package/dist/{noelleKit-IDYWuE-6.js → noelleKit-nl5ar8f1.js} +7 -8
- package/dist/{odetteKit-Dw5i_A2J.js → odetteKit-Bu1W8GX7.js} +5 -6
- package/dist/{ororonKit-HsTfXvsW.js → ororonKit-CboDk9B8.js} +9 -10
- package/dist/{pruneKit-PR-_GqAt.js → pruneKit-xgQ9cym6.js} +2 -3
- package/dist/{qiqiKit-HX-bDmRf.js → qiqiKit-lz_qLyLu.js} +6 -7
- package/dist/{raidenKit-DUUHQxaP.js → raidenKit-CVTi4bpy.js} +11 -12
- package/dist/{razorKit-BQIWQCQH.js → razorKit-BHyrlVEl.js} +7 -8
- package/dist/{readCharacterAvatar-QXdaK_b0.js → readCharacterAvatar-xauJoD8Q.js} +8 -12
- package/dist/{removeKitEffects--6C1cGOY.js → removeKitEffects-Csap9Xyn.js} +1 -2
- package/dist/{rosariaKit-Dn-L-EAF.js → rosariaKit-DEpP8gj7.js} +4 -5
- package/dist/{sandroneKit-BwVm_e-C.js → sandroneKit-C7vjjwWY.js} +1 -2
- package/dist/{save-BONR7TY2.js → save-W-sjOoN_.js} +129 -256
- package/dist/save.d.ts +1 -1
- package/dist/save.js +1 -1
- package/dist/{sayuKit-CzPYsFzM.js → sayuKit-DQbPlL_6.js} +6 -7
- package/dist/{sceneExport-p78Obc7R.js → sceneExport-3Se7hlVa.js} +2 -4
- package/dist/{sceneExport-BmTj9FRK.d.ts → sceneExport-C-q_cRxm.d.ts} +0 -14
- package/dist/sceneExport.d.ts +1 -1
- package/dist/sceneExport.js +1 -1
- package/dist/{sethosKit-Dnj7Y8q0.js → sethosKit-o-Tz2GFI.js} +1 -2
- package/dist/{shenheKit-DyoqKfsa.js → shenheKit-Xu_rt5aN.js} +10 -11
- package/dist/{sigewinneKit-a6h94xdX.js → sigewinneKit-NOWCcIW4.js} +2 -3
- package/dist/{skirkKit-BDjoFGAq.js → skirkKit-CK183sCe.js} +1 -2
- package/dist/{spendKitResource-BMOGVq9a.js → spendKitResource-CC5kZDgu.js} +3 -4
- package/dist/{sucroseKit-D2zXGz1h.js → sucroseKit-Brr_FwwP.js} +9 -10
- package/dist/{tartagliaKit-BwGA6N1Y.js → tartagliaKit-DQzYxDRn.js} +7 -8
- package/dist/terrainTileWorker.js +2 -3
- package/dist/{thomaKit-BJfMbEIx.js → thomaKit-CesNlmDH.js} +5 -6
- package/dist/{tighnariKit-RYM02O_t.js → tighnariKit-B9BZlgE9.js} +4 -5
- package/dist/{varesaKit-tl3QT31L.js → varesaKit-D5iKxzdo.js} +3 -4
- package/dist/{varkaKit-C8_HlTVH.js → varkaKit-CNpU_rb3.js} +1 -2
- package/dist/{ventiKit-FYuBhbPY.js → ventiKit-CM94zgZy.js} +3 -4
- package/dist/{vesnaKit-CmM1CVe6.js → vesnaKit-DtGBZlNW.js} +1 -2
- package/dist/{vodyanitsaKit-7WoQIUHv.js → vodyanitsaKit-BurO3Fqh.js} +1 -2
- package/dist/{wandererKit-CQM691sn.js → wandererKit-CW3sLw53.js} +1 -2
- package/dist/{wriothesleyKit-BtcN4_Bv.js → wriothesleyKit-CPwNVWnr.js} +6 -7
- package/dist/{xianglingKit-BQjcNu7M.js → xianglingKit-DAFhr2LW.js} +5 -6
- package/dist/{xianyunKit-D76nKV4f.js → xianyunKit-G4ateSub.js} +6 -7
- package/dist/{xiaoKit-DPd4UkOr.js → xiaoKit-CQljYrZS.js} +5 -6
- package/dist/{xilonenKit-BykTSGYe.js → xilonenKit-39u8vLuk.js} +4 -5
- package/dist/{xingqiuKit-BZz9JUTt.js → xingqiuKit-nURrQ7vt.js} +4 -5
- package/dist/{xinyanKit-DN0kCOuW.js → xinyanKit-DU0WpVms.js} +8 -9
- package/dist/{yaeMikoKit-hw1By6wO.js → yaeMikoKit-kSDqAFyn.js} +2 -3
- package/dist/{yanfeiKit-CnIuIJrr.js → yanfeiKit-Cst973qA.js} +7 -8
- package/dist/{yaoyaoKit-5ny2CT69.js → yaoyaoKit-6yjjf3np.js} +10 -11
- package/dist/{yelanKit-CQcriSs3.js → yelanKit-SSdzqMQa.js} +6 -7
- package/dist/{yoimiyaKit-BlohgeOv.js → yoimiyaKit-DqiQvgAt.js} +6 -7
- package/dist/{yunjinKit-BJEkLGZt.js → yunjinKit-lCP6TTRP.js} +9 -10
- package/dist/{zhongliKit-Cm3k5sX5.js → zhongliKit-CTjDWUoW.js} +5 -6
- package/dist/{zibaiKit-C0elIlw8.js → zibaiKit-CatYt9BG.js} +7 -8
- package/package.json +10 -10
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { N as Attribute, b as CHARACTER_TERMS_NOT_JAPANESE_REGEX, i as attributeLineSchema, n as Element, p as CHARACTER_PACK_MODEL_NAME_LANGUAGES, y as CHARACTER_TERMS_FILE_NAMES } from "./GameDataset-
|
|
2
|
-
import { l as DATA_FETCH_TIMEOUT_MS } from "./constants-
|
|
1
|
+
import { N as Attribute, b as CHARACTER_TERMS_NOT_JAPANESE_REGEX, i as attributeLineSchema, n as Element, p as CHARACTER_PACK_MODEL_NAME_LANGUAGES, y as CHARACTER_TERMS_FILE_NAMES } from "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { l as DATA_FETCH_TIMEOUT_MS } from "./constants-DWgLZz-I.js";
|
|
3
3
|
import { InvalidOperationError, Operation, createEvictingPromiseCache, getResult, takeOne } from "@esposter/shared";
|
|
4
4
|
import { GameLanguage } from "genshin-text";
|
|
5
5
|
import { z } from "zod";
|
|
6
|
-
|
|
6
|
+
// src/services/character/getCharacterNameKey.ts
|
|
7
7
|
const getCharacterNameKey = (name) => name.normalize("NFKC").toLowerCase().replaceAll(" ", "");
|
|
8
|
-
|
|
9
|
-
//#region src/services/character/chooseCharacterPackModel.ts
|
|
8
|
+
// src/services/character/chooseCharacterPackModel.ts
|
|
10
9
|
const chooseCharacterPackModel = async (folder, filePaths, readModelName, readCharacterNames) => {
|
|
11
10
|
const modelPaths = filePaths.filter((filePath) => filePath.toLowerCase().endsWith(".pmx"));
|
|
12
11
|
if (modelPaths.length === 0) throw new InvalidOperationError(Operation.Read, folder, "holds no .pmx model");
|
|
@@ -17,8 +16,7 @@ const chooseCharacterPackModel = async (folder, filePaths, readModelName, readCh
|
|
|
17
16
|
if (namedModelPaths.length !== 1) throw new InvalidOperationError(Operation.Read, folder, `holds several .pmx models, ${namedModelPaths.length} named as its character: ${modelPaths.join(", ")}`);
|
|
18
17
|
return takeOne(namedModelPaths);
|
|
19
18
|
};
|
|
20
|
-
|
|
21
|
-
//#region src/services/character/chooseCharacterTermsFile.ts
|
|
19
|
+
// src/services/character/chooseCharacterTermsFile.ts
|
|
22
20
|
const chooseCharacterTermsFile = (folder, filePaths) => {
|
|
23
21
|
const [termsFile] = filePaths.flatMap((filePath) => {
|
|
24
22
|
const parts = filePath.split("/");
|
|
@@ -34,8 +32,7 @@ const chooseCharacterTermsFile = (folder, filePaths) => {
|
|
|
34
32
|
if (termsFile === void 0) throw new InvalidOperationError(Operation.Read, folder, `holds no terms file, a .txt named ${CHARACTER_TERMS_FILE_NAMES.join(", ")}`);
|
|
35
33
|
return termsFile.filePath;
|
|
36
34
|
};
|
|
37
|
-
|
|
38
|
-
//#region src/models/character/CharacterTermsEncoding.ts
|
|
35
|
+
// src/models/character/CharacterTermsEncoding.ts
|
|
39
36
|
let CharacterTermsEncoding = /* @__PURE__ */ function(CharacterTermsEncoding) {
|
|
40
37
|
CharacterTermsEncoding["Gbk"] = "gbk";
|
|
41
38
|
CharacterTermsEncoding["ShiftJis"] = "shift_jis";
|
|
@@ -44,8 +41,7 @@ let CharacterTermsEncoding = /* @__PURE__ */ function(CharacterTermsEncoding) {
|
|
|
44
41
|
CharacterTermsEncoding["Utf16LittleEndian"] = "utf-16le";
|
|
45
42
|
return CharacterTermsEncoding;
|
|
46
43
|
}({});
|
|
47
|
-
|
|
48
|
-
//#region src/services/character/decodeCharacterTerms.ts
|
|
44
|
+
// src/services/character/decodeCharacterTerms.ts
|
|
49
45
|
const getEncodings = (bytes) => {
|
|
50
46
|
if (bytes[0] === 255 && bytes[1] === 254) return ["utf-16le"];
|
|
51
47
|
if (bytes[0] === 254 && bytes[1] === 255) return ["utf-16be"];
|
|
@@ -66,8 +62,7 @@ const decodeCharacterTerms = (bytes) => {
|
|
|
66
62
|
}
|
|
67
63
|
throw new InvalidOperationError(Operation.Read, "terms", `decode in none of ${encodings.join(", ")}`);
|
|
68
64
|
};
|
|
69
|
-
|
|
70
|
-
//#region src/models/character/BodyType.ts
|
|
65
|
+
// src/models/character/BodyType.ts
|
|
71
66
|
let BodyType = /* @__PURE__ */ function(BodyType) {
|
|
72
67
|
BodyType["MediumFemale"] = "BODY_GIRL";
|
|
73
68
|
BodyType["MediumMale"] = "BODY_BOY";
|
|
@@ -76,37 +71,31 @@ let BodyType = /* @__PURE__ */ function(BodyType) {
|
|
|
76
71
|
BodyType["TallMale"] = "BODY_MALE";
|
|
77
72
|
return BodyType;
|
|
78
73
|
}({});
|
|
79
|
-
|
|
80
|
-
//#region src/models/inventory/ItemCount.ts
|
|
74
|
+
// src/models/inventory/ItemCount.ts
|
|
81
75
|
const itemCountSchema = z.object({
|
|
82
76
|
count: z.int().positive(),
|
|
83
77
|
id: z.int().positive()
|
|
84
78
|
});
|
|
85
|
-
|
|
86
|
-
//#region src/models/character/AscensionCost.ts
|
|
79
|
+
// src/models/character/AscensionCost.ts
|
|
87
80
|
const ascensionCostSchema = z.object({
|
|
88
81
|
coinCost: z.int().nonnegative(),
|
|
89
82
|
costItems: z.array(itemCountSchema),
|
|
90
83
|
requiredPlayerLevel: z.int().nonnegative()
|
|
91
84
|
});
|
|
92
|
-
|
|
93
|
-
//#region src/models/character/AscensionPhase.ts
|
|
85
|
+
// src/models/character/AscensionPhase.ts
|
|
94
86
|
const ascensionPhaseSchema = z.object({
|
|
95
87
|
attributeLines: z.array(attributeLineSchema),
|
|
96
88
|
maxLevel: z.int().positive()
|
|
97
89
|
});
|
|
98
|
-
|
|
99
|
-
//#region src/models/character/CharacterAscensionPhase.ts
|
|
90
|
+
// src/models/character/CharacterAscensionPhase.ts
|
|
100
91
|
const characterAscensionPhaseSchema = ascensionPhaseSchema.extend(ascensionCostSchema.partial().shape);
|
|
101
|
-
|
|
102
|
-
//#region src/models/character/GrowAttribute.ts
|
|
92
|
+
// src/models/character/GrowAttribute.ts
|
|
103
93
|
const growAttributeSchema = z.object({
|
|
104
94
|
attribute: z.enum(Attribute),
|
|
105
95
|
base: z.number(),
|
|
106
96
|
curve: z.string().min(1)
|
|
107
97
|
});
|
|
108
|
-
|
|
109
|
-
//#region src/models/weapon/WeaponType.ts
|
|
98
|
+
// src/models/weapon/WeaponType.ts
|
|
110
99
|
let WeaponType = /* @__PURE__ */ function(WeaponType) {
|
|
111
100
|
WeaponType["Bow"] = "WEAPON_BOW";
|
|
112
101
|
WeaponType["Catalyst"] = "WEAPON_CATALYST";
|
|
@@ -115,8 +104,7 @@ let WeaponType = /* @__PURE__ */ function(WeaponType) {
|
|
|
115
104
|
WeaponType["Sword"] = "WEAPON_SWORD_ONE_HAND";
|
|
116
105
|
return WeaponType;
|
|
117
106
|
}({});
|
|
118
|
-
|
|
119
|
-
//#region src/models/character/CharacterData.ts
|
|
107
|
+
// src/models/character/CharacterData.ts
|
|
120
108
|
const characterDataSchema = z.object({
|
|
121
109
|
ascensionPhases: z.array(characterAscensionPhaseSchema).min(1),
|
|
122
110
|
attributeLines: z.array(attributeLineSchema),
|
|
@@ -130,11 +118,9 @@ const characterDataSchema = z.object({
|
|
|
130
118
|
regionId: z.string().min(1).optional(),
|
|
131
119
|
weaponType: z.enum(WeaponType)
|
|
132
120
|
});
|
|
133
|
-
|
|
134
|
-
//#region src/models/data/TextChunk.ts
|
|
121
|
+
// src/models/data/TextChunk.ts
|
|
135
122
|
const textChunkSchema = z.record(z.string(), z.string());
|
|
136
|
-
|
|
137
|
-
//#region src/services/data/gameDataLock.ts
|
|
123
|
+
// src/services/data/gameDataLock.ts
|
|
138
124
|
const gameDataLock = {
|
|
139
125
|
indexes: {
|
|
140
126
|
"bookBody/ChineseSimplified": "fbbf322bcbd2a9cb340d1ef19a832b2663c36e54cf19b38ab7c35f2e1806c94a",
|
|
@@ -628,32 +614,27 @@ const gameDataLock = {
|
|
|
628
614
|
"wishSchedule/eventBanners": "02ee447d725f24168a99e79e9272a8ba798325f536569eb1fa58c611afa636cd"
|
|
629
615
|
}
|
|
630
616
|
};
|
|
631
|
-
|
|
632
|
-
//#region src/services/shared/readFileResponse.ts
|
|
617
|
+
// src/services/shared/readFileResponse.ts
|
|
633
618
|
const readFileResponse = (async (url, timeoutMs, absentStatus) => {
|
|
634
619
|
const response = await fetch(url, { signal: AbortSignal.timeout(timeoutMs) });
|
|
635
620
|
if (response.status === absentStatus) return void 0;
|
|
636
621
|
if (!response.ok) throw new InvalidOperationError(Operation.Read, url, `HTTP ${response.status} ${response.statusText}`);
|
|
637
622
|
return response;
|
|
638
623
|
});
|
|
639
|
-
|
|
640
|
-
//#region src/services/shared/readJson.ts
|
|
624
|
+
// src/services/shared/readJson.ts
|
|
641
625
|
const readJson = async (url) => {
|
|
642
626
|
return await (await readFileResponse(url, DATA_FETCH_TIMEOUT_MS)).json();
|
|
643
627
|
};
|
|
644
|
-
|
|
645
|
-
//#region src/services/data/readGameDataObject.ts
|
|
628
|
+
// src/services/data/readGameDataObject.ts
|
|
646
629
|
const readCachedGameDataObject = createEvictingPromiseCache((url) => url, readJson);
|
|
647
630
|
const readGameDataObject = (gameDataBaseUrl, hash) => readCachedGameDataObject(`${gameDataBaseUrl}/${hash}.json`);
|
|
648
|
-
|
|
649
|
-
//#region src/services/data/readGameData.ts
|
|
631
|
+
// src/services/data/readGameData.ts
|
|
650
632
|
const readGameData = async (gameDataBaseUrl, key, schema) => {
|
|
651
633
|
const hash = gameDataLock.objects[key];
|
|
652
634
|
if (hash === void 0) throw new InvalidOperationError(Operation.Read, key, "is not in the game data lock");
|
|
653
635
|
return schema.parse(await readGameDataObject(gameDataBaseUrl, hash));
|
|
654
636
|
};
|
|
655
|
-
|
|
656
|
-
//#region src/services/data/createTextLoaderMap.ts
|
|
637
|
+
// src/services/data/createTextLoaderMap.ts
|
|
657
638
|
const createTextLoaderMap = (prefix) => {
|
|
658
639
|
const loadLanguage = (language) => (gameDataBaseUrl) => readGameData(gameDataBaseUrl, `${prefix}/${language}`, textChunkSchema);
|
|
659
640
|
return {
|
|
@@ -674,24 +655,20 @@ const createTextLoaderMap = (prefix) => {
|
|
|
674
655
|
[GameLanguage.Vietnamese]: loadLanguage(GameLanguage.Vietnamese)
|
|
675
656
|
};
|
|
676
657
|
};
|
|
677
|
-
|
|
678
|
-
//#region src/services/character/NameTextLoaderMap.ts
|
|
658
|
+
// src/services/character/NameTextLoaderMap.ts
|
|
679
659
|
const NameTextLoaderMap = createTextLoaderMap("nameText");
|
|
680
|
-
|
|
681
|
-
//#region src/services/character/readCharacterIdNamesMap.ts
|
|
660
|
+
// src/services/character/readCharacterIdNamesMap.ts
|
|
682
661
|
const readCharacterIdNamesMap = async (gameDataBaseUrl) => {
|
|
683
662
|
const [characters, ...nameTexts] = await Promise.all([readGameData(gameDataBaseUrl, "stats/characters", z.array(characterDataSchema)), ...CHARACTER_PACK_MODEL_NAME_LANGUAGES.map((language) => NameTextLoaderMap[language](gameDataBaseUrl))]);
|
|
684
663
|
return new Map(characters.map(({ id, nameTextId }) => [id, nameTexts.flatMap((nameText) => nameText[nameTextId] ?? [])]));
|
|
685
664
|
};
|
|
686
|
-
|
|
687
|
-
//#region src/services/character/readCharacterNames.ts
|
|
665
|
+
// src/services/character/readCharacterNames.ts
|
|
688
666
|
const readCharacterNames = async (gameDataBaseUrl, characterId) => {
|
|
689
667
|
const characterNames = (await readCharacterIdNamesMap(gameDataBaseUrl)).get(characterId);
|
|
690
668
|
if (characterNames === void 0) throw new InvalidOperationError(Operation.Read, String(characterId), "is no character of the game's tables");
|
|
691
669
|
return characterNames;
|
|
692
670
|
};
|
|
693
|
-
|
|
694
|
-
//#region src/services/character/getCharacterPackFilePath.ts
|
|
671
|
+
// src/services/character/getCharacterPackFilePath.ts
|
|
695
672
|
const getCharacterPackFilePath = (path) => {
|
|
696
673
|
const parts = [];
|
|
697
674
|
for (const part of path.split(/[/\\]/u)) if (part === "" || part === ".") continue;
|
|
@@ -699,8 +676,7 @@ const getCharacterPackFilePath = (path) => {
|
|
|
699
676
|
else parts.push(part);
|
|
700
677
|
return parts.join("/");
|
|
701
678
|
};
|
|
702
|
-
|
|
703
|
-
//#region src/services/character/resolveCharacterPackTextures.ts
|
|
679
|
+
// src/services/character/resolveCharacterPackTextures.ts
|
|
704
680
|
const getMatchKey = (path) => path.normalize("NFC").toLowerCase();
|
|
705
681
|
const resolveCharacterPackTextures = (texturePaths, filePaths, modelPath) => {
|
|
706
682
|
const modelFolder = modelPath.slice(0, modelPath.lastIndexOf("/") + 1);
|
|
@@ -716,8 +692,6 @@ const resolveCharacterPackTextures = (texturePaths, filePaths, modelPath) => {
|
|
|
716
692
|
path
|
|
717
693
|
})) };
|
|
718
694
|
};
|
|
719
|
-
|
|
720
|
-
//#region src/services/data/constants.ts
|
|
695
|
+
// src/services/data/constants.ts
|
|
721
696
|
const GAME_DATA_BLOB_PATH = "genshin/data";
|
|
722
|
-
//#endregion
|
|
723
697
|
export { CharacterTermsEncoding as C, getCharacterNameKey as E, decodeCharacterTerms as S, chooseCharacterPackModel as T, characterAscensionPhaseSchema as _, readCharacterIdNamesMap as a, itemCountSchema as b, readGameData as c, readFileResponse as d, gameDataLock as f, growAttributeSchema as g, WeaponType as h, readCharacterNames as i, readGameDataObject as l, characterDataSchema as m, resolveCharacterPackTextures as n, NameTextLoaderMap as o, textChunkSchema as p, getCharacterPackFilePath as r, createTextLoaderMap as s, GAME_DATA_BLOB_PATH as t, readJson as u, ascensionPhaseSchema as v, chooseCharacterTermsFile as w, BodyType as x, ascensionCostSchema as y };
|
package/dist/characterPack.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { B as chooseCharacterTermsFile, V as chooseCharacterPackModel, a as decodeCharacterTerms, h as CHARACTER_PACK_INDEX_PATH, i as readCharacterNames, n as resolveCharacterPackTextures, p as CHARACTER_MODEL_PATH, t as GAME_DATA_BLOB_PATH, w as CHARACTER_TERMS_PATH } from "./characterPack-
|
|
1
|
+
import { B as chooseCharacterTermsFile, V as chooseCharacterPackModel, a as decodeCharacterTerms, h as CHARACTER_PACK_INDEX_PATH, i as readCharacterNames, n as resolveCharacterPackTextures, p as CHARACTER_MODEL_PATH, t as GAME_DATA_BLOB_PATH, w as CHARACTER_TERMS_PATH } from "./characterPack-B3e_YsdJ.js";
|
|
2
2
|
export { CHARACTER_MODEL_PATH, CHARACTER_PACK_INDEX_PATH, CHARACTER_TERMS_PATH, GAME_DATA_BLOB_PATH, chooseCharacterPackModel, chooseCharacterTermsFile, decodeCharacterTerms, readCharacterNames, resolveCharacterPackTextures };
|
package/dist/characterPack.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { S as decodeCharacterTerms, T as chooseCharacterPackModel, i as readCharacterNames, n as resolveCharacterPackTextures, t as GAME_DATA_BLOB_PATH, w as chooseCharacterTermsFile } from "./characterPack-
|
|
2
|
-
import { f as CHARACTER_PACK_INDEX_PATH, u as CHARACTER_MODEL_PATH, x as CHARACTER_TERMS_PATH } from "./GameDataset-
|
|
1
|
+
import { S as decodeCharacterTerms, T as chooseCharacterPackModel, i as readCharacterNames, n as resolveCharacterPackTextures, t as GAME_DATA_BLOB_PATH, w as chooseCharacterTermsFile } from "./characterPack-DzYMqBNM.js";
|
|
2
|
+
import { f as CHARACTER_PACK_INDEX_PATH, u as CHARACTER_MODEL_PATH, x as CHARACTER_TERMS_PATH } from "./GameDataset-oS0Tc9KV.js";
|
|
3
3
|
export { CHARACTER_MODEL_PATH, CHARACTER_PACK_INDEX_PATH, CHARACTER_TERMS_PATH, GAME_DATA_BLOB_PATH, chooseCharacterPackModel, chooseCharacterTermsFile, decodeCharacterTerms, readCharacterNames, resolveCharacterPackTextures };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-
|
|
3
|
-
import "./KitEventKind-
|
|
4
|
-
import { B as SUMMON_LINGER_SECONDS } from "./constants-
|
|
5
|
-
import { t as castKitField } from "./castKitField-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-TuIRCNKb.js";
|
|
3
|
+
import "./KitEventKind-DinObjiq.js";
|
|
4
|
+
import { B as SUMMON_LINGER_SECONDS } from "./constants-BIXoNz1x.js";
|
|
5
|
+
import { t as castKitField } from "./castKitField-BhB1fy3l.js";
|
|
6
6
|
import { castKitSummon, changeKitMemberHealth, createAheadBody, createKitBody, scheduleKitTask, startKitCooldown } from "./index.js";
|
|
7
7
|
import { takeOne } from "@esposter/shared";
|
|
8
|
-
|
|
8
|
+
// src/services/kit/characters/charlotteKit.ts
|
|
9
9
|
const ASCENSION_4 = 4;
|
|
10
10
|
const ASCENSION_4_BONUS_PER_MEMBER = .05;
|
|
11
11
|
const FONTAINE_REGION_ID = "fontaine";
|
|
@@ -100,5 +100,4 @@ const createCharlotteKitBehaviour = ({ kit, readHit, readHits, readParameter, re
|
|
|
100
100
|
}
|
|
101
101
|
};
|
|
102
102
|
};
|
|
103
|
-
//#endregion
|
|
104
103
|
export { createCharlotteKitBehaviour };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { v as NIGHTSOUL_BLESSING_STATUS_ID } from "./constants-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { v as NIGHTSOUL_BLESSING_STATUS_ID } from "./constants-BIXoNz1x.js";
|
|
3
3
|
import { castKitSummon, changeKitSkillCooldown, checkHasKitStatus, createNightsoulBlessingStart, drainKitSprintNightsoulPoints, shuffleWithRandom } from "./index.js";
|
|
4
|
-
|
|
4
|
+
// src/services/kit/characters/chascaKit.ts
|
|
5
5
|
const NIGHTSOUL_POINTS = 80;
|
|
6
6
|
const NIGHTSOUL_DRAIN_PER_SECOND = 8;
|
|
7
7
|
const NIGHTSOUL_SPRINT_DRAIN = 13.3;
|
|
@@ -49,5 +49,4 @@ const createChascaKitBehaviour = ({ readHit, readSecondsList }) => {
|
|
|
49
49
|
}
|
|
50
50
|
};
|
|
51
51
|
};
|
|
52
|
-
//#endregion
|
|
53
52
|
export { createChascaKitBehaviour };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-
|
|
3
|
-
import { t as ReactionType } from "./ReactionType-
|
|
4
|
-
import "./KitEventKind-
|
|
5
|
-
import { t as addKitStatus } from "./addKitStatus-
|
|
6
|
-
import { t as removeKitEffects } from "./removeKitEffects
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-TuIRCNKb.js";
|
|
3
|
+
import { t as ReactionType } from "./ReactionType-BTiek5WA.js";
|
|
4
|
+
import "./KitEventKind-DinObjiq.js";
|
|
5
|
+
import { t as addKitStatus } from "./addKitStatus-CecgwPmO.js";
|
|
6
|
+
import { t as removeKitEffects } from "./removeKitEffects-Csap9Xyn.js";
|
|
7
7
|
import { buffKitMember, checkHasKitStatus, getKitMaxHealth } from "./index.js";
|
|
8
|
-
|
|
8
|
+
// src/services/kit/characters/chevreuseKit.ts
|
|
9
9
|
const OVERCHARGED_BALL_STATUS_ID = "chevreuse-overcharged-ball";
|
|
10
10
|
const ASCENSION_4 = 4;
|
|
11
11
|
const VERTICAL_FORCE_ATK_PER_1000_MAX_HEALTH = .01;
|
|
@@ -44,5 +44,4 @@ const createChevreuseKitBehaviour = () => ({
|
|
|
44
44
|
}
|
|
45
45
|
} }]
|
|
46
46
|
});
|
|
47
|
-
//#endregion
|
|
48
47
|
export { createChevreuseKitBehaviour };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { castKitSummon } from "./index.js";
|
|
2
2
|
import { takeOne } from "@esposter/shared";
|
|
3
|
-
|
|
3
|
+
// src/services/kit/characters/chioriKit.ts
|
|
4
4
|
const createDefenseShareBehaviour = (defenseShare) => ({ additiveBaseDamageBonus: ({ attributes }) => defenseShare * attributes.defense });
|
|
5
5
|
const castTamoto = (hits, secondsRemaining) => ({ activeCombatant: combatant, body, kitEffectState }) => {
|
|
6
6
|
castKitSummon(kitEffectState, body, combatant, hits, {
|
|
@@ -27,5 +27,4 @@ const createChioriKitBehaviour = ({ readHits, readParameter, readSecondsList })
|
|
|
27
27
|
}]
|
|
28
28
|
};
|
|
29
29
|
};
|
|
30
|
-
//#endregion
|
|
31
30
|
export { createChioriKitBehaviour };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-
|
|
3
|
-
import { t as getPartyMember } from "./getPartyMember-
|
|
4
|
-
import "./KitEventKind-
|
|
5
|
-
import { t as addKitEffect } from "./addKitEffect-
|
|
6
|
-
import { m as MELEE_WEAPON_TYPES } from "./constants-
|
|
7
|
-
import { t as castKitField } from "./castKitField-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-DUbIxe6i.js";
|
|
3
|
+
import { t as getPartyMember } from "./getPartyMember-BAb9wUiz.js";
|
|
4
|
+
import "./KitEventKind-DinObjiq.js";
|
|
5
|
+
import { t as addKitEffect } from "./addKitEffect-DEhZUuxo.js";
|
|
6
|
+
import { m as MELEE_WEAPON_TYPES } from "./constants-BIXoNz1x.js";
|
|
7
|
+
import { t as castKitField } from "./castKitField-BhB1fy3l.js";
|
|
8
8
|
import { castKitSummon, createKitBody, selectAttackTarget, startKitCooldown } from "./index.js";
|
|
9
9
|
import { takeOne } from "@esposter/shared";
|
|
10
|
-
|
|
10
|
+
// src/services/kit/characters/chongyunKit.ts
|
|
11
11
|
const FIELD_RADIUS = 8;
|
|
12
12
|
const FIELD_OFFSET_METRES = 1.5;
|
|
13
13
|
const FIELD_TICK_SECONDS = 1;
|
|
@@ -96,5 +96,4 @@ const createChongyunKitBehaviour = ({ kit, readHit, readHits, readParameter }) =
|
|
|
96
96
|
} }
|
|
97
97
|
};
|
|
98
98
|
};
|
|
99
|
-
//#endregion
|
|
100
99
|
export { createChongyunKitBehaviour };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { y as NIGHTSOUL_POINTS_ID } from "./constants-
|
|
2
|
-
import { t as castKitField } from "./castKitField-
|
|
3
|
-
import { t as countKitResource } from "./countKitResource-
|
|
4
|
-
import { t as removeKitEffects } from "./removeKitEffects
|
|
1
|
+
import { y as NIGHTSOUL_POINTS_ID } from "./constants-BIXoNz1x.js";
|
|
2
|
+
import { t as castKitField } from "./castKitField-BhB1fy3l.js";
|
|
3
|
+
import { t as countKitResource } from "./countKitResource-CPve-dw2.js";
|
|
4
|
+
import { t as removeKitEffects } from "./removeKitEffects-Csap9Xyn.js";
|
|
5
5
|
import { checkHasKitStatus, checkIsInAttackArea, drainKitNightsoulPoints, enterKitNightsoulBlessing, generateKitNightsoulPoints, queueKitPassiveHit, toKitSeconds } from "./index.js";
|
|
6
|
-
|
|
6
|
+
// src/services/kit/characters/citlaliKit.ts
|
|
7
7
|
const NIGHTSOUL_MAXIMUM = 100;
|
|
8
8
|
const NIGHTSOUL_BURST_POINTS = 24;
|
|
9
9
|
const NIGHTSOUL_SKILL_POINTS = 24;
|
|
@@ -59,5 +59,4 @@ const createCitlaliKitBehaviour = ({ readHit }) => {
|
|
|
59
59
|
} }
|
|
60
60
|
};
|
|
61
61
|
};
|
|
62
|
-
//#endregion
|
|
63
62
|
export { createCitlaliKitBehaviour };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as getPartyMember } from "./getPartyMember-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as getPartyMember } from "./getPartyMember-BAb9wUiz.js";
|
|
3
3
|
import { buffKitMember, castKitSummon, changeKitMemberHealth, enterKitStance, getKitMaxHealth, grantPartyMemberBondOfLife } from "./index.js";
|
|
4
|
-
|
|
4
|
+
// src/services/kit/characters/clorindeKit.ts
|
|
5
5
|
const CONSTELLATION_6 = 6;
|
|
6
6
|
const HUNTERS_VIGIL_CRIT_DAMAGE = .7;
|
|
7
7
|
const HUNTERS_VIGIL_CRIT_RATE = .1;
|
|
@@ -58,5 +58,4 @@ const createClorindeKitBehaviour = ({ readHit, readHits, readParameter, readStan
|
|
|
58
58
|
enterKitStance(kitEffectState, combatant, nightVigil, nightVigilSeconds, { isEndedOnSwap: true });
|
|
59
59
|
} } };
|
|
60
60
|
};
|
|
61
|
-
//#endregion
|
|
62
61
|
export { createClorindeKitBehaviour };
|
|
@@ -1,34 +1,31 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-
|
|
3
|
-
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-
|
|
4
|
-
import "./KitEventKind-
|
|
5
|
-
import { t as emitKitEvent } from "./emitKitEvent-
|
|
6
|
-
import { t as getActiveCharacterId } from "./getActiveCharacterId-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-DUbIxe6i.js";
|
|
3
|
+
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-TuIRCNKb.js";
|
|
4
|
+
import "./KitEventKind-DinObjiq.js";
|
|
5
|
+
import { t as emitKitEvent } from "./emitKitEvent-Cb-ZHu50.js";
|
|
6
|
+
import { t as getActiveCharacterId } from "./getActiveCharacterId-D9TtVSWj.js";
|
|
7
7
|
import "vue";
|
|
8
|
-
|
|
8
|
+
// src/models/shared/EnergyDropKind.ts
|
|
9
9
|
let EnergyDropKind = /* @__PURE__ */ function(EnergyDropKind) {
|
|
10
10
|
EnergyDropKind["Orb"] = "Orb";
|
|
11
11
|
EnergyDropKind["Particle"] = "Particle";
|
|
12
12
|
return EnergyDropKind;
|
|
13
13
|
}({});
|
|
14
|
-
|
|
15
|
-
//#region src/services/combat/energy/constants.ts
|
|
14
|
+
// src/services/combat/energy/constants.ts
|
|
16
15
|
const SAME_ELEMENT_PARTICLE_ENERGY = 3;
|
|
17
16
|
const OTHER_ELEMENT_PARTICLE_ENERGY = 1;
|
|
18
17
|
const CLEAR_PARTICLE_ENERGY = 2;
|
|
19
18
|
const ORB_PARTICLE_COUNT = 3;
|
|
20
19
|
const INACTIVE_ENERGY_LOSS_PER_PARTY_MEMBER = .1;
|
|
21
20
|
const ATTACK_ENERGY = 1;
|
|
22
|
-
|
|
23
|
-
//#region src/services/combat/energy/getEnergyGain.ts
|
|
21
|
+
// src/services/combat/energy/getEnergyGain.ts
|
|
24
22
|
const getEnergyGain = (energyDropKind, { element, energyRecharge, isActive, partySize }, dropElement) => {
|
|
25
23
|
const particleEnergy = dropElement ? dropElement === element ? 3 : 1 : 2;
|
|
26
24
|
const particleCount = energyDropKind === "Orb" ? 3 : 1;
|
|
27
25
|
const share = isActive ? 1 : 1 - INACTIVE_ENERGY_LOSS_PER_PARTY_MEMBER * partySize;
|
|
28
26
|
return particleEnergy * particleCount * share * energyRecharge;
|
|
29
27
|
};
|
|
30
|
-
|
|
31
|
-
//#region src/services/party/gainPartyEnergy.ts
|
|
28
|
+
// src/services/party/gainPartyEnergy.ts
|
|
32
29
|
const gainPartyEnergy = (party, { count, energyDropKind }, dropElement, characterIdCombatantMap) => {
|
|
33
30
|
const characterIds = getDeployedCharacterIds(party);
|
|
34
31
|
const activeCharacterId = getActiveCharacterId(party);
|
|
@@ -44,8 +41,7 @@ const gainPartyEnergy = (party, { count, energyDropKind }, dropElement, characte
|
|
|
44
41
|
gainPartyMemberEnergy(party, combatant, count * getEnergyGain(energyDropKind, recipient, dropElement));
|
|
45
42
|
}
|
|
46
43
|
};
|
|
47
|
-
|
|
48
|
-
//#region src/services/kit/collectKitEnergyDrops.ts
|
|
44
|
+
// src/services/kit/collectKitEnergyDrops.ts
|
|
49
45
|
const collectKitEnergyDrops = (energyDrops, element, context) => {
|
|
50
46
|
const { characterIdCombatantMap, party } = context;
|
|
51
47
|
const characterId = getActiveCharacterId(party);
|
|
@@ -62,5 +58,4 @@ const collectKitEnergyDrops = (energyDrops, element, context) => {
|
|
|
62
58
|
}, context);
|
|
63
59
|
}
|
|
64
60
|
};
|
|
65
|
-
//#endregion
|
|
66
61
|
export { CLEAR_PARTICLE_ENERGY as a, OTHER_ELEMENT_PARTICLE_ENERGY as c, ATTACK_ENERGY as i, SAME_ELEMENT_PARTICLE_ENERGY as l, gainPartyEnergy as n, INACTIVE_ENERGY_LOSS_PER_PARTY_MEMBER as o, getEnergyGain as r, ORB_PARTICLE_COUNT as s, collectKitEnergyDrops as t, EnergyDropKind as u };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-
|
|
3
|
-
import { U as UNBOUNDED_FIELD_RADIUS } from "./constants-
|
|
4
|
-
import { t as castKitField } from "./castKitField-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-TuIRCNKb.js";
|
|
3
|
+
import { U as UNBOUNDED_FIELD_RADIUS } from "./constants-BIXoNz1x.js";
|
|
4
|
+
import { t as castKitField } from "./castKitField-BhB1fy3l.js";
|
|
5
5
|
import { buffKitMember, castKitSummon } from "./index.js";
|
|
6
6
|
import { takeOne } from "@esposter/shared";
|
|
7
|
-
|
|
7
|
+
// src/services/kit/characters/colleiKit.ts
|
|
8
8
|
const CONSTELLATION_4 = 4;
|
|
9
9
|
const CONSTELLATION_1 = 1;
|
|
10
10
|
const OFF_FIELD_ENERGY_RECHARGE = .2;
|
|
@@ -48,5 +48,4 @@ const createColleiKitBehaviour = ({ kit, readHit, readSeconds }) => {
|
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
50
|
};
|
|
51
|
-
//#endregion
|
|
52
51
|
export { createColleiKitBehaviour };
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import "./GameDataset-
|
|
2
|
-
import "./save-
|
|
3
|
-
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-
|
|
4
|
-
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-
|
|
5
|
-
import "./ReactionType-
|
|
6
|
-
import "./KitEventKind-
|
|
7
|
-
import { t as findKitStatus } from "./findKitStatus-
|
|
8
|
-
import { t as addKitStatus } from "./addKitStatus-
|
|
9
|
-
import { t as castKitField } from "./castKitField-
|
|
1
|
+
import "./GameDataset-oS0Tc9KV.js";
|
|
2
|
+
import "./save-W-sjOoN_.js";
|
|
3
|
+
import { t as gainPartyMemberEnergy } from "./gainPartyMemberEnergy-DUbIxe6i.js";
|
|
4
|
+
import { t as getDeployedCharacterIds } from "./getDeployedCharacterIds-TuIRCNKb.js";
|
|
5
|
+
import "./ReactionType-BTiek5WA.js";
|
|
6
|
+
import "./KitEventKind-DinObjiq.js";
|
|
7
|
+
import { t as findKitStatus } from "./findKitStatus-Dj_zauGj.js";
|
|
8
|
+
import { t as addKitStatus } from "./addKitStatus-CecgwPmO.js";
|
|
9
|
+
import { t as castKitField } from "./castKitField-BhB1fy3l.js";
|
|
10
10
|
import { addKitHold, buffKitMember, castKitShield, castKitSummon, checkIsKitHold, checkIsKitStatusActive, checkIsLunarReactionType, countDew, countKitHolds, createKitBody, getKitHitElement, getKitMaxHealth, getMoonsignLevel, spendDew, startKitCooldown, toKitSeconds } from "./index.js";
|
|
11
11
|
import { takeOne } from "@esposter/shared";
|
|
12
|
-
|
|
12
|
+
// src/services/kit/characters/columbinaBenediction.ts
|
|
13
13
|
const BENEDICTION_BASE_DAMAGE_BONUS_PER_MAX_HEALTH = .002 / 1e3;
|
|
14
14
|
const BENEDICTION_MAXIMUM_BASE_DAMAGE_BONUS = .07;
|
|
15
15
|
const getBenedictionBaseDamageBonus = (maxHealth) => Math.min(maxHealth * BENEDICTION_BASE_DAMAGE_BONUS_PER_MAX_HEALTH, BENEDICTION_MAXIMUM_BASE_DAMAGE_BONUS);
|
|
16
|
-
|
|
17
|
-
//#region src/services/kit/characters/columbinaKit.ts
|
|
16
|
+
// src/services/kit/characters/columbinaKit.ts
|
|
18
17
|
const COLUMBINA_CHARACTER_ID = 10000125;
|
|
19
18
|
const COLUMBINA_SKILL_FIELD_ID = "columbina-gravity-interference";
|
|
20
19
|
const ASCENDANT_GLEAM_SKILL_DOT_RADIUS = 6;
|
|
@@ -277,5 +276,4 @@ const createColumbinaKitBehaviour = ({ kit, readHit, readParameter, readSeconds
|
|
|
277
276
|
} }
|
|
278
277
|
};
|
|
279
278
|
};
|
|
280
|
-
//#endregion
|
|
281
279
|
export { createColumbinaKitBehaviour };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
// src/services/kit/computeFacingAngle.ts
|
|
2
2
|
const computeFacingAngle = (position, facing, point) => {
|
|
3
3
|
const bearing = Math.atan2(position.x - point.x, position.z - point.z);
|
|
4
4
|
const difference = Math.abs(bearing - facing) % (2 * Math.PI);
|
|
5
5
|
return Math.min(difference, 2 * Math.PI - difference);
|
|
6
6
|
};
|
|
7
|
-
//#endregion
|
|
8
7
|
export { computeFacingAngle as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./EnemyState-
|
|
2
|
-
|
|
1
|
+
import "./EnemyState-BdsrVDVv.js";
|
|
2
|
+
// src/services/enemy/constants.ts
|
|
3
3
|
const ENEMY_STEP_SECONDS = 1 / 60;
|
|
4
4
|
const ENEMY_AGGRO_RANGE = 12;
|
|
5
5
|
const ENEMY_ALERT_SECONDS = 1;
|
|
@@ -183,5 +183,4 @@ const ENEMY_HIT_TINT_SECONDS = .15;
|
|
|
183
183
|
const ENEMY_HIT_FLASH_SECONDS = .1;
|
|
184
184
|
const ENEMY_HIT_FLASH_RADIUS = .3;
|
|
185
185
|
const HIT_TINT_COLOR = 16777215;
|
|
186
|
-
//#endregion
|
|
187
186
|
export { ENEMY_WALK_SPEED as A, ENEMY_LEVEL_BAND_COUNT as C, ENEMY_RUN_SPEED as D, ENEMY_RECOVERY_SECONDS as E, ENGAGED_ENEMY_STATES as M, HIT_TINT_COLOR as N, ENEMY_STAGGER_SECONDS as O, ENEMY_LEASH_DISTANCE as S, ENEMY_MATERIAL_TIER_SHARES as T, ENEMY_DROP_OFFSET as _, ELITE_ENEMY_CHARACTER_EXPERIENCES as a, ENEMY_HIT_TINT_SECONDS as b, ENEMY_ALERT_SECONDS as c, ENEMY_ATTACK_RANGE as d, ENEMY_ATTACK_REACH as f, ENEMY_DEATH_SECONDS as g, ENEMY_CAPSULE_RADIUS as h, COMMON_ENEMY_RESPAWN_DURATION as i, ENEMY_WINDUP_SECONDS as j, ENEMY_STEP_SECONDS as k, ENEMY_ARRIVAL_DISTANCE as l, ENEMY_CAPSULE_HEIGHT as m, COMMON_ENEMY_CHARACTER_EXPERIENCES as n, ELITE_ENEMY_MORA_SHARES as o, ENEMY_CAPACITY as p, COMMON_ENEMY_MORA_SHARES as r, ENEMY_AGGRO_RANGE as s, COMBAT_CLEAR_SECONDS as t, ENEMY_ATTACK_COOLDOWN_SECONDS as u, ENEMY_HIT_FLASH_RADIUS as v, ENEMY_LEVEL_BAND_SIZE as w, ENEMY_LAUNCHED_STATUS_ID as x, ENEMY_HIT_FLASH_SECONDS as y };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import "./characterPack-
|
|
2
|
-
import { t as ReactionType } from "./ReactionType-
|
|
3
|
-
import "./constants-
|
|
1
|
+
import "./characterPack-DzYMqBNM.js";
|
|
2
|
+
import { t as ReactionType } from "./ReactionType-BTiek5WA.js";
|
|
3
|
+
import "./constants-jHIdcxxW.js";
|
|
4
4
|
import { LocomotionState } from "genshin-engine";
|
|
5
|
-
|
|
5
|
+
// src/services/kit/constants.ts
|
|
6
6
|
const STRIKE_TARGETING_AREA = Object.freeze({
|
|
7
7
|
angle: 2 * Math.PI,
|
|
8
8
|
height: 6,
|
|
@@ -70,5 +70,4 @@ const SOURCEWATER_DROPLET_SECONDS = 878 / 60;
|
|
|
70
70
|
const HEXEREI_SECRET_RITE_MINIMUM = 2;
|
|
71
71
|
const RESCUE_ESSENTIALS_CAP = 150;
|
|
72
72
|
const RESCUE_ESSENTIALS_LUNAR_CHARGED_DAMAGE_BONUS = .002;
|
|
73
|
-
//#endregion
|
|
74
73
|
export { RADIANCE_STELLAR_CONDUCT_STATUS_ID as A, SUMMON_LINGER_SECONDS as B, POLESTAR_BUFF_SOURCE as C, POLESTAR_FIELD_TICK_SECONDS as D, POLESTAR_FIELD_SECONDS as E, SOURCEWATER_DROPLET_SECONDS as F, TARGET_DISTANCE_WEIGHT as H, STELLAR_VORTEX_LEVEL_ONE_RADIUS as I, STELLAR_VORTEX_LEVEL_TWO_RADIUS as L, RESCUE_ESSENTIALS_LUNAR_CHARGED_DAMAGE_BONUS as M, SKILL_TARGETING_AREA as N, POLESTAR_PHYSICAL_RES_REDUCTION as O, SOURCEWATER_DROPLET_FIELD_ID as P, STELLAR_VORTEX_MAX_STACKS as R, PLUNGE_COLLISION_SECONDS as S, POLESTAR_FIELD_RADIUS as T, UNBOUNDED_FIELD_RADIUS as U, TARGET_ANGLE_WEIGHT as V, NIGHTINGALE_SONG_STATUS_ID as _, ELECTRO_REACTION_TYPES as a, NORMAL_ATTACK_RESET_SECONDS as b, HAUNTED_NIGHT_STATUS_ID as c, KIT_CHARGE_SKIP_ID as d, KIT_SKILL_CHARGE_ID as f, NIGHTINGALE_SONG_EXTRA_STATUS_ID as g, MOVEMENT_LOCOMOTION_STATES as h, CHARGED_ATTACK_HOLD_SECONDS as i, RESCUE_ESSENTIALS_CAP as j, POLESTAR_SHRED_STATUS_ID as k, HEXEREI_SECRET_RITE_MINIMUM as l, MELEE_WEAPON_TYPES as m, ALTITUDE_COEFFICIENT as n, ENEMY_STRIKE_GAUGE as o, KIT_SWAP_LOCK_ID as p, ALTITUDE_LIMIT as r, ENEMY_STRIKE_TALENT_MULTIPLIER as s, AIRBORNE_LOCOMOTION_STATES as t, HIGH_PLUNGE_MIN_HEIGHT as u, NIGHTSOUL_BLESSING_STATUS_ID as v, POLESTAR_FIELD_ID as w, ON_FOOT_LOCOMOTION_STATES as x, NIGHTSOUL_POINTS_ID as y, STRIKE_TARGETING_AREA as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/services/constants.ts
|
|
2
2
|
const TILE_SELECTION_CAPACITY = 512;
|
|
3
3
|
const TERRAIN_WORKER_COUNT = 2;
|
|
4
4
|
const MAX_PENDING_TILE_COUNT = 8;
|
|
@@ -42,5 +42,4 @@ const CASTER_REDRAW_ANGLE = .1;
|
|
|
42
42
|
const CHARACTER_PLACEHOLDER_COLOR = 15262420;
|
|
43
43
|
const UNDRAWN_EFFECTS_MESH_REGEX = /^Eff_/u;
|
|
44
44
|
const UNDRAWN_STAGE_PLANES_MESH_REGEX = /^Stages_(?:DecalCube|Plane)_/u;
|
|
45
|
-
//#endregion
|
|
46
45
|
export { WORLD_RANDOM_SEED as A, TERRAIN_WORKER_COUNT as C, UNDRAWN_EFFECTS_MESH_REGEX as D, TUNING_TINT_RANGE as E, UNDRAWN_STAGE_PLANES_MESH_REGEX as O, SHADOW_FRAME_PRIORITY as S, TUNING_TINT_CHANNELS as T, MAX_PENDING_TILE_COUNT as _, CASTER_REDRAW_DISTANCE as a, REGION_REACH as b, DATA_FETCH_RETRY_MS as c, FINEST_TILE_LEVEL as d, FIXED_STEP_SECONDS as f, GRASS_RECAPTURE_DISTANCE as g, GRASS_CAPTURE_SIZE as h, CASTER_REDRAW_ANGLE as i, WATER_SURFACE_SIZE as k, DATA_FETCH_TIMEOUT_MS as l, GRASS_CAPTURE_RESOLUTION as m, BODY_SHADOW_CASCADES as n, CHARACTER_PLACEHOLDER_COLOR as o, GRASS_BLADE_SEGMENT_COUNT as p, CAMERA_FRAME_PRIORITY as r, CLOUD_DRIFT_PER_WIND as s, AREA_WEATHER_CHANGE_SECONDS as t, ENEMY_POSE_LENGTH as u, ORIGIN_SHIFT_STEP as v, TILE_SELECTION_CAPACITY as w, REGION_RECHECK_DISTANCE as x, ORIGIN_SHIFT_THRESHOLD as y };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { MmdBoneName } from "genshin-engine";
|
|
2
|
-
|
|
2
|
+
// src/services/character/avatar/constants.ts
|
|
3
3
|
const AVATAR_COMPONENT = "playergirl";
|
|
4
4
|
const AVATAR_TEXTURE_FOLDER = "Texture2D";
|
|
5
5
|
const AVATAR_TEXTURE_SLOTS = [
|
|
@@ -45,5 +45,4 @@ const AVATAR_HUMANOID_MMD_NAME_MAP = {
|
|
|
45
45
|
RightUpperLeg: MmdBoneName.RightLeg,
|
|
46
46
|
Spine: MmdBoneName.Upper
|
|
47
47
|
};
|
|
48
|
-
//#endregion
|
|
49
48
|
export { AVATAR_TEXTURE_SLOTS as i, AVATAR_HUMANOID_MMD_NAME_MAP as n, AVATAR_TEXTURE_FOLDER as r, AVATAR_COMPONENT as t };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as findKitStatus } from "./findKitStatus-
|
|
2
|
-
import { t as addKitStatus } from "./addKitStatus-
|
|
3
|
-
import { t as countKitResource } from "./countKitResource-
|
|
4
|
-
import { t as spendKitResource } from "./spendKitResource-
|
|
5
|
-
|
|
1
|
+
import { t as findKitStatus } from "./findKitStatus-Dj_zauGj.js";
|
|
2
|
+
import { t as addKitStatus } from "./addKitStatus-CecgwPmO.js";
|
|
3
|
+
import { t as countKitResource } from "./countKitResource-CPve-dw2.js";
|
|
4
|
+
import { t as spendKitResource } from "./spendKitResource-CC5kZDgu.js";
|
|
5
|
+
// src/services/kit/effects/consumeKitResource.ts
|
|
6
6
|
const consumeKitResource = (kitEffectState, characterId, id, amount) => {
|
|
7
7
|
const status = findKitStatus(kitEffectState.effects, characterId, id);
|
|
8
8
|
const held = countKitResource(kitEffectState.effects, characterId, id);
|
|
@@ -14,5 +14,4 @@ const consumeKitResource = (kitEffectState, characterId, id, amount) => {
|
|
|
14
14
|
});
|
|
15
15
|
return true;
|
|
16
16
|
};
|
|
17
|
-
//#endregion
|
|
18
17
|
export { consumeKitResource as t };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { t as findKitStatus } from "./findKitStatus-
|
|
2
|
-
|
|
1
|
+
import { t as findKitStatus } from "./findKitStatus-Dj_zauGj.js";
|
|
2
|
+
// src/services/kit/effects/countKitResource.ts
|
|
3
3
|
const countKitResource = (effects, characterId, id) => findKitStatus(effects, characterId, id)?.stacks ?? 0;
|
|
4
|
-
//#endregion
|
|
5
4
|
export { countKitResource as t };
|