koishi-plugin-ggcevo-game 1.4.43 → 1.4.45
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 +4 -2
- package/lib/index.js +41 -27
- package/package.json +1 -1
|
@@ -340,9 +340,12 @@ export declare const BattleEffectProcessor: {
|
|
|
340
340
|
updates: Partial<BattleStatistics>;
|
|
341
341
|
} | null;
|
|
342
342
|
} | null;
|
|
343
|
-
/** 天启超载护盾处理(层数相关群体回复) */
|
|
344
343
|
handleOverdriveShield: (targetBoss: any, activeBosses: any[]) => {
|
|
345
344
|
messages: string[];
|
|
345
|
+
targetUpdates: {
|
|
346
|
+
name: string;
|
|
347
|
+
updates: Partial<BattleStatistics>;
|
|
348
|
+
} | null;
|
|
346
349
|
otherUpdates: Array<{
|
|
347
350
|
name: string;
|
|
348
351
|
updates: Partial<BattleStatistics>;
|
|
@@ -362,7 +365,6 @@ export declare const BattleEffectProcessor: {
|
|
|
362
365
|
messages: string[];
|
|
363
366
|
tempMark: boolean;
|
|
364
367
|
};
|
|
365
|
-
/** 轰炸引导处理(层数相关能量回复) */
|
|
366
368
|
handleBombardmentGuide: (targetBoss: any) => {
|
|
367
369
|
messages: string[];
|
|
368
370
|
targetUpdates: {
|
package/lib/index.js
CHANGED
|
@@ -1255,7 +1255,7 @@ var bossPool = [
|
|
|
1255
1255
|
maxHP: 2e4,
|
|
1256
1256
|
maxEnergy: 1e3,
|
|
1257
1257
|
tags: ["重甲", "护盾", "生物", "灵能", "异形"],
|
|
1258
|
-
passive: ["宇宙能量", "复苏", "光影之刃", "
|
|
1258
|
+
passive: ["宇宙能量", "复苏", "光影之刃", "远古预兆", "星界之风", "超视距穿梭"]
|
|
1259
1259
|
},
|
|
1260
1260
|
minions: [
|
|
1261
1261
|
{
|
|
@@ -1458,11 +1458,11 @@ var passiveConfig = {
|
|
|
1458
1458
|
},
|
|
1459
1459
|
"灵能构造炉": {
|
|
1460
1460
|
type: "状态获得(技能获得)",
|
|
1461
|
-
description: "受击时
|
|
1461
|
+
description: "受击时1%概率随机获得以下技能之一:天启超载护盾/塌缩脉冲/地毯式轰炸/轰炸引导"
|
|
1462
1462
|
},
|
|
1463
1463
|
"天启超载护盾": {
|
|
1464
1464
|
type: "生存强化(生命回复)",
|
|
1465
|
-
description: "受击时10
|
|
1465
|
+
description: "受击时10%概率触发,消耗当前「光影之刃」层数的一半(向下取整),并为所有存活异形回复(消耗层数×10)点生命"
|
|
1466
1466
|
},
|
|
1467
1467
|
"塌缩脉冲": {
|
|
1468
1468
|
type: "状态叠加(层数叠加)",
|
|
@@ -1470,11 +1470,11 @@ var passiveConfig = {
|
|
|
1470
1470
|
},
|
|
1471
1471
|
"地毯式轰炸": {
|
|
1472
1472
|
type: "状态移除+伤害增减(正面)",
|
|
1473
|
-
description: "移除孤立无援状态,受到的伤害降低
|
|
1473
|
+
description: "移除孤立无援状态,受到的伤害降低80%"
|
|
1474
1474
|
},
|
|
1475
1475
|
"轰炸引导": {
|
|
1476
1476
|
type: "生存强化(能量回复)",
|
|
1477
|
-
description: "受击时10
|
|
1477
|
+
description: "受击时10%概率触发,消耗当前「光影之刃」层数的一半(向下取整),并回复(消耗层数×10)点能量"
|
|
1478
1478
|
}
|
|
1479
1479
|
};
|
|
1480
1480
|
|
|
@@ -1642,7 +1642,6 @@ function calculateModifiers(equippedWeapon, weaponName, hasCritRhythm) {
|
|
|
1642
1642
|
100
|
|
1643
1643
|
);
|
|
1644
1644
|
if (totalCritRate > 0) {
|
|
1645
|
-
modMessages.push(`🎯 总暴击率:${totalCritRate}%`);
|
|
1646
1645
|
}
|
|
1647
1646
|
if (totalCritRate > 0) {
|
|
1648
1647
|
const roll = Math.random() * 100;
|
|
@@ -3700,7 +3699,7 @@ var BattleEffectProcessor = {
|
|
|
3700
3699
|
if (!targetBoss.skills.includes("灵能构造炉")) {
|
|
3701
3700
|
return null;
|
|
3702
3701
|
}
|
|
3703
|
-
const baseProbability = 0.
|
|
3702
|
+
const baseProbability = 0.01;
|
|
3704
3703
|
if (Math.random() >= baseProbability) {
|
|
3705
3704
|
return null;
|
|
3706
3705
|
}
|
|
@@ -3724,7 +3723,7 @@ var BattleEffectProcessor = {
|
|
|
3724
3723
|
targetUpdates
|
|
3725
3724
|
};
|
|
3726
3725
|
}, "handlePsychicForge"),
|
|
3727
|
-
|
|
3726
|
+
// 修改后的天启超载护盾处理函数
|
|
3728
3727
|
handleOverdriveShield: /* @__PURE__ */ __name(function(targetBoss, activeBosses) {
|
|
3729
3728
|
const messages = [];
|
|
3730
3729
|
const otherUpdates = [];
|
|
@@ -3734,20 +3733,31 @@ var BattleEffectProcessor = {
|
|
|
3734
3733
|
if (Math.random() >= 0.1) {
|
|
3735
3734
|
return null;
|
|
3736
3735
|
}
|
|
3737
|
-
const
|
|
3736
|
+
const currentStacks = targetBoss.skillStacks || 0;
|
|
3737
|
+
const consumedStacks = Math.floor(currentStacks / 2);
|
|
3738
|
+
if (consumedStacks <= 0) {
|
|
3739
|
+
return null;
|
|
3740
|
+
}
|
|
3738
3741
|
const survivingBosses = activeBosses.filter((boss) => boss.isActive);
|
|
3742
|
+
messages.push(`🛡️ 【天启超载护盾】触发:消耗${consumedStacks}层「光影之刃」`);
|
|
3739
3743
|
survivingBosses.forEach((boss) => {
|
|
3740
|
-
const
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
}
|
|
3747
|
-
messages.push(`🛡️ 【天启超载护盾】触发:为「${bossName}」回复${baseHealAmount}点生命值`);
|
|
3744
|
+
const healAmount = consumedStacks * 10;
|
|
3745
|
+
otherUpdates.push({
|
|
3746
|
+
name: boss.name,
|
|
3747
|
+
updates: { hpChange: healAmount }
|
|
3748
|
+
});
|
|
3749
|
+
messages.push(`为「${boss.name}」回复${healAmount}点生命值`);
|
|
3748
3750
|
});
|
|
3751
|
+
const targetUpdates = {
|
|
3752
|
+
name: targetBoss.name,
|
|
3753
|
+
updates: {
|
|
3754
|
+
skillStacksChanged: -consumedStacks
|
|
3755
|
+
// 消耗层数
|
|
3756
|
+
}
|
|
3757
|
+
};
|
|
3749
3758
|
return {
|
|
3750
3759
|
messages,
|
|
3760
|
+
targetUpdates,
|
|
3751
3761
|
otherUpdates
|
|
3752
3762
|
};
|
|
3753
3763
|
}, "handleOverdriveShield"),
|
|
@@ -3755,7 +3765,7 @@ var BattleEffectProcessor = {
|
|
|
3755
3765
|
handleCollapsingPulse: /* @__PURE__ */ __name(function(targetBoss) {
|
|
3756
3766
|
const messages = [];
|
|
3757
3767
|
let targetUpdates = null;
|
|
3758
|
-
const maxStacks =
|
|
3768
|
+
const maxStacks = 49;
|
|
3759
3769
|
if (!targetBoss.skills.includes("塌缩脉冲")) {
|
|
3760
3770
|
return null;
|
|
3761
3771
|
}
|
|
@@ -3783,14 +3793,13 @@ var BattleEffectProcessor = {
|
|
|
3783
3793
|
if (!targetBoss.skills.includes("地毯式轰炸")) {
|
|
3784
3794
|
return null;
|
|
3785
3795
|
}
|
|
3786
|
-
nerfMultiplier =
|
|
3787
|
-
messages.push(`💣 【地毯式轰炸】生效:受到的伤害-
|
|
3796
|
+
nerfMultiplier = 0.8;
|
|
3797
|
+
messages.push(`💣 【地毯式轰炸】生效:受到的伤害-80%`);
|
|
3788
3798
|
return { nerfMultiplier, messages, tempMark: true };
|
|
3789
3799
|
}, "handleCarpetBombing"),
|
|
3790
|
-
|
|
3800
|
+
// 修改后的轰炸引导处理函数
|
|
3791
3801
|
handleBombardmentGuide: /* @__PURE__ */ __name(function(targetBoss) {
|
|
3792
3802
|
const messages = [];
|
|
3793
|
-
let targetUpdates = null;
|
|
3794
3803
|
if (!targetBoss.skills.includes("轰炸引导")) {
|
|
3795
3804
|
return null;
|
|
3796
3805
|
}
|
|
@@ -3798,14 +3807,21 @@ var BattleEffectProcessor = {
|
|
|
3798
3807
|
return null;
|
|
3799
3808
|
}
|
|
3800
3809
|
const currentStacks = targetBoss.skillStacks || 0;
|
|
3801
|
-
const
|
|
3802
|
-
|
|
3810
|
+
const consumedStacks = Math.floor(currentStacks / 2);
|
|
3811
|
+
if (consumedStacks <= 0) {
|
|
3812
|
+
return null;
|
|
3813
|
+
}
|
|
3814
|
+
const energyGained = consumedStacks * 10;
|
|
3815
|
+
const targetUpdates = {
|
|
3803
3816
|
name: targetBoss.name,
|
|
3804
3817
|
updates: {
|
|
3818
|
+
skillStacksChanged: -consumedStacks,
|
|
3819
|
+
// 消耗层数
|
|
3805
3820
|
energyChange: energyGained
|
|
3821
|
+
// 回复能量
|
|
3806
3822
|
}
|
|
3807
3823
|
};
|
|
3808
|
-
messages.push(`🎯
|
|
3824
|
+
messages.push(`🎯 【轰炸引导】触发:消耗${consumedStacks}层「光影之刃」,获得${energyGained}点能量`);
|
|
3809
3825
|
return {
|
|
3810
3826
|
messages,
|
|
3811
3827
|
targetUpdates
|
|
@@ -3821,7 +3837,6 @@ var BattleEffectProcessor = {
|
|
|
3821
3837
|
if (effectiveLayers > 0) {
|
|
3822
3838
|
messages.push(`☢️ 【辐射增伤】:当前${currentLayers}层,受到的伤害+${(effectiveLayers * 2.5).toFixed(1)}%`);
|
|
3823
3839
|
if (currentLayers > 20) {
|
|
3824
|
-
messages.push(`☢️ 注意:超过20层的辐射不会提供额外增伤`);
|
|
3825
3840
|
}
|
|
3826
3841
|
}
|
|
3827
3842
|
let targetUpdates = null;
|
|
@@ -3857,7 +3872,6 @@ var BattleEffectProcessor = {
|
|
|
3857
3872
|
if (effectiveLayers > 0) {
|
|
3858
3873
|
messages.push(`❄️ 【寒冷增伤】:当前${currentLayers}层,受到的伤害+${(effectiveLayers * 2.5).toFixed(1)}%`);
|
|
3859
3874
|
if (currentLayers > 20) {
|
|
3860
|
-
messages.push(`❄️ 注意:超过20层的寒冷不会提供额外增伤`);
|
|
3861
3875
|
}
|
|
3862
3876
|
}
|
|
3863
3877
|
let targetUpdates = null;
|