mirror of
https://github.com/webxoss/webxoss-core.git
synced 2025-02-07 14:23:39 +01:00
💩 coding card effects
This commit is contained in:
parent
3d5fc157c1
commit
e2bcb87746
1 changed files with 195 additions and 12 deletions
207
CardInfo.js
207
CardInfo.js
|
@ -123132,7 +123132,7 @@ var CardInfo = {
|
||||||
// 迸发效果
|
// 迸发效果
|
||||||
// ======================
|
// ======================
|
||||||
burstEffectTexts: [
|
burstEffectTexts: [
|
||||||
"カードを1枚引く。このターン、あなたのライフクロスが2枚以上クラッシュされていた場合、あなたのデッキの一番上のカードをライフクロスに加える。"
|
"【※】:カードを1枚引く。このターン、あなたのライフクロスが2枚以上クラッシュされていた場合、あなたのデッキの一番上のカードをライフクロスに加える。"
|
||||||
],
|
],
|
||||||
burstEffect: {
|
burstEffect: {
|
||||||
actionAsyn: function () {
|
actionAsyn: function () {
|
||||||
|
@ -126628,6 +126628,58 @@ var CardInfo = {
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
"multiEner": false,
|
||||||
cardText: "”ジョーカー”~カーニバル~",
|
cardText: "”ジョーカー”~カーニバル~",
|
||||||
|
// ======================
|
||||||
|
// 技艺效果
|
||||||
|
// ======================
|
||||||
|
timmings: ['mainPhase','attackPhase','spellCutIn'],
|
||||||
|
artsEffectTexts: [
|
||||||
|
"ベット―《コインアイコン》《コインアイコン》\n" +
|
||||||
|
"以下の5つから1つを選ぶ。ターン終了時まで、シグニ1体は選んだ能力を得る。あなたがベットしていた場合、この効果を1回繰り返す。" +
|
||||||
|
"(他の選択肢と他のシグニを選んでもよい)\n" +
|
||||||
|
"①【アサシン】 ②【ランサー】\n" +
|
||||||
|
"③【ダブルクラッシュ】 ④「バニッシュされない。」\n" +
|
||||||
|
"⑤「アタックできない。」",
|
||||||
|
],
|
||||||
|
bet: 2,
|
||||||
|
artsEffect: {
|
||||||
|
actionAsyn: function (costArg) {
|
||||||
|
// TODO: 本地化效果文本,
|
||||||
|
var done = false;
|
||||||
|
var texts = [
|
||||||
|
'assassin',
|
||||||
|
'lancer',
|
||||||
|
'doubleCrash',
|
||||||
|
'canNotBeBanished',
|
||||||
|
'canNotAttack'
|
||||||
|
];
|
||||||
|
return Callback.loop(this,count,function () {
|
||||||
|
if (done) return;
|
||||||
|
return this.player.selectTextAsyn('CHOOSE_EFFECT',texts).callback(this,function (text) {
|
||||||
|
this.fieldData['_2490'] = text;
|
||||||
|
return this.player.opponent.showTextAsyn('CHOOSE_ZONE','text',text);
|
||||||
|
}).callback(this,function () {
|
||||||
|
var cards = concat(this.player.signis,this.player.opponent.signis);
|
||||||
|
return this.player.selectTargetAsyn(cards).callback(this,function (card) {
|
||||||
|
if (!card) return;
|
||||||
|
if (text === 'assassin') {
|
||||||
|
this.game.tillTurnEndAdd(this,card,'assassin',true);
|
||||||
|
} else if (text === 'lancer') {
|
||||||
|
this.game.tillTurnEndSet(this,card,'lancer',true);
|
||||||
|
} else if (text === 'doubleCrash') {
|
||||||
|
this.game.tillTurnEndSet(this,card,'doubleCrash',true);
|
||||||
|
} else if (text === 'canNotBeBanished') {
|
||||||
|
this.game.tillTurnEndAdd(this,card,'canNotBeBanished',true);
|
||||||
|
} else if (text === 'canNotAttack') {
|
||||||
|
this.game.tillTurnEndAdd(this,card,'canNotAttack',true);
|
||||||
|
}
|
||||||
|
if (!costArg.bet) {
|
||||||
|
done = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"2491": {
|
"2491": {
|
||||||
"pid": 2491,
|
"pid": 2491,
|
||||||
|
@ -126668,11 +126720,77 @@ var CardInfo = {
|
||||||
"③あなたのトラッシュからシグニを2枚まで手札に加える。その後、手札を1枚捨てる。"
|
"③あなたのトラッシュからシグニを2枚まで手札に加える。その後、手札を1枚捨てる。"
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
"multiEner": false,
|
||||||
cardText: "クソみたいな世界 ~カーニバル~"
|
cardText: "クソみたいな世界 ~カーニバル~",
|
||||||
|
// ======================
|
||||||
|
// 技艺效果
|
||||||
|
// ======================
|
||||||
|
timmings: ['mainPhase'],
|
||||||
|
artsEffectTexts: [
|
||||||
|
"このアーツを使用する際、あなたは手札から<宇宙>のシグニを1枚捨ててもよい。そうした場合、このアーツを使用するためのコストは《赤》コストが2減る。\n" +
|
||||||
|
"以下の3つから1つを選ぶ。\n" +
|
||||||
|
"①カードを2枚引く。\n" +
|
||||||
|
"②あなたのデッキの上からカードを2枚エナゾーンに置く。\n" +
|
||||||
|
"③あなたのトラッシュからシグニを2枚まで手札に加える。その後、手札を1枚捨てる。",
|
||||||
|
"①カードを2枚引く。",
|
||||||
|
"②あなたのデッキの上からカードを2枚エナゾーンに置く。",
|
||||||
|
"③あなたのトラッシュからシグニを2枚まで手札に加える。その後、手札を1枚捨てる。"
|
||||||
|
],
|
||||||
|
costChange: function () {
|
||||||
|
var cards = this.player.hands.filter(function (card) {
|
||||||
|
return card.hasClass('宇宙');
|
||||||
|
},this);
|
||||||
|
var count = Math.min(1,cards.length);
|
||||||
|
var obj = Object.create(this);
|
||||||
|
obj.costChange = null;
|
||||||
|
obj.costRed -= count * 2;
|
||||||
|
if (obj.costRed < 0) obj.costRed = 0;
|
||||||
|
return obj;
|
||||||
|
},
|
||||||
|
costChangeAsyn: function () {
|
||||||
|
var obj = Object.create(this);
|
||||||
|
obj.costChange = null;
|
||||||
|
var min = 0;
|
||||||
|
while (min <= 1) {
|
||||||
|
if (this.player.enoughEner(obj)) break;
|
||||||
|
min++;
|
||||||
|
obj.costRed -= 2;
|
||||||
|
if (obj.costRed < 0) obj.costRed = 0;
|
||||||
|
}
|
||||||
|
var cards = this.player.hands.filter(function (card) {
|
||||||
|
return card.hasClass('宇宙');
|
||||||
|
},this);
|
||||||
|
return this.player.selectSomeAsyn('TRASH',cards,min,1).callback(this,function (cards) {
|
||||||
|
this.game.trashCards(cards);
|
||||||
|
var count = cards.length;
|
||||||
|
var obj = Object.create(this);
|
||||||
|
obj.costChange = null;
|
||||||
|
obj.costRed -= count * 2;
|
||||||
|
if (obj.costRed < 0) obj.costRed = 0;
|
||||||
|
return obj;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
artsEffect: [{
|
||||||
|
actionAsyn: function () {
|
||||||
|
return this.player.draw(2);
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
actionAsyn: function () {
|
||||||
|
return this.player.enerCharge(2);
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
actionAsyn: function () {
|
||||||
|
var filter = function (card) {
|
||||||
|
return (card.type === 'SIGNI');
|
||||||
|
};
|
||||||
|
return this.player.pickCardAsyn(filter,0,2).callback(this, function () {
|
||||||
|
return this.player.discardAsyn(1);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}]
|
||||||
},
|
},
|
||||||
"2492": {
|
"2492": {
|
||||||
"pid": 2492,
|
"pid": 2492,
|
||||||
cid: 2492,
|
cid: 1531,
|
||||||
"timestamp": 1504360073452,
|
"timestamp": 1504360073452,
|
||||||
"wxid": "WD21-009",
|
"wxid": "WD21-009",
|
||||||
name: "燐廻転生",
|
name: "燐廻転生",
|
||||||
|
@ -126721,7 +126839,7 @@ var CardInfo = {
|
||||||
},
|
},
|
||||||
"2493": {
|
"2493": {
|
||||||
"pid": 2493,
|
"pid": 2493,
|
||||||
cid: 2493,
|
cid: 1878,
|
||||||
"timestamp": 1504360073477,
|
"timestamp": 1504360073477,
|
||||||
"wxid": "WD21-010",
|
"wxid": "WD21-010",
|
||||||
name: "炎得火失",
|
name: "炎得火失",
|
||||||
|
@ -126816,11 +126934,54 @@ var CardInfo = {
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
"multiEner": false,
|
||||||
cardText: "蓋天に集いし羅星が、新たな羅星を呼び起こす!~≡ガイテン≡~",
|
cardText: "蓋天に集いし羅星が、新たな羅星を呼び起こす!~≡ガイテン≡~",
|
||||||
"lifeBurst": "あなたのデッキから<宇宙>のシグニ1枚を探して公開し手札に加える。その後、デッキをシャッフルする。"
|
"lifeBurst": "あなたのデッキから<宇宙>のシグニ1枚を探して公開し手札に加える。その後、デッキをシャッフルする。",
|
||||||
|
// ======================
|
||||||
|
// 起动效果
|
||||||
|
// ======================
|
||||||
|
actionEffectTexts: [
|
||||||
|
"【起】《ダウン》:あなたの<宇宙>のシグニ2体を場からトラッシュに置く。そうした場合、あなたのデッキからレベル4のシグニ1枚を探して場に出す。その後、デッキをシャッフルする。"
|
||||||
|
],
|
||||||
|
actionEffects: [{
|
||||||
|
costDown: true,
|
||||||
|
costCondition: function () {
|
||||||
|
var cards = this.player.hands.filter(function (card) {
|
||||||
|
return card.hasClass('宇宙');
|
||||||
|
},this);
|
||||||
|
return cards.length >= 2;
|
||||||
|
},
|
||||||
|
costAsyn: function () {
|
||||||
|
var cards = this.player.hands.filter(function (card) {
|
||||||
|
return card.hasClass('宇宙');
|
||||||
|
},this);
|
||||||
|
return this.player.selectSomeAsyn('PAY',cards,2,2).callback(this,function (cards) {
|
||||||
|
this.game.trashCards(cards);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
actionAsyn: function () {
|
||||||
|
var cards = this.player.signis.filter(function (signi) {
|
||||||
|
return signi.level === 4;
|
||||||
|
},this);
|
||||||
|
return this.player.seekAndSummonAsyn(filter,1,true);
|
||||||
|
}
|
||||||
|
}],
|
||||||
|
// ======================
|
||||||
|
// 迸发效果
|
||||||
|
// ======================
|
||||||
|
burstEffectTexts: [
|
||||||
|
"【※】:あなたのデッキから<宇宙>のシグニ1枚を探して公開し手札に加える。その後、デッキをシャッフルする。"
|
||||||
|
],
|
||||||
|
burstEffect: {
|
||||||
|
actionAsyn: function () {
|
||||||
|
var filter = function (card) {
|
||||||
|
return card.hasClass('宇宙');
|
||||||
|
};
|
||||||
|
return this.player.seekAsyn(filter,1);
|
||||||
|
},
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"2495": {
|
"2495": {
|
||||||
"pid": 2495,
|
"pid": 2495,
|
||||||
cid: 2495,
|
cid: 2067,
|
||||||
"timestamp": 1504360073544,
|
"timestamp": 1504360073544,
|
||||||
"wxid": "WD21-014",
|
"wxid": "WD21-014",
|
||||||
name: "羅星 ≡レグルス≡",
|
name: "羅星 ≡レグルス≡",
|
||||||
|
@ -126849,11 +127010,10 @@ var CardInfo = {
|
||||||
"【起】《ダウン》:カードを1枚引く。この能力は対戦相手の場にレベル3以上のシグニがある場合にしか使用できない。"
|
"【起】《ダウン》:カードを1枚引く。この能力は対戦相手の場にレベル3以上のシグニがある場合にしか使用できない。"
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
"multiEner": false,
|
||||||
cardText: "隙あり!レッグがお留守だよ!~≡レグルス≡~"
|
|
||||||
},
|
},
|
||||||
"2496": {
|
"2496": {
|
||||||
"pid": 2496,
|
"pid": 2496,
|
||||||
cid: 2496,
|
cid: 2143,
|
||||||
"timestamp": 1504360073247,
|
"timestamp": 1504360073247,
|
||||||
"wxid": "WD21-015",
|
"wxid": "WD21-015",
|
||||||
name: "羅星 ≡ハダル≡",
|
name: "羅星 ≡ハダル≡",
|
||||||
|
@ -126887,7 +127047,7 @@ var CardInfo = {
|
||||||
},
|
},
|
||||||
"2497": {
|
"2497": {
|
||||||
"pid": 2497,
|
"pid": 2497,
|
||||||
cid: 2497,
|
cid: 2144,
|
||||||
"timestamp": 1504360073970,
|
"timestamp": 1504360073970,
|
||||||
"wxid": "WD21-016",
|
"wxid": "WD21-016",
|
||||||
name: "羅星 ≡アンタレス≡",
|
name: "羅星 ≡アンタレス≡",
|
||||||
|
@ -126969,11 +127129,34 @@ var CardInfo = {
|
||||||
],
|
],
|
||||||
"multiEner": false,
|
"multiEner": false,
|
||||||
cardText: "天、それは虚空なのよ。~≡センヤ≡~",
|
cardText: "天、それは虚空なのよ。~≡センヤ≡~",
|
||||||
"lifeBurst": "カードを1枚引く。"
|
"lifeBurst": "カードを1枚引く。",
|
||||||
|
// ======================
|
||||||
|
// 常时效果
|
||||||
|
// ======================
|
||||||
|
constEffectTexts: [
|
||||||
|
"【自】:このシグニが効果またはレゾナの出現条件によって、バニッシュされるか場からトラッシュに置かれたとき、対戦相手のパワー3000以下のシグニ1体をバニッシュする。"
|
||||||
|
],
|
||||||
|
constEffects: [{
|
||||||
|
duringGame: true,
|
||||||
|
action: function (set,add) {
|
||||||
|
var effect = this.game.newEffect({
|
||||||
|
source: this,
|
||||||
|
description: '2498-const-0',
|
||||||
|
triggerCondition: function (event) {
|
||||||
|
return (event.oldZone === this.player.SigniZone) &&
|
||||||
|
((event.newZone === this.player.enerZone) || (event.newZone === this.player.trashZone));
|
||||||
|
},
|
||||||
|
actionAsyn: function () {
|
||||||
|
return this.banishSigniAsyn(3000);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
add(this,'onMove',effect);
|
||||||
|
}
|
||||||
|
}],
|
||||||
},
|
},
|
||||||
"2499": {
|
"2499": {
|
||||||
"pid": 2499,
|
"pid": 2499,
|
||||||
cid: 2499,
|
cid: 235,
|
||||||
"timestamp": 1504360075409,
|
"timestamp": 1504360075409,
|
||||||
"wxid": "WD21-018",
|
"wxid": "WD21-018",
|
||||||
name: "サーバント D2",
|
name: "サーバント D2",
|
||||||
|
@ -127012,7 +127195,7 @@ var CardInfo = {
|
||||||
},
|
},
|
||||||
"2500": {
|
"2500": {
|
||||||
"pid": 2500,
|
"pid": 2500,
|
||||||
cid: 2500,
|
cid: 236,
|
||||||
"timestamp": 1504360073943,
|
"timestamp": 1504360073943,
|
||||||
"wxid": "WD21-019",
|
"wxid": "WD21-019",
|
||||||
name: "サーバント O2",
|
name: "サーバント O2",
|
||||||
|
|
Loading…
Reference in a new issue