Class

CardSet

CardSet(cards)

重複を持たず, Card.compareでソートされたカードの集合を表す. Deckクラスが「実際にゲーム中に使用する山札」を表すのに対し, このクラスは「デッキに採用するカードのカタログ」として扱われる. たとえば, Deckクラスには「シャッフルする」という概念が存在するが, CardSetは常にCard.compareの順序でソートされている.

Constructor

# new CardSet(cards)

cardsと同じ要素を持つインスタンスを生成する. shallow copyをとるので, このインスタンスを変更してもcardsには影響しない.

Parameters:
Name Type Description
cards Array.<Cardlike>

使用するカードを並べた配列

View Source card.js, line 1313

Methods

# cards() → {Array.<Cardlike>}

このCardSetに含まれるカードを並べた配列を新しく生成する.

View Source card.js, line 1344

生成された配列

Array.<Cardlike>

# includes(card) → {boolean}

cardがこのCardSetに含まれているか判定する.

Parameters:
Name Type Description
card Cardlike

調べるカード

View Source card.js, line 1353

含まれているときtrue, そうでないときfalse

boolean

# init(cards)

cardsと同じ要素を持つように初期化する. shallow copyをとるので, このインスタンスを変更してもcardsには影響しない.

Parameters:
Name Type Description
cards Array.<Cardlike>

使用するカードを並べた配列

View Source card.js, line 1330

# push(card)

cardをこのCardSetに追加する. もし既にCardSetの中に存在する場合は何もしない.

Parameters:
Name Type Description
card Cardlike

追加するカード

View Source card.js, line 1371

# size() → {number}

View Source card.js, line 1336

含まれているカードの枚数

number

# slice(n) → {Cardlike}

前からn番目の要素をこのCardSetから削除し, そのカードを返す (nは0から数え始める). もし該当するカードが無ければCard.NullCardを返す.

Parameters:
Name Type Description
n number

抜き出すカードのインデックス

View Source card.js, line 1382

抜き出されたカード. 該当するカードが無ければCard.NullCard

Cardlike

# watch() → {Cardlike}

前からn番目のカードを返す (nは0から数え始める). もし該当するカードが無ければCard.NullCardを返す.

View Source card.js, line 1362

n番目のカード. 該当するカードが無ければCard.NullCard

Cardlike