koishi-plugin-ggcevo-game 1.4.84 → 1.4.86
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 +1 -0
- package/lib/boss/attackhandling.d.ts +1 -0
- package/lib/index.js +30 -13
- package/lib/tasks.d.ts +11 -3
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ export declare function handlePrimaryAttack(ctx: Context, session: any, handle:
|
|
|
13
13
|
bileStacks: boolean;
|
|
14
14
|
pulseApplied: boolean;
|
|
15
15
|
arcApplied: boolean;
|
|
16
|
+
pulseGrenadeTriggered: boolean;
|
|
16
17
|
}>;
|
|
17
18
|
export declare function handleScatterAttack(ctx: Context, session: any, handle: string, config: Config, equippedWeapon: any, targetBoss: any, weaponName: string, activeBosses: any[], careerData: any): Promise<{
|
|
18
19
|
scatterEffectMessages: string[];
|
package/lib/index.js
CHANGED
|
@@ -507,7 +507,7 @@ var modConfig = {
|
|
|
507
507
|
},
|
|
508
508
|
"微型聚变核心": {
|
|
509
509
|
cost: 2750,
|
|
510
|
-
effect: "连续攻击叠加[聚变]效果,每层提高10%伤害(最多
|
|
510
|
+
effect: "连续攻击叠加[聚变]效果,每层提高10%伤害(最多6层)",
|
|
511
511
|
exclusiveTo: "聚变磁轨枪",
|
|
512
512
|
isExclusive: true
|
|
513
513
|
}
|
|
@@ -1116,7 +1116,7 @@ var Tasklist = {
|
|
|
1116
1116
|
id: 1,
|
|
1117
1117
|
type: "可重复任务",
|
|
1118
1118
|
target: 1,
|
|
1119
|
-
price:
|
|
1119
|
+
price: 75,
|
|
1120
1120
|
redCrystalCost: 0,
|
|
1121
1121
|
condition: "使用【伽马枪】攻击目标并成功增加其辐射层数"
|
|
1122
1122
|
},
|
|
@@ -1140,7 +1140,7 @@ var Tasklist = {
|
|
|
1140
1140
|
id: 4,
|
|
1141
1141
|
type: "可重复任务",
|
|
1142
1142
|
target: 1,
|
|
1143
|
-
price:
|
|
1143
|
+
price: 100,
|
|
1144
1144
|
redCrystalCost: 0,
|
|
1145
1145
|
condition: "使用【脉冲扰乱枪】攻击目标并成功减少其技能层数"
|
|
1146
1146
|
},
|
|
@@ -1148,9 +1148,17 @@ var Tasklist = {
|
|
|
1148
1148
|
id: 5,
|
|
1149
1149
|
type: "可重复任务",
|
|
1150
1150
|
target: 1,
|
|
1151
|
-
price:
|
|
1151
|
+
price: 100,
|
|
1152
1152
|
redCrystalCost: 0,
|
|
1153
1153
|
condition: "使用【弧焊枪】或【DG-3电弧步枪】攻击目标并成功消耗其能量"
|
|
1154
|
+
},
|
|
1155
|
+
"破甲先锋": {
|
|
1156
|
+
id: 6,
|
|
1157
|
+
type: "可重复任务",
|
|
1158
|
+
target: 1,
|
|
1159
|
+
price: 150,
|
|
1160
|
+
redCrystalCost: 0,
|
|
1161
|
+
condition: "使用【M4AE脉冲步枪】攻击目标并成功削减其护甲"
|
|
1154
1162
|
}
|
|
1155
1163
|
};
|
|
1156
1164
|
|
|
@@ -3663,6 +3671,7 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, hasCr
|
|
|
3663
3671
|
let bileDetonationTrigger = false;
|
|
3664
3672
|
let spawnNewBossMarks = [];
|
|
3665
3673
|
let armor = 0;
|
|
3674
|
+
let pulseGrenadeTriggered = false;
|
|
3666
3675
|
const weaponData = weaponConfig[weaponName] || { type: "" };
|
|
3667
3676
|
let doubleAstralWind = false;
|
|
3668
3677
|
let isolatedImmunityMark = false;
|
|
@@ -3736,6 +3745,7 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, hasCr
|
|
|
3736
3745
|
const pulseEffect = BattleEffectProcessor.handlePulseRifleEffect(weaponName, targetBoss);
|
|
3737
3746
|
if (pulseEffect) {
|
|
3738
3747
|
messages.push(...pulseEffect.messages);
|
|
3748
|
+
pulseGrenadeTriggered = pulseEffect.pulseGrenadeTriggered;
|
|
3739
3749
|
if (pulseEffect.targetUpdates) {
|
|
3740
3750
|
updateStatsByName(pulseEffect.targetUpdates.name, pulseEffect.targetUpdates.updates);
|
|
3741
3751
|
}
|
|
@@ -3941,7 +3951,7 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, hasCr
|
|
|
3941
3951
|
let adjustedNerfMultiplier = totalNerfMultiplier * (1 - ignoreRate);
|
|
3942
3952
|
const damageMultiplier = 1 + totalBuffMultiplier - adjustedNerfMultiplier;
|
|
3943
3953
|
finalDamage = damage * damageMultiplier;
|
|
3944
|
-
if (
|
|
3954
|
+
if (pulseGrenadeTriggered || fusionEffect?.fusionExplosionTriggered) {
|
|
3945
3955
|
finalDamage *= 1.5;
|
|
3946
3956
|
}
|
|
3947
3957
|
if (hasCrit) {
|
|
@@ -4034,8 +4044,9 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, hasCr
|
|
|
4034
4044
|
energyDrained,
|
|
4035
4045
|
layerReduced,
|
|
4036
4046
|
bileDetonationTrigger,
|
|
4037
|
-
spawnNewBossMarks
|
|
4047
|
+
spawnNewBossMarks,
|
|
4038
4048
|
// +++ 新增生成标记 +++
|
|
4049
|
+
pulseGrenadeTriggered
|
|
4039
4050
|
};
|
|
4040
4051
|
}
|
|
4041
4052
|
__name(applyPassiveEffects, "applyPassiveEffects");
|
|
@@ -5153,7 +5164,7 @@ function calculateModifiers(equippedWeapon, weaponName) {
|
|
|
5153
5164
|
}
|
|
5154
5165
|
if (equippedWeapon.installedMods?.includes("微型聚变核心")) {
|
|
5155
5166
|
const currentCombo = equippedWeapon?.comboCount || 0;
|
|
5156
|
-
const maxStacks =
|
|
5167
|
+
const maxStacks = 6;
|
|
5157
5168
|
const bonusPerCombo = 0.1;
|
|
5158
5169
|
const effectiveStacks = Math.min(currentCombo, maxStacks);
|
|
5159
5170
|
const bonusDamage = effectiveStacks * bonusPerCombo;
|
|
@@ -5422,7 +5433,8 @@ async function handlePrimaryAttack(ctx, session, handle, config, equippedWeapon,
|
|
|
5422
5433
|
freezing: EffectProcessor.coldLayerAdded,
|
|
5423
5434
|
bileStacks: EffectProcessor.bileDetonationTrigger,
|
|
5424
5435
|
pulseApplied: EffectProcessor.layerReduced,
|
|
5425
|
-
arcApplied: EffectProcessor.energyDrained
|
|
5436
|
+
arcApplied: EffectProcessor.energyDrained,
|
|
5437
|
+
pulseGrenadeTriggered: EffectProcessor.pulseGrenadeTriggered
|
|
5426
5438
|
};
|
|
5427
5439
|
}
|
|
5428
5440
|
__name(handlePrimaryAttack, "handlePrimaryAttack");
|
|
@@ -5434,13 +5446,13 @@ async function handleScatterAttack(ctx, session, handle, config, equippedWeapon,
|
|
|
5434
5446
|
const taskUpdates = [];
|
|
5435
5447
|
let scatterRatio = 0;
|
|
5436
5448
|
if (weaponName === "碎骨步枪") {
|
|
5437
|
-
scatterEffectMessages.push("
|
|
5449
|
+
scatterEffectMessages.push("【光束曲射晶片】触发散射攻击!");
|
|
5438
5450
|
scatterRatio = 1;
|
|
5439
5451
|
} else if (weaponName === "中子步枪") {
|
|
5440
|
-
scatterEffectMessages.push("
|
|
5452
|
+
scatterEffectMessages.push("【中子步枪】触发散射攻击!");
|
|
5441
5453
|
scatterRatio = 1.2;
|
|
5442
5454
|
} else if (weaponName === "DG-3电弧步枪") {
|
|
5443
|
-
scatterEffectMessages.push("
|
|
5455
|
+
scatterEffectMessages.push("【DG-3电弧步枪】触发散射攻击!");
|
|
5444
5456
|
scatterRatio = 0.3;
|
|
5445
5457
|
}
|
|
5446
5458
|
for (const secondaryTarget of secondaryTargets) {
|
|
@@ -5478,6 +5490,9 @@ async function handleScatterAttack(ctx, session, handle, config, equippedWeapon,
|
|
|
5478
5490
|
if (EffectProcessor.energyDrained) {
|
|
5479
5491
|
taskUpdates.push({ taskId: 5, count: 1 });
|
|
5480
5492
|
}
|
|
5493
|
+
if (EffectProcessor.pulseGrenadeTriggered) {
|
|
5494
|
+
taskUpdates.push({ taskId: 6, count: 1 });
|
|
5495
|
+
}
|
|
5481
5496
|
const isDead = currentHP <= 0;
|
|
5482
5497
|
scatterEffectMessages.push(...EffectProcessor.messages.map((m) => ` 对 ${secondaryTarget.name} ${m}`));
|
|
5483
5498
|
if (isDead) {
|
|
@@ -8540,6 +8555,9 @@ ${validTypes.join("、")}`;
|
|
|
8540
8555
|
if (primaryAttackResult.arcApplied) {
|
|
8541
8556
|
taskUpdates.push({ taskId: 5, count: 1 });
|
|
8542
8557
|
}
|
|
8558
|
+
if (primaryAttackResult.pulseGrenadeTriggered) {
|
|
8559
|
+
taskUpdates.push({ taskId: 6, count: 1 });
|
|
8560
|
+
}
|
|
8543
8561
|
if (scatterResult && scatterResult.taskUpdates) {
|
|
8544
8562
|
scatterResult.taskUpdates.forEach((update) => {
|
|
8545
8563
|
taskUpdates.push(update);
|
|
@@ -9936,8 +9954,7 @@ ${Spacestationtechnology.map((t) => t.techname).join("、")}`;
|
|
|
9936
9954
|
}
|
|
9937
9955
|
}
|
|
9938
9956
|
response.push(
|
|
9939
|
-
`📊 累计完成次数: ${newCompletions}
|
|
9940
|
-
`⚙️ 剩余进度点数: ${remainingProgress}/${taskConfig.target}`
|
|
9957
|
+
`📊 累计完成次数: ${newCompletions}次`
|
|
9941
9958
|
);
|
|
9942
9959
|
return response.join("\n");
|
|
9943
9960
|
} catch (error) {
|
package/lib/tasks.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export declare const Tasklist: {
|
|
|
3
3
|
readonly id: 1;
|
|
4
4
|
readonly type: "可重复任务";
|
|
5
5
|
readonly target: 1;
|
|
6
|
-
readonly price:
|
|
6
|
+
readonly price: 75;
|
|
7
7
|
readonly redCrystalCost: 0;
|
|
8
8
|
readonly condition: "使用【伽马枪】攻击目标并成功增加其辐射层数";
|
|
9
9
|
};
|
|
@@ -27,7 +27,7 @@ export declare const Tasklist: {
|
|
|
27
27
|
readonly id: 4;
|
|
28
28
|
readonly type: "可重复任务";
|
|
29
29
|
readonly target: 1;
|
|
30
|
-
readonly price:
|
|
30
|
+
readonly price: 100;
|
|
31
31
|
readonly redCrystalCost: 0;
|
|
32
32
|
readonly condition: "使用【脉冲扰乱枪】攻击目标并成功减少其技能层数";
|
|
33
33
|
};
|
|
@@ -35,8 +35,16 @@ export declare const Tasklist: {
|
|
|
35
35
|
readonly id: 5;
|
|
36
36
|
readonly type: "可重复任务";
|
|
37
37
|
readonly target: 1;
|
|
38
|
-
readonly price:
|
|
38
|
+
readonly price: 100;
|
|
39
39
|
readonly redCrystalCost: 0;
|
|
40
40
|
readonly condition: "使用【弧焊枪】或【DG-3电弧步枪】攻击目标并成功消耗其能量";
|
|
41
41
|
};
|
|
42
|
+
readonly 破甲先锋: {
|
|
43
|
+
readonly id: 6;
|
|
44
|
+
readonly type: "可重复任务";
|
|
45
|
+
readonly target: 1;
|
|
46
|
+
readonly price: 150;
|
|
47
|
+
readonly redCrystalCost: 0;
|
|
48
|
+
readonly condition: "使用【M4AE脉冲步枪】攻击目标并成功削减其护甲";
|
|
49
|
+
};
|
|
42
50
|
};
|