commit
b0965b0e09
|
@ -1407,7 +1407,7 @@ game.import("card", function () {
|
||||||
return 1;
|
return 1;
|
||||||
},
|
},
|
||||||
basic: {
|
basic: {
|
||||||
order: 9,
|
order: 7.2,
|
||||||
useful: [5, 1],
|
useful: [5, 1],
|
||||||
value: 5,
|
value: 5,
|
||||||
},
|
},
|
||||||
|
@ -1700,7 +1700,7 @@ game.import("card", function () {
|
||||||
return 1;
|
return 1;
|
||||||
},
|
},
|
||||||
basic: {
|
basic: {
|
||||||
order: 9,
|
order: 7.2,
|
||||||
useful: 1,
|
useful: 1,
|
||||||
value: 5,
|
value: 5,
|
||||||
},
|
},
|
||||||
|
@ -1843,7 +1843,7 @@ game.import("card", function () {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
basic: {
|
basic: {
|
||||||
order: 7.2,
|
order: 7,
|
||||||
useful: 4.5,
|
useful: 4.5,
|
||||||
value: 9.2,
|
value: 9.2,
|
||||||
},
|
},
|
||||||
|
@ -2111,12 +2111,13 @@ game.import("card", function () {
|
||||||
pos = get.position(button.link),
|
pos = get.position(button.link),
|
||||||
name = get.name(button.link);
|
name = get.name(button.link);
|
||||||
if (pos == "j") {
|
if (pos == "j") {
|
||||||
if (name == "lebu") {
|
let viewAs = button.link.viewAs;
|
||||||
|
if (viewAs == "lebu") {
|
||||||
let needs = target.needsToDiscard(2);
|
let needs = target.needsToDiscard(2);
|
||||||
btv *= 1.08 + 0.2 * needs;
|
btv *= 1.08 + 0.2 * needs;
|
||||||
} else if (name == "shandian" || name == "fulei" || name == "plague") btv /= 2;
|
} else if (viewAs == "shandian" || viewAs == "fulei") btv /= 2;
|
||||||
}
|
}
|
||||||
if (get.attitude(player, get.owner(button.link)) > 0) btv = -btv;
|
if (att > 0) btv = -btv;
|
||||||
if (pos != "e") {
|
if (pos != "e") {
|
||||||
if (pos == "h" && !player.hasSkillTag("viewHandcard", null, target, true))
|
if (pos == "h" && !player.hasSkillTag("viewHandcard", null, target, true))
|
||||||
return btv + 0.1;
|
return btv + 0.1;
|
||||||
|
@ -2156,6 +2157,7 @@ game.import("card", function () {
|
||||||
return get.value(card, target) > 0 && card != target.getEquip('jinhe');
|
return get.value(card, target) > 0 && card != target.getEquip('jinhe');
|
||||||
}) && !js.some(card => {
|
}) && !js.some(card => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})) return 0;
|
})) return 0;
|
||||||
}
|
}
|
||||||
|
@ -2164,6 +2166,7 @@ game.import("card", function () {
|
||||||
return get.value(card, target) <= 0;
|
return get.value(card, target) <= 0;
|
||||||
}) || js.some(card => {
|
}) || js.some(card => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})) ? 1.5 : 0;
|
})) ? 1.5 : 0;
|
||||||
}
|
}
|
||||||
|
@ -2180,6 +2183,7 @@ game.import("card", function () {
|
||||||
return get.value(card, target) > 0 && card != target.getEquip('jinhe');
|
return get.value(card, target) > 0 && card != target.getEquip('jinhe');
|
||||||
}) || js.some(card => {
|
}) || js.some(card => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})) ? -1.5 : 1.5;
|
})) ? -1.5 : 1.5;
|
||||||
}
|
}
|
||||||
|
@ -2187,6 +2191,7 @@ game.import("card", function () {
|
||||||
return get.value(card, target) <= 0;
|
return get.value(card, target) <= 0;
|
||||||
}) || js.some(card => {
|
}) || js.some(card => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})) ? 1.5 : -1.5;
|
})) ? 1.5 : -1.5;
|
||||||
},
|
},
|
||||||
|
@ -2218,6 +2223,7 @@ game.import("card", function () {
|
||||||
}) ||
|
}) ||
|
||||||
js.some((card) => {
|
js.some((card) => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})
|
})
|
||||||
? -1.5
|
? -1.5
|
||||||
|
@ -2228,6 +2234,7 @@ game.import("card", function () {
|
||||||
}) ||
|
}) ||
|
||||||
js.some((card) => {
|
js.some((card) => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})
|
})
|
||||||
? 1.5
|
? 1.5
|
||||||
|
@ -2250,6 +2257,7 @@ game.import("card", function () {
|
||||||
}) &&
|
}) &&
|
||||||
!js.some((card) => {
|
!js.some((card) => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
|
@ -2260,6 +2268,7 @@ game.import("card", function () {
|
||||||
}) ||
|
}) ||
|
||||||
js.some((card) => {
|
js.some((card) => {
|
||||||
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
var cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})
|
})
|
||||||
? 1.5
|
? 1.5
|
||||||
|
@ -2423,12 +2432,13 @@ game.import("card", function () {
|
||||||
pos = get.position(button.link),
|
pos = get.position(button.link),
|
||||||
name = get.name(button.link);
|
name = get.name(button.link);
|
||||||
if (pos === "j") {
|
if (pos === "j") {
|
||||||
if (name === "lebu") {
|
let viewAs = button.link.viewAs;
|
||||||
|
if (viewAs === "lebu") {
|
||||||
let needs = target.needsToDiscard(2);
|
let needs = target.needsToDiscard(2);
|
||||||
val *= 1.08 + 0.2 * needs;
|
val *= 1.08 + 0.2 * needs;
|
||||||
} else if (name == "shandian" || name == "fulei" || name == "plague") val /= 2;
|
} else if (viewAs == "shandian" || viewAs == "fulei") val /= 2;
|
||||||
}
|
}
|
||||||
if (get.attitude(player, get.owner(button.link)) > 0) val = -val;
|
if (att > 0) val = -val;
|
||||||
if (pos !== "e") return val;
|
if (pos !== "e") return val;
|
||||||
let sub = get.subtypes(button.link);
|
let sub = get.subtypes(button.link);
|
||||||
if (sub.includes("equip1")) return (val * Math.min(3.6, target.hp)) / 3;
|
if (sub.includes("equip1")) return (val * Math.min(3.6, target.hp)) / 3;
|
||||||
|
@ -2466,6 +2476,7 @@ game.import("card", function () {
|
||||||
if (att > 0) {
|
if (att > 0) {
|
||||||
if (js.some(card => {
|
if (js.some(card => {
|
||||||
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})) return 3;
|
})) return 3;
|
||||||
if (target.isDamaged() && es.some(card => card.name == 'baiyin') &&
|
if (target.isDamaged() && es.some(card => card.name == 'baiyin') &&
|
||||||
|
@ -2485,6 +2496,7 @@ game.import("card", function () {
|
||||||
}));
|
}));
|
||||||
const noj = (js.length == 0 || !js.some(card => {
|
const noj = (js.length == 0 || !js.some(card => {
|
||||||
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
}))
|
}))
|
||||||
if (noh && noe2 && noj) return 1.5;
|
if (noh && noe2 && noj) return 1.5;
|
||||||
|
@ -2518,6 +2530,7 @@ game.import("card", function () {
|
||||||
if (
|
if (
|
||||||
js.some((card) => {
|
js.some((card) => {
|
||||||
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
|
@ -2548,6 +2561,7 @@ game.import("card", function () {
|
||||||
js.length == 0 ||
|
js.length == 0 ||
|
||||||
!js.some((card) => {
|
!js.some((card) => {
|
||||||
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
const cardj = card.viewAs ? { name: card.viewAs } : card;
|
||||||
|
if (cardj.name == "xumou_jsrg") return true;
|
||||||
return get.effect(target, cardj, target, player) < 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
});
|
});
|
||||||
if (noh && noe2 && noj) return 1.5;
|
if (noh && noe2 && noj) return 1.5;
|
||||||
|
|
|
@ -61,7 +61,7 @@ game.import("card", function () {
|
||||||
var base = 0;
|
var base = 0;
|
||||||
if (get.cardtag(card, "yingbian_all")) {
|
if (get.cardtag(card, "yingbian_all")) {
|
||||||
if (
|
if (
|
||||||
targets.filter(function (current) {
|
targets.some(function (current) {
|
||||||
var att = get.attitude(player, current);
|
var att = get.attitude(player, current);
|
||||||
if (att <= 0)
|
if (att <= 0)
|
||||||
return (
|
return (
|
||||||
|
@ -74,7 +74,7 @@ game.import("card", function () {
|
||||||
return get.position(card) == "j" || get.value(card, current) <= 0;
|
return get.position(card) == "j" || get.value(card, current) <= 0;
|
||||||
}) > 1
|
}) > 1
|
||||||
);
|
);
|
||||||
}).length
|
})
|
||||||
)
|
)
|
||||||
base += 6;
|
base += 6;
|
||||||
}
|
}
|
||||||
|
@ -138,13 +138,11 @@ game.import("card", function () {
|
||||||
? -1.5
|
? -1.5
|
||||||
: 1.5;
|
: 1.5;
|
||||||
var js = target.getCards("j");
|
var js = target.getCards("j");
|
||||||
if (js.length) {
|
if (js.length && js.some(i => {
|
||||||
var jj = js[0].viewAs ? { name: js[0].viewAs } : js[0];
|
let cardj = i.viewAs ? { name: i.viewAs } : i;
|
||||||
if (js.length == 1 && get.effect(target, jj, target, player) >= 0) {
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return -1.5;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
}
|
})) return 3;
|
||||||
return 3;
|
|
||||||
}
|
|
||||||
return -1.5;
|
return -1.5;
|
||||||
},
|
},
|
||||||
player: function (player, target) {
|
player: function (player, target) {
|
||||||
|
@ -159,13 +157,11 @@ game.import("card", function () {
|
||||||
}
|
}
|
||||||
if (get.attitude(player, target) > 1) {
|
if (get.attitude(player, target) > 1) {
|
||||||
var js = target.getCards("j");
|
var js = target.getCards("j");
|
||||||
if (js.length) {
|
if (js.length && js.some(i => {
|
||||||
var jj = js[0].viewAs ? { name: js[0].viewAs } : js[0];
|
let cardj = i.viewAs ? { name: i.viewAs } : i;
|
||||||
if (js.length == 1 && get.effect(target, jj, target, player) >= 0) {
|
if (cardj.name == "xumou_jsrg") return false;
|
||||||
return 0;
|
return get.effect(target, cardj, target, player) < 0;
|
||||||
}
|
})) return 1;
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
|
|
|
@ -119,6 +119,9 @@ const skills = {
|
||||||
if (cards.length) await player.discard(cards);
|
if (cards.length) await player.discard(cards);
|
||||||
await player.draw(4);
|
await player.draw(4);
|
||||||
},
|
},
|
||||||
|
ai: {
|
||||||
|
combo: "mbpanxiang"
|
||||||
|
},
|
||||||
},
|
},
|
||||||
//李昭焦伯
|
//李昭焦伯
|
||||||
mbzuoyou: {
|
mbzuoyou: {
|
||||||
|
|
|
@ -1635,9 +1635,12 @@ const skills = {
|
||||||
return target.countCards("he") > 0 && target != player;
|
return target.countCards("he") > 0 && target != player;
|
||||||
})
|
})
|
||||||
.set("ai", target => {
|
.set("ai", target => {
|
||||||
var player = _status.event.player;
|
var player = _status.event.player, att = get.attitude(player, target);
|
||||||
if (_status.event.goon) return get.attitude(player, target) * Math.sqrt(target.countCards("he"));
|
if (_status.event.goon) {
|
||||||
return (-get.attitude(player, target) / (target.countCards("he") + 1)) * 10;
|
if (att > 0) return att * Math.sqrt(target.countCards("he"));
|
||||||
|
return (1 - att) / (target.countCards("he") + 1);
|
||||||
|
}
|
||||||
|
return -10 * att / (target.countCards("he") + 1);
|
||||||
})
|
})
|
||||||
.set("goon", player.countCards("hs", card => player.hasValueTarget(card)) >= 2);
|
.set("goon", player.countCards("hs", card => player.hasValueTarget(card)) >= 2);
|
||||||
"step 1";
|
"step 1";
|
||||||
|
@ -1661,6 +1664,14 @@ const skills = {
|
||||||
},
|
},
|
||||||
subSkill: {
|
subSkill: {
|
||||||
effect: {
|
effect: {
|
||||||
|
mod: {
|
||||||
|
aiOrder(player, card, num) {
|
||||||
|
if (num <= 0 || !player.getExpansions("rekuangbi_effect").length) return;
|
||||||
|
let suit = get.suit(card);
|
||||||
|
if (player.getExpansions("rekuangbi_effect").some(i => get.suit(i) == suit)) return num + 10;
|
||||||
|
return num / 4;
|
||||||
|
}
|
||||||
|
},
|
||||||
trigger: { player: "useCard" },
|
trigger: { player: "useCard" },
|
||||||
charlotte: true,
|
charlotte: true,
|
||||||
forced: true,
|
forced: true,
|
||||||
|
|
|
@ -25173,7 +25173,12 @@ const skills = {
|
||||||
usable: 1,
|
usable: 1,
|
||||||
content: function () {
|
content: function () {
|
||||||
"step 0";
|
"step 0";
|
||||||
player.judge();
|
player.judge(card => {
|
||||||
|
if (game.hasPlayer(cur => {
|
||||||
|
return get.event("player").canUse("sha", cur);
|
||||||
|
})) return get.number(card);
|
||||||
|
return 1 / get.number(card);
|
||||||
|
});
|
||||||
"step 1";
|
"step 1";
|
||||||
player.storage.qiangwu = result.number;
|
player.storage.qiangwu = result.number;
|
||||||
player.addTempSkill("qiangwu3", "phaseUseEnd");
|
player.addTempSkill("qiangwu3", "phaseUseEnd");
|
||||||
|
|
Loading…
Reference in New Issue