koishi-plugin-ggcevo-game 1.3.29 → 1.3.30

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 +42 -31
  2. package/package.json +1 -1
package/lib/index.js CHANGED
@@ -458,7 +458,7 @@ function apply(ctx, config) {
458
458
  description: "非致命军用炸药",
459
459
  price: 75,
460
460
  redCrystalCost: 0,
461
- effects: "对非建筑目标使用后,重置其技能计数"
461
+ effects: "对目标使用后,重置其技能计数(无法对重型和建筑目标使用)"
462
462
  },
463
463
  "CRED-17": {
464
464
  id: 3,
@@ -466,7 +466,7 @@ function apply(ctx, config) {
466
466
  description: "一个小型辛迪加机器人,可以破坏电子银行账户",
467
467
  price: 0,
468
468
  redCrystalCost: 60,
469
- effects: "此物品存放于仓库,仅在处于辛迪加海盗阵营时生效。每日签到金币奖励+50%,每拥有100金币,增加1%(至多增加100%)"
469
+ effects: "此物品存放于仓库,仅在处于辛迪加海盗阵营时生效。每日签到金币奖励+50%,每拥有100金币,增加1%(至多增加100%)"
470
470
  }
471
471
  };
472
472
  const modConfig = {
@@ -515,11 +515,11 @@ function apply(ctx, config) {
515
515
  common: [
516
516
  {
517
517
  name: "蚱蜢优购",
518
- effect: "下一次购买武器价格变为80%"
518
+ effect: "下一次购买武器的价格变为80%"
519
519
  },
520
520
  {
521
521
  name: "灵狐升运",
522
- effect: "下一次升级武器价格变为80%"
522
+ effect: "下一次升级武器的价格变为80%"
523
523
  },
524
524
  {
525
525
  name: "王权增幅",
@@ -554,7 +554,7 @@ function apply(ctx, config) {
554
554
  },
555
555
  {
556
556
  name: "酥手空空",
557
- effect: "失去50枚金币"
557
+ effect: "立即失去50枚金币"
558
558
  }
559
559
  ]
560
560
  };
@@ -666,7 +666,7 @@ function apply(ctx, config) {
666
666
  name: "异齿猛兽",
667
667
  type: "子代",
668
668
  maxHP: 5e3,
669
- tags: asBossTags(["重甲", "生物", "异形"]),
669
+ tags: asBossTags(["重甲", "生物", "重型", "异形"]),
670
670
  passive: asPassives(["弱化形态", "异形甲壳"])
671
671
  }
672
672
  ]
@@ -677,7 +677,7 @@ function apply(ctx, config) {
677
677
  name: "寒冰王蛇",
678
678
  type: "主宰",
679
679
  maxHP: 15e3,
680
- tags: asBossTags(["重甲", "惧热", "生物", "异形"]),
680
+ tags: asBossTags(["重甲", "生物", "惧热", "重型", "异形"]),
681
681
  passive: asPassives(["冰霜环绕", "冰霜进化"])
682
682
  },
683
683
  minions: [
@@ -685,7 +685,7 @@ function apply(ctx, config) {
685
685
  name: "冰蛇",
686
686
  type: "子代",
687
687
  maxHP: 5e3,
688
- tags: asBossTags(["惧热", "生物", "异形"]),
688
+ tags: asBossTags(["生物", "惧热", "异形"]),
689
689
  passive: asPassives(["弱化形态", "冰霜回复", "冰霜进化"])
690
690
  }
691
691
  ]
@@ -696,7 +696,7 @@ function apply(ctx, config) {
696
696
  name: "莽兽",
697
697
  type: "主宰",
698
698
  maxHP: 12e3,
699
- tags: asBossTags(["重甲", "生物", "异形"]),
699
+ tags: asBossTags(["重甲", "生物", "重型", "异形"]),
700
700
  passive: asPassives(["应激甲壳II", "求生本能II", "冷适应"])
701
701
  },
702
702
  minions: [
@@ -704,14 +704,14 @@ function apply(ctx, config) {
704
704
  name: "狂暴畸变体",
705
705
  type: "子代",
706
706
  maxHP: 4e3,
707
- tags: asBossTags(["重甲", "生物", "异形"]),
707
+ tags: asBossTags(["重甲", "生物", "重型", "异形"]),
708
708
  passive: asPassives(["弱化形态", "应激甲壳I", "求生本能I", "冷适应"])
709
709
  },
710
710
  {
711
711
  name: "剧毒畸变体",
712
712
  type: "子代",
713
713
  maxHP: 4e3,
714
- tags: asBossTags(["重甲", "生物", "异形"]),
714
+ tags: asBossTags(["重甲", "生物", "重型", "异形"]),
715
715
  passive: asPassives(["弱化形态", "应激甲壳I", "求生本能I", "冷适应"])
716
716
  }
717
717
  ]
@@ -962,13 +962,13 @@ function apply(ctx, config) {
962
962
  level: 4,
963
963
  cost: 4250,
964
964
  description: "提高挖矿效率,每日签到金币奖励+20%",
965
- careerBonus: "深空矿工/情报副官: 每日签到金币奖励+40%; 解锁太空“挖矿”权限; 建造矿骡协同挖矿,效率提高20%"
965
+ careerBonus: "深空矿工/情报副官: 每日签到金币奖励+40%; 解锁太空“挖矿”权限; 建造矿骡协同挖矿,效率提高25%"
966
966
  },
967
967
  {
968
968
  level: 5,
969
969
  cost: 5375,
970
970
  description: "提高挖矿效率,每日签到金币奖励+25%",
971
- careerBonus: "深空矿工/情报副官: 每日签到金币奖励+50%; 解锁太空“挖矿”权限; 建造矿骡协同挖矿,效率提高40%"
971
+ careerBonus: "深空矿工/情报副官: 每日签到金币奖励+50%; 解锁太空“挖矿”权限; 建造矿骡协同挖矿,效率提高50%"
972
972
  }
973
973
  ]
974
974
  },
@@ -2136,7 +2136,7 @@ function apply(ctx, config) {
2136
2136
  });
2137
2137
  if (!activeSentry.length) return {
2138
2138
  success: false,
2139
- message: "⚠️ 目标「空间站哨枪塔」未激活"
2139
+ message: "⚠️ 目标「空间站哨枪塔」未存活"
2140
2140
  };
2141
2141
  const [SentryTower] = await ctx.database.get("ggcevo_boss", {
2142
2142
  name: "空间站哨枪塔",
@@ -2177,9 +2177,9 @@ function apply(ctx, config) {
2177
2177
  name: target,
2178
2178
  isActive: true
2179
2179
  });
2180
- if (!targetboss.length || targetboss[0].Skillcountpoints === 0 || targetboss[0].tags.includes("建筑")) return {
2180
+ if (!targetboss.length || targetboss[0].Skillcountpoints === 0 || targetboss[0].tags.includes("建筑") || targetboss[0].tags.includes("重型")) return {
2181
2181
  success: false,
2182
- message: "您选择的不是合法目标(目标已死亡/目标的技能计数为0/目标拥有“建筑”标签)。"
2182
+ message: "您选择的不是合法目标(目标已死亡/目标的技能计数为0/目标拥有“建筑”或“重型”标签)。"
2183
2183
  };
2184
2184
  await ctx.database.set(
2185
2185
  "ggcevo_boss",
@@ -2292,7 +2292,8 @@ ${discountHint}${costLine}
2292
2292
  const actualCost = Math.floor(discountedCost);
2293
2293
  const [signInfo] = await ctx.database.get("ggcevo_sign", { handle });
2294
2294
  if (signInfo?.totalRewards < actualCost) {
2295
- return `❌ 需要 ${actualCost} 金币(原价${baseCost}),当前持有:${signInfo?.totalRewards || 0}`;
2295
+ const priceInfo2 = totalDiscount > 0 ? `需要 ${actualCost} 金币(原价${baseCost})` : `需要 ${actualCost} 金币`;
2296
+ return `❌ ${priceInfo2},当前持有:${signInfo?.totalRewards || 0}`;
2296
2297
  }
2297
2298
  await ctx.database.withTransaction(async () => {
2298
2299
  await ctx.database.set("ggcevo_sign", { handle }, {
@@ -4867,7 +4868,7 @@ ${passiveMessages.map((m) => `▸ ${m}`).join("\n")}`
4867
4868
  ...effectMessage.map((m) => `▸ ${m}`)
4868
4869
  // 这里添加符号
4869
4870
  ] : [],
4870
- `📊 理论伤害值:${damage}${hasCrit ? " (✨ 触发暴击)" : ""}`,
4871
+ `📊 理论伤害值:${damage}${hasCrit ? " (✨ 暴击)" : ""}`,
4871
4872
  "💡 提示:使用 -t 重甲,生物……(标签之间用英文逗号分隔) 添加测试标签"
4872
4873
  ].filter((line) => line).join("\n");
4873
4874
  });
@@ -5288,6 +5289,7 @@ ${passiveMessages.map((m) => `▸ ${m}`).join("\n")}`
5288
5289
  const joinDate = new Date(careerData.date);
5289
5290
  const formattedDate = `${joinDate.getFullYear()}年${joinDate.getMonth() + 1}月${joinDate.getDate()}日`;
5290
5291
  const infoCard = [
5292
+ `🎮 游戏句柄:${handle}`,
5291
5293
  `🎯 当前阵营:${careerData.group}`,
5292
5294
  `👔 当前职业:${careerData.career}`,
5293
5295
  `✨ 职业效果:${effectDisplay}`,
@@ -5305,7 +5307,7 @@ ${passiveMessages.map((m) => `▸ ${m}`).join("\n")}`
5305
5307
  }
5306
5308
  const promptMessage = careerData.group === "辛迪加海盗" ? "💡 提示:红晶可通过主动PK获得(无论胜负)" : "💡 提示:使用「转职」指令可变更职业";
5307
5309
  return [
5308
- `〓 ${handle}的职业档案 〓`,
5310
+ `〓 职业档案 〓`,
5309
5311
  ...infoCard,
5310
5312
  "〓═════════〓\n" + promptMessage
5311
5313
  // 提示信息放在分隔线下方
@@ -5646,21 +5648,20 @@ ${Spacestationtechnology.map((t) => t.techname).join("、")}`;
5646
5648
  `🕒 开始时间:${record.startTime.toLocaleString("zh-CN", { hour12: false })}`,
5647
5649
  `⏱️ 当前时间:${nowtime.toLocaleString("zh-CN", { hour12: false })}`,
5648
5650
  `⏳ 还需等待:${remaining}分钟`,
5649
- `💡 提示:挖矿1小时后可随时收获并自动开始下一轮`
5651
+ `💡 提示:挖矿1小时后可随时收获并自动开始下一轮挖矿`
5650
5652
  ].join("\n");
5651
5653
  }
5652
5654
  const halfHours = Math.floor(duration / 30);
5653
- let base = halfHours * 6.25;
5655
+ let base = halfHours * 6;
5654
5656
  base = Math.round(base);
5655
- base = Math.min(base, 300);
5657
+ base = Math.min(base, 288);
5656
5658
  let multiplier = 0;
5657
5659
  switch (tech.level) {
5658
5660
  case 4:
5659
- multiplier = 0.2;
5661
+ multiplier = 0.25;
5660
5662
  break;
5661
- // +20%
5662
5663
  case 5:
5663
- multiplier = 0.4;
5664
+ multiplier = 0.5;
5664
5665
  break;
5665
5666
  }
5666
5667
  const total = Math.round(base * (1 + multiplier));
@@ -5679,15 +5680,25 @@ ${Spacestationtechnology.map((t) => t.techname).join("、")}`;
5679
5680
  const minutes = mins % 60;
5680
5681
  return `${hours}小时${minutes}分钟`;
5681
5682
  }, "formatTime");
5682
- return [
5683
+ const reportLines = [
5683
5684
  "⛏️ 挖矿报告",
5684
5685
  `🕒 开始时间:${record.startTime.toLocaleString("zh-CN", { hour12: false })}`,
5685
5686
  `⏱️ 结束时间:${nowtime.toLocaleString("zh-CN", { hour12: false })}`,
5686
- `⏳ 持续时间:${formatTime(duration)}`,
5687
- `💰 实际获得:${total}金币`,
5688
- ...tech.level >= 4 ? [`🔧 挖矿系统 Lv.${tech.level}:金币+${multiplier * 100}%`] : [],
5689
- "💡 已自动开始下一轮挖矿"
5690
- ].join("\n");
5687
+ `⏳ 持续时间:${formatTime(duration)}`
5688
+ ];
5689
+ if (duration > 24 * 60) {
5690
+ reportLines.push("⚠️ 注意:收益已在24小时达到上限");
5691
+ }
5692
+ let rewardLine = `💰 实际获得:${total}金币`;
5693
+ if (tech.level >= 4) {
5694
+ rewardLine += ` (基础值:${base}金币)`;
5695
+ }
5696
+ reportLines.push(rewardLine);
5697
+ if (tech.level >= 4) {
5698
+ reportLines.push(`🔧 挖矿系统 Lv.${tech.level}:金币+${multiplier * 100}%`);
5699
+ }
5700
+ reportLines.push("💡 已自动开始下一轮挖矿");
5701
+ return reportLines.join("\n");
5691
5702
  });
5692
5703
  }
5693
5704
  __name(apply, "apply");
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.3.29",
4
+ "version": "1.3.30",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [