【Javaオブジェクト指向】を習得する為に出した課題 ダイスゲームDOSH ゲーム説明編

◆概要(引用)
Javaオブジェクト指向を習得ということで、 「Dosh」というダイスゲームをお題としてださせてもらいました。オブジェクト指向のプログラミングの練習をしてみようと思われる方は、是非TRYしてみてください。

↓↓↓チャンネル登録はコチラ
https://www.youtube.com/channel/UC9LBFFnjLr8RRASYQZ1E3wg?sub_confirmation=1

#Java
#オブジェクト指向
#ゲーム

▶チャプターリスト(目次)
0:00:00 イントロ
0:00:15 オープニング
0:02:35 DOSHゲーム説明
0:05:39 DOSH仕様
0:08:54 エディング

◆DOSHゲーム仕様

+—+—+—+  +—+
| 3 | 4 | 5 | | |
+—+—+—+ | |
| 6 | | 8 | | 7 |
+—+—+—+ | |
| 9 | 10| 11| | |
+—+—+—+ +—+

<ルール概要>
・プレーヤーは2人以上です。
・各プレーヤーは30枚のチップを持っています。
・2個のダイスを順に降っていき、チップをボードに置いたり撮ったり(①~③)して進みます。
・プレーヤーの誰かの所持チップがなくなった時点でゲーム終了です。
・所持チップが最も多いプレーヤーの優勝です。

<ルール詳細>
①2,7,12以外の目の場合、ボートの出た目の数字の上に、出た目の枚数を、チップがあれば取り、なければ置きます。
②7の目の場合、ボート外に7枚チップを置きます。牢獄と呼びます。
③2,12の目の場合、ボードと牢獄のチップを総取りします。もう一度ダイスを振ります。
③-1 ゾロ目以外の場合、ボートの出た目の数字の上に、出た目の枚数を置きます。
③-2 ゾロ目の場合、ボートの全ての数字の上に、数字の枚数のチップを置きます。

▶仕様追加1  
③-2のケースが起こる確率が低いので、確立を上げる。
③-2「ゾロ目の場合、ボートの全ての数字の上に、数字の枚数のチップを置く。」

▶仕様追加2 
ユーザが次のダイスを振る前に、以下のイカサマを選択できるようにする。
 ①ゾロ目を出す。
 ②7以下の目を出す。
 ③7以上の目を出す。

◆参考
※概要欄に角カッコが使えないようで、代わりに全角の「<」を使用しています。コードとして使いたい方は、全角の「<」を置換していただきますようお願いします。

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.MessageFormat;
import java.util.Properties;

import com.firesoft.dicegame.dosh.constraint.MessageConstraint;

public class PropertiesUtil implements MessageConstraint {

public static Properties getProperty() {
Properties pro = new Properties();
try {
pro.load(new FileInputStream(PROPERTIES_FILE_NAME_DOSH));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return pro;
}

public static String getValueString(String key) {
return getProperty().getProperty(key);
}

public static int getValueInt(String key) {
return Integer.parseInt(getProperty().getProperty(key));
}

public static String getValueFormattedString(String key, Object[] obj) {
return MessageFormat.format(getProperty().getProperty(key), obj);
}

public static String getValueStringList(String key, int i, int j) {
String retString = “”;
for (int k = 1; k <= j; k++) {
retString += getProperty().getProperty(key + k);
}
return retString;
}
}

#Javaオブジェクト指向を習得する為の、ダイスゲームDOSHのゲーム説明編です。

コメント

タイトルとURLをコピーしました