/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package project.game;
import java.util.Scanner;
import java.util.Random;
/**
*
* @author
*/
public class ProjectGame {
/**
* @param args the command line arguments
*/
public static void main
(String[] args
) { Scanner stdIn
= new Scanner
(System.
in);
/************************************************************************/
/* ゲーム作成 試作品一
* 6月 7日
*
*
* EX 1-1
************************************************************************/
//////////////////////////////////////////////////////////////////////////
/* ゲームの設定 */
/* about : HITPOINT */
int THP = 15000; //敵の体力
int HP = 10000; //自分の体力
int kenn = 700; //剣の威力
/* about : MAGIC */
int sfire = rand.nextInt(1000);// 魔法:炎 のランダム部分
int fire = 500;//魔法 : 炎 の確定部分
fire = fire + sfire;//魔法 : 炎 のランダムと確定の結合
int sice = rand.nextInt(1000);// 魔法:氷 以下同上
int ice = 500;
ice = ice + sice;
int swind = rand.nextInt(1000);//魔法:風 以下同上
int wind = 500;
wind = wind + swind;
int heal = rand.nextInt(3000);//魔法 : 回復 以下同上
/* about : SP */
int SP = rand.nextInt(10000);
/* about:tturn */
int tak = rand.nextInt(2000);//敵攻撃ランダム部分
int rtak = 500;//敵攻撃確定部分
int ktak = rtak + tak;//敵攻撃まとめ
int hh = 0;
///////////////////////////////////////////////////////////////////////////
System.
out.
println("ゲームを開始します"); while (THP >= 0 && HP >= 0){
System.
out.
println("コマンドを入力して下さい" + k
+ "1 : 攻撃" + k
+ "2 : 魔法" + k
+ "3 : 防御"); System.
out.
print("コマンドを入力 : "); int s = stdIn.nextInt(); //攻撃の種類を選択
switch (s) {
/**********************************************************************/
/* 自分のターン */
case 1 : //剣の場合
System.
out.
println("剣で切りつけた " + kenn
+" のダメージ"); THP = THP - kenn;
break;
case 2 : //魔法の場合
/* 魔法の選択 */
System.
out.
println("魔法 を 選択して下さい" + k
+ "1 : FIRE" + k
+ "2 : ICE" + k
+ "3 : WIND" + k
+ "4 : SPESIAL" + k
+ "5 : HEAL"); System.
out.
print("コマンドを入力 : "); int MA = stdIn.nextInt();
switch (MA){
case 1 :// 炎 : 魔法
int afire = fire;//ランダム関数を安定させ攻撃と表示にばらつきが出ないように必要
System.
out.
println("炎の魔法を唱えた " + afire
+ " のダメージを与えた"); THP = THP - afire;
break;
case 2 :
int aice = ice;//同上 ランダム関数を安定させ攻撃と表示にばらつきが出ないように必要
System.
out.
println("氷の魔法を唱えた " + aice
+ " のダメージを与えた"); THP = THP - ice;
break;
case 3 :
int awind = wind;//ランダム関数を安定させ攻撃と表示にばらつきが出ないように必要
System.
out.
println("風の魔法を唱えた " + awind
+ " のダメージを与えた"); THP = THP - awind;
break;
case 4 :
int aSP = SP;//ランダム関数を安定させ攻撃と表示にばらつきが出ないように必要
System.
out.
println("敵を叩き切った " + aSP
+ " のダメージを与えた"); THP = THP - aSP;
System.
out.
println("反動でダメージを食らってしまった"); int jHP;
jHP = aSP / 7;
HP = HP - jHP;
break;
case 5 :
int aheal = heal;//ランダム関数を安定させ攻撃と表示にばらつきが出ないように必要
System.
out.
println("回復の呪文を唱えた " + aheal
+ " 回復した"); HP = HP + aheal;
break;
case 100 :
System.
out.
println("破滅の呪文を唱えた 9999999 ダメージ"); THP = THP - 999999999;
break;
default :
System.
out.
println("そんな命令ありません"); }
break;
case 3 : //防御or何もしない
System.
out.
println("身を守り 攻撃を 半減した"); hh++;
break;
default : System.
out.
println("そんな命令ありません"); }
/* 自分のターンここまで */
/******************************************************************************************************/
/******************************************************************************************************/
/* 敵ターンここから */
if(THP > 0){
int ak = ktak;//このターンの敵攻撃力を固定
int wak = ak / 10 ;//防御している場合のダメージ
if(hh == 0){
System.
out.
println("敵は殴りつけてきた " +ak
+ "のダメージ"); HP = HP - ak;//体力減算
}else{
System.
out.
println("敵は殴りつけてきた " + wak
+ "のダメージ"); HP = HP - wak;
hh--;
}
}
/* 敵ターンここまで */
/********************************************************************************************************/
/********************************************************************************************************/
/* 結果出力 */
if(HP <= 0){
THP = 0;
System.
out.
println("敵の体力 : " + THP
);//敵の体力を出力する System.
out.
println("敵 は 倒れた"); }else if( HP <= 0){
HP = 0;
System.
out.
println("敵の体力 : " + THP
);//敵の体力を出力する System.
out.
println("自分の体力 : " + HP
);//敵の体力を出力する System.
out.
println ("力尽きて倒れてしまった"); }else{
System.
out.
println("敵の体力 : " + THP
);//敵の体力を出力する System.
out.
println("自分の体力 : " + HP
);//敵の体力を出力する }
}
/* 結果出力終了 */
/*********************************************************************************************************/
System.
out.
println("ゲーム を 終了 します"); }
}