koishi-plugin-ggcevo-game 1.5.9 → 1.5.11

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.
@@ -403,7 +403,7 @@ export declare const BattleEffectProcessor: {
403
403
  armorReduction: number;
404
404
  layerAdded: boolean;
405
405
  } | null;
406
- handleColdEffect: (targetBoss: any, weaponName: string) => {
406
+ handleColdEffect: (targetBoss: any, weaponName: string, equippedWeapon: any) => {
407
407
  messages: string[];
408
408
  targetUpdates: {
409
409
  name: string;
package/lib/index.js CHANGED
@@ -534,6 +534,12 @@ var modConfig = {
534
534
  effect: "攻击消耗目标双倍能量值",
535
535
  exclusiveTo: "弧焊枪",
536
536
  isExclusive: true
537
+ },
538
+ "氮气压缩核心": {
539
+ cost: 2e3,
540
+ effect: "双倍叠加[寒冷]层数",
541
+ exclusiveTo: "零度之下",
542
+ isExclusive: true
537
543
  }
538
544
  };
539
545
 
@@ -1786,7 +1792,7 @@ var BattleEffectProcessor = {
1786
1792
  }, "handleAlienShell"),
1787
1793
  // 孤立无援处理(活跃Boss中仅自己时增伤20%)
1788
1794
  handleIsolated: /* @__PURE__ */ __name(function(targetBoss, activeBosses, tempMark) {
1789
- if (tempMark || targetBoss.name === "测试假人") {
1795
+ if (tempMark || targetBoss?.testTag) {
1790
1796
  return null;
1791
1797
  }
1792
1798
  const isIsolated = activeBosses.length === 1 && // 活跃Boss仅1个
@@ -3161,7 +3167,7 @@ var BattleEffectProcessor = {
3161
3167
  };
3162
3168
  }, "handleRadiationEffect"),
3163
3169
  // 统一的寒冷效果处理函数
3164
- handleColdEffect: /* @__PURE__ */ __name(function(targetBoss, weaponName) {
3170
+ handleColdEffect: /* @__PURE__ */ __name(function(targetBoss, weaponName, equippedWeapon) {
3165
3171
  const messages = [];
3166
3172
  let layerAdded = false;
3167
3173
  const currentLayers = targetBoss.coldLayers || 0;
@@ -3173,16 +3179,18 @@ var BattleEffectProcessor = {
3173
3179
  }
3174
3180
  }
3175
3181
  let targetUpdates = null;
3182
+ let layerIncrement = 0;
3176
3183
  if (weaponName === "零度之下") {
3184
+ const hasNitrogenCore = equippedWeapon.installedMods?.includes("氮气压缩核心");
3185
+ layerIncrement = hasNitrogenCore ? 2 : 1;
3177
3186
  targetUpdates = {
3178
3187
  name: targetBoss.name,
3179
3188
  updates: {
3180
- coldLayersChange: 1
3181
- // 寒冷层数增加1
3189
+ coldLayersChange: layerIncrement
3190
+ // 使用计算后的增量
3182
3191
  }
3183
3192
  };
3184
- const newLayers = currentLayers + 1;
3185
- messages.push(`❄️【零度之下】武器效果: 获得1层「寒冷」`);
3193
+ messages.push(`❄️【零度之下】武器效果:获得${layerIncrement}层「寒冷」`);
3186
3194
  layerAdded = true;
3187
3195
  }
3188
3196
  return {
@@ -3190,7 +3198,6 @@ var BattleEffectProcessor = {
3190
3198
  targetUpdates,
3191
3199
  buffMultiplier,
3192
3200
  layerAdded
3193
- // 返回层数增加标记
3194
3201
  };
3195
3202
  }, "handleColdEffect"),
3196
3203
  // 统一的武器能量消耗处理函数(已添加模组检测)
@@ -4324,7 +4331,7 @@ function applyPassiveEffects(targetBoss, activeBosses, weaponName, damage, hasCr
4324
4331
  }
4325
4332
  radiationLayerAdded = radiationResult.layerAdded;
4326
4333
  }
4327
- const coldResult = BattleEffectProcessor.handleColdEffect(targetBoss, weaponName);
4334
+ const coldResult = BattleEffectProcessor.handleColdEffect(targetBoss, weaponName, equippedWeapon);
4328
4335
  if (coldResult) {
4329
4336
  messages.push(...coldResult.messages);
4330
4337
  if (coldResult.buffMultiplier) {
@@ -4970,6 +4977,20 @@ var ggcevoUpdates = [
4970
4977
  - 赛季奖励中新增辛迪加海盗阵营的排名奖励
4971
4978
  - 王权增幅祈愿的伤害加成更改为+5%
4972
4979
  `.trim()
4980
+ },
4981
+ {
4982
+ version: "1.5.10",
4983
+ time: "2025-07-02",
4984
+ content: `
4985
+ - 新增攻击假人指令可自定义假人名称
4986
+ `.trim()
4987
+ },
4988
+ {
4989
+ version: "1.5.11",
4990
+ time: "2025-07-02",
4991
+ content: `
4992
+ - 新增专属改装:氮气压缩核心
4993
+ `.trim()
4973
4994
  }
4974
4995
  ];
4975
4996
  function compareVersions(a, b) {
@@ -6177,7 +6198,9 @@ async function handleScatterAttack(ctx, session, handle, config, equippedWeapon,
6177
6198
  taskUpdates.push({ taskId: 1, count });
6178
6199
  }
6179
6200
  if (EffectProcessor.coldLayerAdded) {
6180
- taskUpdates.push({ taskId: 2, count: 1 });
6201
+ const hasNitrogenCore = equippedWeapon.installedMods?.includes("氮气压缩核心");
6202
+ const count = hasNitrogenCore ? 2 : 1;
6203
+ taskUpdates.push({ taskId: 2, count });
6181
6204
  }
6182
6205
  if (EffectProcessor.bileDetonationTrigger) {
6183
6206
  taskUpdates.push({ taskId: 3, count: 1 });
@@ -9353,7 +9376,9 @@ ${validTypes.join("、")}`;
9353
9376
  taskUpdates.push({ taskId: 1, count });
9354
9377
  }
9355
9378
  if (primaryAttackResult.freezing) {
9356
- taskUpdates.push({ taskId: 2, count: 1 });
9379
+ const hasNitrogenCore = equippedWeapon.installedMods?.includes("氮气压缩核心");
9380
+ const count = hasNitrogenCore ? 2 : 1;
9381
+ taskUpdates.push({ taskId: 2, count });
9357
9382
  }
9358
9383
  if (primaryAttackResult.bileStacks) {
9359
9384
  taskUpdates.push({ taskId: 3, count: 1 });
@@ -9426,9 +9451,12 @@ ${validTypes.join("、")}`;
9426
9451
  cleanerRewardBroadcast
9427
9452
  );
9428
9453
  });
9429
- ctx.command("ggcevo/攻击假人").option("tags", "-t <tags:string> 添加BOSS标签(逗号分隔)").option("passives", "-p <passives:string> 添加被动技能(逗号分隔)").option("hp", "-l <hp:number> 模拟假人血量").option("energy", "-e <energy:number> 模拟假人能量").option("skillStacks", "-s <stacks:number> 技能层数").option("radiation", "-r <rad:number> 辐射层数").option("cold", "-c <cold:number> 寒冷层数").option("status", "-a <status:number> 状态层数").option("armor", "-d <armor:number> 护甲").option("burn", "-b <burn:number> 燃烧层数").action(async (argv) => {
9454
+ ctx.command("ggcevo/攻击假人 [name]").option("tags", "-t <tags:string> 添加BOSS标签(逗号分隔)").option("passives", "-p <passives:string> 添加被动技能(逗号分隔)").option("hp", "-l <hp:number> 模拟假人血量").option("energy", "-e <energy:number> 模拟假人能量").option("skillStacks", "-s <stacks:number> 技能层数").option("radiation", "-r <rad:number> 辐射层数").option("cold", "-c <cold:number> 寒冷层数").option("status", "-a <status:number> 状态层数").option("armor", "-d <armor:number> 护甲").option("burn", "-b <burn:number> 燃烧层数").action(async (argv, name2) => {
9430
9455
  const session = argv.session;
9431
9456
  const { options } = argv;
9457
+ if (!name2) {
9458
+ name2 = "测试假人";
9459
+ }
9432
9460
  let hp = 1e4;
9433
9461
  if (typeof options.hp === "number") {
9434
9462
  hp = Math.max(1, Math.min(options.hp, 1e4));
@@ -9461,7 +9489,7 @@ ${validTypes.join("、")}`;
9461
9489
  });
9462
9490
  if (!equippedWeapon) return '请先输入"装备 武器名称"后再测试。';
9463
9491
  const dummyBoss = {
9464
- name: "测试假人",
9492
+ name: name2,
9465
9493
  HP: hp,
9466
9494
  type: "主宰",
9467
9495
  groupId: 0,
@@ -9476,7 +9504,8 @@ ${validTypes.join("、")}`;
9476
9504
  energy,
9477
9505
  armor,
9478
9506
  isActive: true,
9479
- lastWeaponName: ""
9507
+ lastWeaponName: "",
9508
+ testTag: true
9480
9509
  };
9481
9510
  const activeBosses = [dummyBoss];
9482
9511
  const weaponConfigEntry = Object.entries(weaponConfig).find(([_, c]) => c.id === equippedWeapon.weaponId);
package/lib/weapons.d.ts CHANGED
@@ -496,4 +496,10 @@ export declare const modConfig: {
496
496
  exclusiveTo: string;
497
497
  isExclusive: boolean;
498
498
  };
499
+ 氮气压缩核心: {
500
+ cost: number;
501
+ effect: string;
502
+ exclusiveTo: string;
503
+ isExclusive: boolean;
504
+ };
499
505
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-ggcevo-game",
3
3
  "description": "《星际争霸2》咕咕虫-evolved地图的专属游戏助手插件,集成天梯排行、抽奖系统、签到福利、兑换商城等丰富功能。",
4
- "version": "1.5.9",
4
+ "version": "1.5.11",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [