koishi-plugin-ggcevo-game 1.4.95 → 1.5.0

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/index.js CHANGED
@@ -652,7 +652,7 @@ var spaceStationCrewConfig = [
652
652
  },
653
653
  {
654
654
  professionName: "警卫长",
655
- effect: "攻击伤害+5%,攻击获得的金币+100%",
655
+ effect: "攻击伤害+5%,攻击获得的金币+75%",
656
656
  requirements: "当期伤害榜前二十名;职业为警卫员下士",
657
657
  Jobtransfer: true,
658
658
  costcoins: 3e3
@@ -674,9 +674,9 @@ var spaceStationCrewConfig = [
674
674
  {
675
675
  professionName: "情报副官",
676
676
  effect: "升级空间站科技享有10%的折扣",
677
- requirements: "至少一个空间站科技等级≥3级",
677
+ requirements: "至少一个空间站科技等级≥5级",
678
678
  Jobtransfer: true,
679
- costcoins: 2e3
679
+ costcoins: 3e3
680
680
  },
681
681
  {
682
682
  professionName: "总工程师",
@@ -852,10 +852,10 @@ async function checkTransferRequirements(ctx, handle, profession) {
852
852
  }
853
853
  case "情报副官":
854
854
  const techs = await ctx.database.get("ggcevo_tech", { handle });
855
- const hasValidTech = techs.some((t) => t.level >= 3);
855
+ const hasValidTech = techs.some((t) => t.level >= 5);
856
856
  return {
857
857
  success: hasValidTech,
858
- message: hasValidTech ? "" : "需要至少一个空间站科技等级≥3级"
858
+ message: hasValidTech ? "" : "需要至少一个空间站科技等级≥5级"
859
859
  };
860
860
  case "能量武器专家":
861
861
  const hasEnergyWeapon = weapons.some((weapon) => {
@@ -1037,8 +1037,8 @@ var Spacestationtechnology = [
1037
1037
  {
1038
1038
  level: 5,
1039
1039
  cost: 4650,
1040
- description: "提升空间站武器等级,升级武器享有25%的折扣",
1041
- careerBonus: "升级武器额外享有25%的折扣; 解锁传奇武器购买权限1次"
1040
+ description: "提升空间站武器等级,升级武器享有25%的折扣; 解锁传奇武器购买权限1次",
1041
+ careerBonus: "升级武器额外享有25%的折扣; 解锁全部传奇武器购买权限(仅限武器中士)"
1042
1042
  }
1043
1043
  ]
1044
1044
  },
@@ -4590,6 +4590,34 @@ var wishConfig = {
4590
4590
  ]
4591
4591
  };
4592
4592
 
4593
+ // src/update.ts
4594
+ var ggcevoUpdates = [
4595
+ {
4596
+ version: "1.5.0",
4597
+ time: "2025-06-27",
4598
+ content: `
4599
+ - 回调“伽马辐射”任务奖励为50金币
4600
+ - 修改武器系统科技
4601
+ - 提高人类联盟情报副官转职门槛
4602
+ - 削弱人类联盟警卫长攻击奖励为+75%
4603
+ - 新增“技能”指令用于查询各异形的技能列表
4604
+ `.trim()
4605
+ }
4606
+ ];
4607
+ function compareVersions(a, b) {
4608
+ const aParts = a.split(".").map(Number);
4609
+ const bParts = b.split(".").map(Number);
4610
+ for (let i = 0; i < Math.max(aParts.length, bParts.length); i++) {
4611
+ const aVal = aParts[i] || 0;
4612
+ const bVal = bParts[i] || 0;
4613
+ if (aVal !== bVal) {
4614
+ return bVal - aVal;
4615
+ }
4616
+ }
4617
+ return 0;
4618
+ }
4619
+ __name(compareVersions, "compareVersions");
4620
+
4593
4621
  // src/utils.ts
4594
4622
  async function gachaWithPity(ctx, handle) {
4595
4623
  const [record] = await ctx.database.get("ggcevo_records", { handle });
@@ -5863,8 +5891,8 @@ async function calculateRewards(ctx, handle, totalDamage) {
5863
5891
  careerMultiplier = 50;
5864
5892
  careerMessage = "🛡️ 警卫员下士职业:+50%金币";
5865
5893
  } else if (career === "警卫长") {
5866
- careerMultiplier = 100;
5867
- careerMessage = "🛡️ 警卫长职业:+100%金币";
5894
+ careerMultiplier = 75;
5895
+ careerMessage = "🛡️ 警卫长职业:+75%金币";
5868
5896
  }
5869
5897
  const totalBonusPercent = careerMultiplier + techBonusPercent;
5870
5898
  const totalBonusFactor = 1 + totalBonusPercent / 100;
@@ -8254,7 +8282,7 @@ ${Object.keys(categoryStats).join("、")}`;
8254
8282
  "------------------"
8255
8283
  ].filter(Boolean).join("\n");
8256
8284
  });
8257
- const permissionNotice = category === "传奇武器" ? "⚠️ 购买传奇武器要求:人类联盟阵营+武器系统5级+情报副官/武器中士职业+传奇武器购买权限" : null;
8285
+ const permissionNotice = category === "传奇武器" ? "⚠️ 购买传奇武器要求:人类联盟阵营+武器系统5级+传奇武器购买权限" : null;
8258
8286
  return [
8259
8287
  `🏪 咕咕武器库 - ${category} 🏪`,
8260
8288
  '使用"购买 武器名称"指令进行购买',
@@ -8334,21 +8362,21 @@ ${validTypes.join("、")}`;
8334
8362
  if (existingWeapon.length > 0) return `❌ 您已经拥有${item},无法重复购买`;
8335
8363
  }
8336
8364
  if (isLegendaryWeapon) {
8337
- const [permissions] = await ctx.database.get("ggcevo_permissions", { handle });
8338
- if (!permissions || permissions.legendarypermissions <= 0) {
8339
- return '❌ 购买传奇武器需要"传奇武器购买权限",您当前没有购买权限。';
8340
- }
8341
8365
  const [careerData2] = await ctx.database.get("ggcevo_careers", { handle });
8342
8366
  const [weaponTech] = await ctx.database.get("ggcevo_tech", { handle, techId: 2 });
8367
+ const weaponSystemLevel = weaponTech?.level || 0;
8343
8368
  if (!careerData2 || careerData2.group !== "人类联盟") {
8344
8369
  return '❌ 购买传奇武器需要在"人类联盟"阵营。';
8345
8370
  }
8346
- const weaponSystemLevel = weaponTech?.level || 0;
8347
8371
  if (weaponSystemLevel < 5) {
8348
8372
  return `❌ 购买传奇武器需要将武器系统升级到5级(当前等级:${weaponSystemLevel})。`;
8349
8373
  }
8350
- if (!careerData2.career || !["情报副官", "武器中士"].includes(careerData2.career)) {
8351
- return `❌ 购买传奇武器需要成为"情报副官"或"武器中士"(当前职业:${careerData2.career || "无"})。`;
8374
+ const isWeaponSpecialist = careerData2?.career === "武器中士";
8375
+ if (!isWeaponSpecialist) {
8376
+ const [permissions] = await ctx.database.get("ggcevo_permissions", { handle });
8377
+ if (!permissions || permissions.legendarypermissions <= 0) {
8378
+ return '❌ 购买传奇武器需要"传奇武器购买权限",您当前没有购买权限。';
8379
+ }
8352
8380
  }
8353
8381
  }
8354
8382
  const [signInfo] = await ctx.database.get("ggcevo_sign", { handle });
@@ -8398,7 +8426,7 @@ ${validTypes.join("、")}`;
8398
8426
  isused: true
8399
8427
  });
8400
8428
  }
8401
- if (isLegendaryWeapon) {
8429
+ if (isLegendaryWeapon && careerData?.career !== "武器中士") {
8402
8430
  const [permissionRecord] = await ctx.database.get("ggcevo_permissions", { handle });
8403
8431
  if (!permissionRecord || permissionRecord.legendarypermissions <= 0) {
8404
8432
  throw new Error("传奇武器购买权限不足");
@@ -8450,9 +8478,14 @@ ${validTypes.join("、")}`;
8450
8478
  message += `花费 ${actualPrice} 金币`;
8451
8479
  }
8452
8480
  if (isLegendaryWeapon) {
8453
- const [permissions] = await ctx.database.get("ggcevo_permissions", { handle });
8454
- message += `
8481
+ if (careerData?.career !== "武器中士") {
8482
+ const [permissions] = await ctx.database.get("ggcevo_permissions", { handle });
8483
+ message += `
8455
8484
  扣除 1 次传奇武器购买权限,剩余次数:${permissions?.legendarypermissions || 0}`;
8485
+ } else {
8486
+ message += `
8487
+ 【武器中士特权】本次购买未消耗传奇武器权限`;
8488
+ }
8456
8489
  }
8457
8490
  if (isWeapon) {
8458
8491
  if (isAutoEquipped) {
@@ -10480,6 +10513,31 @@ ${Spacestationtechnology.map((t) => t.techname).join("、")}`;
10480
10513
  `注:部分技能可触发衍生技能,最多显示二级衍生技能`
10481
10514
  ].join("\n");
10482
10515
  });
10516
+ ctx.command("ggcevo/咕咕更新").action(async ({ session }) => {
10517
+ try {
10518
+ const latestUpdates = [...ggcevoUpdates].sort((a, b) => compareVersions(a.version, b.version)).slice(0, 3);
10519
+ if (latestUpdates.length === 0) {
10520
+ return "🛑 暂无更新记录";
10521
+ }
10522
+ let message = "🕊️ 咕咕之战版本更新内容:\n\n";
10523
+ for (const update of latestUpdates) {
10524
+ message += `🔹【版本 v${update.version} | ${update.time}】
10525
+ `;
10526
+ message += `${update.content}
10527
+
10528
+ `;
10529
+ }
10530
+ const latestVersion = latestUpdates[0].version;
10531
+ message += `✅ 当前最新版本:v${latestVersion}
10532
+ `;
10533
+ message += "输入「ggcevo」查看全部指令\n";
10534
+ message += "输入「ggcevo/武器库」查看可购买武器";
10535
+ return message;
10536
+ } catch (error) {
10537
+ ctx.logger.error("咕咕更新指令出错:", error);
10538
+ return "🛠️ 系统维护中,请稍后再试";
10539
+ }
10540
+ });
10483
10541
  }
10484
10542
  __name(apply, "apply");
10485
10543
  // Annotate the CommonJS export names for ESM import in node:
@@ -0,0 +1,6 @@
1
+ export declare const ggcevoUpdates: {
2
+ version: string;
3
+ time: string;
4
+ content: string;
5
+ }[];
6
+ export declare function compareVersions(a: any, b: any): number;
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.4.95",
4
+ "version": "1.5.0",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [