mirror of
https://github.com/Shu-Ying/noname-shuying.git
synced 2026-10-21 14:49:59 +08:00
🎉 2.0.0.9版本发布
This commit is contained in:
+1
-1
@@ -5,7 +5,7 @@ import initShuYingMenu from "./menu.js";
|
|||||||
|
|
||||||
export const type = "extension";
|
export const type = "extension";
|
||||||
export let shuYing = new Object();
|
export let shuYing = new Object();
|
||||||
const shuYingLocalVersion = "2.0.0.8";
|
const shuYingLocalVersion = "2.0.0.9";
|
||||||
|
|
||||||
shuYing.name = "术樱包";
|
shuYing.name = "术樱包";
|
||||||
shuYing.editable = false;
|
shuYing.editable = false;
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -211,6 +211,16 @@ const characters = {
|
|||||||
img: "extension/术樱包/pve/images/天书乱斗/xuannv_boss_shuying.png",
|
img: "extension/术樱包/pve/images/天书乱斗/xuannv_boss_shuying.png",
|
||||||
dieAudios: ["ext:术樱包/pve/audio/dead/天书乱斗/xuannv_boss_shuying.mp3"]
|
dieAudios: ["ext:术樱包/pve/audio/dead/天书乱斗/xuannv_boss_shuying.mp3"]
|
||||||
},
|
},
|
||||||
|
hanba_boss_shuying: {
|
||||||
|
sex: "female",
|
||||||
|
group: "shen",
|
||||||
|
hp: 4,
|
||||||
|
skills: ["xinji_shuying", "zhiri_shuying", "fenshi_shuying"],
|
||||||
|
isHiddenBoss: true,
|
||||||
|
isBossAllowed: true,
|
||||||
|
img: "extension/术樱包/pve/images/天书乱斗/hanba_boss_shuying.png",
|
||||||
|
dieAudios: ["ext:术樱包/pve/audio/dead/天书乱斗/hanba_boss_shuying.mp3"]
|
||||||
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -167,8 +167,8 @@ const dynamicTranslates = {
|
|||||||
|
|
||||||
//玄女
|
//玄女
|
||||||
xuanlie_shuying(player, skill) {
|
xuanlie_shuying(player, skill) {
|
||||||
let num = 2;
|
const difficulty = getTianshuDifficulty();
|
||||||
if (getTianshuDifficulty() == "normal") num = 1;
|
const num = difficulty == "normal" ? 1 : 2;
|
||||||
|
|
||||||
return `锁定技,回合结束时,对所有本回合你获得过其牌的敌方角色依次造成${num}点伤害。`;
|
return `锁定技,回合结束时,对所有本回合你获得过其牌的敌方角色依次造成${num}点伤害。`;
|
||||||
},
|
},
|
||||||
@@ -181,7 +181,25 @@ const dynamicTranslates = {
|
|||||||
: "若这些牌包含4种花色,这些角色再额外失去1点体力。";
|
: "若这些牌包含4种花色,这些角色再额外失去1点体力。";
|
||||||
|
|
||||||
return `锁定技,准备阶段,你获得所有敌方角色各${num}张手牌。若你以此法获得的牌包含2种颜色,则对所有你以此法获得其牌的敌方角色造成1点伤害。${extra}`;
|
return `锁定技,准备阶段,你获得所有敌方角色各${num}张手牌。若你以此法获得的牌包含2种颜色,则对所有你以此法获得其牌的敌方角色造成1点伤害。${extra}`;
|
||||||
}
|
},
|
||||||
|
|
||||||
|
xinji_shuying(player, skill) {
|
||||||
|
const difficulty = getTianshuDifficulty();
|
||||||
|
const num = difficulty == "nightmare" ? 2 : 1;
|
||||||
|
|
||||||
|
return `锁定技,当友方于回合外因弃置而失去手牌时,你对当前角色造成${num}点伤害。`
|
||||||
|
},
|
||||||
|
zhiri_shuying(player, skill) {
|
||||||
|
let num = 1;
|
||||||
|
const difficulty = getTianshuDifficulty();
|
||||||
|
if (difficulty == "hard") {
|
||||||
|
num = 2;
|
||||||
|
} else if (difficulty == "nightmare") {
|
||||||
|
num = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
return `锁定技,当敌方角色使用红色锦囊牌指定目标后,你摸${num}张牌。`
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export default dynamicTranslates;
|
export default dynamicTranslates;
|
||||||
|
|||||||
+99
-1
@@ -1517,7 +1517,7 @@ const skills = {
|
|||||||
},
|
},
|
||||||
async content(event, trigger, player) {
|
async content(event, trigger, player) {
|
||||||
const result = await player
|
const result = await player
|
||||||
.judge(card => get.color(card) == "black" ? 2 : 1)
|
.judge(card => get.color(card) == "black" ? 2 : -1)
|
||||||
.set("judge2", result => result.bool)
|
.set("judge2", result => result.bool)
|
||||||
.forResult();
|
.forResult();
|
||||||
|
|
||||||
@@ -2015,6 +2015,104 @@ const skills = {
|
|||||||
threaten: 1.6,
|
threaten: 1.6,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
//旱魃
|
||||||
|
xinji_shuying: {
|
||||||
|
mode: ["boss"],
|
||||||
|
audio: "ext:术樱包/pve/audio/skill/天书乱斗:2",
|
||||||
|
trigger: { global: "loseAfter" },
|
||||||
|
forced: true,
|
||||||
|
locked: true,
|
||||||
|
filter(event, player) {
|
||||||
|
return (
|
||||||
|
_status.currentPhase &&
|
||||||
|
_status.currentPhase.isIn() &&
|
||||||
|
event.player?.isIn() &&
|
||||||
|
event.player != _status.currentPhase &&
|
||||||
|
!player.getEnemies(null, false).includes(event.player) &&
|
||||||
|
event.type == "discard" &&
|
||||||
|
event.cards2?.some(card => get.position(card, true) == "d" && event.hs?.includes(card))
|
||||||
|
);
|
||||||
|
},
|
||||||
|
async content(event, trigger, player) {
|
||||||
|
const difficulty = getTianshuDifficulty();
|
||||||
|
const num = difficulty == "nightmare" ? 2 : 1;
|
||||||
|
const target = _status.currentPhase;
|
||||||
|
player.line(target);
|
||||||
|
await target.damage(num, player);
|
||||||
|
},
|
||||||
|
ai: {
|
||||||
|
threaten: 1.6,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
zhiri_shuying: {
|
||||||
|
mode: ["boss"],
|
||||||
|
audio: "ext:术樱包/pve/audio/skill/天书乱斗:2",
|
||||||
|
trigger: { global: "useCardToPlayered" },
|
||||||
|
forced: true,
|
||||||
|
locked: true,
|
||||||
|
filter(event, player) {
|
||||||
|
return (
|
||||||
|
event.isFirstTarget &&
|
||||||
|
event.player?.isIn() &&
|
||||||
|
player.getEnemies(null, false).includes(event.player) &&
|
||||||
|
get.type2(event.card) == "trick" &&
|
||||||
|
get.color(event.card) == "red"
|
||||||
|
);
|
||||||
|
},
|
||||||
|
async content(event, trigger, player) {
|
||||||
|
let num = 1;
|
||||||
|
const difficulty = getTianshuDifficulty();
|
||||||
|
if (difficulty == "hard") {
|
||||||
|
num = 2;
|
||||||
|
} else if (difficulty == "nightmare") {
|
||||||
|
num = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
await player.draw(num);
|
||||||
|
},
|
||||||
|
ai: {
|
||||||
|
threaten: 1.4,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
fenshi_shuying: {
|
||||||
|
mode: ["boss"],
|
||||||
|
audio: "ext:术樱包/pve/audio/skill/天书乱斗:2",
|
||||||
|
trigger: { player: "phaseZhunbeiBegin" },
|
||||||
|
forced: true,
|
||||||
|
locked: true,
|
||||||
|
filter(event, player) {
|
||||||
|
const num = player.countCards("h") - player.hp;
|
||||||
|
if (num < 0) return true;
|
||||||
|
if (num > 0) return player.getEnemies(null, false).some(target => target.isIn());
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
async content(event, trigger, player) {
|
||||||
|
const num = player.countCards("h") - player.hp;
|
||||||
|
|
||||||
|
if (num < 0) {
|
||||||
|
await player.draw(-num);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const enemies = player.getEnemies(null, false).filter(target => target.isIn());
|
||||||
|
const map = new Map();
|
||||||
|
|
||||||
|
for (let i = 0; i < num && enemies.length; i++) {
|
||||||
|
const target = enemies.randomGet();
|
||||||
|
map.set(target, (map.get(target) || 0) + 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const [target, damage] of map) {
|
||||||
|
if (!target.isIn()) continue;
|
||||||
|
player.line(target);
|
||||||
|
await target.damage(damage, player);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ai: {
|
||||||
|
threaten: 2,
|
||||||
|
},
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export default skills;
|
export default skills;
|
||||||
|
|||||||
@@ -139,6 +139,15 @@ const translates = {
|
|||||||
jiutian_shuying_info: "锁定技,准备阶段,你获得所有敌方角色各1张手牌。若你以此法获得的牌包含2种颜色,则对所有你以此法获得其牌的敌方角色造成1点伤害。",
|
jiutian_shuying_info: "锁定技,准备阶段,你获得所有敌方角色各1张手牌。若你以此法获得的牌包含2种颜色,则对所有你以此法获得其牌的敌方角色造成1点伤害。",
|
||||||
dishi_shuying: "帝师",
|
dishi_shuying: "帝师",
|
||||||
dishi_shuying_info: "当你使用【杀】或普通锦囊牌指定目标时,如果目标数为1,可以增加一个目标;如果目标数大于1,你可以减少一个目标。",
|
dishi_shuying_info: "当你使用【杀】或普通锦囊牌指定目标时,如果目标数为1,可以增加一个目标;如果目标数大于1,你可以减少一个目标。",
|
||||||
|
|
||||||
|
hanba_boss_shuying: "旱魃",
|
||||||
|
xinji_shuying: "心悸",
|
||||||
|
xinji_shuying_info: "锁定技,当友方于回合外因弃置而失去手牌时,你对当前角色造成1点伤害。",
|
||||||
|
zhiri_shuying: "炙日",
|
||||||
|
zhiri_shuying_info: "锁定技,当敌方角色使用红色锦囊牌指定目标后,你摸1张牌。",
|
||||||
|
fenshi_shuying: "焚世",
|
||||||
|
fenshi_shuying_info: "锁定技,准备阶段,若你的手牌数小于体力值,则将手牌摸至于体力值相等;若你的手牌数大于体力值,则你对敌方角色造成共计X点伤害,点数随机分配(X为手牌数减体力值)。",
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export default translates;
|
export default translates;
|
||||||
|
|||||||
+18
-10
@@ -1,9 +1,9 @@
|
|||||||
const bossList = {
|
const bossList = {
|
||||||
stage1: ["riyeyoushen_boss_shuying", "wuma_boss_shuying"],
|
//stage1: ["riyeyoushen_boss_shuying", "dongzhuo_boss_shuying"],
|
||||||
//stage1: ["chenlong_boss_shuying", "weiyang_boss_shuying", "shenhou_boss_shuying", "xvgou_boss_shuying"],
|
stage1: ["chenlong_boss_shuying", "weiyang_boss_shuying", "shenhou_boss_shuying", "xvgou_boss_shuying"],
|
||||||
stage2: ["heibaiwuchang_boss_shuying", "yvsai_boss_shuying", "huangfeng_boss_shuying", "riyeyoushen_boss_shuying"],
|
stage2: ["heibaiwuchang_boss_shuying", "yvsai_boss_shuying", "huangfeng_boss_shuying", "riyeyoushen_boss_shuying"],
|
||||||
stage3: ["caocao_boss_shuying", "simayi_boss_shuying", "lvbu_boss_shuying"],
|
stage3: ["caocao_boss_shuying", "simayi_boss_shuying", "lvbu_boss_shuying", "dongzhuo_boss_shuying"],
|
||||||
stage4: ["shuishengonggong_boss_shuying", "shaohao_boss_shuying", "xuannv_boss_shuying"],
|
stage4: ["shuishengonggong_boss_shuying", "shaohao_boss_shuying", "xuannv_boss_shuying", "hanba_boss_shuying"],
|
||||||
};
|
};
|
||||||
|
|
||||||
const virtualIdolList = ["vtb_xiaotao", "vtb_xiaosha", "vtb_xiaoshan", "vtb_xiaole", "vtb_xiaojiu"];
|
const virtualIdolList = ["vtb_xiaotao", "vtb_xiaosha", "vtb_xiaoshan", "vtb_xiaole", "vtb_xiaojiu"];
|
||||||
@@ -178,6 +178,17 @@ const bossDifficulty = {
|
|||||||
skills: ["zhanjia_shuying"],
|
skills: ["zhanjia_shuying"],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
dongzhuo_boss_shuying: {
|
||||||
|
...bossDifficultyTemplates.qingqingzijin,
|
||||||
|
hard: {
|
||||||
|
...bossDifficultyTemplates.qingqingzijin.hard,
|
||||||
|
skills: ["qubu_shuying"],
|
||||||
|
},
|
||||||
|
nightmare: {
|
||||||
|
...bossDifficultyTemplates.qingqingzijin.nightmare,
|
||||||
|
skills: ["qubu_shuying"],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
shuishengonggong_boss_shuying: {
|
shuishengonggong_boss_shuying: {
|
||||||
...bossDifficultyTemplates.tianshuluandou,
|
...bossDifficultyTemplates.tianshuluandou,
|
||||||
@@ -190,12 +201,9 @@ const bossDifficulty = {
|
|||||||
skill: ["shuishen_shuying"],
|
skill: ["shuishen_shuying"],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
shaohao_boss_shuying: {
|
shaohao_boss_shuying: { ...bossDifficultyTemplates.tianshuluandou, },
|
||||||
...bossDifficultyTemplates.tianshuluandou,
|
xuannv_boss_shuying: { ...bossDifficultyTemplates.tianshuluandou, },
|
||||||
},
|
hanba_boss_shuying: { ...bossDifficultyTemplates.tianshuluandou, },
|
||||||
xuannv_boss_shuying: {
|
|
||||||
...bossDifficultyTemplates.tianshuluandou,
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
baiqi_boss_shuying: {},
|
baiqi_boss_shuying: {},
|
||||||
|
|||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
"-----< 20260731 改动 >-----",
|
||||||
|
"新增可以自定义虚拟偶像随机助战池功能",
|
||||||
|
"现在过关奖励提供的技能池会过滤武将牌上的技能",
|
||||||
|
"-----< 20260731 修复 >-----",
|
||||||
|
"修复BOSS死亡尸体不会消失的BUG",
|
||||||
|
"修正过关后BOSS的初始手牌不再是摸牌事件",
|
||||||
|
"适配部分技能需要依赖BOSS的起始手牌",
|
||||||
|
"适配部分技能需要选择已经死亡的BOSS为目标时,提供一个按钮来列出已死亡的BOSS列表",
|
||||||
|
"-----< 20260722 改动 >-----",
|
||||||
|
"新增BOSS:玄女!",
|
||||||
|
"不用担心困难,虚拟偶像前来援助!",
|
||||||
|
"新增BOSS选项开启,现在可以在扩展选项中开启新增1位BOSS来提高难度!",
|
||||||
|
"-----< 20260722 修复 >-----",
|
||||||
|
"修复当过关奖励执行完毕轮数和下轮角色异常的BUG",
|
||||||
|
"修复了一个BUG,该BUG会导致进入下关时BOSS的初始牌会被技能检索",
|
||||||
|
"修复黄蜂技能【冥虫】无法正常发动的BUG",
|
||||||
|
"修正司马懿AI向其友方发动【反馈】【狼顾】的问题",
|
||||||
Reference in New Issue
Block a user