koishi-plugin-ggcevo-game 1.4.50 → 1.4.52
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/lib/boss/BattleEffectProcessor.d.ts +71 -0
- package/lib/boss/passive.d.ts +24 -0
- package/lib/database.d.ts +1 -0
- package/lib/index.js +434 -59
- package/lib/weapons.d.ts +45 -1
- package/package.json +1 -1
|
@@ -7,6 +7,7 @@ export interface BattleStatistics {
|
|
|
7
7
|
skillsAdded: string[];
|
|
8
8
|
skillsRemoved: string[];
|
|
9
9
|
skillStacksChanged: number;
|
|
10
|
+
skillStatusChanged: number;
|
|
10
11
|
statusLayersChanged: number;
|
|
11
12
|
radiationLayersChange: number;
|
|
12
13
|
coldLayersChange: number;
|
|
@@ -412,6 +413,76 @@ export declare const BattleEffectProcessor: {
|
|
|
412
413
|
} | null;
|
|
413
414
|
reductionSuccess: boolean;
|
|
414
415
|
} | null;
|
|
416
|
+
/**
|
|
417
|
+
* 毒性唾液处理(叠层减伤)
|
|
418
|
+
* 效果:受击时增加1层「毒性唾液」(上限20层),每层提供5%减伤
|
|
419
|
+
*/
|
|
420
|
+
handleToxicSaliva: (targetBoss: any) => {
|
|
421
|
+
nerfMultiplier: number;
|
|
422
|
+
messages: string[];
|
|
423
|
+
targetUpdates: {
|
|
424
|
+
name: string;
|
|
425
|
+
updates: Partial<BattleStatistics>;
|
|
426
|
+
} | null;
|
|
427
|
+
} | null;
|
|
428
|
+
/**
|
|
429
|
+
* 剧毒狂暴处理(低生命额外减伤和叠层)
|
|
430
|
+
* 效果:生命值≤50%时,受击额外获得1层「毒性唾液」且受到的伤害降低50%
|
|
431
|
+
*/
|
|
432
|
+
handleToxicFrenzy: (targetBoss: any) => {
|
|
433
|
+
nerfMultiplier: number;
|
|
434
|
+
messages: string[];
|
|
435
|
+
targetUpdates: {
|
|
436
|
+
name: string;
|
|
437
|
+
updates: Partial<BattleStatistics>;
|
|
438
|
+
} | null;
|
|
439
|
+
} | null;
|
|
440
|
+
/**
|
|
441
|
+
* 毒气波处理(概率获得多层层数)
|
|
442
|
+
* 效果:受击时有20%概率额外获得5层「毒性唾液」
|
|
443
|
+
*/
|
|
444
|
+
handleToxicGasWave: (targetBoss: any) => {
|
|
445
|
+
messages: string[];
|
|
446
|
+
targetUpdates: {
|
|
447
|
+
name: string;
|
|
448
|
+
updates: Partial<BattleStatistics>;
|
|
449
|
+
} | null;
|
|
450
|
+
} | null;
|
|
451
|
+
/**
|
|
452
|
+
* 淬毒撕咬处理(层数治疗效果)
|
|
453
|
+
* 效果:根据毒性唾液层数,在受击时回复生命值
|
|
454
|
+
*/
|
|
455
|
+
handlePoisonedBite: (targetBoss: any) => {
|
|
456
|
+
messages: string[];
|
|
457
|
+
targetUpdates: {
|
|
458
|
+
name: string;
|
|
459
|
+
updates: Partial<BattleStatistics>;
|
|
460
|
+
} | null;
|
|
461
|
+
} | null;
|
|
462
|
+
/**
|
|
463
|
+
* 酸蚀池处理(循环抗性)
|
|
464
|
+
* 效果:受击时按顺序循环选择三种酸池(1->2->3->1),提供特定武器类型减伤和增伤
|
|
465
|
+
*/
|
|
466
|
+
handleAcidPool: (targetBoss: any, weaponData: any, enhanced: boolean) => {
|
|
467
|
+
nerfMultiplier: number;
|
|
468
|
+
buffMultiplier: number;
|
|
469
|
+
messages: string[];
|
|
470
|
+
targetUpdates: {
|
|
471
|
+
name: string;
|
|
472
|
+
updates: Partial<BattleStatistics>;
|
|
473
|
+
} | null;
|
|
474
|
+
};
|
|
475
|
+
/**
|
|
476
|
+
* 剧毒突袭处理
|
|
477
|
+
* 效果:毒性唾液≥20层时,消耗所有层数并使强化下5次触发的「酸蚀池」
|
|
478
|
+
*/
|
|
479
|
+
handleToxicAssault: (targetBoss: any) => {
|
|
480
|
+
messages: string[];
|
|
481
|
+
targetUpdates: {
|
|
482
|
+
name: string;
|
|
483
|
+
updates: Partial<BattleStatistics>;
|
|
484
|
+
} | null;
|
|
485
|
+
} | null;
|
|
415
486
|
};
|
|
416
487
|
/**
|
|
417
488
|
* 统一处理所有被动效果(包含伤害修正、免疫检查、状态更新等)
|
package/lib/boss/passive.d.ts
CHANGED
|
@@ -203,4 +203,28 @@ export declare const passiveConfig: {
|
|
|
203
203
|
type: string;
|
|
204
204
|
description: string;
|
|
205
205
|
};
|
|
206
|
+
毒性唾液: {
|
|
207
|
+
type: string;
|
|
208
|
+
description: string;
|
|
209
|
+
};
|
|
210
|
+
剧毒狂暴: {
|
|
211
|
+
type: string;
|
|
212
|
+
description: string;
|
|
213
|
+
};
|
|
214
|
+
毒气波: {
|
|
215
|
+
type: string;
|
|
216
|
+
description: string;
|
|
217
|
+
};
|
|
218
|
+
淬毒撕咬: {
|
|
219
|
+
type: string;
|
|
220
|
+
description: string;
|
|
221
|
+
};
|
|
222
|
+
酸蚀池: {
|
|
223
|
+
type: string;
|
|
224
|
+
description: string;
|
|
225
|
+
};
|
|
226
|
+
剧毒突袭: {
|
|
227
|
+
type: string;
|
|
228
|
+
description: string;
|
|
229
|
+
};
|
|
206
230
|
};
|
package/lib/database.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -235,7 +235,7 @@ var weaponConfig = {
|
|
|
235
235
|
id: 14,
|
|
236
236
|
type: "能量武器",
|
|
237
237
|
category: "能量武器",
|
|
238
|
-
damage:
|
|
238
|
+
damage: 35,
|
|
239
239
|
description: "一种原型能量武器,能够发射强大的脉冲",
|
|
240
240
|
specialeffect: "攻击使目标的技能层数减少2层",
|
|
241
241
|
price: 1500,
|
|
@@ -243,6 +243,50 @@ var weaponConfig = {
|
|
|
243
243
|
isantiair: true,
|
|
244
244
|
tagEffects: {}
|
|
245
245
|
},
|
|
246
|
+
"MK79榴弹发射器": {
|
|
247
|
+
id: 15,
|
|
248
|
+
type: "热能武器",
|
|
249
|
+
category: "热能武器",
|
|
250
|
+
damage: 50,
|
|
251
|
+
description: "发射非常坚固的专属榴弹,对具有坚固防御的目标几乎没有效果",
|
|
252
|
+
specialeffect: "",
|
|
253
|
+
price: 2e3,
|
|
254
|
+
redCrystalCost: 20,
|
|
255
|
+
isantiair: true,
|
|
256
|
+
tagEffects: {
|
|
257
|
+
"重甲": 1.5,
|
|
258
|
+
"轻甲": 0.8,
|
|
259
|
+
"护盾": 0.8
|
|
260
|
+
}
|
|
261
|
+
},
|
|
262
|
+
"EC13电浆步枪": {
|
|
263
|
+
id: 16,
|
|
264
|
+
type: "能量武器",
|
|
265
|
+
category: "能量武器",
|
|
266
|
+
damage: 64,
|
|
267
|
+
description: "用于解决高生命值目标的次时代武器,擅长对付护盾耗尽或没有护甲的敌人",
|
|
268
|
+
specialeffect: "",
|
|
269
|
+
price: 1750,
|
|
270
|
+
redCrystalCost: 20,
|
|
271
|
+
isantiair: true,
|
|
272
|
+
tagEffects: {
|
|
273
|
+
"生物": 1.5,
|
|
274
|
+
"护盾": 0.5,
|
|
275
|
+
"重甲": 0.5
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
"聚变磁轨枪": {
|
|
279
|
+
id: 17,
|
|
280
|
+
type: "能量武器",
|
|
281
|
+
category: "能量武器",
|
|
282
|
+
damage: 70,
|
|
283
|
+
description: "一种实验性的超级武器,能造成巨大的伤害",
|
|
284
|
+
specialeffect: "",
|
|
285
|
+
price: 1550,
|
|
286
|
+
redCrystalCost: 20,
|
|
287
|
+
isantiair: true,
|
|
288
|
+
tagEffects: {}
|
|
289
|
+
},
|
|
246
290
|
"外星电浆": {
|
|
247
291
|
id: 101,
|
|
248
292
|
type: "能量武器",
|
|
@@ -284,15 +328,15 @@ var weaponConfig = {
|
|
|
284
328
|
redCrystalCost: 200,
|
|
285
329
|
isantiair: false,
|
|
286
330
|
tagEffects: {
|
|
287
|
-
"
|
|
288
|
-
"
|
|
331
|
+
"惧热": 2,
|
|
332
|
+
"轻甲": 1.5
|
|
289
333
|
}
|
|
290
334
|
},
|
|
291
335
|
"DSR-55反器材步枪": {
|
|
292
336
|
id: 104,
|
|
293
337
|
type: "实弹武器",
|
|
294
338
|
category: "传奇武器",
|
|
295
|
-
damage:
|
|
339
|
+
damage: 130,
|
|
296
340
|
description: "一件传奇武器",
|
|
297
341
|
specialeffect: "",
|
|
298
342
|
price: 6400,
|
|
@@ -1267,6 +1311,27 @@ var bossPool = [
|
|
|
1267
1311
|
passive: ["弱化形态", "心灵狂热", "星界之风"]
|
|
1268
1312
|
}
|
|
1269
1313
|
]
|
|
1314
|
+
},
|
|
1315
|
+
{
|
|
1316
|
+
id: 10,
|
|
1317
|
+
main: {
|
|
1318
|
+
name: "猛毒异兽",
|
|
1319
|
+
type: "主宰",
|
|
1320
|
+
maxHP: 2e4,
|
|
1321
|
+
maxEnergy: 0,
|
|
1322
|
+
tags: ["生物", "异形"],
|
|
1323
|
+
passive: ["毒性唾液", "剧毒狂暴", "毒气波", "淬毒撕咬", "酸蚀池", "剧毒突袭"]
|
|
1324
|
+
},
|
|
1325
|
+
minions: [
|
|
1326
|
+
{
|
|
1327
|
+
name: "剧毒蝙蝠",
|
|
1328
|
+
type: "子代",
|
|
1329
|
+
maxHP: 5e3,
|
|
1330
|
+
maxEnergy: 0,
|
|
1331
|
+
tags: ["生物", "异形"],
|
|
1332
|
+
passive: ["弱化形态", "毒性唾液", "毒气波", "淬毒撕咬", "酸蚀池"]
|
|
1333
|
+
}
|
|
1334
|
+
]
|
|
1270
1335
|
}
|
|
1271
1336
|
];
|
|
1272
1337
|
|
|
@@ -1283,6 +1348,7 @@ function updateStatsByName(name2, updates) {
|
|
|
1283
1348
|
skillsAdded: [],
|
|
1284
1349
|
skillsRemoved: [],
|
|
1285
1350
|
skillStacksChanged: 0,
|
|
1351
|
+
skillStatusChanged: 0,
|
|
1286
1352
|
statusLayersChanged: 0,
|
|
1287
1353
|
radiationLayersChange: 0,
|
|
1288
1354
|
coldLayersChange: 0,
|
|
@@ -1295,6 +1361,7 @@ function updateStatsByName(name2, updates) {
|
|
|
1295
1361
|
hpChange: existing.hpChange + (updates.hpChange ?? 0),
|
|
1296
1362
|
energyChange: existing.energyChange + (updates.energyChange ?? 0),
|
|
1297
1363
|
skillStacksChanged: existing.skillStacksChanged + (updates.skillStacksChanged ?? 0),
|
|
1364
|
+
skillStatusChanged: existing.skillStatusChanged + (updates.skillStatusChanged ?? 0),
|
|
1298
1365
|
statusLayersChanged: existing.statusLayersChanged + (updates.statusLayersChanged ?? 0),
|
|
1299
1366
|
radiationLayersChange: existing.radiationLayersChange + (updates.radiationLayersChange ?? 0),
|
|
1300
1367
|
coldLayersChange: existing.coldLayersChange + (updates.coldLayersChange ?? 0),
|
|
@@ -2843,7 +2910,252 @@ var BattleEffectProcessor = {
|
|
|
2843
2910
|
targetUpdates,
|
|
2844
2911
|
reductionSuccess
|
|
2845
2912
|
};
|
|
2846
|
-
}, "handleWeaponLayerReduction")
|
|
2913
|
+
}, "handleWeaponLayerReduction"),
|
|
2914
|
+
/**
|
|
2915
|
+
* 毒性唾液处理(叠层减伤)
|
|
2916
|
+
* 效果:受击时增加1层「毒性唾液」(上限20层),每层提供5%减伤
|
|
2917
|
+
*/
|
|
2918
|
+
handleToxicSaliva: /* @__PURE__ */ __name(function(targetBoss) {
|
|
2919
|
+
const messages = [];
|
|
2920
|
+
let targetUpdates = null;
|
|
2921
|
+
let nerfMultiplier = 0;
|
|
2922
|
+
if (!targetBoss.skills.includes("毒性唾液")) {
|
|
2923
|
+
return null;
|
|
2924
|
+
}
|
|
2925
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
2926
|
+
const maxStacks = 20;
|
|
2927
|
+
messages.push(`🧪 【毒性唾液】生效:当前${currentStacks}层,使受到的伤害-${(nerfMultiplier * 100).toFixed(0)}%`);
|
|
2928
|
+
nerfMultiplier = currentStacks * 0.05;
|
|
2929
|
+
let newStacks = currentStacks;
|
|
2930
|
+
if (currentStacks < maxStacks) {
|
|
2931
|
+
newStacks = currentStacks + 1;
|
|
2932
|
+
targetUpdates = {
|
|
2933
|
+
name: targetBoss.name,
|
|
2934
|
+
updates: {
|
|
2935
|
+
skillStacksChanged: 1
|
|
2936
|
+
// 层数+1
|
|
2937
|
+
}
|
|
2938
|
+
};
|
|
2939
|
+
messages.push(`🧪 【毒性唾液】生效:获得一层「毒性唾液」`);
|
|
2940
|
+
} else {
|
|
2941
|
+
}
|
|
2942
|
+
return {
|
|
2943
|
+
nerfMultiplier,
|
|
2944
|
+
messages,
|
|
2945
|
+
targetUpdates
|
|
2946
|
+
};
|
|
2947
|
+
}, "handleToxicSaliva"),
|
|
2948
|
+
/**
|
|
2949
|
+
* 剧毒狂暴处理(低生命额外减伤和叠层)
|
|
2950
|
+
* 效果:生命值≤50%时,受击额外获得1层「毒性唾液」且受到的伤害降低50%
|
|
2951
|
+
*/
|
|
2952
|
+
handleToxicFrenzy: /* @__PURE__ */ __name(function(targetBoss) {
|
|
2953
|
+
const messages = [];
|
|
2954
|
+
let targetUpdates = null;
|
|
2955
|
+
let nerfMultiplier = 0;
|
|
2956
|
+
if (!targetBoss.skills.includes("剧毒狂暴")) {
|
|
2957
|
+
return null;
|
|
2958
|
+
}
|
|
2959
|
+
const maxHP = getMaxHPByName(targetBoss.name);
|
|
2960
|
+
const currentHP = targetBoss.HP;
|
|
2961
|
+
const hpPercent = currentHP / maxHP;
|
|
2962
|
+
if (hpPercent > 0.5) {
|
|
2963
|
+
return null;
|
|
2964
|
+
}
|
|
2965
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
2966
|
+
const maxStacks = 19;
|
|
2967
|
+
nerfMultiplier = 0.5;
|
|
2968
|
+
messages.push(`💥 【剧毒狂暴】生效:生命值≤50%,受到的伤害额外降低50%`);
|
|
2969
|
+
if (currentStacks < maxStacks) {
|
|
2970
|
+
targetUpdates = {
|
|
2971
|
+
name: targetBoss.name,
|
|
2972
|
+
updates: {
|
|
2973
|
+
skillStacksChanged: 1
|
|
2974
|
+
// 额外叠加1层
|
|
2975
|
+
}
|
|
2976
|
+
};
|
|
2977
|
+
messages.push(`💥 【剧毒狂暴】生效:额外获得1层「毒性唾液」`);
|
|
2978
|
+
}
|
|
2979
|
+
return {
|
|
2980
|
+
nerfMultiplier,
|
|
2981
|
+
messages,
|
|
2982
|
+
targetUpdates
|
|
2983
|
+
};
|
|
2984
|
+
}, "handleToxicFrenzy"),
|
|
2985
|
+
/**
|
|
2986
|
+
* 毒气波处理(概率获得多层层数)
|
|
2987
|
+
* 效果:受击时有20%概率额外获得5层「毒性唾液」
|
|
2988
|
+
*/
|
|
2989
|
+
handleToxicGasWave: /* @__PURE__ */ __name(function(targetBoss) {
|
|
2990
|
+
const messages = [];
|
|
2991
|
+
let targetUpdates = null;
|
|
2992
|
+
if (!targetBoss.skills.includes("毒气波")) {
|
|
2993
|
+
return null;
|
|
2994
|
+
}
|
|
2995
|
+
if (Math.random() >= 0.2) {
|
|
2996
|
+
return null;
|
|
2997
|
+
}
|
|
2998
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
2999
|
+
const maxStacks = 20;
|
|
3000
|
+
const addAmount = Math.min(5, maxStacks - currentStacks);
|
|
3001
|
+
if (addAmount <= 0) {
|
|
3002
|
+
return null;
|
|
3003
|
+
}
|
|
3004
|
+
targetUpdates = {
|
|
3005
|
+
name: targetBoss.name,
|
|
3006
|
+
updates: {
|
|
3007
|
+
skillStacksChanged: addAmount
|
|
3008
|
+
}
|
|
3009
|
+
};
|
|
3010
|
+
messages.push(`🌫️ 【毒气波】触发:20%概率获得5层「毒性唾液」`);
|
|
3011
|
+
return {
|
|
3012
|
+
messages,
|
|
3013
|
+
targetUpdates
|
|
3014
|
+
};
|
|
3015
|
+
}, "handleToxicGasWave"),
|
|
3016
|
+
/**
|
|
3017
|
+
* 淬毒撕咬处理(层数治疗效果)
|
|
3018
|
+
* 效果:根据毒性唾液层数,在受击时回复生命值
|
|
3019
|
+
*/
|
|
3020
|
+
handlePoisonedBite: /* @__PURE__ */ __name(function(targetBoss) {
|
|
3021
|
+
const messages = [];
|
|
3022
|
+
let targetUpdates = null;
|
|
3023
|
+
if (!targetBoss.skills.includes("淬毒撕咬")) {
|
|
3024
|
+
return null;
|
|
3025
|
+
}
|
|
3026
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
3027
|
+
let healAmount = 0;
|
|
3028
|
+
if (currentStacks >= 15) {
|
|
3029
|
+
healAmount = 150;
|
|
3030
|
+
} else if (currentStacks >= 10) {
|
|
3031
|
+
healAmount = 100;
|
|
3032
|
+
} else if (currentStacks >= 5) {
|
|
3033
|
+
healAmount = 50;
|
|
3034
|
+
}
|
|
3035
|
+
if (healAmount === 0) {
|
|
3036
|
+
return null;
|
|
3037
|
+
}
|
|
3038
|
+
targetUpdates = {
|
|
3039
|
+
name: targetBoss.name,
|
|
3040
|
+
updates: {
|
|
3041
|
+
hpChange: healAmount
|
|
3042
|
+
// 回复生命值
|
|
3043
|
+
}
|
|
3044
|
+
};
|
|
3045
|
+
messages.push(`🦷 【淬毒撕咬】触发:回复${healAmount}点生命值`);
|
|
3046
|
+
return {
|
|
3047
|
+
messages,
|
|
3048
|
+
targetUpdates
|
|
3049
|
+
};
|
|
3050
|
+
}, "handlePoisonedBite"),
|
|
3051
|
+
/**
|
|
3052
|
+
* 酸蚀池处理(循环抗性)
|
|
3053
|
+
* 效果:受击时按顺序循环选择三种酸池(1->2->3->1),提供特定武器类型减伤和增伤
|
|
3054
|
+
*/
|
|
3055
|
+
handleAcidPool: /* @__PURE__ */ __name(function(targetBoss, weaponData, enhanced) {
|
|
3056
|
+
const messages = [];
|
|
3057
|
+
let nerfMultiplier = 0;
|
|
3058
|
+
let buffMultiplier = 0;
|
|
3059
|
+
let targetUpdates = null;
|
|
3060
|
+
let nextAcidType = 0;
|
|
3061
|
+
const weaponType = weaponData.type;
|
|
3062
|
+
if (!targetBoss.skills.includes("酸蚀池")) {
|
|
3063
|
+
return { nerfMultiplier, buffMultiplier, messages, targetUpdates };
|
|
3064
|
+
}
|
|
3065
|
+
let acidType = targetBoss.skillStatus || 0;
|
|
3066
|
+
if (acidType === 0) {
|
|
3067
|
+
acidType = 1;
|
|
3068
|
+
}
|
|
3069
|
+
if (acidType === 3) {
|
|
3070
|
+
nextAcidType = -2;
|
|
3071
|
+
} else if (targetBoss.skillStatus === 0) {
|
|
3072
|
+
nextAcidType = 2;
|
|
3073
|
+
} else {
|
|
3074
|
+
nextAcidType = 1;
|
|
3075
|
+
}
|
|
3076
|
+
targetUpdates = {
|
|
3077
|
+
name: targetBoss.name,
|
|
3078
|
+
updates: {
|
|
3079
|
+
skillStatusChanged: nextAcidType
|
|
3080
|
+
// 存储下次使用的酸池类型
|
|
3081
|
+
}
|
|
3082
|
+
};
|
|
3083
|
+
let acidName = "";
|
|
3084
|
+
let resistType = "";
|
|
3085
|
+
let vulnerableType = "";
|
|
3086
|
+
switch (acidType) {
|
|
3087
|
+
case 1:
|
|
3088
|
+
acidName = "脓蚀酸池";
|
|
3089
|
+
resistType = "实弹武器";
|
|
3090
|
+
vulnerableType = "能量武器";
|
|
3091
|
+
break;
|
|
3092
|
+
case 2:
|
|
3093
|
+
acidName = "蚀骨酸池";
|
|
3094
|
+
resistType = "能量武器";
|
|
3095
|
+
vulnerableType = "热能武器";
|
|
3096
|
+
break;
|
|
3097
|
+
case 3:
|
|
3098
|
+
acidName = "焦熔酸池";
|
|
3099
|
+
resistType = "热能武器";
|
|
3100
|
+
vulnerableType = "实弹武器";
|
|
3101
|
+
break;
|
|
3102
|
+
}
|
|
3103
|
+
messages.push(`🛢️ 【酸蚀池】本次触发:${acidName}`);
|
|
3104
|
+
if (enhanced) {
|
|
3105
|
+
if (weaponType === resistType) {
|
|
3106
|
+
nerfMultiplier = 1;
|
|
3107
|
+
messages.push(`💪 【酸蚀池·强化】生效:受到${resistType}伤害-100%`);
|
|
3108
|
+
} else if (weaponType === vulnerableType) {
|
|
3109
|
+
messages.push(`💪 【酸蚀池·强化】生效:${vulnerableType}增伤效果被移除`);
|
|
3110
|
+
}
|
|
3111
|
+
} else {
|
|
3112
|
+
if (weaponType === resistType) {
|
|
3113
|
+
nerfMultiplier = 0.8;
|
|
3114
|
+
messages.push(`🛢️ 【酸蚀池】生效:受到${resistType}伤害-80%`);
|
|
3115
|
+
} else if (weaponType === vulnerableType) {
|
|
3116
|
+
buffMultiplier = 0.5;
|
|
3117
|
+
messages.push(`🛢️ 【酸蚀池】生效:受到${vulnerableType}伤害+50%`);
|
|
3118
|
+
}
|
|
3119
|
+
}
|
|
3120
|
+
return {
|
|
3121
|
+
nerfMultiplier,
|
|
3122
|
+
buffMultiplier,
|
|
3123
|
+
messages,
|
|
3124
|
+
targetUpdates
|
|
3125
|
+
};
|
|
3126
|
+
}, "handleAcidPool"),
|
|
3127
|
+
/**
|
|
3128
|
+
* 剧毒突袭处理
|
|
3129
|
+
* 效果:毒性唾液≥20层时,消耗所有层数并使强化下5次触发的「酸蚀池」
|
|
3130
|
+
*/
|
|
3131
|
+
handleToxicAssault: /* @__PURE__ */ __name(function(targetBoss) {
|
|
3132
|
+
const messages = [];
|
|
3133
|
+
let targetUpdates = null;
|
|
3134
|
+
if (!targetBoss.skills.includes("剧毒突袭")) {
|
|
3135
|
+
return null;
|
|
3136
|
+
}
|
|
3137
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
3138
|
+
if (currentStacks < 20) {
|
|
3139
|
+
return null;
|
|
3140
|
+
}
|
|
3141
|
+
const currentAssaultCount = targetBoss.statusLayers || 0;
|
|
3142
|
+
const addAssaultCount = 5;
|
|
3143
|
+
targetUpdates = {
|
|
3144
|
+
name: targetBoss.name,
|
|
3145
|
+
updates: {
|
|
3146
|
+
skillStacksChanged: -currentStacks,
|
|
3147
|
+
// 清空毒性唾液层数
|
|
3148
|
+
statusLayersChanged: addAssaultCount
|
|
3149
|
+
// 增加强化次数
|
|
3150
|
+
}
|
|
3151
|
+
};
|
|
3152
|
+
const newAssaultCount = currentAssaultCount + addAssaultCount;
|
|
3153
|
+
messages.push(`💣 【剧毒突袭】触发:消耗20层毒性唾液,强化下${newAssaultCount}次「酸蚀池」`);
|
|
3154
|
+
return {
|
|
3155
|
+
messages,
|
|
3156
|
+
targetUpdates
|
|
3157
|
+
};
|
|
3158
|
+
}, "handleToxicAssault")
|
|
2847
3159
|
};
|
|
2848
3160
|
function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, ignoreRate) {
|
|
2849
3161
|
const messages = [];
|
|
@@ -2939,6 +3251,10 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, ignor
|
|
|
2939
3251
|
{ effect: BattleEffectProcessor.handleVomit, args: [targetBoss] },
|
|
2940
3252
|
{ effect: BattleEffectProcessor.handleRampage, args: [targetBoss] },
|
|
2941
3253
|
{ effect: BattleEffectProcessor.handleHyperRangeShift, args: [targetBoss] },
|
|
3254
|
+
// 1. 毒性唾液
|
|
3255
|
+
{ effect: BattleEffectProcessor.handleToxicSaliva, args: [targetBoss] },
|
|
3256
|
+
// 2. 剧毒狂暴
|
|
3257
|
+
{ effect: BattleEffectProcessor.handleToxicFrenzy, args: [targetBoss] },
|
|
2942
3258
|
// 双参数效果
|
|
2943
3259
|
{ effect: BattleEffectProcessor.handleStructuralArmor, args: [targetBoss, weaponData] },
|
|
2944
3260
|
{ effect: BattleEffectProcessor.handleDisguise, args: [targetBoss, weaponName] },
|
|
@@ -2968,7 +3284,9 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, ignor
|
|
|
2968
3284
|
{ effect: BattleEffectProcessor.handleVampireSaliva, args: [targetBoss] },
|
|
2969
3285
|
{ effect: BattleEffectProcessor.handleBloodlust, args: [targetBoss] },
|
|
2970
3286
|
{ effect: BattleEffectProcessor.handleBladeOfLight, args: [targetBoss] },
|
|
2971
|
-
{ effect: BattleEffectProcessor.handleCollapsingPulse, args: [targetBoss] }
|
|
3287
|
+
{ effect: BattleEffectProcessor.handleCollapsingPulse, args: [targetBoss] },
|
|
3288
|
+
// 3. 毒气波
|
|
3289
|
+
{ effect: BattleEffectProcessor.handleToxicGasWave, args: [targetBoss] }
|
|
2972
3290
|
];
|
|
2973
3291
|
for (const effectItem of layerDependentEffects) {
|
|
2974
3292
|
const result = processEffect(effectItem.effect, ...effectItem.args);
|
|
@@ -2978,11 +3296,37 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, ignor
|
|
|
2978
3296
|
}
|
|
2979
3297
|
}
|
|
2980
3298
|
const stateChangeEffects = [
|
|
2981
|
-
{ effect: BattleEffectProcessor.handleSuperconductor, args: [targetBoss] }
|
|
3299
|
+
{ effect: BattleEffectProcessor.handleSuperconductor, args: [targetBoss] },
|
|
3300
|
+
// 4. 剧毒突袭
|
|
3301
|
+
{ effect: BattleEffectProcessor.handleToxicAssault, args: [targetBoss] }
|
|
2982
3302
|
];
|
|
2983
3303
|
for (const effectItem of stateChangeEffects) {
|
|
2984
3304
|
processEffect(effectItem.effect, ...effectItem.args);
|
|
2985
3305
|
}
|
|
3306
|
+
let isEnhanced = false;
|
|
3307
|
+
if (targetBoss.statusLayers > 0) {
|
|
3308
|
+
isEnhanced = true;
|
|
3309
|
+
updateStatsByName(targetBoss.name, {
|
|
3310
|
+
statusLayersChanged: -1
|
|
3311
|
+
});
|
|
3312
|
+
}
|
|
3313
|
+
const acidPoolResult = BattleEffectProcessor.handleAcidPool(
|
|
3314
|
+
targetBoss,
|
|
3315
|
+
weaponData,
|
|
3316
|
+
isEnhanced
|
|
3317
|
+
);
|
|
3318
|
+
if (acidPoolResult) {
|
|
3319
|
+
messages.push(...acidPoolResult.messages);
|
|
3320
|
+
if (acidPoolResult.targetUpdates) {
|
|
3321
|
+
updateStatsByName(acidPoolResult.targetUpdates.name, acidPoolResult.targetUpdates.updates);
|
|
3322
|
+
}
|
|
3323
|
+
if (acidPoolResult.nerfMultiplier) {
|
|
3324
|
+
totalNerfMultiplier += acidPoolResult.nerfMultiplier;
|
|
3325
|
+
}
|
|
3326
|
+
if (acidPoolResult.buffMultiplier) {
|
|
3327
|
+
totalBuffMultiplier += acidPoolResult.buffMultiplier;
|
|
3328
|
+
}
|
|
3329
|
+
}
|
|
2986
3330
|
const healingEffects = [
|
|
2987
3331
|
{ effect: BattleEffectProcessor.handleFrostRegeneration, args: [targetBoss, activeBosses, maxStatsMap] },
|
|
2988
3332
|
{ effect: BattleEffectProcessor.handleFrostAura, args: [targetBoss, activeBosses] },
|
|
@@ -2993,7 +3337,9 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, ignor
|
|
|
2993
3337
|
{ effect: BattleEffectProcessor.handleFeeding, args: [targetBoss] },
|
|
2994
3338
|
{ effect: BattleEffectProcessor.handleBurningBurrow, args: [targetBoss] },
|
|
2995
3339
|
{ effect: BattleEffectProcessor.handleBombardmentGuide, args: [targetBoss] },
|
|
2996
|
-
{ effect: BattleEffectProcessor.handleOverdriveShield, args: [targetBoss, activeBosses] }
|
|
3340
|
+
{ effect: BattleEffectProcessor.handleOverdriveShield, args: [targetBoss, activeBosses] },
|
|
3341
|
+
// 6. 淬毒撕咬
|
|
3342
|
+
{ effect: BattleEffectProcessor.handlePoisonedBite, args: [targetBoss] }
|
|
2997
3343
|
];
|
|
2998
3344
|
for (const effectItem of healingEffects) {
|
|
2999
3345
|
processEffect(effectItem.effect, ...effectItem.args);
|
|
@@ -3163,208 +3509,232 @@ __name(applyPassiveEffects, "applyPassiveEffects");
|
|
|
3163
3509
|
// src/boss/passive.ts
|
|
3164
3510
|
var passiveConfig = {
|
|
3165
3511
|
"弱化形态": {
|
|
3166
|
-
type: "
|
|
3512
|
+
type: "伤害易伤",
|
|
3167
3513
|
description: "子代防御脆弱,受到的伤害提高10%"
|
|
3168
3514
|
},
|
|
3169
3515
|
"异形甲壳": {
|
|
3170
|
-
type: "
|
|
3516
|
+
type: "伤害减免",
|
|
3171
3517
|
description: "受到的伤害降低20%"
|
|
3172
3518
|
},
|
|
3173
3519
|
"冰霜回复": {
|
|
3174
|
-
type: "
|
|
3520
|
+
type: "濒死治疗(移除)",
|
|
3175
3521
|
description: "生命值≤30%时,立即回复自身40%最大生命值,并为所有其他存活异形回复10%最大生命值(生效后移除)"
|
|
3176
3522
|
},
|
|
3177
3523
|
"冰霜进化": {
|
|
3178
|
-
type: "
|
|
3524
|
+
type: "元素转换",
|
|
3179
3525
|
description: "免疫寒冷伤害,受到寒冷攻击时回复等量生命值"
|
|
3180
3526
|
},
|
|
3181
3527
|
"冰霜环绕": {
|
|
3182
|
-
type: "
|
|
3528
|
+
type: "濒死治疗+技能赋予(移除)",
|
|
3183
3529
|
description: "生命值≤30%时,立即回复自身45%最大生命值,并使所有存活异形获得「寒霜地狱」技能(生效后移除)"
|
|
3184
3530
|
},
|
|
3185
3531
|
"寒霜地狱": {
|
|
3186
|
-
type: "
|
|
3532
|
+
type: "伤害减免",
|
|
3187
3533
|
description: "受到的伤害降低30%"
|
|
3188
3534
|
},
|
|
3189
3535
|
"应激甲壳I": {
|
|
3190
|
-
type: "
|
|
3536
|
+
type: "伤害减免",
|
|
3191
3537
|
description: "受到的伤害降低20%"
|
|
3192
3538
|
},
|
|
3193
3539
|
"应激甲壳II": {
|
|
3194
|
-
type: "
|
|
3540
|
+
type: "伤害减免",
|
|
3195
3541
|
description: "受到的伤害降低25%"
|
|
3196
3542
|
},
|
|
3197
3543
|
"求生本能I": {
|
|
3198
|
-
type: "
|
|
3544
|
+
type: "濒死治疗(移除)",
|
|
3199
3545
|
description: "濒死时立即回复自身30%最大生命值(生效后移除)"
|
|
3200
3546
|
},
|
|
3201
3547
|
"求生本能II": {
|
|
3202
|
-
type: "
|
|
3548
|
+
type: "濒死治疗(移除)",
|
|
3203
3549
|
description: "濒死时立即回复自身50%最大生命值(生效后移除)"
|
|
3204
3550
|
},
|
|
3205
3551
|
"冷适应": {
|
|
3206
|
-
type: "
|
|
3552
|
+
type: "元素免疫+标签转化",
|
|
3207
3553
|
description: "累计承受10次寒冷伤害后,获得「惧热」标签并永久免疫寒冷伤害"
|
|
3208
3554
|
},
|
|
3209
3555
|
"感染空间站": {
|
|
3210
|
-
type: "
|
|
3556
|
+
type: "条件减伤",
|
|
3211
3557
|
description: "当空间站哨枪塔存活时,自身受到的伤害降低50%"
|
|
3212
3558
|
},
|
|
3213
3559
|
"病毒云": {
|
|
3214
|
-
type: "
|
|
3560
|
+
type: "伤害减免",
|
|
3215
3561
|
description: "受到的伤害降低10%"
|
|
3216
3562
|
},
|
|
3217
3563
|
"霉菌滋生": {
|
|
3218
|
-
type: "
|
|
3564
|
+
type: "建筑治疗",
|
|
3219
3565
|
description: "受击后,若空间站哨枪塔存活,为其回复1%最大生命值"
|
|
3220
3566
|
},
|
|
3221
3567
|
"岗哨机枪": {
|
|
3222
|
-
type: "
|
|
3568
|
+
type: "群体治疗",
|
|
3223
3569
|
description: "每累计承受10次攻击,为所有其他存活异形回复10%最大生命值"
|
|
3224
3570
|
},
|
|
3225
3571
|
"结构装甲": {
|
|
3226
|
-
type: "
|
|
3572
|
+
type: "元素抗性",
|
|
3227
3573
|
description: "受实弹/能量武器伤害降低20%,受热能武器伤害降低40%"
|
|
3228
3574
|
},
|
|
3229
3575
|
"吸血唾液": {
|
|
3230
|
-
type: "
|
|
3576
|
+
type: "叠层减伤",
|
|
3231
3577
|
description: "受击获得1层「吸血唾液」(上限20层),每层使受到的伤害降低5%"
|
|
3232
3578
|
},
|
|
3233
3579
|
"进食": {
|
|
3234
|
-
type: "
|
|
3580
|
+
type: "叠层转化(治疗)",
|
|
3235
3581
|
description: "「吸血唾液」≥20层时,下次受击消耗所有层数并回复自身20%最大生命值"
|
|
3236
3582
|
},
|
|
3237
3583
|
"嗜血狂暴": {
|
|
3238
|
-
type: "
|
|
3584
|
+
type: "狂怒机制",
|
|
3239
3585
|
description: "生命值≤50%时,受击额外获得1层「吸血唾液」且受到的伤害降低20%"
|
|
3240
3586
|
},
|
|
3241
3587
|
"吐血": {
|
|
3242
|
-
type: "
|
|
3588
|
+
type: "叠层惩罚",
|
|
3243
3589
|
description: "无「吸血唾液」层数时,受到的伤害提高20%"
|
|
3244
3590
|
},
|
|
3245
3591
|
"超导体": {
|
|
3246
|
-
type: "
|
|
3592
|
+
type: "标签转换",
|
|
3247
3593
|
description: "生命值≤10%时,护盾标签永久转换为重甲标签"
|
|
3248
3594
|
},
|
|
3249
3595
|
"能量虹吸": {
|
|
3250
|
-
type: "
|
|
3596
|
+
type: "血线减伤",
|
|
3251
3597
|
description: "生命值≥70%时伤害降低40%,30%-70%时伤害降低20%"
|
|
3252
3598
|
},
|
|
3253
3599
|
"能源虹吸": {
|
|
3254
|
-
type: "
|
|
3600
|
+
type: "能量减伤",
|
|
3255
3601
|
description: "能量值≥80%时伤害降低50%,50%-80%时伤害降低30%"
|
|
3256
3602
|
},
|
|
3257
3603
|
"电能立场": {
|
|
3258
|
-
type: "
|
|
3604
|
+
type: "概率免疫",
|
|
3259
3605
|
description: "能量值≥30%时,55%概率免疫非热能伤害(每层寒冷降低5%触发概率)"
|
|
3260
3606
|
},
|
|
3261
3607
|
"电能冲击波": {
|
|
3262
|
-
type: "
|
|
3608
|
+
type: "受击回能",
|
|
3263
3609
|
description: "受击后回复100点能量"
|
|
3264
3610
|
},
|
|
3265
3611
|
"脉冲": {
|
|
3266
|
-
type: "
|
|
3612
|
+
type: "概率群体治疗",
|
|
3267
3613
|
description: "能量值≥30%时,60%概率为所有存活异形回复100点生命(每层寒冷降低5%触发概率)"
|
|
3268
3614
|
},
|
|
3269
3615
|
"能量黑洞": {
|
|
3270
|
-
type: "
|
|
3616
|
+
type: "环境减伤",
|
|
3271
3617
|
description: "存在能量黑洞时,受到的伤害降低20%"
|
|
3272
3618
|
},
|
|
3273
3619
|
"火焰异形": {
|
|
3274
|
-
type: "
|
|
3620
|
+
type: "元素转换",
|
|
3275
3621
|
description: "免疫火焰伤害,受到火焰攻击时回复等量生命值"
|
|
3276
3622
|
},
|
|
3277
3623
|
"庞兽狂暴": {
|
|
3278
|
-
type: "
|
|
3624
|
+
type: "半血减伤",
|
|
3279
3625
|
description: "生命值≤50%时,受到的伤害降低50%"
|
|
3280
3626
|
},
|
|
3281
3627
|
"灼烧粘液": {
|
|
3282
|
-
type: "
|
|
3628
|
+
type: "叠层治疗",
|
|
3283
3629
|
description: "受击获得1层「灼烧粘液」;受火焰攻击时消耗所有层数并回复(层数×10)点生命"
|
|
3284
3630
|
},
|
|
3285
3631
|
"腐蚀胆汁": {
|
|
3286
|
-
type: "
|
|
3632
|
+
type: "叠层转化(群体治疗)",
|
|
3287
3633
|
description: "「灼烧粘液」≥10层时,下次受击消耗所有层数并为所有存活异形回复1000点生命"
|
|
3288
3634
|
},
|
|
3289
3635
|
"火焰吐息": {
|
|
3290
|
-
type: "
|
|
3636
|
+
type: "叠层转化(群体治疗)",
|
|
3291
3637
|
description: "「灼烧粘液」≥20层时,下次攻击消耗所有层数并为所有存活异形回复20%最大生命值"
|
|
3292
3638
|
},
|
|
3293
3639
|
"太阳耀斑": {
|
|
3294
|
-
type: "
|
|
3640
|
+
type: "净化机制",
|
|
3295
3641
|
description: "所有子代阵亡后,移除惧寒标签和孤立无援状态,并永久免疫寒冷伤害"
|
|
3296
3642
|
},
|
|
3297
3643
|
"燃烧潜地": {
|
|
3298
|
-
type: "
|
|
3644
|
+
type: "濒死治疗(移除)",
|
|
3299
3645
|
description: "生命值≤10%时立即回复50%最大生命值(生效后移除)"
|
|
3300
3646
|
},
|
|
3301
3647
|
"炼狱爆弹": {
|
|
3302
|
-
type: "
|
|
3648
|
+
type: "叠层减伤+联动作战",
|
|
3303
3649
|
description: "每层「灼烧粘液」使受到的伤害降低5%,存活子代存在时每层额外降低5%"
|
|
3304
3650
|
},
|
|
3305
3651
|
"猎手异形": {
|
|
3306
|
-
type: "
|
|
3652
|
+
type: "团队联动",
|
|
3307
3653
|
description: "存在其他存活异形时伤害降低20%,无其他存活异形时伤害提高20%;免疫火焰及寒冷伤害"
|
|
3308
3654
|
},
|
|
3309
3655
|
"狂暴": {
|
|
3310
|
-
type: "
|
|
3656
|
+
type: "半血减伤",
|
|
3311
3657
|
description: "生命值≤50%时,受到的伤害降低50%"
|
|
3312
3658
|
},
|
|
3313
3659
|
"伪装": {
|
|
3314
|
-
type: "
|
|
3660
|
+
type: "动态抗性",
|
|
3315
3661
|
description: "受击记录伤害来源武器名称,下次被同名武器攻击时伤害降低80%"
|
|
3316
3662
|
},
|
|
3317
3663
|
"致命一击": {
|
|
3318
|
-
type: "
|
|
3664
|
+
type: "概率免疫",
|
|
3319
3665
|
description: "受击时5%概率免疫该次伤害"
|
|
3320
3666
|
},
|
|
3321
3667
|
"星界之风": {
|
|
3322
|
-
type: "
|
|
3668
|
+
type: "概率群体治疗",
|
|
3323
3669
|
description: "受击时5%概率为所有存活异形回复200点生命"
|
|
3324
3670
|
},
|
|
3325
3671
|
"心灵狂热": {
|
|
3326
|
-
type: "
|
|
3672
|
+
type: "半血强化",
|
|
3327
3673
|
description: "生命值<50%时伤害降低20%且「星界之风」触发概率翻倍"
|
|
3328
3674
|
},
|
|
3329
3675
|
"宇宙能量": {
|
|
3330
|
-
type: "
|
|
3676
|
+
type: "能量转化",
|
|
3331
3677
|
description: "受击回复等量能量值,能量溢出时转换为生命回复"
|
|
3332
3678
|
},
|
|
3333
3679
|
"复苏": {
|
|
3334
|
-
type: "
|
|
3680
|
+
type: "濒死重生(移除)",
|
|
3335
3681
|
description: "免疫致命伤害,回复60%最大生命与100%能量值,并获得「灵能构造炉」技能(生效后移除)"
|
|
3336
3682
|
},
|
|
3337
3683
|
"光影之刃": {
|
|
3338
|
-
type: "
|
|
3684
|
+
type: "叠层机制",
|
|
3339
3685
|
description: "受击获得1层「光影之刃」(上限50层)"
|
|
3340
3686
|
},
|
|
3341
3687
|
"远古预兆": {
|
|
3342
|
-
type: "
|
|
3688
|
+
type: "层数强化",
|
|
3343
3689
|
description: "受击时1%概率免疫非热能伤害并回复100点能量,每层「光影之刃」使触发概率提升0.5%"
|
|
3344
3690
|
},
|
|
3345
3691
|
"超视距穿梭": {
|
|
3346
|
-
type: "
|
|
3692
|
+
type: "动态减伤",
|
|
3347
3693
|
description: "能量≥60%时每层「光影之刃」使伤害降低10%,30%-60%时每层降低5%,能量≤10%时每层提高5%"
|
|
3348
3694
|
},
|
|
3349
3695
|
"灵能构造炉": {
|
|
3350
|
-
type: "
|
|
3696
|
+
type: "技能获取",
|
|
3351
3697
|
description: "受击时5%概率随机获得以下技能之一:天启超载护盾/塌缩脉冲/地毯式轰炸/轰炸引导"
|
|
3352
3698
|
},
|
|
3353
3699
|
"天启超载护盾": {
|
|
3354
|
-
type: "
|
|
3700
|
+
type: "叠层转化(群体治疗)",
|
|
3355
3701
|
description: "受击时10%概率触发,消耗当前「光影之刃」层数的一半(向下取整),并为所有存活异形回复(消耗层数×10)点生命"
|
|
3356
3702
|
},
|
|
3357
3703
|
"塌缩脉冲": {
|
|
3358
|
-
type: "
|
|
3704
|
+
type: "叠层加速",
|
|
3359
3705
|
description: "受击后额外获得1层「光影之刃」"
|
|
3360
3706
|
},
|
|
3361
3707
|
"地毯式轰炸": {
|
|
3362
|
-
type: "
|
|
3708
|
+
type: "状态净化",
|
|
3363
3709
|
description: "移除孤立无援状态,受到的伤害降低80%"
|
|
3364
3710
|
},
|
|
3365
3711
|
"轰炸引导": {
|
|
3366
|
-
type: "
|
|
3712
|
+
type: "叠层转化(能量)",
|
|
3367
3713
|
description: "受击时10%概率触发,消耗当前「光影之刃」层数的一半(向下取整),并回复(消耗层数×10)点能量"
|
|
3714
|
+
},
|
|
3715
|
+
"毒性唾液": {
|
|
3716
|
+
type: "叠层减伤",
|
|
3717
|
+
description: "受击获得1层「毒性唾液」(上限20层),每层使受到的伤害降低5%"
|
|
3718
|
+
},
|
|
3719
|
+
"剧毒狂暴": {
|
|
3720
|
+
type: "狂怒机制",
|
|
3721
|
+
description: "生命值≤50%时,受击额外获得1层「吸血唾液」且受到的伤害降低50%"
|
|
3722
|
+
},
|
|
3723
|
+
"毒气波": {
|
|
3724
|
+
type: "概率叠层",
|
|
3725
|
+
description: "受击时,有20%概率获得5层「毒性唾液」"
|
|
3726
|
+
},
|
|
3727
|
+
"淬毒撕咬": {
|
|
3728
|
+
type: "层数治疗",
|
|
3729
|
+
description: "「毒性唾液」≥5层时,受击会回复50点生命值;「毒性唾液」≥10层时,受击会回复100点生命值;「毒性唾液」≥15层时,受击会回复150点生命值"
|
|
3730
|
+
},
|
|
3731
|
+
"酸蚀池": {
|
|
3732
|
+
type: "随机抗性",
|
|
3733
|
+
description: "每次受击将会从3种酸液中随机选择一种释放(脓蚀酸池:受到实弹武器伤害降低80%,受到能量武器伤害提高50%;蚀骨酸池:受到能量武器伤害降低80%,受到热能武器伤害提高50%;焦熔酸池:受到热能武器的伤害降低80%,受到实弹武器伤害提高50%)"
|
|
3734
|
+
},
|
|
3735
|
+
"剧毒突袭": {
|
|
3736
|
+
type: "强化效果",
|
|
3737
|
+
description: "「毒性唾液」≥20层时,受击消耗所有层数并使强化下5次触发的「酸蚀池」"
|
|
3368
3738
|
}
|
|
3369
3739
|
};
|
|
3370
3740
|
|
|
@@ -4744,6 +5114,9 @@ async function updateDatabaseWithStats(ctx, stats) {
|
|
|
4744
5114
|
if (stats.skillStacksChanged !== 0) {
|
|
4745
5115
|
updateData.skillStacks = Math.max(0, boss.skillStacks + stats.skillStacksChanged);
|
|
4746
5116
|
}
|
|
5117
|
+
if (stats.skillStatusChanged !== 0) {
|
|
5118
|
+
updateData.skillStatus = Math.max(0, boss.skillStatus + stats.skillStatusChanged);
|
|
5119
|
+
}
|
|
4747
5120
|
if (stats.statusLayersChanged !== 0) {
|
|
4748
5121
|
updateData.statusLayers = Math.max(0, boss.statusLayers + stats.statusLayersChanged);
|
|
4749
5122
|
}
|
|
@@ -5047,6 +5420,8 @@ function apply(ctx, config) {
|
|
|
5047
5420
|
tags: "list",
|
|
5048
5421
|
skills: "list",
|
|
5049
5422
|
skillStacks: "unsigned",
|
|
5423
|
+
skillStatus: "unsigned",
|
|
5424
|
+
// 新增:表示技能当前的状态值
|
|
5050
5425
|
statusLayers: "unsigned",
|
|
5051
5426
|
radiationLayers: "unsigned",
|
|
5052
5427
|
coldLayers: "unsigned",
|
package/lib/weapons.d.ts
CHANGED
|
@@ -208,6 +208,50 @@ export declare const weaponConfig: {
|
|
|
208
208
|
isantiair: boolean;
|
|
209
209
|
tagEffects: {};
|
|
210
210
|
};
|
|
211
|
+
MK79榴弹发射器: {
|
|
212
|
+
id: number;
|
|
213
|
+
type: string;
|
|
214
|
+
category: string;
|
|
215
|
+
damage: number;
|
|
216
|
+
description: string;
|
|
217
|
+
specialeffect: string;
|
|
218
|
+
price: number;
|
|
219
|
+
redCrystalCost: number;
|
|
220
|
+
isantiair: boolean;
|
|
221
|
+
tagEffects: {
|
|
222
|
+
重甲: number;
|
|
223
|
+
轻甲: number;
|
|
224
|
+
护盾: number;
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
EC13电浆步枪: {
|
|
228
|
+
id: number;
|
|
229
|
+
type: string;
|
|
230
|
+
category: string;
|
|
231
|
+
damage: number;
|
|
232
|
+
description: string;
|
|
233
|
+
specialeffect: string;
|
|
234
|
+
price: number;
|
|
235
|
+
redCrystalCost: number;
|
|
236
|
+
isantiair: boolean;
|
|
237
|
+
tagEffects: {
|
|
238
|
+
生物: number;
|
|
239
|
+
护盾: number;
|
|
240
|
+
重甲: number;
|
|
241
|
+
};
|
|
242
|
+
};
|
|
243
|
+
聚变磁轨枪: {
|
|
244
|
+
id: number;
|
|
245
|
+
type: string;
|
|
246
|
+
category: string;
|
|
247
|
+
damage: number;
|
|
248
|
+
description: string;
|
|
249
|
+
specialeffect: string;
|
|
250
|
+
price: number;
|
|
251
|
+
redCrystalCost: number;
|
|
252
|
+
isantiair: boolean;
|
|
253
|
+
tagEffects: {};
|
|
254
|
+
};
|
|
211
255
|
外星电浆: {
|
|
212
256
|
id: number;
|
|
213
257
|
type: string;
|
|
@@ -249,8 +293,8 @@ export declare const weaponConfig: {
|
|
|
249
293
|
redCrystalCost: number;
|
|
250
294
|
isantiair: boolean;
|
|
251
295
|
tagEffects: {
|
|
252
|
-
轻甲: number;
|
|
253
296
|
惧热: number;
|
|
297
|
+
轻甲: number;
|
|
254
298
|
};
|
|
255
299
|
};
|
|
256
300
|
'DSR-55\u53CD\u5668\u6750\u6B65\u67AA': {
|