そうだ、ゲームを作ってみよう2
まず「7ならべ」のルールを確認しよう。
・デッキから各プレイヤーに1枚づつカードを配る。カードはすべて配り切る。
・手札に7があるプレイヤーはそれを場に出す。
・先手から順にカードを出す。
出せるカードは場に出ているカードとつながるもののみ。
カードがない場合など、3回までパスが可能。4回目で自動的に負けとなる。
・手札が先になくなったプレイヤーが勝ち。
こんなところだろうか。ジョーカを使った場合、1からキング(13)への連結など地方ルールも存在するが今回は割愛。
今回はソロプレイである。まとめると以下の通りだろう。
・デッキからカードを受け取る。
・場に7を出す。
・手札からカードを出す。出せるカードは場に出ているカードとつながるもののみ。
・手札がなくなったらゲーム終了。
ついでにプログラミングを簡単にするため、以下のルールを付け加える。
・使用するカードはダイヤのみの1〜10。
さて、それでは作ってゆこう。
まずはカードを用意しよう。
今回使うカードは先にも述べた通り、ダイヤのみの1〜10だ。TRuleの連番で言うと27〜36だ。
var deck = new Array();
for (i = 27; i <= 36; i++) deck.push(i);
まあ、これで事足りる。でも実際のカードは52枚+ジョーカであり、その中から使用するカードを取り出す必要がある。せっかくなのでそれを再現してみよう。
var _deck = new Array();
for (i = 1; i <= TRule.CARD_SIZE; i++) _deck.push(i);
var deck = new Array();
for (j = 0; j <= _deck.length; j++) {
if (TRule.getSuit(_deck[j]) == TRule.DIAMOND &&
TRule.ACE <= TRule.getNumber(_deck[j]) &&
TRule.getNumber(_deck[j])