💫 implement WX16-004 betAdvancedAsyn

This commit is contained in:
WEBXOSS 2017-06-08 01:17:06 +08:00
parent eb7f363d0d
commit ee7c73d9f3
3 changed files with 15 additions and 2 deletions

View file

@ -100,6 +100,7 @@ function Card (game,player,zone,pid,side) {
// Lostorage
this.coin = info.coin || 0;
this.bet = info.bet || 0;
this.betAdvancedAsyn = info.betAdvancedAsyn || null;
this.bettedCost = info.bettedCost || null;
this.rise = info.rise;
this.acce = !!info.acce;

View file

@ -117179,8 +117179,15 @@ var CardInfo = {
"あなたがベットしていた場合、追加で対戦相手のシグニ1体をダウンする。\n" +
"あなたが《コイン》《コイン》をベットしていた場合、追加でターン終了時まで、あなたのルリグは「ホログラフの効果によってあなたのデッキの一番上を公開する場合、代わりにあなたはデッキの上からカードを3枚見て、それらを好きな順番でデッキの上に戻してからデッキの一番上を公開する。」を得る。"
],
// TODO: ...
bet: [1,2],
betAdvancedAsyn: function (costObj) {
if (!this.player.coin) return Callback.immediately(costObj);
var max = Math.min(this.player.coin,2)
return this.player.selectNumberAsyn('CONFIRM_BET',0,max,0).callback(this,function (num) {
costObj = Object.create(costObj);
costObj.costCoin = num;
return costObj;
});
},
artsEffect: {
actionAsyn: function (costAsyn) {
var filter = function (card) {

View file

@ -656,6 +656,11 @@ Player.prototype.handleArtsAsyn = function (card,ignoreCost) {
if (card.beforeUseAsyn) return card.beforeUseAsyn();
}).callback(this,function () {
// bet
if (card.betAdvancedAsyn) {
return card.betAdvancedAsyn(costObj).callback(this,function (c) {
costObj = c;
});
}
if (!card.bet) return;
if (this.coin < card.bet) return;
var bettedCost = Object.create(costObj);