Skip to content

Commit

Permalink
Merge pull request #1563 from PZ157/PR-Branch
Browse files Browse the repository at this point in the history
bug修复、shaRelated调整
  • Loading branch information
Spmario233 authored Jul 11, 2024
2 parents d36342a + 99120c1 commit bd86a5e
Show file tree
Hide file tree
Showing 41 changed files with 179 additions and 247 deletions.
11 changes: 4 additions & 7 deletions character/diy/skill.js
Original file line number Diff line number Diff line change
Expand Up @@ -3375,19 +3375,14 @@ const skills = {
var check = function (list) {
for (var i = 0; i < list.length; i++) {
var info = lib.skill[list[i]];
if (info && info.shaRelated) return true;
if (!info) continue;
if (info.shaRelated) return true;
if (info && info.trigger) {
for (var j in info.trigger) {
var cond = info.trigger[j];
if (typeof cond == "string") {
cond = [cond];
}
if (j == "player" || j == "global") {
if (cond.indexOf("shaBefore") != -1) return true;
if (cond.indexOf("shaBegin") != -1) return true;
if (cond.indexOf("shaEnd") != -1) return true;
if (cond.indexOf("shaAfter") != -1) return true;
}
if (j == "source" || j == "global") {
if (cond.indexOf("damageBefore") != -1) return true;
if (cond.indexOf("damageBegin") != -1) return true;
Expand All @@ -3399,6 +3394,8 @@ const skills = {
}
}
}
if (info.shaRelated === false) return false;
if (get.skillInfoTranslation(list[i], player).includes("【杀】")) return true;
}
return false;
};
Expand Down
2 changes: 1 addition & 1 deletion character/diy/translate.js
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ const translates = {
kangyin_info: "出牌阶段限一次,你可以失去1点体力并选择一名其他角色,弃置该角色的一张牌。若此牌:为基本牌,你可以令一至X名角色各摸一张牌;不为基本牌,于此回合内:你的进攻距离+X,且你使用【杀】的额外目标数上限+X。(X为你已损失的体力值)",
zhucheng: "筑城",
zhucheng2: "筑城",
zhucheng_info: "①结束阶段开始时,若没有“筑”,你可以将牌堆顶的X张牌置于你的武将牌上〔称为“筑”〕(X为你已损失的体力值与1中的较大值),否则你可以获取所有“筑”。②当你成为【杀】的目标时,若有“筑”,你可以令此杀的使用者弃置X张牌(X为“筑”的数量),否则杀对你无效。",
zhucheng_info: "①结束阶段开始时,若没有“筑”,你可以将牌堆顶的X张牌置于你的武将牌上〔称为“筑”〕(X为你已损失的体力值与1中的较大值),否则你可以获取所有“筑”。②当你成为【杀】的目标时,若有“筑”,你可以令此【杀】的使用者弃置X张牌(X为“筑”的数量),否则此【杀】对你无效。",
duoqi: "夺气",
duoqi_info: "当一名角色于除你之外的角色的出牌阶段内因弃置而失去牌后,你可以移去一张“筑”,并结束此出牌阶段。",

Expand Down
4 changes: 2 additions & 2 deletions character/extra/skill.js
Original file line number Diff line number Diff line change
Expand Up @@ -3047,7 +3047,6 @@ const skills = {
},
},
subSkill: { phase: { charlotte: true } },
shaRelated: true,
},
twwuhun: {
audio: 2,
Expand Down Expand Up @@ -8697,7 +8696,8 @@ const skills = {
att = get.attitude(_status.event.player, target);
for (let i in target.skills) {
let info = get.info(i);
if (info && info.shaRelated) return Math.abs(att);
if (!info || info.shaRelated === false) continue;
if (info.shaRelated || get.skillInfoTranslation(i, target).includes("【杀】")) return Math.abs(att);
}
if (att > 0) {
if (th > 3 && target.hp > 2) return 0.6 * th;
Expand Down
34 changes: 11 additions & 23 deletions character/gujian.js
Original file line number Diff line number Diff line change
Expand Up @@ -1159,20 +1159,8 @@ game.import("character", function () {
var info = lib.skill[list[i]];
if (!info) continue;
if (info.shaRelated) return true;
if (info.trigger) {
for (var j in info.trigger) {
if (j == "player" || j == "global") {
var cond = info.trigger[j];
if (typeof cond == "string") {
cond = [cond];
}
if (cond.indexOf("shaBefore") != -1) return true;
if (cond.indexOf("shaBegin") != -1) return true;
if (cond.indexOf("shaEnd") != -1) return true;
if (cond.indexOf("shaAfter") != -1) return true;
}
}
}
if (info.shaRelated === false) return false;
if (get.skillInfoTranslation(list[i], player).includes("【杀】")) return true;
}
return false;
};
Expand Down Expand Up @@ -2821,7 +2809,7 @@ game.import("character", function () {
"锁定技,奇数游戏轮次开始时,你获得潜行直到下一轮开始;偶数游戏轮次开始时,你随机获得一张机关牌。",
xuanci: "旋刺",
xuanci_info:
"出牌阶段限一次,你可以将一张梅花牌当作飞镖使用;锁定技,你使用飞镖无距离限制,你使用飞镖后对目标结算后视为对目标使用一张杀。",
"出牌阶段限一次,你可以将一张梅花牌当作飞镖使用;锁定技,你使用飞镖无距离限制,你使用飞镖后对目标结算后视为对目标使用一张【杀】。",
humeng: "湖梦",
humeng_sub: "偃甲谢衣",
humeng_info:
Expand All @@ -2840,7 +2828,7 @@ game.import("character", function () {
cihong: "刺鸿",
cihong_bg: "鸿",
cihong_info:
"每三轮限一次,结束阶段,你可以指定一名其他角色并可以依次选择:1. 弃置一张红色牌;2. 失去1点体力;3. 将武将牌翻至背面;每选择一项,视为对目标使用一张杀。",
"每三轮限一次,结束阶段,你可以指定一名其他角色并可以依次选择:1. 弃置一张红色牌;2. 失去1点体力;3. 将武将牌翻至背面;每选择一项,视为对目标使用一张【杀】。",
lianjing: "莲境",
lianjing_info:
"每两轮限一次,回合结束后,你可以选择至多2名其他角色,将其他角色移出游戏,然后你与所选的角色依次进行一个回合。",
Expand All @@ -2862,7 +2850,7 @@ game.import("character", function () {
"濒死阶段,你可以与一名体力值不超过你的体力上限的角色拼点,若你赢,你失去1点体力上限并将体力值回复至与该角色相同;若你没赢,你立即死亡。",
chizhen: "驰阵",
chizhen_info:
"出牌阶段开始时,你可以摸X张牌并弃置X张牌,若你弃置了杀,可以视为使用一张决斗(X为你已损失的体力值且至少为1)。",
"出牌阶段开始时,你可以摸X张牌并弃置X张牌,若你弃置了【杀】,可以视为使用一张决斗(X为你已损失的体力值且至少为1)。",
xidie: "戏蝶",
xidie2: "戏蝶",
xidie_info:
Expand All @@ -2871,12 +2859,12 @@ game.import("character", function () {
meihu2: "魅狐",
meihu_info: "当你受到伤害后,可令伤害来源交给你一张手牌。",
jianwu: "剑舞",
jianwu_info: "锁定技,攻击范围不含你的角色无法闪避你的杀。",
jianwu_info: "锁定技,攻击范围不含你的角色无法闪避你的【杀】。",
meiying: "魅影",
meiying_info:
"一名其他角色的回合结束时,若其未于此回合内使用过指定另一名角色为目标的牌,你可以弃置一张红色牌视为对其使用一张杀。",
"一名其他角色的回合结束时,若其未于此回合内使用过指定另一名角色为目标的牌,你可以弃置一张红色牌视为对其使用一张【杀】。",
zuizhan: "乱斩",
zuizhan_info: "每当你使用一张杀,可以摸一张牌,然后此杀随机增加一个额外目标。",
zuizhan_info: "每当你使用一张【杀】,可以摸一张牌,然后此【杀】随机增加一个额外目标。",
xlqianhuan: "千幻",
xlqianhuan_info:
"回合结束后,若你已受伤,你可以回复1点体力并将武将牌翻面。若你的武将牌背面朝上,你不能使用卡牌,也不能成为卡牌的目标。",
Expand Down Expand Up @@ -2911,17 +2899,17 @@ game.import("character", function () {
xiuhua_info: "每当一件其他角色的装备因被替换或弃置进入弃牌堆,你可以获得之。",
liuying: "流影",
liuying_info:
"每当你使用一张杀结算完毕后,你可以指定一名本回合未成为过你的杀的目标的角色,并亮出牌堆顶的一张牌,若为黑色,你对该角色使用一张杀。",
"每当你使用一张【杀】结算完毕后,你可以指定一名本回合未成为过你的【杀】的目标的角色,并亮出牌堆顶的一张牌,若为黑色,你对该角色使用一张【杀】。",
boyun: "拨云",
boyun1: "拨云",
boyun2: "拨云",
boyun_info:
"在你的回合内,你可以弃置一张装备牌,并展示牌堆顶的一张牌,若其为装备牌,你须将其交给任意一张角色并对其造成1点伤害,否则你摸一张牌。",
jizhan: "疾战",
jizhan_info:
"出牌阶段限一次,你可以移动到任意一名角色的前一位,视为对其使用了一张不计入出杀次数的杀。",
"出牌阶段限一次,你可以移动到任意一名角色的前一位,视为对其使用了一张不计入出杀次数的【杀】。",
qianjun: "千军",
qianjun_info: "每当你使用一张杀,你可以弃置一张牌,令距离目标1以内的所有角色成为额外目标。",
qianjun_info: "每当你使用一张【杀】,你可以弃置一张牌,令距离目标1以内的所有角色成为额外目标。",
xuanning: "玄凝",
xuanning1: "玄凝",
xuanning2: "玄凝",
Expand Down
28 changes: 14 additions & 14 deletions character/gwent.js
Original file line number Diff line number Diff line change
Expand Up @@ -4788,15 +4788,15 @@ game.import("character", function () {
gwjinli_info: "出牌阶段限一次,你可以弃置一张手牌,并将一张先祖麦酒置于一名角色的武将牌上。",
gw_xianzumaijiu: "先祖麦酒",
gw_xianzumaijiu_info:
"出牌阶段对自己使用,你使用下一张杀造成伤害后,令所有友方角色摸一张牌;濒死阶段,对自己使用,回复1点体力。",
"出牌阶段对自己使用,你使用下一张【杀】造成伤害后,令所有友方角色摸一张牌;濒死阶段,对自己使用,回复1点体力。",
gwliaotian: "燎天",
gwliaotian_info:
"出牌阶段限2次,若你有至少两张手牌且颜色均相同,你可以重铸你的全部手牌,并视为对一名随机敌方角色使用一张不计入出杀次数的杀。",
"出牌阶段限2次,若你有至少两张手牌且颜色均相同,你可以重铸你的全部手牌,并视为对一名随机敌方角色使用一张不计入出杀次数的【杀】。",
gwmaoxian_yioufeisi: "伊欧菲斯",
gwmaoxian_yioufeisi_info: "选择两名角色,令目标依次视为对对方使用一张杀,然后结束出牌阶段。",
gwmaoxian_yioufeisi_info: "选择两名角色,令目标依次视为对对方使用一张【杀】,然后结束出牌阶段。",
gwmaoxian_luoqi: "罗契",
gwmaoxian_luoqi_info:
"选择一名角色视为对其使用一张不计入出杀次数的杀,然后所有其他角色可以对目标使用一张杀,然后结束出牌阶段。",
"选择一名角色视为对其使用一张不计入出杀次数的【杀】,然后所有其他角色可以对目标使用一张【杀】,然后结束出牌阶段。",
gwmaoxian_jieluote: "杰洛特",
gwmaoxian_jieluote_info:
"对一名角色造成1点伤害,若目标体力值大于2且为全场最多,改为造成2点伤害,然后结束出牌阶段。",
Expand All @@ -4806,7 +4806,7 @@ game.import("character", function () {
gwmaoxian_telisi_info: "对至多3名随机友方角色施加一个随机正面效果,然后结束出牌阶段。",
gwmaoxian_hengsaite: "亨赛特",
gwmaoxian_hengsaite_info:
"视为使用一张万箭齐发,每当有一名角色因此受到伤害,你获得一张杀,然后结束出牌阶段。",
"视为使用一张万箭齐发,每当有一名角色因此受到伤害,你获得一张【杀】,然后结束出牌阶段。",
gwmaoxian_fuertaisite: "弗尔泰斯特",
gwmaoxian_fuertaisite_info: "令至多两名角色各获得1点护甲,然后结束出牌阶段。",
gwmaoxian_laduoweide: "拉多维德",
Expand All @@ -4830,7 +4830,7 @@ game.import("character", function () {
gwmaoxian_gaier: "盖尔",
gwmaoxian_gaier_info: "令一名角色增加或减少1点体力和体力上限,然后结束出牌阶段。",
gwmaoxian_airuiting: "艾瑞汀",
gwmaoxian_airuiting_info: "令所有其他角色选择一项:使用一张杀,或失去1点体力,然后结束出牌阶段。",
gwmaoxian_airuiting_info: "令所有其他角色选择一项:使用一张【杀】,或失去1点体力,然后结束出牌阶段。",
gwmaoxian_aisinie: "埃丝涅",
gwmaoxian_aisinie_info: "回复1点体力并获得任意一张银卡法术,然后结束出牌阶段。",
gwmaoxian_falanxisika: "法兰茜斯卡",
Expand Down Expand Up @@ -4866,7 +4866,7 @@ game.import("character", function () {
gwgouhun_info:
"出牌阶段限一次,你可以交给一名有手牌的其他角色一张手牌,然后令其选择一项:1. 将手牌中与此牌花色相同的牌(至少一张)交给你;2. 弃置手牌中与此牌花色不同的牌(至少一张);3. 进入混乱状态直到下一回合结束。",
gw_wuyao: "雾妖",
gw_wuyao_info: "在你行动时可当作杀使用;回合结束后,从手牌中消失。",
gw_wuyao_info: "在你行动时可当作【杀】使用;回合结束后,从手牌中消失。",
gw_lang: "狼",
gw_lang_info: "在你行动时可当作酒使用;回合结束后,从手牌中消失。",
gwyewu: "叶舞",
Expand Down Expand Up @@ -4936,9 +4936,9 @@ game.import("character", function () {
"准备阶段,你可以令一名角色选择一项:回复1点体力,或从弃牌堆中获得一张非金法术牌(直到洗牌入牌堆前该牌不能再以此法获得)。",
junchi: "骏驰",
junchi_info:
"每当一名其他角色使用一张杀,若目标不是你,你可以对杀的目标使用一张牌,并摸一张牌,每回合限一次。",
"每当一名其他角色使用一张【杀】,若目标不是你,你可以对【杀】的目标使用一张牌,并摸一张牌,每回合限一次。",
junchi_old_info:
"当一名其他角色使用杀对一个目标结算后,该角色可以交给你一张牌,然后你可以对杀的目标使用一张牌,若如此做,你回复1点体力,杀的使用者摸一张牌。",
"当一名其他角色使用【杀】对一个目标结算后,该角色可以交给你一张牌,然后你可以对【杀】的目标使用一张牌,若如此做,你回复1点体力,【杀】的使用者摸一张牌。",
gw_dudayuanshuai1: "杜达元帅",
gw_dudayuanshuai1_info:
"当你成为其他角色使用牌的目标时,你可以使用此牌取消之,然后获得对你使用的牌。",
Expand All @@ -4962,7 +4962,7 @@ game.import("character", function () {
"出牌阶段限两次,你可以弃置一张牌对场上体力值最高(或之一)的一名角色造成1点伤害。",
gwjiquan: "集权",
gwjiquan_info:
"出牌阶段限一次,你可以从任意名角色处各获得一张牌,每拿一张牌,被拿牌的角色视为对你使用一张杀。",
"出牌阶段限一次,你可以从任意名角色处各获得一张牌,每拿一张牌,被拿牌的角色视为对你使用一张【杀】。",
nuhou: "怒吼",
nuhou_info:
"每当你受到一次伤害,你可以弃置一张牌,然后对一名随机敌人造成1点伤害并随机弃置其一张牌。",
Expand All @@ -4971,13 +4971,13 @@ game.import("character", function () {
"出牌阶段限一次,你可以弃置至多三张牌然后摸三张牌;若你弃置了至少两张牌,你本回合使用牌无视距离;若你弃置了三张牌,你回复1点体力。",
gwzhanjiang: "斩将",
gwzhanjiang_info:
"每轮限一次,在一名角色的准备阶段,你可以弃置一张牌,然后所有角色可以对该角色使用一张杀,出杀的角色在响应时摸一张牌,当有至少两名角色响应后终止结算。",
"每轮限一次,在一名角色的准备阶段,你可以弃置一张牌,然后所有角色可以对该角色使用一张【杀】,出杀的角色在响应时摸一张牌,当有至少两名角色响应后终止结算。",
gwchuanxin: "穿心",
gwchuanxin_info:
"你的攻击范围基数为你当前体力值;每当你对一名角色使用杀结算完毕后,你可以亮出牌堆顶的一张牌,若为黑色,视为对目标再使用一张杀。",
"你的攻击范围基数为你当前体力值;每当你对一名角色使用【杀】结算完毕后,你可以亮出牌堆顶的一张牌,若为黑色,视为对目标再使用一张【杀】。",
fengjian: "风剑",
fengjian_info:
"每当你使用一张锦囊牌,你可以视为对一名不是此牌目标的角色使用一张雷杀,若如此做,你获得潜行直到下一回合开始。",
"每当你使用一张锦囊牌,你可以视为对一名不是此牌目标的角色使用一张雷【杀】,若如此做,你获得潜行直到下一回合开始。",
huandie: "幻蝶",
huandie_info:
"准备阶段,你可以摸一张牌,并令任意名其他角色摸两张牌,若如此做,此回合结束时,所有手牌数大于体力值的角色需弃置两张手牌。",
Expand All @@ -4986,7 +4986,7 @@ game.import("character", function () {
"准备阶段,你可以选择一项效果直到下一回合开始:1. 每当一名其他角色在一个回合中首次受到伤害,该角色失去1点体力,你回复1点体力;2. 每当一名其他角色在一个回合中首次造成伤害,该角色失去1点体力,你(若不是受伤害角色)回复1点体力。",
fayin: "法印",
fayin_info:
"每当你使用一张杀,你可以弃置一张牌并获得一个随机法印效果:1. 目标随机弃置两张牌;2. 目标进入混乱状态直到下一回合开始;3. 对目标造成1点火属性伤害;4. 获得1点护甲;5. 令目标翻面并摸一张牌。",
"每当你使用一张【杀】,你可以弃置一张牌并获得一个随机法印效果:1. 目标随机弃置两张牌;2. 目标进入混乱状态直到下一回合开始;3. 对目标造成1点火属性伤害;4. 获得1点护甲;5. 令目标翻面并摸一张牌。",
gwbaquan: "霸权",
gwbaquan_info:
"出牌阶段限一次,你可以获得一名其他角色的所有牌,然后还给其等量的牌,若你归还的牌均为你得到的牌且该角色体力值不小于你,你对其造成1点伤害。",
Expand Down
Loading

0 comments on commit bd86a5e

Please # to comment.