forked from mirrors/webxoss-core
💩 coding cards effects
This commit is contained in:
parent
a68525c7f8
commit
6dfeeb6b1e
1 changed files with 98 additions and 45 deletions
143
CardInfo.js
143
CardInfo.js
|
@ -123866,18 +123866,6 @@ var CardInfo = {
|
||||||
"imgUrl": "http://www.takaratomy.co.jp/products/wixoss/wxwp/images/card/WX17/WX17-035.jpg",
|
"imgUrl": "http://www.takaratomy.co.jp/products/wixoss/wxwp/images/card/WX17/WX17-035.jpg",
|
||||||
"illust": "ピスケ",
|
"illust": "ピスケ",
|
||||||
faqs: [
|
faqs: [
|
||||||
{
|
|
||||||
"q": "「能力を失う」とはどういうことですか?",
|
|
||||||
"a": "能力を失ったシグニはテキストに記載された、また他のカードによって付与された能力を失います。"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"q": "能力を新たに得られない、という効果は、パワーを増減する効果も受けませんか?",
|
|
||||||
"a": "パワーを増減させる効果は、そのシグニが能力を得ているわけではありません。パワーを増減する効果では通常通りパワーが増減されます。\nまた、レイヤーによって能力を得ているシグニは能力を得られなくなるため、結果的に失います。"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"q": "出現時能力によって能力を失ったシグニに、《打突》のようにパワーをプラスして【ランサー】を付与するスペルを使用した場合はどうなりますか?",
|
|
||||||
"a": "その場合、パワーはプラスされますが、【ランサー】を得ることはできません。"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"q": "「能力を失い、新たに得られない」という効果は、《先駆の大天使 アークゲイン》などの「効果を受けない」シグニには有効ですか?",
|
"q": "「能力を失い、新たに得られない」という効果は、《先駆の大天使 アークゲイン》などの「効果を受けない」シグニには有効ですか?",
|
||||||
"a": "「能力を失う」という効果は「テキストを消す」という効果であり、テキストを変更する効果は「効果を受けない」によって無効化できます。後半の「能力を新たに得られない」効果は、そのシグニのテキストを変更しているわけではないため、効果を受けないシグニであっても、この効果の適用中は新たに能力は得られません。"
|
"a": "「能力を失う」という効果は「テキストを消す」という効果であり、テキストを変更する効果は「効果を受けない」によって無効化できます。後半の「能力を新たに得られない」効果は、そのシグニのテキストを変更しているわけではないため、効果を受けないシグニであっても、この効果の適用中は新たに能力は得られません。"
|
||||||
|
@ -123894,13 +123882,52 @@ var CardInfo = {
|
||||||
"costGreen": 0,
|
"costGreen": 0,
|
||||||
"costColorless": 0,
|
"costColorless": 0,
|
||||||
"guardFlag": false,
|
"guardFlag": false,
|
||||||
cardSkills: [
|
"multiEner": false,
|
||||||
"[レイヤー]あなたのすべての<怪異>のシグニは《レイヤーアイコン》の能力を得る",
|
cardText: "みーんな眠っちゃえ!~ピグシイ~",
|
||||||
|
layer: true,
|
||||||
|
// ======================
|
||||||
|
// 常时效果
|
||||||
|
// ======================
|
||||||
|
constEffectTexts: [
|
||||||
"《レイヤーアイコン》【自】:このシグニがアタックしたとき、ターン終了時まで、このシグニの正面のシグニ1体はすべての能力を失い、新たに得られない。",
|
"《レイヤーアイコン》【自】:このシグニがアタックしたとき、ターン終了時まで、このシグニの正面のシグニ1体はすべての能力を失い、新たに得られない。",
|
||||||
"《レイヤーアイコン》【自】:このシグニがバニッシュされたとき、ターン終了時まで、対戦相手のシグニ1体はすべての能力を失い、新たに得られない。"
|
"《レイヤーアイコン》【自】:このシグニがバニッシュされたとき、ターン終了時まで、対戦相手のシグニ1体はすべての能力を失い、新たに得られない。"
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
constEffects: [{
|
||||||
cardText: "みーんな眠っちゃえ!~ピグシイ~",
|
// TODO: 测试失去效果和不再获得新效果
|
||||||
|
// TODO: FAQ 「失去效果」不会受大天使影响,「不能获得新效果」受大天使影响
|
||||||
|
layer: true,
|
||||||
|
action: function (set,add) {
|
||||||
|
var effect = this.game.newEffect({
|
||||||
|
source: this,
|
||||||
|
description: '2421-const-0',
|
||||||
|
condition: function () {
|
||||||
|
return this.getOpposingSigni();
|
||||||
|
},
|
||||||
|
actionAsyn: function () {
|
||||||
|
var signi = this.getOpposingSigni();
|
||||||
|
this.game.tillTurnEndSet(signi,'abilityLost',true);
|
||||||
|
this.game.tillTurnEndSet(signi,'canNotGainAbility',true,{forced: true});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
add(this.player,'onAttack',effect);
|
||||||
|
},
|
||||||
|
},{
|
||||||
|
layer: true,
|
||||||
|
action: function (set,add) {
|
||||||
|
var effect = this.game.newEffect({
|
||||||
|
source: this,
|
||||||
|
description: '2421-const-1',
|
||||||
|
actionAsyn: function () {
|
||||||
|
return this.player.selectOpponentSigniAsyn().callback(this,function (signi) {
|
||||||
|
if (!signi) return;
|
||||||
|
this.game.tillTurnEndSet(signi,'abilityLost',true);
|
||||||
|
this.game.tillTurnEndSet(signi,'canNotGainAbility',true,{forced: true});
|
||||||
|
});
|
||||||
|
}zA
|
||||||
|
});
|
||||||
|
add(this.player,'onBanish',effect);
|
||||||
|
},
|
||||||
|
}],
|
||||||
},
|
},
|
||||||
"2422": {
|
"2422": {
|
||||||
"pid": 2422,
|
"pid": 2422,
|
||||||
|
@ -125296,16 +125323,6 @@ var CardInfo = {
|
||||||
"limiting": "ドーナ",
|
"limiting": "ドーナ",
|
||||||
"imgUrl": "http://www.takaratomy.co.jp/products/wixoss/wxwp/images/card/WX17/WX17-036.jpg",
|
"imgUrl": "http://www.takaratomy.co.jp/products/wixoss/wxwp/images/card/WX17/WX17-036.jpg",
|
||||||
"illust": "かにかま",
|
"illust": "かにかま",
|
||||||
faqs: [
|
|
||||||
{
|
|
||||||
"q": "元々ライフバーストがある<怪異>のシグニはどうなりますか?",
|
|
||||||
"a": "その<怪異>は、《幻怪 ブラウニー》によって得たライフバーストと、元々のライフバーストの2つを持っています。そのカードがライフクロスとしてクラッシュされた場合、好きな方のライフバーストから順番に発動できます。"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"q": "《幻怪 ブラウニー》が2体、自分の場に出ている場合はどうなりますか?",
|
|
||||||
"a": "その場合、あなたの怪異はそれぞれの<ブラウニー>によりライフバーストを2つ得ます。それがクラッシュされたら、これらのライフバーストを2回発動できます。"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"classes": [
|
"classes": [
|
||||||
"精生",
|
"精生",
|
||||||
"怪異"
|
"怪異"
|
||||||
|
@ -125317,11 +125334,49 @@ var CardInfo = {
|
||||||
"costGreen": 0,
|
"costGreen": 0,
|
||||||
"costColorless": 0,
|
"costColorless": 0,
|
||||||
"guardFlag": false,
|
"guardFlag": false,
|
||||||
cardSkills: [
|
"multiEner": false,
|
||||||
|
// ======================
|
||||||
|
// 常时效果
|
||||||
|
// ======================
|
||||||
|
constEffectTexts: [
|
||||||
"【常】:あなたのすべての領域にある<怪異>のシグニは【ライフバースト】「対戦相手のシグニ1体をトラッシュに置く。」を持つ。"
|
"【常】:あなたのすべての領域にある<怪異>のシグニは【ライフバースト】「対戦相手のシグニ1体をトラッシュに置く。」を持つ。"
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
constEffects: [{
|
||||||
cardText: "お掃除、お掃除っと。~ブラウニー~"
|
action: function (set,add) {
|
||||||
|
var cards = this.game.cards.filter(function (card) {
|
||||||
|
return (card.player === this.player) && card.hasClass('怪異');
|
||||||
|
},this);
|
||||||
|
// TODO: 效果在这张signi出场时生效,离场时失效
|
||||||
|
// TODO: FAQ 多个生命爆发发动时,可以自己选择发动顺序
|
||||||
|
// TODO: FAQ 多张卡在场时,生命爆发效果可以叠加
|
||||||
|
this.game.addConstEffect({
|
||||||
|
source: this,
|
||||||
|
fixed: true,
|
||||||
|
action: function (set,add) {
|
||||||
|
cards.forEach(function (card) {
|
||||||
|
var effect = this.game.newEffect({
|
||||||
|
source: card,
|
||||||
|
description: '2450-attached-0',
|
||||||
|
optional: true,
|
||||||
|
actionAsyn: function () {
|
||||||
|
return this.selectOpponentSigniAsyn().callback(this,function (signi) {
|
||||||
|
if (!signi) return;
|
||||||
|
return signi.banishAsyn();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
add(card,'onBurst',effect);
|
||||||
|
},this);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}],
|
||||||
|
// ======================
|
||||||
|
// 附加效果
|
||||||
|
// ======================
|
||||||
|
attachedEffectTexts: [
|
||||||
|
"【※】:対戦相手のシグニ1体をトラッシュに置く。"
|
||||||
|
],
|
||||||
},
|
},
|
||||||
"2451": {
|
"2451": {
|
||||||
"pid": 2451,
|
"pid": 2451,
|
||||||
|
@ -128332,7 +128387,7 @@ var CardInfo = {
|
||||||
constEffects: [{
|
constEffects: [{
|
||||||
layer: true,
|
layer: true,
|
||||||
condition: function () {
|
condition: function () {
|
||||||
return this.turnPlayer === this.player.opponent;
|
return this.game.turnPlayer === this.player.opponent;
|
||||||
},
|
},
|
||||||
action: function (set,add) {
|
action: function (set,add) {
|
||||||
add(this,'power',3000);
|
add(this,'power',3000);
|
||||||
|
@ -128372,16 +128427,16 @@ var CardInfo = {
|
||||||
},
|
},
|
||||||
},{
|
},{
|
||||||
once: true,
|
once: true,
|
||||||
costCondition: function () {
|
actionAsyn: function () {
|
||||||
var levels = [];
|
var levels = [];
|
||||||
this.player.trashZone.cards.forEach(function (card) {
|
this.player.trashZone.cards.forEach(function (card) {
|
||||||
if (!card.hasClass('怪異')) return;
|
if (!card.hasClass('怪異')) return;
|
||||||
if (inArr(card.level,levels)) return;
|
if (inArr(card.level,levels)) return;
|
||||||
levels.push(card.level);
|
levels.push(card.level);
|
||||||
},this);
|
},this);
|
||||||
return levels.length >= 4
|
if (levels.length < 4) return;
|
||||||
},
|
levels.length = 0;
|
||||||
costAsyn: function () {
|
|
||||||
var cards_deck = [];
|
var cards_deck = [];
|
||||||
return Callback.loop(this,4,function () {
|
return Callback.loop(this,4,function () {
|
||||||
var cards = this.player.trashZone.cards.filter(function (card) {
|
var cards = this.player.trashZone.cards.filter(function (card) {
|
||||||
|
@ -128396,18 +128451,16 @@ var CardInfo = {
|
||||||
return this.player.opponent.showCardsAsyn(cards_deck).callback(this,function () {
|
return this.player.opponent.showCardsAsyn(cards_deck).callback(this,function () {
|
||||||
var cards = this.game.moveCards(cards_deck,this.player.mainDeck,{bottom: true});
|
var cards = this.game.moveCards(cards_deck,this.player.mainDeck,{bottom: true});
|
||||||
if (cards.length !== 4) return;
|
if (cards.length !== 4) return;
|
||||||
});
|
this.game.addConstEffect({
|
||||||
});
|
source: this,
|
||||||
},
|
destroyTimming: this.player.onTurnStart,
|
||||||
actionAsyn: function () {
|
action: function (set,add) {
|
||||||
this.game.addConstEffect({
|
add(resona,'effectFilters',function (card) {
|
||||||
source: this,
|
return (card.player !== this.player.opponent) || (card.type !== 'SIGNI');
|
||||||
destroyTimming: this.player.onTurnStart,
|
});
|
||||||
action: function (set,add) {
|
}
|
||||||
add(resona,'effectFilters',function (card) {
|
|
||||||
return (card.player !== this.player.opponent) || (card.type !== 'SIGNI');
|
|
||||||
});
|
});
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}],
|
}],
|
||||||
|
|
Loading…
Reference in a new issue