diff --git a/card/guozhan.js b/card/guozhan.js index f23f18c56..eb62acee6 100644 --- a/card/guozhan.js +++ b/card/guozhan.js @@ -482,6 +482,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip2", + cardcolor: "heart", nomod: true, nopower: true, unique: true, @@ -1059,6 +1060,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip2", + cardcolor: "club", skills: ["huxinjing"], filterTarget: function (card, player, target) { if (get.mode() == "guozhan" && player != target) return false; diff --git a/card/yingbian.js b/card/yingbian.js index 1f83bb44d..c2edf19fe 100644 --- a/card/yingbian.js +++ b/card/yingbian.js @@ -281,6 +281,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip1", + cardcolor: "diamond", distance: { attackFrom: -3 }, ai: { basic: { @@ -307,6 +308,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip2", + cardcolor: "club", ai: { basic: { equipValue: 2, @@ -331,6 +333,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip5", + cardcolor: "club", skills: ["tianjitu_skill"], onLose: function () { player.addTempSkill("tianjitu_skill_lose"); @@ -355,6 +358,7 @@ game.import("card", function () { fullskin: true, type: "equip", subtype: "equip5", + cardcolor: "spade", ai: { basic: { equipValue: 3, diff --git a/character/clan.js b/character/clan.js index 0b8b74c5c..91b93d07b 100644 --- a/character/clan.js +++ b/character/clan.js @@ -25,8 +25,7 @@ game.import("character", function () { clan_wuqiao: ["male", "jin", 4, ["clanqiajue", "clanmuyin"], ["clan:陈留吴氏"]], clan_wangguang: ["male", "wei", 3, ["clanlilun", "clanjianji", "clanzhongliu"], ["clan:太原王氏"]], clan_wangmingshan: ["male", "wei", 3, ["clantanque", "clanshengmo", "clanzhongliu"], ["clan:太原王氏"]], - //笑点解析——群雄 - clan_zhongyao: ["male", "qun", 3, ["clanchengqi", "clanjieli", "clanbaozu"], ["clan:颍川钟氏"]], + clan_zhongyao: ["male", "wei", 3, ["clanchengqi", "clanjieli", "clanbaozu"], ["clan:颍川钟氏"]], }, characterSort: { clan: { diff --git a/character/collab.js b/character/collab.js index 2ab724c6e..0e4882936 100644 --- a/character/collab.js +++ b/character/collab.js @@ -2270,6 +2270,7 @@ game.import("character", function () { derivation: "sunwukong", type: "equip", subtype: "equip1", + cardcolor: "heart", skills: ["ruyijingubang_skill", "ruyijingubang_effect"], equipDelay: false, distance: { diff --git a/character/huicui.js b/character/huicui.js index 02e1423d9..bf001fedb 100644 --- a/character/huicui.js +++ b/character/huicui.js @@ -14525,6 +14525,10 @@ game.import("character", function () { content: function () { player.chooseToDiscard("h", true); }, + ai: { + halfneg: true, + nokeep: true + }, }, //董白 relianzhu: { diff --git a/character/jsrg.js b/character/jsrg.js index 42d70d310..c5ee62229 100644 --- a/character/jsrg.js +++ b/character/jsrg.js @@ -84,11 +84,6 @@ game.import("character", function () { jsrg_zhugeliang: "建兴六年春,汉丞相诸葛亮使赵云、邓芝为先锋,马谡为副将拒箕谷,牵制曹真主力。自率三十万大军攻祁山,三郡叛魏应亮,关中响震。曹叡命张郃拒亮,亮使定军山降将姜维与郃战于街亭,张郃久攻不下。后曹真强攻赵云军,赵云死战,坚守箕谷,马谡、邓芝当场战死忠勇殉国。……既克张郃,曹真溃逃,曹叡弃守长安,迁都邺城。十月,司马懿击退孙权,回援曹真。而后三年,丞相所到之处,无不望风而降,皆箪食壶浆,以迎汉军。尽收豫、徐、兖、并之地,建兴十年春,司马懿父子三人死于诸葛武侯火计,同年,孙权上表称臣,至此四海清平,大汉一统。而后诸葛亮荐蒋琬为丞相,姜维为大将军,自回隆中归隐,后主挽留再三,皆不受。魏延亦辞官相随,侍奉左右。后主时有不决之事,便往隆中拜访相父,均未得面,童子答曰外出云游,遗数锦囊,拆而视之,皆治国之良策也。", }, characterTitle: {}, - characterFilter: { - jsrg_jiangwei(mode) { - return mode !== "guozhan"; - }, - }, perfectPair: {}, card: { xumou_jsrg: { @@ -118,6 +113,7 @@ game.import("character", function () { audio: true, fullskin: true, type: "basic", + cardcolor: "spade", enable: false, destroy: "discardPile", getYing: function (count) { @@ -141,6 +137,9 @@ game.import("character", function () { jsrg_xushao: function (mode) { return mode != "guozhan"; }, + jsrg_jiangwei(mode) { + return mode !== "guozhan"; + }, }, skill: { //江山如故·合 @@ -8400,6 +8399,9 @@ game.import("character", function () { }, }, }, + ai: { + combo: "jsrgzhenglve" + }, }, //南华老仙 jsrgshoushu: { diff --git a/character/mobile.js b/character/mobile.js index cc00ba22e..cd31a94bd 100644 --- a/character/mobile.js +++ b/character/mobile.js @@ -428,6 +428,7 @@ game.import("character", function () { fullskin: true, //vanish:true, derivation: "liuye", + cardcolor: "diamond", type: "equip", subtype: "equip1", distance: { attackFrom: -8 }, @@ -2743,7 +2744,12 @@ game.import("character", function () { } } }, - ai: { presha: true, pretao: true, nokeep: true }, + ai: { + presha: true, + pretao: true, + neg: true, + nokeep: true + }, }, //庞统 xinlianhuan: { @@ -7011,6 +7017,10 @@ game.import("character", function () { content: function () { player.loseHp(); }, + ai: { + neg: true, + nokeep: true + }, mod: { maxHandcard: function (player, num) { return num - 3; @@ -7057,6 +7067,10 @@ game.import("character", function () { content: function () { player.skip("phaseDraw"); }, + ai: { + neg: true, + nokeep: true + }, marktext: "金", intro: { name: "金(拥蔽)", diff --git a/character/onlyOL.js b/character/onlyOL.js index 5593cbf57..999b8fd08 100644 --- a/character/onlyOL.js +++ b/character/onlyOL.js @@ -56,6 +56,7 @@ game.import("character", function () { card: { sizhaojian: { derivation: "ol_sb_yuanshao", + cardcolor: "diamond", fullskin: true, type: "equip", subtype: "equip1", diff --git a/character/sp.js b/character/sp.js index 3a22bab4a..936210987 100755 --- a/character/sp.js +++ b/character/sp.js @@ -396,6 +396,7 @@ game.import("character", function () { //蒲元衍生 sanlve: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", subtype: "equip5", ai: { @@ -408,6 +409,7 @@ game.import("character", function () { }, zhaogujing: { derivation: "ol_puyuan", + cardcolor: "diamond", type: "equip", subtype: "equip5", ai: { @@ -420,6 +422,7 @@ game.import("character", function () { }, shufazijinguan: { derivation: "ol_puyuan", + cardcolor: "diamond", type: "equip", subtype: "equip5", modeimage: "boss", @@ -433,6 +436,7 @@ game.import("character", function () { }, xuwangzhimian: { derivation: "ol_puyuan", + cardcolor: "club", type: "equip", fullskin: true, subtype: "equip5", @@ -444,6 +448,7 @@ game.import("character", function () { }, hongmianbaihuapao: { derivation: "ol_puyuan", + cardcolor: "club", type: "equip", subtype: "equip2", modeimage: "boss", @@ -457,6 +462,7 @@ game.import("character", function () { }, guofengyupao: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", fullskin: true, modeimage: "boss", @@ -468,6 +474,7 @@ game.import("character", function () { }, qimenbagua: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", fullskin: true, modeimage: "boss", @@ -479,6 +486,7 @@ game.import("character", function () { }, linglongshimandai: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", subtype: "equip2", modeimage: "boss", @@ -492,6 +500,7 @@ game.import("character", function () { }, chixueqingfeng: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", fullskin: true, modeimage: "boss", @@ -504,6 +513,7 @@ game.import("character", function () { }, guilongzhanyuedao: { derivation: "ol_puyuan", + cardcolor: "spade", type: "equip", fullskin: true, modeimage: "boss", @@ -519,6 +529,7 @@ game.import("character", function () { }, wushuangfangtianji: { derivation: "ol_puyuan", + cardcolor: "diamond", type: "equip", modeimage: "boss", subtype: "equip1", @@ -535,6 +546,7 @@ game.import("character", function () { }, bintieshuangji: { derivation: "ol_puyuan", + cardcolor: "diamond", type: "equip", subtype: "equip1", distance: { @@ -651,8 +663,8 @@ game.import("character", function () { fullskin: true, vanish: true, derivation: "fengfangnv", + cardcolor: "spade", type: "equip", - suit: "spade", subtype: "equip5", skills: ["zhuangshu_basic"], forceDie: true, @@ -677,8 +689,8 @@ game.import("character", function () { fullskin: true, vanish: true, derivation: "fengfangnv", + cardcolor: "club", type: "equip", - suit: "club", subtype: "equip5", forceDie: true, skills: ["zhuangshu_trick"], @@ -697,8 +709,8 @@ game.import("character", function () { fullskin: true, vanish: true, derivation: "fengfangnv", + cardcolor: "heart", type: "equip", - suit: "heart", subtype: "equip5", skills: ["zhuangshu_equip"], forceDie: true, @@ -13420,7 +13432,7 @@ game.import("character", function () { var card = target.getEquip(name); target.$give(card, trigger.player, false); } else { - var card = game.createCard(name, lib.card[name].suit, 12); + var card = game.createCard(name, lib.card[name].cardcolor, 12); trigger.player.$gain2(card, false); } game.delayx(); @@ -13447,7 +13459,7 @@ game.import("character", function () { if (result.bool) { player.logSkill("zhuangshu"); var name = result.links[0][2], - card = game.createCard(name, lib.card[name].suit, 12); + card = game.createCard(name, lib.card[name].cardcolor, 12); player.$gain2(card, false); game.delayx(); player.equip(card); @@ -17918,7 +17930,12 @@ game.import("character", function () { player.addMark("new_zhixi", 1, false); if (get.type2(trigger.card) == "trick") player.storage.new_zhixi2 = true; }, - ai: { presha: true, pretao: true, nokeep: true }, + ai: { + presha: true, + pretao: true, + neg: true, + nokeep: true + }, }, new_mumu2: { charlotte: true, diff --git a/character/sp2.js b/character/sp2.js index 66bc5ecf5..7b73fdaa3 100644 --- a/character/sp2.js +++ b/character/sp2.js @@ -8701,6 +8701,9 @@ game.import("character", function () { }, }, group: "panshi_damage", + ai: { + halfneg: true + }, }, panshi_damage: { trigger: { source: "damageBegin1" }, diff --git a/character/tw.js b/character/tw.js index b3f67bd43..b1c9628d7 100644 --- a/character/tw.js +++ b/character/tw.js @@ -380,6 +380,7 @@ game.import("character", function () { type: "equip", subtype: "equip1", derivation: "tw_gexuan", + cardcolor: "heart", distance: { attackFrom: -2 }, ai: { basic: { @@ -393,6 +394,7 @@ game.import("character", function () { type: "equip", subtype: "equip1", derivation: "tw_gexuan", + cardcolor: "heart", distance: { attackFrom: -4 }, ai: { basic: { @@ -406,6 +408,7 @@ game.import("character", function () { type: "equip", subtype: "equip2", derivation: "tw_gexuan", + cardcolor: "heart", ai: { basic: { equipValue: 7, @@ -419,6 +422,7 @@ game.import("character", function () { type: "equip", subtype: "equip1", cardimage: "yinyueqiang", + cardcolor: "diamond", derivation: "tw_zhaoxiang", distance: { attackFrom: -2 }, ai: { @@ -19421,7 +19425,7 @@ game.import("character", function () { }); "step 1"; if (result.bool) { - var card = game.createCard2(result.links[0][2]); + var card = game.createCard2(result.links[0][2], "heart", 1); lib.inpile.add(result.links[0][2]); player.storage.twsidao = card; player.chooseUseTarget(card, "nopopup", true); @@ -19821,7 +19825,6 @@ game.import("character", function () { }, }, twyanqin: { - forbid: ["guozhan"], audio: 2, trigger: { player: "phaseBegin" }, direct: true, @@ -19874,7 +19877,6 @@ game.import("character", function () { }, chijie: { audio: true, - forbid: ["guozhan"], trigger: { global: "phaseBefore", player: "enterGame", @@ -19984,7 +19986,6 @@ game.import("character", function () { }, }, renshe: { - forbid: ["guozhan"], audio: 2, trigger: { player: "damageEnd" }, direct: true, @@ -20235,10 +20236,10 @@ game.import("character", function () { twbaimei: "白眉", twbaimei_info: "锁定技,若你没有手牌,则防止你受到的所有属性伤害和锦囊牌造成的伤害。", chijie: "持节", - chijie_info: " 游戏开始时,你可以选择一个现存势力,你的势力视为该势力。", + chijie_info: "游戏开始时,你可以选择一个现存势力,你的势力视为该势力。", waishi: "外使", waishi_info: - " 出牌阶段限一次,你可以用至多X张牌交换一名其他角色等量的手牌(X为现存势力数),然后若其与你势力相同或手牌多于你,你摸一张牌。", + "出牌阶段限一次,你可以用至多X张牌交换一名其他角色等量的手牌(X为现存势力数),然后若其与你势力相同或手牌多于你,你摸一张牌。", renshe: "忍涉", renshe_info: "当你受到伤害后,你可以选择一项:将势力改为现存的另一个势力;或可以额外发动一次“外使”直到你的下个出牌阶段结束;或与另一名其他角色各摸一张牌。", diff --git a/character/xianding.js b/character/xianding.js index b0bc9d0e3..1034fcca3 100644 --- a/character/xianding.js +++ b/character/xianding.js @@ -18877,6 +18877,7 @@ game.import("character", function () { pyzhuren_heart: { fullskin: true, derivation: "puyuan", + cardcolor: "heart", type: "equip", subtype: "equip1", distance: { attackFrom: -2 }, @@ -18895,6 +18896,7 @@ game.import("character", function () { pyzhuren_diamond: { fullskin: true, derivation: "puyuan", + cardcolor: "diamond", type: "equip", subtype: "equip1", distance: { attackFrom: -1 }, @@ -18913,6 +18915,7 @@ game.import("character", function () { pyzhuren_club: { fullskin: true, derivation: "puyuan", + cardcolor: "club", type: "equip", subtype: "equip1", distance: { attackFrom: -1 }, @@ -18944,6 +18947,7 @@ game.import("character", function () { pyzhuren_spade: { fullskin: true, derivation: "puyuan", + cardcolor: "spade", type: "equip", subtype: "equip1", skills: ["pyzhuren_spade"], @@ -18961,6 +18965,7 @@ game.import("character", function () { pyzhuren_shandian: { fullskin: true, derivation: "puyuan", + cardcolor: "spade", type: "equip", subtype: "equip1", distance: { attackFrom: -3 }, @@ -18979,6 +18984,7 @@ game.import("character", function () { dagongche: { fullskin: true, derivation: "zhangfen", + cardcolor: "spade", type: "equip", subtype: "equip5", skills: ["dagongche_skill"], @@ -19008,6 +19014,7 @@ game.import("character", function () { fullskin: true, derivation: "dc_liuye", cardimage: "ly_piliche", + cardcolor: "diamond", type: "equip", subtype: "equip5", skills: ["pilitoushiche"], diff --git a/character/yingbian.js b/character/yingbian.js index 15a605753..cfb76baec 100644 --- a/character/yingbian.js +++ b/character/yingbian.js @@ -2693,7 +2693,8 @@ game.import("character", function () { return Math.random(); }); "step 1"; - var card = game.createCard(result.links[0][2]); + var name = result.links[0][2], + card = game.createCard(name, lib.card[name].cardcolor, 5); player.$gain2(card); player.equip(card); game.delay(); @@ -2756,6 +2757,7 @@ game.import("character", function () { cheliji_sichengliangyu: { trigger: { global: "phaseJieshuBegin" }, equipSkill: true, + cardcolor: "heart", filter: function (event, player) { return player.countCards("h") < player.hp && player.getEquip("cheliji_sichengliangyu"); }, @@ -2770,6 +2772,7 @@ game.import("character", function () { cheliji_tiejixuanyu: { trigger: { global: "phaseJieshuBegin" }, equipSkill: true, + cardcolor: "club", filter: function (event, player) { return ( player != event.player && @@ -2793,6 +2796,7 @@ game.import("character", function () { cheliji_feilunzhanyu: { trigger: { global: "phaseJieshuBegin" }, equipSkill: true, + cardcolor: "spade", filter: function (event, player) { return ( player != event.player && diff --git a/mode/guozhan.js b/mode/guozhan.js index 472dd8216..b92ec9eeb 100644 --- a/mode/guozhan.js +++ b/mode/guozhan.js @@ -5045,10 +5045,13 @@ game.import("mode", function (lib, game, ui, get, ai, _status) { async content(event, trigger, player) { trigger.targets.length = 0; trigger.all_excluded = true; - if (get.type(trigger.card) == "equip" && !get.owner(trigger.card)) { - await player.gain(trigger.card, "gain2"); - if (get.owner(trigger.card) == player && player.hasUseTarget(trigger.card)) { - await player.chooseUseTarget(trigger.card); + const cards = trigger.cards.filter(i => !get.owner(i)); + if (cards.length && get.type(trigger.card) == "equip") { + await player.gain(cards, "gain2"); + for (let i of cards) { + if (get.owner(i) == player && player.hasUseTarget(i)) { + await player.chooseUseTarget(i); + } } } },