/**
 * じゃんけんアプリケーション
 * 
 * 二人のプレイヤーがじゃんけんの手を交互に入力すると、勝敗を調べて、
 * 勝者の名前を表示する
 */
public class JankenApplication {

	public static void main(String[] args) {
		JankenApplication jankenApplication = new JankenApplication();
		jankenApplication.main();
	}

	void main() {

		final int GOO = 1; //グーを表す定数
		final int CHOKI = 2; //チョキを表す定数
		final int PAA = 3; //パーを表す定数

		String playerNameA; //プレイヤーAの名前
		String playerNameB; //プレイヤーBの名前
		int playerHandA; //プレイヤーAの出した手
		int playerHandB; //プレイヤーBの出した手
		int i; //ループ用

		//アプリケーションの説明をする
		System.out.println("じゃんけん♪アプリケーション");
		System.out.println("（プレイヤーAの手に０を入力すると終了します）");

		//プレイヤーAの名前を入力する
		System.out.println("プレイヤーAの名前を入力してください");
		System.out.print(">>");
		System.out.flush();
		playerNameA = Input.getString();

		//プレイヤーBの名前を入力する
		System.out.println("プレイヤーBの名前を入力してください");
		System.out.print(">>");
		System.out.flush();
		playerNameB = Input.getString();

		//手の入力を交互に行い、勝敗の表示をする
		while (true) {

			//プレイヤーAの手を入力する
			System.out.println(playerNameA + "さんの手を入力してください");
			System.out.println("1.グー, 2.チョキ, 3.パー (0.終了)");
			System.out.print(">>");
			System.out.flush();
			playerHandA = Input.getInt();

			//終了コードであるか調べる
			if (playerHandA == 0) { //終了コードなら
				break; //アプリケーションを終了する
			}

			//相手の手が見えないようにする
			i = 0;
			while (i < 100) {
				System.out.println();
				i = i + 1;
			}

			//プレイヤーBの手を入力する
			System.out.println(playerNameB + "さんの手を入力してください");
			System.out.println("1.グー, 2.チョキ, 3.パー");
			System.out.print(">>");
			System.out.flush();
			playerHandB = Input.getInt();

			//勝敗を判定して、結果を表示する
			if (playerHandA == GOO && playerHandB == CHOKI) { //グーVSチョキ
				System.out.println(playerNameA + "さんのかち");
			} else if (playerHandA == GOO && playerHandB == PAA) { //グーVSパー
				System.out.println(playerNameB + "さんのかち");
			} else if (playerHandA == CHOKI && playerHandB == GOO) { //チョキVSグー
				System.out.println(playerNameB + "さんのかち");
			} else if (playerHandA == CHOKI && playerHandB == PAA) { //チョキVSパー
				System.out.println(playerNameA + "さんのかち");
			} else if (playerHandA == PAA && playerHandB == GOO) { //パーVSグー
				System.out.println(playerNameA + "さんのかち");
			} else if (playerHandA == PAA && playerHandB == CHOKI) { //パーVSチョキ
				System.out.println(playerNameB + "さんのかち");
			} else if (playerHandA == playerHandB) { //あいこ
				System.out.println("あいこでした");
			} else { //不正な入力の処理
				System.out.println("不正な入力です");
			}
		}

		//アプリケーションが終了したことを知らせる
		System.out.println("アプリケーションが終了しました。");
	}
}