koishi-plugin-ggcevo-game
Version:
星际争霸2咕咕虫-evolved地图的专属游戏助手插件,集成天梯排行、抽奖系统、签到福利、兑换商城等丰富功能。
2,137 lines (2,129 loc) • 440 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name2 in all)
__defProp(target, name2, { get: all[name2], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var src_exports = {};
__export(src_exports, {
Config: () => Config,
apply: () => apply,
inject: () => inject,
name: () => name
});
module.exports = __toCommonJS(src_exports);
var import_koishi = require("koishi");
var import_koishi_plugin_sc2arcade_search = require("koishi-plugin-sc2arcade-search");
// src/weapons.ts
var weaponConfig = {
// 武器配置
"高斯步枪": {
id: 1,
type: "实弹武器",
category: "实弹武器",
level: 1,
damage: 13,
armorDamageReduction: 1,
// 每点护甲减伤1点伤害
description: "标准配置武器,中距离作战利器",
specialeffect: "",
price: 100,
redCrystalCost: 1,
isantiair: true,
tagEffects: {
"轻甲": 1.5
// 对轻甲目标造成150%伤害
}
},
"激光步枪": {
id: 2,
type: "能量武器",
category: "能量武器",
level: 1,
damage: 23,
armorDamageReduction: 0,
description: "先进激光武器,远距离精准打击",
specialeffect: "",
price: 300,
redCrystalCost: 3,
isantiair: true,
tagEffects: {
"重甲": 1.5
}
},
"焚烧枪": {
id: 3,
type: "热能武器",
category: "热能武器",
level: 1,
damage: 23,
armorDamageReduction: 0.25,
description: "基于热能的强大武器,烧烬一切",
specialeffect: "攻击时为目标附加1层[燃烧]效果,每层使目标受到火焰伤害时额外造成1点伤害(至多额外造成100点伤害)",
price: 450,
redCrystalCost: 4,
isantiair: false,
tagEffects: {
"惧热": 1.5,
"生物": 1.2,
"护盾": 0.5
}
},
"碎骨步枪": {
id: 4,
type: "能量武器",
category: "能量武器",
level: 2,
damage: 28,
armorDamageReduction: 0,
description: "由激光步枪改良而来,高效的对重甲武器",
specialeffect: "",
price: 850,
redCrystalCost: 8,
isantiair: true,
tagEffects: {
"重甲": 1.75
}
},
"等离子切割机": {
id: 5,
type: "实弹武器",
category: "实弹武器",
level: 1,
damage: 16,
armorDamageReduction: 1,
description: "一种改造后的采矿切割机,有效对抗重甲目标",
specialeffect: "",
price: 150,
redCrystalCost: 1,
isantiair: true,
tagEffects: {
"建筑": 2,
"重甲": 1.5,
"机械": 1.2
}
},
"突击霰弹枪": {
id: 6,
type: "实弹武器",
category: "实弹武器",
level: 1,
damage: 48,
armorDamageReduction: 4,
description: "近距离攻击武器,专为遭遇战设计使用",
specialeffect: "",
price: 325,
redCrystalCost: 3,
isantiair: false,
tagEffects: {
"轻甲": 1.5
}
},
"侦察步枪": {
id: 7,
type: "实弹武器",
category: "实弹武器",
level: 2,
damage: 60,
armorDamageReduction: 3,
description: "用于隐秘射击的最佳武器,但是无法穿透护甲",
specialeffect: "",
price: 550,
redCrystalCost: 5,
isantiair: true,
tagEffects: {}
},
"零度之下": {
id: 8,
type: "热能武器",
category: "热能武器",
level: 2,
damage: 25,
armorDamageReduction: 1,
description: "喷射稳定的液氮恒流,对长时间接触者造成致命的损伤",
specialeffect: "攻击时为目标附加[寒冷]效果,每层使目标受到的伤害提高1%(最多提高100%)",
price: 775,
redCrystalCost: 7,
isantiair: false,
tagEffects: {
"惧寒": 1.5,
"灵能": 1.2,
"护盾": 0.5
}
},
"弧焊枪": {
id: 9,
type: "能量武器",
category: "能量武器",
level: 2,
damage: 24,
armorDamageReduction: 0.5,
description: "一种经过改造的电动工具,可对近距离的目标放出高压电",
specialeffect: "每次攻击消耗目标200点能量值",
price: 750,
redCrystalCost: 7,
isantiair: true,
tagEffects: {
"机械": 2,
"建筑": 1.5
}
},
"伽马枪": {
id: 10,
type: "热能武器",
category: "热能武器",
level: 2,
damage: 27,
armorDamageReduction: 0.75,
description: "一种高度危险性的武器,设计用辐射照射并伤害敌人",
specialeffect: "攻击无[机械]标签的[生物]目标时附加[辐射]效果,每层使目标的护甲值减少0.05",
price: 825,
redCrystalCost: 8,
isantiair: true,
tagEffects: {
"生物": 1.2,
"机械": 0.2
}
},
"中子步枪": {
id: 11,
type: "能量武器",
category: "能量武器",
level: 3,
damage: 27,
armorDamageReduction: 0,
description: "激光步枪的变种,采用折射技术升级",
specialeffect: "攻击触发散射,对次要目标造成120%基础伤害",
price: 1450,
redCrystalCost: 14,
isantiair: true,
tagEffects: {
"灵能": 1.2
}
},
"粒子相位枪": {
id: 12,
type: "能量武器",
category: "能量武器",
level: 3,
damage: 29,
armorDamageReduction: 0.75,
description: "面对护盾目标而开发的武器",
specialeffect: "对[护盾]目标无视50%伤害减免",
price: 1050,
redCrystalCost: 10,
isantiair: true,
tagEffects: {
"护盾": 1.75
}
},
"动力钻头": {
id: 13,
type: "实弹武器",
category: "实弹武器",
level: 3,
damage: 32,
armorDamageReduction: 0.5,
description: "这种强大的钻头是由那些想把矿工SCV上的大螺丝用作武器的人创造的",
specialeffect: "",
price: 1e3,
redCrystalCost: 10,
isantiair: true,
tagEffects: {
"建筑": 2,
"重甲": 1.5,
"机械": 1.2
}
},
"脉冲扰乱枪": {
id: 14,
type: "能量武器",
category: "能量武器",
level: 3,
damage: 36,
armorDamageReduction: 1,
description: "一种原型能量武器,能够发射强大的脉冲",
specialeffect: "攻击减少目标2层技能层数",
price: 1500,
redCrystalCost: 15,
isantiair: true,
tagEffects: {}
},
"MK79榴弹发射器": {
id: 15,
type: "热能武器",
category: "热能武器",
level: 4,
damage: 60,
armorDamageReduction: 0.5,
description: "发射非常坚固的专属榴弹,对具有坚固防御的目标几乎没有效果",
specialeffect: "",
price: 2e3,
redCrystalCost: 20,
isantiair: true,
tagEffects: {
"重甲": 1.5,
"轻甲": 0.8,
"护盾": 0.8
}
},
"EC13电浆步枪": {
id: 16,
type: "能量武器",
category: "能量武器",
level: 4,
damage: 64,
armorDamageReduction: 4,
description: "用于解决高生命值目标的次时代武器,擅长对付护盾耗尽或没有护甲的敌人",
specialeffect: "",
price: 1750,
redCrystalCost: 17,
isantiair: true,
tagEffects: {
"生物": 1.2,
"护盾": 0.5
}
},
"聚变磁轨枪": {
id: 17,
type: "能量武器",
category: "能量武器",
level: 4,
damage: 60,
armorDamageReduction: 0,
description: "一种实验性的超级武器,能造成巨大的伤害",
specialeffect: "",
price: 1550,
redCrystalCost: 15,
isantiair: true,
tagEffects: {}
},
"M134轮转机枪": {
id: 18,
type: "实弹武器",
category: "实弹武器",
level: 5,
damage: 70,
armorDamageReduction: 0.1,
description: "二十一世纪的武器,经过修改以减少后坐力并提高远程精度",
specialeffect: "连续攻击叠加[横冲直撞]效果,每层提高2.5%伤害(至多提高50%伤害)",
price: 2e3,
redCrystalCost: 20,
isantiair: true,
tagEffects: {
"轻甲": 1.5
}
},
"星灼灵焰炮": {
id: 19,
type: "能量武器",
category: "能量武器",
level: 5,
damage: 35,
armorDamageReduction: 1,
description: "这是在一位高级灵能者的帮助下,解析灵能力量制作出的高科技武器",
specialeffect: "",
price: 1550,
redCrystalCost: 15,
isantiair: true,
tagEffects: {
"机械": 2,
"建筑": 2,
"异形": 2
}
},
"外星电浆": {
id: 101,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 88,
armorDamageReduction: 3,
description: "一件传奇武器",
specialeffect: "",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"生物": 1.75,
"护盾": 0.5
}
},
"MK-4激光步枪": {
id: 102,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 80,
armorDamageReduction: -1,
description: "一件传奇武器",
specialeffect: "暴击率提高25%;连续3次未暴击时,下次攻击必定暴击",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"重甲": 1.5
}
},
"龙息霰弹枪": {
id: 103,
type: "实弹武器",
category: "传奇武器",
level: 6,
damage: 90,
armorDamageReduction: 0,
description: "这是传说中的武器",
specialeffect: "造成的20%伤害转化为火焰伤害;攻击时为目标附加2层[燃烧]效果,每层使目标受到火焰伤害时额外造成1点伤害(至多额外造成100点伤害)",
price: 6400,
redCrystalCost: 200,
isantiair: false,
tagEffects: {
"惧热": 2,
"轻甲": 1.5,
"生物": 1.2
}
},
"DSR-55反器材步枪": {
id: 104,
type: "实弹武器",
category: "传奇武器",
level: 6,
damage: 125,
armorDamageReduction: -2,
description: "一件传奇武器",
specialeffect: "",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"重甲": 1.2
}
},
"光剑": {
id: 105,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 100,
armorDamageReduction: 0,
description: "优雅而独特的武器",
specialeffect: "无视目标100%伤害减免",
price: 6400,
redCrystalCost: 200,
isantiair: false,
tagEffects: {}
},
"DG-3电弧步枪": {
id: 106,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 100,
armorDamageReduction: 1,
description: "一件传奇武器",
specialeffect: "攻击触发散射,对次要目标造成50%基础伤害;每次攻击消耗目标500点能量值",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"机械": 1.5
}
},
"M4AE脉冲步枪": {
id: 107,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 80,
armorDamageReduction: 0,
description: "一件传奇武器",
specialeffect: "无法暴击;无视50%伤害减免;每次攻击削减目标0.2护甲值;每次攻击时有33%的概率发射脉冲榴弹,额外造成50%伤害",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"重甲": 1.2
}
},
"核聚变重炮": {
id: 108,
type: "能量武器",
category: "传奇武器",
level: 6,
damage: 90,
armorDamageReduction: 0,
description: "一件传奇武器",
specialeffect: "无法暴击;每次攻击时有20%的概率造成核爆,额外造成50%的伤害",
price: 6400,
redCrystalCost: 200,
isantiair: true,
tagEffects: {
"建筑": 2,
"重型": 1.5,
"重甲": 1.2
}
}
};
var modConfig = {
"动能增幅": {
cost: 1750,
effect: "伤害提高15%",
// 规范术语
exclusiveTo: "",
isExclusive: false,
recyclable: true
},
"棱镜水晶": {
cost: 2050,
effect: "暴击率提升10%",
// 保持原描述
exclusiveTo: "",
isExclusive: false,
recyclable: true
},
"破甲模块": {
cost: 1250,
effect: "无视目标10%伤害减免",
// 术语统一
exclusiveTo: "",
isExclusive: false,
recyclable: true
},
// 专属模组修改
"裂甲核心": {
cost: 750,
effect: "伤害提高40%,无视目标40%伤害减免",
exclusiveTo: "高斯步枪",
isExclusive: true,
recyclable: false
},
"棱镜超载核心": {
cost: 2250,
effect: "暴击率提升20%;连续4次未暴击时,下次攻击必定暴击",
exclusiveTo: "激光步枪",
isExclusive: true,
recyclable: false
},
"助燃核心": {
cost: 2550,
effect: "对[惧热]目标改为造成300%伤害,对[生物]目标改为造成200%伤害;攻击时每1点护甲改为增加0.5点伤害;双倍叠加[燃烧]层数",
exclusiveTo: "焚烧枪",
isExclusive: true,
recyclable: false
},
"光束曲射晶片": {
cost: 2750,
effect: "攻击触发散射,对次要目标造成100%基础伤害",
exclusiveTo: "碎骨步枪",
isExclusive: true,
recyclable: false
},
"金刚石瞄准镜": {
cost: 2250,
effect: "无视目标20%伤害减免",
exclusiveTo: "侦察步枪",
isExclusive: true,
recyclable: false
},
"微型聚变核心": {
cost: 2750,
effect: "连续攻击叠加[聚变]效果,每层提高10%伤害(最多6层)",
exclusiveTo: "聚变磁轨枪",
isExclusive: true,
recyclable: false
},
"辐射充能核心": {
cost: 1750,
effect: "双倍叠加[辐射]层数,对[生物]目标改为造成150%伤害",
exclusiveTo: "伽马枪",
isExclusive: true,
recyclable: false
},
"等离子轴承": {
cost: 3e3,
effect: "每层[横冲直撞]提供双倍伤害",
exclusiveTo: "M134轮转机枪",
isExclusive: true,
recyclable: false
},
"脉冲稳定核心": {
cost: 2500,
effect: "攻击减少目标双倍技能层数",
exclusiveTo: "脉冲扰乱枪",
isExclusive: true,
recyclable: false
},
"高压电池": {
cost: 2250,
effect: "攻击消耗目标双倍能量值",
exclusiveTo: "弧焊枪",
isExclusive: true,
recyclable: false
},
"氮气压缩核心": {
cost: 2e3,
effect: "双倍叠加[寒冷]层数;攻击时每1点护甲改为减少0点伤害",
exclusiveTo: "零度之下",
isExclusive: true,
recyclable: false
},
"轻型电源节点": {
cost: 1250,
effect: "伤害提高40%;攻击时每1点护甲改为减少0点伤害",
exclusiveTo: "等离子切割机",
isExclusive: true,
recyclable: false
},
"强力钻刺核心": {
cost: 1750,
effect: "攻击时每1点护甲改为减少0.2点伤害;每次攻击削减目标0.1护甲值",
exclusiveTo: "动力钻头",
isExclusive: true,
recyclable: false
}
};
// src/items.ts
var SyndicatedItems = {
"E-2能量炸弹": {
id: 1001,
type: "爆破物",
description: "一种小型的机械装置,用于吸收空间站能量并进行爆破",
price: 0,
redCrystalCost: 60,
condition: "仅限辛迪加海盗阵营使用",
effects: "下一次攻击对建筑目标造成1000%的伤害"
},
"闪光弹": {
id: 1002,
type: "手榴弹",
description: "非致命军用炸药",
price: 75,
redCrystalCost: 0,
condition: "无法对建筑目标,重型目标或具有免疫闪光技能的目标使用",
effects: "使目标的技能层数减少10层"
},
"CRED-17": {
id: 1003,
type: "设备工具",
description: "一个小型辛迪加机器人,可以破坏电子银行账户",
price: 0,
redCrystalCost: 50,
condition: "仅限辛迪加海盗阵营使用",
effects: "每日签到金币奖励+50%"
},
"脉冲手雷": {
id: 1004,
type: "手榴弹",
description: "电磁脉冲干扰机械目标和灵能目标",
price: 75,
redCrystalCost: 0,
condition: "无法对没有能量的目标使用",
effects: "消耗目标500点能量"
},
"MP3播放器": {
id: 1005,
type: "设备工具",
description: "这是一款未来派音乐设备",
price: 0,
redCrystalCost: 30,
condition: "仅限辛迪加海盗阵营使用",
effects: "PK失败时损失的金币数-50%"
},
"雷达面罩": {
id: 1006,
type: "设备工具",
description: "一个复杂的雷达面罩,用于远距离侦察或探测隐藏单位",
price: 0,
redCrystalCost: 30,
condition: "仅限辛迪加海盗阵营使用",
effects: '无视目标的[隐身]效果;使用"侦察步枪"攻击时额外造成5%的伤害'
},
"气喇叭": {
id: 1007,
type: "设备工具",
description: "气喇叭一直被用于展示纯粹的勇气",
price: 0,
redCrystalCost: 40,
condition: "仅限辛迪加海盗阵营使用",
effects: "PK胜利时额外获得从对手掠夺的等额金币数量"
},
"自动采掘机器人": {
id: 1008,
type: "设备工具",
description: "建造机器人,用于自动采集太空矿物",
price: 0,
redCrystalCost: 50,
condition: "仅限辛迪加海盗阵营使用",
effects: "挖矿的金币收益+50%"
},
"莫洛托夫燃烧弹": {
id: 1009,
type: "手榴弹",
description: "一种轻型手榴弹,含有易燃物质",
price: 0,
redCrystalCost: 0,
condition: "无法对免疫燃烧的目标和空中目标使用",
effects: "使目标的燃烧层数增加5层"
},
"铝热炸弹": {
id: 1010,
type: "爆破物",
description: "铝热炸弹能够轻易破坏安全门",
price: 0,
redCrystalCost: 0,
condition: "无法对空中目标使用",
effects: "对目标造成100伤害;对建筑目标造成3倍伤害"
}
};
var initDefaultItems = {
"咕咕币": { id: 1, type: "抽奖道具", description: "用于进行抽奖" },
"兑换券": { id: 2, type: "兑换货币", description: "用于兑换赞助物品" },
"扭蛋币": { id: 3, type: "抽奖道具", description: "用于进行宠物扭蛋" },
"t3级宠物扭蛋": { id: 4, type: "宠物蛋", description: "用于兑换t3系列宠物" },
"t2级宠物扭蛋": { id: 5, type: "宠物蛋", description: "用于兑换t2系列宠物" },
"t1级宠物扭蛋": { id: 6, type: "宠物蛋", description: "用于兑换t1系列宠物" },
"t0级宠物扭蛋": { id: 7, type: "宠物蛋", description: "用于兑换t0系列宠物" },
"资源兑换券": { id: 8, type: "兑换货币", description: "用于兑换咕咕之战资源" },
"🥇先行者赛季冠军勋章": { id: 101, type: "勋章", description: "" },
"🥈先行者赛季亚军勋章": { id: 102, type: "勋章", description: "" },
"🥉先行者赛季季军勋章": { id: 103, type: "勋章", description: "" },
"🏅先行者赛季前十勋章": { id: 104, type: "勋章", description: "" },
"🎖先行者赛季前二十勋章": { id: 105, type: "勋章", description: "" },
"🥇S1赛季冠军勋章": { id: 106, type: "勋章", description: "" },
"🥈S1赛季亚军勋章": { id: 107, type: "勋章", description: "" },
"🥉S1赛季季军勋章": { id: 108, type: "勋章", description: "" },
"🏅S1赛季前十勋章": { id: 109, type: "勋章", description: "" },
"🎖S1赛季前二十勋章": { id: 110, type: "勋章", description: "" },
"🥇S2赛季冠军勋章": { id: 111, type: "勋章", description: "" },
"🥈S2赛季亚军勋章": { id: 112, type: "勋章", description: "" },
"🥉S2赛季季军勋章": { id: 113, type: "勋章", description: "" },
"🏅S2赛季前十勋章": { id: 114, type: "勋章", description: "" },
"🎖S2赛季前二十勋章": { id: 115, type: "勋章", description: "" },
"🥇S3赛季冠军勋章": { id: 116, type: "勋章", description: "" },
"🥈S3赛季亚军勋章": { id: 117, type: "勋章", description: "" },
"🥉S3赛季季军勋章": { id: 118, type: "勋章", description: "" },
"🏅S3赛季前十勋章": { id: 119, type: "勋章", description: "" },
"🎖S3赛季前二十勋章": { id: 120, type: "勋章", description: "" }
};
var itemConfig = {
"拾荒者": { quality: "t3", type: "皮肤", cost: 3, quantity: 8, isLimited: false },
"劳工": { quality: "t3", type: "皮肤", cost: 3, quantity: 8, isLimited: false },
"老兵": { quality: "t2", type: "皮肤", cost: 4, quantity: 5, isLimited: false },
"合成人": { quality: "t2", type: "皮肤", cost: 4, quantity: 5, isLimited: false },
"阿斯塔特": { quality: "t1", type: "皮肤", cost: 5, quantity: 4, isLimited: false },
"皇家指挥官": { quality: "t1", type: "皮肤", cost: 5, quantity: 4, isLimited: false },
"个性开场白": { quality: "t1", type: "入场特效", cost: 5, quantity: 4, isLimited: false },
"史蒂夫": { quality: "t0", type: "皮肤", cost: 6, quantity: 1, isLimited: true },
"ep4": { quality: "t0", type: "物品", cost: 6, quantity: 3, isLimited: false },
"小狗": { quality: "t3", type: "宠物", cost: 3, quantity: 6, isLimited: false },
"小猫": { quality: "t3", type: "宠物", cost: 3, quantity: 6, isLimited: false },
"小黄鸭": { quality: "t3", type: "宠物", cost: 3, quantity: 6, isLimited: false },
"萌萌熊": { quality: "t2", type: "宠物", cost: 4, quantity: 5, isLimited: false },
"荆棘蜥蜴": { quality: "t2", type: "宠物", cost: 4, quantity: 5, isLimited: false },
"萌宠小狗": { quality: "t1", type: "宠物", cost: 5, quantity: 3, isLimited: false },
"熔岩虫": { quality: "t1", type: "宠物", cost: 5, quantity: 3, isLimited: false },
"尸甲虫": { quality: "t1", type: "宠物", cost: 5, quantity: 3, isLimited: false },
"绿毛虫": { quality: "t0", type: "宠物", cost: 6, quantity: 2, isLimited: false },
"妙蛙种子": { quality: "t0", type: "宠物", cost: 6, quantity: 2, isLimited: false },
"皮卡丘": { quality: "t0", type: "宠物", cost: 6, quantity: 2, isLimited: false },
"哆啦A梦": { quality: "t0", type: "宠物", cost: 6, quantity: 2, isLimited: false }
};
// src/careers.ts
var spaceStationCrewConfig = [
{
professionName: "深空矿工",
effect: "挖矿的金币收益提高50%",
costcoins: 2e3
},
{
professionName: "警卫员下士",
effect: "HP上限增加50点;攻击获得的金币+25%",
costcoins: 2e3
},
{
professionName: "警卫长",
effect: "HP上限增加25点;攻击伤害+5%;攻击获得的金币+25%",
costcoins: 3e3
},
{
professionName: "武器中士",
effect: "攻击伤害+15%;购买任意武器享有25%的折扣",
costcoins: 3e3
},
{
professionName: "医疗专家",
effect: "",
costcoins: 2e3
},
{
professionName: "情报副官",
effect: "升级空间站科技享有10%的折扣",
costcoins: 3e3
},
{
professionName: "总工程师",
effect: "探索获得的金币收益提高50%;探索的成功率提高10%",
costcoins: 2e3
},
{
professionName: "舰长",
effect: "完成任务奖励+50%",
costcoins: 2e3
},
{
professionName: "机械化专家",
effect: "机甲形态攻击伤害+50%",
costcoins: 3e3
}
];
var syndicatePirateConfig = [
{
professionName: "能量武器专家",
effect: "能量武器攻击伤害+20%",
costredcrystal: 30
},
{
professionName: "清洁工",
effect: "每次攻击额外获得1枚红晶",
costredcrystal: 20
},
{
professionName: "枪手",
effect: "武器等级上限为7级; 升级武器享有10%的折扣",
costredcrystal: 40
},
{
professionName: "猩红杀手",
effect: "“侦察步枪”攻击伤害+15%; 使用“侦察步枪”攻击时每1点护甲改为减少0点伤害",
costredcrystal: 30
},
{
professionName: "纵火狂",
effect: "热能武器攻击伤害+20%; 探索获得莫洛托夫燃烧弹的概率提高20%并且有10%的概率额外获得1个;使用莫洛托夫燃烧弹的效果提高100%",
costredcrystal: 30
},
{
professionName: "辛迪加财务经理",
effect: "每日签到额外获得3枚红晶",
costredcrystal: 20
},
{
professionName: "计算机专家",
effect: "黑市订购设备工具类享有50%折扣;PK时的胜率+10%",
costredcrystal: 20
},
{
professionName: "指挥官",
effect: "",
costredcrystal: 30
},
{
professionName: "装甲兵",
effect: "",
costredcrystal: 40
},
{
professionName: "破坏者",
effect: "黑市订购爆破物类享有50%折扣;探索获得爆破物的概率提高20%并且有10%的概率额外获得1个;使用爆破物的效果提高50%",
costredcrystal: 30
},
{
professionName: "征募官",
effect: "",
costredcrystal: 20
}
];
// src/technology.ts
var Spacestationtechnology = [
{
techId: 1,
techname: "采掘系统",
careerNames: ["深空矿工", "情报副官"],
// 新增职业名称字段
maxLevel: 5,
levels: [
{
level: 1,
cost: 500,
description: "提高挖矿效率,获得的收益提高10%",
careerBonus: "挖矿的收益额外提高10%"
},
{
level: 2,
cost: 1750,
description: "提高挖矿效率,获得的收益提高20%",
careerBonus: "挖矿的收益额外提高20%"
},
{
level: 3,
cost: 2950,
description: "提高挖矿效率,获得的收益提高30%",
careerBonus: "挖矿的收益额外提高30%"
},
{
level: 4,
cost: 4250,
description: "提高挖矿效率,获得的收益提高40%",
careerBonus: "挖矿的收益额外提高40%"
},
{
level: 5,
cost: 5375,
description: "提高挖矿效率,获得的收益提高50%",
careerBonus: "挖矿的收益额外提高50%,并且单次挖矿时间上限增加至48小时"
}
]
},
{
techId: 2,
techname: "武器系统",
careerNames: ["武器中士", "情报副官"],
// 新增职业名称字段
maxLevel: 5,
levels: [
{
level: 1,
cost: 500,
description: "提升空间站武器等级,购买I类及以下武器享有25%的折扣",
careerBonus: "购买I类及以下武器额外享有25%的折扣"
},
{
level: 2,
cost: 1500,
description: "提升空间站武器等级,解锁购买II类及以下武器权限",
careerBonus: "购买II类及以下武器享有25%的折扣"
},
{
level: 3,
cost: 2550,
description: "提升空间站武器等级,解锁购买III类武器权限",
careerBonus: "购买III类及以下武器享有25%的折扣"
},
{
level: 4,
cost: 3950,
description: "提升空间站武器等级,解锁购买IV类及以下武器权限",
careerBonus: "购买IV类及以下武器享有25%的折扣"
},
{
level: 5,
cost: 4650,
description: "提升空间站武器等级,解锁购买V类及以下武器权限",
careerBonus: "购买V类及以下武器享有25%的折扣"
}
]
},
{
techId: 3,
techname: "武器升级平台",
careerNames: ["武器中士", "情报副官"],
maxLevel: 2,
levels: [
{
level: 1,
cost: 750,
description: "重启武器升级站,武器改装通用模块享有5%的折扣",
careerBonus: "武器改装通用模块额外享有5%的折扣"
},
{
level: 2,
cost: 1e3,
description: "重启高级武器改装站,武器改装通用模块享有5%的折扣; 武器改装专属模块享有5%的折扣",
careerBonus: "武器改装通用模块额外享有5%的折扣; 武器改装专属模块额外享有5%的折扣"
}
]
},
{
techId: 4,
techname: "安防系统",
careerNames: ["警卫员下士", "警卫长", "情报副官"],
// 新增职业名称字段
maxLevel: 5,
levels: [
{
level: 1,
cost: 500,
description: "重启安防参数代码,攻击获得的金币+5%",
careerBonus: "攻击获得的金币额外+5%"
},
{
level: 2,
cost: 2050,
description: "提高空间站安防系统强度,攻击获得的金币+10%",
careerBonus: "攻击获得的金币额外+10%"
},
{
level: 3,
cost: 3250,
description: "进一步提高空间站安防系统强度,攻击获得的金币+15%",
careerBonus: "攻击获得的金币额外+15%"
},
{
level: 4,
cost: 4250,
description: "大幅提高空间站安防系统强度,攻击获得的金币+20%",
careerBonus: "攻击获得的金币额外+20%"
},
{
level: 5,
cost: 5350,
description: "完全恢复空间站安防系统,攻击获得的金币+25%",
careerBonus: "攻击获得的金币额外+25%"
}
]
},
{
techId: 5,
techname: "关键系统固件",
careerNames: ["舰长", "情报副官"],
// 新增职业名称字段
maxLevel: 5,
levels: [
{
level: 1,
cost: 500,
description: "升级空间站关键系统,完成任务奖励+5%",
careerBonus: "完成任务奖励额外+5%"
},
{
level: 2,
cost: 1250,
description: "升级空间站关键系统,完成任务奖励+10%",
careerBonus: "完成任务奖励额外+10%"
},
{
level: 3,
cost: 2250,
description: "升级空间站关键系统,完成任务奖励+15%",
careerBonus: "完成任务奖励额外+15%"
},
{
level: 4,
cost: 2950,
description: "升级空间站关键系统,完成任务奖励+20%",
careerBonus: "完成任务奖励额外+20%"
},
{
level: 5,
cost: 3550,
description: "升级空间站关键系统,完成任务奖励+25%",
careerBonus: "完成任务奖励额外+25%;完成任务时有20%概率额外获得一次奖励"
}
]
},
{
techId: 6,
techname: "反应堆",
careerNames: ["总工程师", "情报副官"],
// 新增职业名称字段
maxLevel: 5,
levels: [
{
level: 1,
cost: 500,
description: "升级空间站聚变反应堆控制,探索的金币收益提高10%",
careerBonus: "探索的金币收益额外提高10%"
},
{
level: 2,
cost: 1450,
description: "升级空间站聚变反应堆控制,探索的金币收益提高20%",
careerBonus: "探索的金币收益额外提高20%"
},
{
level: 3,
cost: 2950,
description: "升级空间站聚变反应堆控制,探索的金币收益提高30%",
careerBonus: "探索的金币收益额外提高30%"
},
{
level: 4,
cost: 4250,
description: "升级空间站聚变反应堆控制,探索的金币收益提高40%",
careerBonus: "探索的金币收益额外提高40%"
},
{
level: 5,
cost: 5350,
description: "升级空间站聚变反应堆控制,探索的金币收益提高50%",
careerBonus: "探索的金币收益额外提高50%;探索的物品获得概率提高20%"
}
]
}
];
// src/tasks.ts
var Tasklist = {
"伽马辐射": {
id: 1,
type: "可重复任务",
target: 1,
price: 50,
redCrystalCost: 0,
condition: "使用【伽马枪】攻击目标并成功增加其1层[辐射]"
},
"绝对零度": {
id: 2,
type: "可重复任务",
target: 1,
price: 75,
redCrystalCost: 0,
condition: "使用【零度之下】攻击目标并成功增加其1层[寒冷]"
},
"胆汁引爆": {
id: 3,
type: "可重复任务",
target: 1,
price: 200,
redCrystalCost: 0,
condition: "使用【焚烧枪】或【龙息霰弹枪】引爆具有10层及以上[灼烧粘液]的目标"
},
"脉冲干扰": {
id: 4,
type: "可重复任务",
target: 1,
price: 45,
redCrystalCost: 0,
condition: "使用【脉冲扰乱枪】攻击目标并成功减少其1层技能层数"
},
"能量消耗": {
id: 5,
type: "可重复任务",
target: 1,
price: 40,
redCrystalCost: 0,
condition: "使用【弧焊枪】或【DG-3电弧步枪】攻击目标并成功消耗其100能量"
},
"破甲先锋": {
id: 6,
type: "可重复任务",
target: 1,
price: 80,
redCrystalCost: 0,
condition: "使用【M4AE脉冲步枪】或【动力钻头】攻击目标并成功削减其0.1护甲"
},
"烈火燎原": {
id: 7,
type: "可重复任务",
target: 1,
price: 25,
redCrystalCost: 0,
condition: "使用【焚烧枪】或【龙息霰弹枪】攻击目标或对目标使用【莫洛托夫燃烧弹】并成功增加其1层[燃烧]"
}
};
// src/boss/boss.ts
var bossGroups = [
{
groupId: 1,
name: "异齿猛兽",
bosses: [1, 2]
// 异齿猛兽首领, 异齿猛兽
},
{
groupId: 2,
name: "寒冰王蛇",
bosses: [3, 4]
// 寒冰王蛇, 冰蛇
},
{
groupId: 3,
name: "莽兽",
bosses: [5, 6, 7]
// 莽兽, 狂暴畸变体, 剧毒畸变体
},
{
groupId: 4,
name: "空间站感染虫",
bosses: [8, 9, 10]
// 空间站感染虫, 机械感染虫, 空间站哨枪塔
},
{
groupId: 5,
name: "吸血蝙蝠",
bosses: [11, 12]
// 吸血蝙蝠首领, 吸血蝙蝠
},
{
groupId: 6,
name: "亚电主宰者",
bosses: [13, 14]
// 亚电主宰者, 亚电能者
},
{
groupId: 7,
name: "烈焰庞兽",
bosses: [15, 16]
// 烈焰庞兽, 火焰甲虫
},
{
groupId: 8,
name: "狂猎猛禽",
bosses: [17, 18, 19]
// 狂猎猛禽首领, 狂猎猛禽1, 狂猎猛禽2
},
{
groupId: 9,
name: "宇宙界主",
bosses: [20, 21]
// 宇宙界主, 宇宙战将
},
{
groupId: 10,
name: "猛毒异兽",
bosses: [22, 23]
// 猛毒异兽, 剧毒蝙蝠
},
{
groupId: 11,
name: "虫群女王",
bosses: [24, 25]
// 虫群女王, 孵化场
},
{
groupId: 12,
name: "坏兄弟",
bosses: [29]
// 坏兄弟
}
];
var bossPool = [
{
id: 1,
name: "异齿猛兽首领",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 25,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "重型", "异形"],
passive: ["异形甲壳"]
},
{
id: 2,
name: "异齿猛兽",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 20,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "重型", "异形"],
passive: ["异形甲壳"]
},
{
id: 3,
name: "寒冰王蛇",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 6,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "惧热", "重型", "异形"],
passive: ["冰霜环绕", "冰霜进化", "冰悚嚎叫"]
},
{
id: 4,
name: "冰蛇",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 0,
tags: ["生物", "惧热", "异形"],
passive: ["冰霜回复", "冰霜进化"]
},
{
id: 5,
name: "莽兽",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 8,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "重型", "异形"],
passive: ["应激甲壳II", "求生本能II", "冷适应"]
},
{
id: 6,
name: "狂暴畸变体",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 5,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "重型", "异形"],
passive: ["应激甲壳I", "求生本能I", "冷适应"]
},
{
id: 7,
name: "剧毒畸变体",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 7,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "重型", "异形"],
passive: ["应激甲壳I", "求生本能I", "冷适应"]
},
{
id: 8,
name: "空间站感染虫",
type: "主宰",
maxHP: 2e4,
maxShield: 0,
maxEnergy: 0,
armor: 5,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "机械", "异形"],
passive: ["感染空间站", "病毒云", "霉菌滋生"]
},
{
id: 9,
name: "机械感染虫",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "机械", "异形"],
passive: ["病毒云", "霉菌滋生"]
},
{
id: 10,
name: "空间站哨枪塔",
type: "安防",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 6.5,
shieldArmor: 0,
maxStacks: 10,
tags: ["重甲", "机械", "建筑"],
passive: ["岗哨机枪", "结构装甲"]
},
{
id: 11,
name: "吸血蝙蝠首领",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 2.5,
shieldArmor: 0,
maxStacks: 20,
tags: ["生物", "异形"],
passive: ["吸血唾液", "进食", "吐血", "嗜血狂暴"]
},
{
id: 12,
name: "吸血蝙蝠",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 2.5,
shieldArmor: 0,
maxStacks: 20,
tags: ["生物", "异形"],
passive: ["吸血唾液", "进食", "吐血"]
},
{
id: 13,
name: "亚电主宰者",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 1e3,
armor: 4,
shieldArmor: 0,
maxStacks: 0,
tags: ["护盾", "灵能", "重型", "异形"],
passive: ["超导体", "能源虹吸", "电能冲击波", "电能立场", "脉冲", "能量黑洞"]
},
{
id: 14,
name: "亚电能者",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 0,
tags: ["护盾", "灵能", "异形"],
passive: ["超导体", "能量虹吸", "能量黑洞"]
},
{
id: 15,
name: "烈焰庞兽",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 20,
shieldArmor: 0,
maxStacks: 20,
tags: ["重甲", "生物", "惧寒", "重型", "异形"],
passive: ["火焰异形", "庞兽狂暴", "灼烧粘液", "炼狱爆弹", "火焰吐息", "太阳耀斑"]
},
{
id: 16,
name: "火焰甲虫",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 15,
shieldArmor: 0,
maxStacks: 20,
tags: ["重甲", "生物", "惧寒", "异形"],
passive: ["火焰异形", "灼烧粘液", "腐蚀胆汁", "燃烧潜地"]
},
{
id: 17,
name: "狂猎猛禽首领",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 3,
shieldArmor: 0,
maxStacks: 0,
tags: ["生物", "异形"],
passive: ["猎手异形", "致命一击", "狂暴", "伪装"]
},
{
id: 18,
name: "狂猎猛禽1",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 2.5,
shieldArmor: 0,
maxStacks: 0,
tags: ["生物", "异形"],
passive: ["猎手异形", "狂暴", "伪装"]
},
{
id: 19,
name: "狂猎猛禽2",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 2.5,
shieldArmor: 0,
maxStacks: 0,
tags: ["生物", "异形"],
passive: ["猎手异形", "狂暴", "伪装"]
},
{
id: 20,
name: "宇宙界主",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 1e3,
armor: 2,
shieldArmor: 0,
maxStacks: 50,
tags: ["重甲", "生物", "灵能", "异形"],
passive: ["宇宙能量", "复苏", "光影之刃", "远古预兆", "星界之风", "超视距穿梭"]
},
{
id: 21,
name: "宇宙战将",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 1,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "灵能", "异形"],
passive: ["心灵狂热", "星界之风"]
},
{
id: 22,
name: "猛毒异兽",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 20,
tags: ["生物", "异形"],
passive: ["毒性唾液", "剧毒狂暴", "毒气波", "淬毒撕咬", "酸蚀池", "剧毒突袭"]
},
{
id: 23,
name: "剧毒蝙蝠",
type: "子代",
maxHP: 1e4,
maxShield: 0,
maxEnergy: 0,
armor: 3,
shieldArmor: 0,
maxStacks: 20,
tags: ["轻甲", "生物", "异形"],
passive: ["毒性唾液", "毒气波", "淬毒撕咬", "酸蚀池"]
},
{
id: 24,
name: "虫群女王",
type: "主宰",
maxHP: 2e4,
maxShield: 0,
maxEnergy: 0,
armor: 5,
shieldArmor: 0,
maxStacks: 20,
tags: ["生物", "灵能", "异形"],
passive: ["虫巢思维", "爆虫伏击", "虚弱喷吐", "治愈虫群", "释放信息素", "恐吓尖啸"]
},
{
id: 25,
name: "孵化场",
type: "巢穴",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 20,
tags: ["重甲", "生物", "建筑", "异形"],
passive: ["孵化"]
},
{
id: 26,
name: "巢穴雷兽",
type: "子代",
maxHP: 5e3,
maxShield: 0,
maxEnergy: 0,
armor: 15,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "异形"],
passive: []
},
{
id: 27,
name: "巢穴战士",
type: "子代",
maxHP: 3e3,
maxShield: 0,
maxEnergy: 0,
armor: 4,
shieldArmor: 0,
maxStacks: 0,
tags: ["轻甲", "生物", "异形"],
passive: []
},
{
id: 28,
name: "巢穴甲虫",
type: "子代",
maxHP: 4e3,
maxShield: 0,
maxEnergy: 0,
armor: 10,
shieldArmor: 0,
maxStacks: 0,
tags: ["重甲", "生物", "异形"],
passive: []
},
{
id: 29,
name: "坏兄弟",
type: "主宰",
maxHP: 3e4,
maxShield: 0,
maxEnergy: 1e3,
armor: 3,
shieldArmor: 0,
maxStacks: 100,
tags: ["生物", "异形"],
passive: ["基因变异"]
}
];
// src/boss/BattleEffectProcessor.ts
var battleStatsMap = {};
function updateStatsByName(name2, updates) {
const existing = battleStatsMap[name2] ?? {
name: name2,
// 键与 name 一致
hpChange: 0,
energyChange: 0,
armorChange: 0,
// 新增字段初始化
tagsAdded: [],
tagsRemoved: [],
skillsAdded: [],
skillsRemoved: [],
skillStacksChanged: 0,
skillStatusChanged: 0,
statusLayersChanged: 0,
radiationLayersChange: 0,
coldLayersChange: 0,
burnLayersChanged: 0,
lastWeaponName: ""
};
battleStatsMap[name2] = {
// name 不可变(保持原键)
name: existing.name,
// 数值类型:累加(支持正负变化)
hpChange: existing.hpChange + (updates.hpChange ?? 0),
energyChange: existing.energyChange + (updates.energyChange ?? 0),
skillStacksChanged: existing.skillStacksChanged + (updates.skillStacksChanged ?? 0),
skillStatusChanged: existing.skillStatusChanged + (updates.skillStatusChanged ?? 0),
statusLayersChanged: existing.statusLayersChanged + (updates.statusLayersChanged ?? 0),
radiationLayersChange: existing.radiationLayersChange + (updates.radiationLayersChange ?? 0),
coldLayersChange: existing.coldLayersChange + (updates.coldLayersChange ?? 0),
armorChange: existing.armorChange + (updates.armorChange ?? 0),
burnLayersChanged: existing.burnLayersChanged + (updates.burnLayersChanged ?? 0),
// 数组类型:合并(新增内容追加到现有数组)
tagsAdded: [...existing.tagsAdded, ...updates.tagsAdded ?? []],
tagsRemoved: [...existing.tagsRemoved, ...updates.tagsRemoved ?? []],
skillsAdded: [...existing.skillsAdded, ...updates.skillsAdded ?? []],
skillsRemoved: [...existing.skillsRemoved, ...updates.skillsRemoved ?? []],
// 字符串类型:覆盖(取最新值)
lastWeaponName: updates.lastWeaponName ?? existing.lastWeaponName
};
}
__name(updateStatsByName, "updateStatsByName");
function getMaxHPByName(bossName) {
for (const boss of bossPool) {
if (boss.name === bossName) {
return boss.maxHP;
}
}
return 1e4;
}
__name(getMaxHPByName, "getMaxHPByName");
function getMaxEnergyByName(bossName) {
for (const boss of bossPool) {
if (boss.name === bossName) {
return boss.maxEnergy;
}
}
return 1e4;
}
__name(getMaxEnergyByName, "getMaxEnergyByName");
function getMaxStacksByName(bossName) {
for (const boss of bossPool) {
if (boss.name === bossName) {
return boss.maxStacks;
}
}
return 0;
}
__name(getMaxStacksByName, "getMaxStacksByName");
function getMaxShieldByName(bossName) {
const boss = bossPool.find((b) => b.name === bossName);
return boss ? boss.maxShield : 0;
}
__name(getMaxShieldByName, "getMaxShieldByName");
function getArmorByName(bossName) {
for (const boss of bossPool) {
if (boss.name === bossName) return boss.armor;
}
return void 0;
}
__name(getArmorByName, "getArmorByName");
function getShieldArmorByName(bossName) {
for (const boss of bossPool) {
if (boss.name === bossName) return boss.shieldArmor;
}
return 0;
}
__name(getShieldArmorByName, "getShieldArmorByName");
var BattleEffectProcessor = {
// 弱化形态
handleWeakForm: /* @__PURE__ */ __name(function(targetBoss) {
if (targetBoss.type === "子代") {
if (targetBoss.name === "空间站哨枪塔" || targetBoss.name === "孵化场" || targetBoss.name === "巢穴雷兽" || targetBoss.name === "巢穴战士" || targetBoss.name === "巢穴甲虫") {
return null;
}
const newBuffMultiplier = 0.1;
const messages = [`📚 【弱化形态】生效:子代防御脆弱,受到的伤害+10%`];
return {
buffMultiplier: newBuffMultiplier,
messages
};
}
return null;
}, "handleWeakForm"),
// 异形甲壳
handleAlienShell: /* @__PURE__ */ __name(function(targetBoss) {
if (targetBoss.skills.includes("异形甲壳")) {
const maxHP = getMaxHPByName(targetBoss.name);
const currentHP = targetBoss.HP;
const lostHpPercent = (maxHP - currentHP) / maxHP;
let reductionPercent = 0.1 + lostHpPercent;
reductionPercent = Math.min(reductionPercent, 0.8);
const reductionValue = Math.round(reductionPercent * 100);
const messages = [
`🛡️ 【异形甲壳】生效:当前减伤${reductionValue}%`
];
return {
nerfMultiplier: reductionPercent,
messages
};
}
return null;
}, "handleAlienShell"),
// 孤立无援处理(活跃Boss中仅自己时增伤20%)
handleIsolated: /* @__PURE__ */ __name(function(targetBoss, activeBosses, tempMark) {
if (tempMark || targetBoss?.testTag) {
return null;
}
const isIsolated = activeBosses.length === 1 && // 活跃Boss仅1个
activeBosses[0].name === targetBoss.name;
if (isIsolated) {
const newBuffMultiplier = 0.2;
const messages = [
`📚 【孤立无援】生效:无存活子代时,受到的伤害+20%`
];
return {
buffMultiplier: newBuffMultiplier,
messages
};
}
return null;
}, "handleIsolated"),
handleFrostRegeneration: /* @__PURE__ */ __name(function(targetBoss, activeBosses, maxStatsForTarget) {
const messages = [];
const otherUpdates = [];
if (!targetBoss.skills.includes("冰霜回复")) {
return null;
}
const targetMaxHP = maxStatsForTarget.maxHP;
const currentHP = targetBoss.HP;
if (currentHP > targetMaxHP * 0.3) {
return null;
}
const selfHealAmount = Math.round(targetMaxHP * 0.4);
const targetUpdates = {
hpChange: selfHealAmount,
// 累加HP变化量(正数回复)
skillsRemoved: ["冰霜回复"]
// 移除技能
};
messages.push(`❄️ 【冰霜回复】触发:生命值≤30%,自身回复${selfHealAmount}点生命值`);
const otherSurvivingBosses = activeBosses.filter(
(boss) => boss.name !== targetBoss.name && boss.isActive
);
otherSurvivingBosses.forEach((otherBoss) => {
const otherName = otherBoss.name;
const otherMaxHP = maxStatsForTarget.maxHP;
const otherHealAmount = Math.round(otherMaxHP * 0.1);
otherUpdates.push({
name: otherName,
updates: { hpChange: otherHealAmount }
});
messages.push(`❄️ 「${otherName}」回复${otherHealAmount}点生命值`);
});
messages.push(`❄️ 【冰霜回复】技能移除`);
return {
messages,
targetUpdates: {
name: targetBoss.name,
updates: targetUpdates
},
otherUpdates
};
}, "handleFrostRegeneration"),
handleFrostAura: /* @__PURE__ */ __name(function(targetBoss, activeBosses) {
const messages = [];
const otherUpdates = [];
if (!targetBoss.skills.includes("冰霜环绕")) {
return null;
}
const targetMaxHP = getMaxHPByName(targetBoss.name);
const currentHP = targetBoss.HP;
const triggerCondition = currentHP <= targetMaxHP * 0.3;
if (!triggerCondition) {
return null;
}
const currentBurnLayers = targetBoss.burnLayers || 0;
const selfHealAmount = Math.round(targetMaxHP * 0.45);
const targetUpdates = {
hpChange: selfHealAmount,
// 生命值回复
skillsRemoved: ["冰霜环绕"],
// 移除自身原有技能
skillsAdded: ["寒霜地狱"],
// 新增【寒霜地狱】技能
burnLayersChanged: -(currentBurnLayers + 2)
// 清除所有燃烧层数
};
messages.push(`❄️ 【冰霜环绕】触发:生命值≤30%,自身回复${selfHealAmount}点生命值`);
messages.push(`❄️ 「${targetBoss.name}」获得「寒霜地狱」技能`);
if (currentBurnLayers > 0) {
messages.push(`🔥 【冰霜环绕】触发:清空全部燃烧效果`);
}
const survivingMinions = activeBosses.filter(
(boss) => boss.name !== targetBoss.name && boss.isActive
);
survivingMinions.forEach((minion) => {
const minionName = minion.name;
const minionUpdates = {
skillsAdded: ["寒霜地狱"]
// 新增【寒霜地狱】技能
};
otherUpdates.push({
name: minionName,
updates: minionUpdates
});
messages.push(`❄️ 「${minionName}」获得「寒霜地狱」技能`);
});
messages.push(`❄️ 【冰霜环绕】技能移除`);
return {
messages,
targetUpdates: {
name: targetBoss.name,
updates: targetUpdates
},
otherUpdates
};
}, "handleFrostAura"),
// 冰霜进化处理(免疫伤害并回复生命值)
handleFrostEvolution: /* @__PURE__ */ __name(function(targetBoss, weaponName, damage) {
const messages = [];
let isImmune = false;
if (!targetBoss.skills.includes("冰霜进化")) {
return null;
}
const isColdWeapon = weaponName === "零度之下";
if (!isColdWeapon) {
return null;
}
isImmune = true;
const immuneCold = true;
const healAmount = damage;
const targetUpdates = {
name: targetBoss.name,
updates: {
hpChange: healAmount
// 生命值变化量
}
};
messages.push(`❄️ 【冰霜进化】生效:免疫寒冷伤害并回复${healAmount}点生命值`);
return {
isImmune,
immuneCold,
// 新增的免疫寒冷标记
messages,
targetUpdates
};
}, "handleFrostEvolution"),
// 寒霜地狱处理
handleFrostHell: /* @__PURE__ */ __name(function(targetBoss) {
if (targetBoss.skills.includes("寒霜地狱")) {
const newNerfMultiplier = 0.3;
const messages = [`❄️ 【寒霜地狱】生效:受到的伤害-30%`];
return {
nerfMultiplier: newNerfMultiplier,
messages
};
}
return null;
}, "handleFrostHell"),
// 应激甲壳I处理(基础减伤20%)
handleStressShellI: /* @__PURE__ */ __name(function(targetBoss) {
if (targetBoss.skills.includes("应激甲壳I")) {
const newNerfMultiplier = 0.2;
const messages = [`🛡️ 【应激甲壳I】生效:受到的伤害-20%`];
return {
nerfMultiplier: newNerfMultiplier,
messages
};
}
return null;
}, "handleStressShellI"),
// 应激甲壳II处理(进阶减伤25%)
handleStressShellII: /* @__PURE__ */ __name(function(targetBoss) {
if (targetBoss.skills.includes("应激甲壳II")) {
const newNerfMultiplier = 0.25;
const messages = [`🛡️ 【应激甲壳II】生效:受到的伤害-25%`];
return {
nerfMultiplier: newNerfMultiplier,
messages
};
}
return null;
}, "handleStressShellII"),
// 求生本能I (修改后)
handleSurvivalInstinctI: /* @__PURE__ */ __name(function(targetBoss, damageAmount) {
const messages = [];
if (!targetBoss.skills.includes("求生本能I")) {
return null;
}
const targetMaxHP = getMaxHPByName(targetBoss.name);
const isLethal = damageAmount >= targetBoss.HP;
if (!isLethal) {
return null;
}
const selfHealAmount = Math.round(targetMaxHP * 0.3);
const updates = {
hpChange: selfHealAmount,
// 回复生命值
skillsRemoved: ["求生本能I"]
// 移除技能
};
messages.push(`❤️ 【求生本能I】触发:承受致命伤害时,回复${selfHealAmount}点生命值`);
messages.push(`❤️ 【求生本能I】技能移除`);
return {
messages,
targetUpdates: {
name: targetBoss.name,
updates
}
};
}, "handleSurvivalInstinctI"),
// 求生本能II (修改后)
handleSurvivalInstinctII: /* @__PURE__ */ __name(function(targetBoss, damageAmount) {
const messages = [];
if (!targetBoss.skills.includes("求生本能II")) {
return null;
}
const targetMaxHP = getMaxHPByName(targetBoss.name);
const isLethal = damageAmount >= targetBoss.HP;
if (!isLethal) {
return null;
}
const selfHealAmount = Math.round(targetMaxHP * 0.5);
const updates = {
hpChange: selfHealAmount,
// 生命值变化量
skillsRemoved: ["求生本能II"]
// 移除的技能
};
messages.push(`❤️ 【求生本能II】触发:承受致命伤害时,回复${selfHealAmount}点生命值`);
messages.push(`❤️ 【求生本能II】技能移除`);
return {
messages,
targetUpdates: {
name: targetBoss.name,
updates
}
};
}, "handleSurvivalInstinctII"),
// 冷适应处理 - 修改版:只要有惧热标签并且寒冷层数>0就清除寒冷层数
handleColdAdaptation: /* @__PURE__ */ __name(function(targetBoss, weaponName) {
const messages = [];
let isImmune = false;
let immuneCold = false;
let targetUpdates = null;
if (!targetBoss.skills.includes("冷适应")) {
return null;
}
const currentLayers = targetBoss.statusLayers || 0;
const hasFearHeatTag = targetBoss.tags.includes("惧热") || false;
const currentColdLayers = targetBoss.coldLayers || 0;
if (hasFearHeatTag && currentColdLayers > 0) {
if (!targetUpdates) {
targetUpdates = {
name: targetBoss.name,
updates: {}
};
}
targetUpdates.updates.coldLayersChange = -(currentColdLayers + 2);
messages.push(`🌬️ 【冷适应】生效:清除全部${currentColdLayers}层寒冷效果`);
}
if (hasFearHeatTag && weaponName === "零度之下") {
isImmune = true;
immuneCold = true;
messages.push(`🌬️ 【冷适应】生效:免疫寒冷伤害`);
return { isImmune, immuneCold, messages, targetUpdates };
}
if (currentLayers < 10 && weaponName === "零度之下") {
const newLayers = currentLayers + 1;
targetUpdates = {
name: targetBoss.name,
updates: {
statusLayersChanged: 1
}
};
messages.push(`🌬️ 【冷适应】触发:当前${newLayers}层`);
if (newLayers >= 10) {
targetUpdates.updates.tagsAdded = ["惧热"];
messages.push(`🔥 【冷适应】生效:获得「惧热」标签并免疫寒冷伤害`);
}
}
return { isImmune, immuneCold, messages, targetUpdates };
}, "handleColdAdaptation"),
// 感染空间站处理(空间站存活时自身减伤50%)
handleInfectedSpaceStation: /* @__PURE__ */ __name(function(targetBoss, activeBosses) {
const messages = [];
if (!targetBoss.skills.includes("感染空间站")) {
return null;
}
const spaceStation = activeBosses.find(
(boss) => boss.name === "空间站哨枪塔" && boss.isActive
);
if (!spaceStation) {
return null;
}
const newNerfMultiplier = 0.5;
messages.push(`🛸 【感染空间站】生效:「空间站哨枪塔」存活,受到的伤害-50%`);
return {
nerfMultiplier: newNerfMultiplier,
// 返回调整后的减伤系数
messages
};
}, "handleInfectedSpaceStation"),
// 病毒云处理(释放病毒云雾减伤10%)
handleVirusCloud: /* @__PURE__ */ __name(function(targetBoss) {
const messages = [];
if (!targetBoss.skills.includes("病毒云")) {
return null;
}
const newNerfMultiplier = 0.1;
messages.push(`☁️ 【病毒云】生效:受到的伤害-10%`);
return {
nerfMultiplier: newNerfMultiplier,
// 返回调整后的减伤系数
messages
};
}, "handleVirusCloud"),
// 霉菌滋生处理(空间站存活时为其回复1%最大生命值)
handleMoldGrowth: /* @__PURE__ */ __name(function(targetBoss, activeBosses) {
const messages = [];
if (!targetBoss.skills.includes("霉菌滋生")) {
return null;
}
const spaceStation = activeBosses.find(
(boss) => boss.name === "空间站哨枪塔" && boss.isActive
);
if (!spaceStation) {
return null;
}
const spaceStationMaxHP = getMaxHPByName(spaceStation.name);
const healAmount = Math.round(spaceStationMaxHP * 0.01);
const otherUpdates = {
name: spaceStation.name,
updates: {
hpChange: healAmount
}
};
messages.push(`🍄 【霉菌滋生】生效:为「空间站哨枪塔」回复${healAmount}点生命值`);
return {
messages,
otherUpdates
};
}, "handleMoldGrowth"),
// 岗哨机枪处理(累计10次攻击后为其他异形回复10%最大生命值)
handleSentryGun: /* @__PURE__ */ __name(function(targetBoss, activeBosses) {
const messages = [];
let targetUpdates = null;
const otherUpdates = [];
if (!targetBoss.skills.includes("岗哨机枪")) {
return null;
}
const currentStacks = targetBoss.skillStacks || 0;
if (currentStacks < 10) {
targetUpdates = {
name: targetBoss.name,
updates: {
skillStacksChanged: 1
// 层数+1
}
};
const newStacks = currentStacks + 1;
messages.push(`🔫 【岗哨机枪】充能:当前${newStacks}/10次攻击`);
return {
messages,
targetUpdates,
otherUpdates
};
}
targetUpdates = {
name: targetBoss.name,
updates: {
skillStacksChanged: -currentStacks
// 重置层数
}
};
const otherSurvivingBosses = activeBosses.filter(
(boss) => boss.name !== targetBoss.name && boss.isActive
);
otherSurvivingBosses.forEach((otherBoss) => {
const otherName = otherBoss.name;
const otherMaxHP = getMaxHPByName(otherName);
const healAmount = Math.round(otherMaxHP * 0.1);
otherUpdates.push({
name: otherName,
updates: {
hpChange: healAmount
// 生命值回复
}
});
messages.push(`🔫 【岗哨机枪】触发:为「${otherName}」回复${healAmount}点生命值`);
});
return {
messages,
targetUpdates,
otherUpdates
};
}, "handleSentryGun"),
// 结构装甲处理(常规伤害降低20%;热能武器伤害降低40%)
handleStructuralArmor: /* @__PURE__ */ __name(function(targetBoss, weaponData) {
const messages = [];
if (!targetBoss.skills.includes("结构装甲")) {
return null;
}
const weaponType = weaponData.type;
const isHeatWeapon = weaponType === "热能武器";
const nerfMultiplier = isHeatWeapon ? 0.4 : 0.2;
messages.push(`🛡️ 【结构装甲】生效:受到${weaponType}的伤害-${nerfMultiplier * 100}%`);
return {
nerfMultiplier,
messages
};
}, "handleStructuralArmor"),
// 吸血唾液处理(叠加「吸血」层数,每层提供5%减伤,最多20层)
handleVampireSaliva: /* @__PURE__ */ __name(function(targetBoss) {
const messages = [];
if (!targetBoss.skills.includes("吸血唾液")) {
return null;
}
const currentStacks = targetBoss.skillStacks || 0;
const addStacks = currentStacks < 20 ? 1 : 0;
const addedReduction = currentStacks * 0.05;
let targetUpdates = null;
if (addStacks > 0) {
targetUpdates = {
name: targetBoss.name,
updates: {