💫 implement isBanish in move event (for WD21-016)

This commit is contained in:
WEBXOSS 2017-10-04 15:42:38 +08:00
parent e509b99bf6
commit 7933d8b43c
3 changed files with 12 additions and 25 deletions

View file

@ -916,6 +916,7 @@ Card.prototype.moveTo = function (zone,arg) {
var moveEvent = {
card: card,
isSigni: inArr(card,card.player.signis),
isBanish: !!arg.isBanish,
power: card.power, // 移动前的力量
isCharm: arg.isCharm || false,
isCrossed: !!card.crossed,

View file

@ -127952,24 +127952,6 @@ var CardInfo = {
"limiting": "カーニバル",
"imgUrl": "http://www.takaratomy.co.jp/products/wixoss/wxwp/images/card/WD21/WD21-017.jpg",
"illust": "アリオ",
faqs: [
{
"q": "《磊落の選択》で《羅星 ≡センヤ≡》をバニッシュした場合、《羅星 ≡センヤ≡》の自動能力は発動しますか?",
"a": "はい、発動します。"
},
{
"q": "《羅星 ≡センヤ≡》の正面の対戦相手のシグニがアタックし、バトルによってバニッシュされた場合は能力は発動しますか?",
"a": "バトルによるバニッシュは効果によるバニッシュではありませんので、発動しません。"
},
{
"q": "《羅星 ≡センヤ≡》が対戦相手の効果でパワーをマイナスされ、パワー0になってバニッシュされました。能力は発動しますか?",
"a": "いいえ、パワーをマイナスしたのが効果によるものでも、パワーが0以下になったことによるバニッシュはルール処理によるものであり、効果でバニッシュされたわけではなく発動しません。"
},
{
"q": "《羅星 ≡ガイテン≡》の起動能力で《羅星 ≡センヤ≡》がトラッシュに置かれた場合、《羅星 ≡センヤ≡》の自動能力は発動しますか?",
"a": "はい、発動します。起動能力の:の左側がコスト、右側が効果であり、《羅星 ≡センヤ≡》は効果によってトラッシュに置かれます。"
}
],
"classes": [
"精羅",
"宇宙"
@ -127996,11 +127978,10 @@ var CardInfo = {
source: this,
description: '2498-const-0',
triggerCondition: function (event) {
if (!event.isSigni) return false;
// TODO: 判断
// 1.是否(因效果)被驱逐
// 2.是否从场上放置到废弃区
// 3.是否被作为resona的出现条件
// 效果或共鸣
if (!this.game.getEffectSource() && !this.player.inResonaAction) return false;
// 驱逐或从场上移动至废弃区
return event.isBanish || (event.isSigni && (event.oldZone === this.player.trashZone));
},
actionAsyn: function () {
return this.banishSigniAsyn(3000);
@ -129250,7 +129231,7 @@ var CardInfo = {
var cost = {
costBlue: 1,
};
return this.player.payCostOptionalAsyn(cost,true).callback(this,function (costArg) {
return this.player.payCostOptionalAsyn(cost).callback(this,function (costArg) {
if (!costArg) return;
if (event) {
event.wontBeDamaged = true;

View file

@ -504,7 +504,12 @@ Game.prototype.banishCardsAsyn = function (cards,force,arg) {
var accedCards = cards.map(function (card) {
return card.getAccedCards();
},this);
return this.moveCardsAdvancedAsyn(cards,zones,[],force).callback(this,function (arg) {
var args = cards.map(function () {
return {
isBanish: true,
};
})
return this.moveCardsAdvancedAsyn(cards,zones,args,force).callback(this,function (arg) {
arg.protectedFlags.forEach(function (isProtected,i) {
if (isProtected) return;
if (!arg.succs[i]) return;