koishi-plugin-ggcevo-game 1.6.56 → 1.6.58

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.
Files changed (2) hide show
  1. package/lib/index.js +16 -17
  2. package/package.json +1 -1
package/lib/index.js CHANGED
@@ -688,7 +688,7 @@ var SyndicatedItems = {
688
688
  price: 0,
689
689
  redCrystalCost: 0,
690
690
  condition: "无法对空中目标使用",
691
- effects: "对目标造成100伤害;对建筑目标造成3倍伤害"
691
+ effects: "对目标造成100伤害;对建筑目标造成3倍伤害(目标血量最多降低至1点)"
692
692
  }
693
693
  };
694
694
  var initDefaultItems = {
@@ -5929,30 +5929,26 @@ async function applyItemEffect(ctx, session, handle, itemConfig2, target) {
5929
5929
  isDefeated: false
5930
5930
  };
5931
5931
  }
5932
+ if (targetBoss.HP === 1) {
5933
+ return {
5934
+ success: false,
5935
+ message: `目标「${target}」血量已是1点,无法使用${itemName}。`,
5936
+ isDefeated: false
5937
+ };
5938
+ }
5932
5939
  let baseDamage = 100;
5933
5940
  if (playerCareer === "破坏者") {
5934
5941
  baseDamage = Math.floor(baseDamage * 1.5);
5935
5942
  }
5936
5943
  const isBuilding = targetBoss.tags?.includes("建筑");
5937
5944
  const damage = isBuilding ? baseDamage * 3 : baseDamage;
5938
- const actualDamage = Math.min(damage, targetBoss.HP);
5945
+ const actualDamage = Math.min(damage, targetBoss.HP - 1);
5939
5946
  const newHP = targetBoss.HP - actualDamage;
5940
- const isDefeated = newHP <= 0;
5941
5947
  await ctx.database.set(
5942
5948
  "ggcevo_boss",
5943
5949
  { name: target },
5944
- {
5945
- HP: Math.max(newHP, 0),
5946
- isActive: !isDefeated
5947
- }
5950
+ { HP: newHP }
5948
5951
  );
5949
- const [damageRecords] = await ctx.database.get("ggcevo_boss_damage", { handle });
5950
- if (!damageRecords)
5951
- return {
5952
- success: false,
5953
- message: "🚫 无法获取伤害记录,请先攻击一次。",
5954
- isDefeated: false
5955
- };
5956
5952
  if (actualDamage > 0) {
5957
5953
  await ctx.database.withTransaction(async () => {
5958
5954
  const signRecords = await ctx.database.get("ggcevo_sign", { handle });
@@ -5960,6 +5956,7 @@ async function applyItemEffect(ctx, session, handle, itemConfig2, target) {
5960
5956
  handle,
5961
5957
  totalRewards: (signRecords[0]?.totalRewards || 0) + damage
5962
5958
  }], ["handle"]);
5959
+ const [damageRecords] = await ctx.database.get("ggcevo_boss_damage", { handle });
5963
5960
  await ctx.database.upsert("ggcevo_boss_damage", [{
5964
5961
  handle,
5965
5962
  playerName: session.username,
@@ -5968,10 +5965,12 @@ async function applyItemEffect(ctx, session, handle, itemConfig2, target) {
5968
5965
  });
5969
5966
  }
5970
5967
  const careerBonusMsg = playerCareer === "破坏者" ? `(破坏者使用爆破物的效果提高50%)` : "";
5968
+ const lowHpMsg = newHP === 1 ? ",目标血量已降至1点" : "";
5971
5969
  return {
5972
5970
  success: true,
5973
- message: `成功使用${itemName},对${isBuilding ? "建筑目标" : "目标"}「${target}」造成${damage}点伤害${isDefeated ? ",目标已被消灭" : ""}${careerBonusMsg}`,
5974
- isDefeated
5971
+ message: `成功使用${itemName},对${isBuilding ? "建筑目标" : "目标"}「${target}」造成${actualDamage}点伤害${lowHpMsg}${careerBonusMsg}`,
5972
+ isDefeated: false
5973
+ // 永远不会消灭目标
5975
5974
  };
5976
5975
  }
5977
5976
  return {
@@ -10758,7 +10757,7 @@ ${testResult.passiveMessages.map((m) => `▸ ${m}`).join("\n")}`
10758
10757
  await ctx.broadcast(groupId, kfcMsg);
10759
10758
  break;
10760
10759
  case "夜市赠礼":
10761
- const [backpack] = await ctx.database.get("ggcevo_backpack", { handle, itemId: 1 });
10760
+ const [backpack] = await ctx.database.get("ggcevo_backpack", { handle, itemId: 8 });
10762
10761
  await ctx.database.upsert("ggcevo_backpack", [{
10763
10762
  handle,
10764
10763
  itemId: 8,
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.6.56",
4
+ "version": "1.6.58",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [