Skip to content

Instantly share code, notes, and snippets.

@HaruhiroTakahashi
Created May 18, 2015 23:41
Show Gist options
  • Save HaruhiroTakahashi/d5730b70fc684f693953 to your computer and use it in GitHub Desktop.
Save HaruhiroTakahashi/d5730b70fc684f693953 to your computer and use it in GitHub Desktop.
public class part01
{
public static String name = "ルキナ"; //プレイヤー名前
public static int lv = 30; //プレイヤーレベル
public static int hp = 30; //プレイヤーのHP
public static long gold = 500000000L; //プレイヤーの所持金
public static void main( String[] args) throws java.io.IOException
{
putJyosyou(); //序章を表示
putCommand(); //コマンドを表示
if( hp == 0 ){
return; // プログラムが終了される
}
// 邪龍ギムレーを倒しに行く
if(lv < 40){ //レベルが40未満の場合
putGameOver(); //ゲームオーバー画面を表示
}else{ //レベルが40以上の時
putGameClear(); //クリア画面を表示
}
}
/**
* コマンドを表示する
*/
public static void putCommand() throws java.io.IOException
{
put("1. 邪龍ギムレーを倒しに行く");
put("2. 修行する");
put("3. 宿屋に泊る");
switch ( inputCommand() ){ //1.邪龍ギムレーを倒しに行く
case '1' :{
put( "邪龍ギムレーが現れた!" );
break ;
}
case '2' :{ //2.修行する
Syugyou();
break ;
}
case '3' :{ // 3.宿屋に泊る
if ( gold >= 10 ){
hp = lv;
gold -= 10;
}
putStatus();
putCommand();
break ;
}
}
}
/**
*修行する
*/
public static void Syugyou() throws java.io.IOException
{
java.util.Random r = new java. util.Random();
// 敵出現
int e = r.nextInt( 3 ) + 1; //敵の数
put("敵が" + e + "匹、現れた");
String m = "(´・ω・`)";
String s = "";
for (int i = 0; i < e; i = i + 1 ){
s = s + m;
}
put(s);
//HPを減らす
int d = r.nextInt( 8 );
hp -= d;
if ( hp < 0 ){
hp = 0;
}
put( name + "は、" + d + "ポイントダメージを受けた");
//レベル上昇
lv += e;
put("レベルが" + lv + "になった");
putStatus();
if( hp == 0 ){
put( "GAME OVER");
}else{
putCommand();
}
}
/**
* 入力ストリームからデータの次のバイト(10,13)を読み込む。
* 改行は認識されない。
*/
public static int inputCommand() throws java.io.IOException
{
int c = System.in.read();
if ( c == 10 || c == 13){ // 改行コード(CR 又は LF)
return( inputCommand() );
}
return( c );
}
/**
* 序章を表示
*/
static void putJyosyou()
{
put("邪龍ギムレーが" + "世界を滅ぼそうとしています。");
putStatus();
}
/**
* ステータスを表示
*/
public static void putStatus()
{
put("-------------------------");
put( name + " LV" + lv + " HP" + hp+ " " + gold + "G");
put("-------------------------");
}
/**
* GAME OVER 画面の表示
*/
static void putGameOver()
{
put(name + "は邪龍ギムレーに敗れましたorz");
put("GAME OVER");
}
/**
* GAME CLEAR 画面の表示
*/
static void putGameClear()
{
String s0 = name + "は邪龍ギムレーを倒しました!";
put(s0);
put("レベル" + lv);
if (lv > 200){
put( "なので邪龍ギムレーはゴミでしたwwwwwww");
}else if (lv > 120){
put( "でしたが倒せました。" );
}else if (lv > 80){
put( "なので余裕でした。");
}else if (lv > 50){
put( "でしたが倒せました。");
}else{
put( "でしたので苦戦しました。");
}
put("GAME CLEAR!");
}
/**
* 引数で指定された文字列を表示(str)
*/
static void put(String str)
{
System.out.println(str);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment