システム2つとメイン

package system;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import hero.Hero;
import monster.Dragon;
import monster.Matango;
import monster.Monster;
import monster.Slime;

public class Buttlesystem {

public boolean battle(Hero heros) throws NumberFormatException, IOException {

List monsterList = new ArrayList();
monsterList.add(new Slime());
monsterList.add(new Dragon());
monsterList.add(new Matango());


for (Monster m : monsterList) {
System.out.println(m.getName() + "が現れた!");
}
while(true) {
System.out.println("行動を選択してください");

//Hero3人の行動
for(Hero h :heros) {
h.action(monsterList, heros);
}
//モンスターの生死判定
if(monsterList.get(0).isLife() == false &&
monsterList.get(1).isLife()== false &&
monsterList.get(2).isLife()==false) {
System.out.println("戦闘に勝利しました 次の階に行きましょう");
return true;
}

System.out.println("モンスターの攻撃!");
//モンスター3匹の行動
for(Monster m : monsterList) {
m.action(heros);
}
//Hero3人の生死判定
if(heros[0].isLife()== false &&
heros[1].isLife()== false &&
heros[2].isLife()== false) {
System.out.println("全滅です");
return false;
}
}
}
public boolean bossbattle(Hero heros) {
System.out.println("ボスが現れた!");
return true;
}
}

package system;

import java.io.IOException;

import hero.Hero;

public class Movesystem {
Buttlesystem bs= new Buttlesystem();

public void move(Hero heros) throws NumberFormatException, IOException {

for(int i=0;i<5;i++) {
System.out.println("現在"+(i+1)+"階です");

int road =new java.util.Random().nextInt(10);
if (road<4) {


if(bs.battle(heros)==false) {
//強制終了させる
}else {
System.out.println("モンスターに勝利しました 次の階に移動します");
}
}else {
System.out.println("階段を見つけました!次の階に移動します");
}
}
System.out.println("次は6階です ボスが出ます");
bs.bossbattle(heros);
System.out.println("お疲れ様でした 全部クリアです!");
}
}

package tsuji.game;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import hero.Hero;
import hero.Moon;
import hero.Rore;
import hero.Samaru;
import system.Movesystem;

public class Main {

public static void main(String args) throws IOException {

//入力ストリームの生成

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

//3人のキャラクターのインスタンスの生成
Rore rore = new Rore("もょもと", 250, 150);
Samaru samaru = new Samaru("クッキー", 200, 100);
Moon moon = new Moon("プリン", 150, 50);

Movesystem move=new Movesystem();

Hero[] heros = new Hero[3];
heros[0] = rore;
heros[1] = samaru;
heros[2] = moon;

/*System.out.println("このゲームのルールを説明します\n"
+ "あなたは、3人の勇者を操作して、階段を探してもらいます\n"
+ "階段を見つける途中で、モンスターに出くわす事もあります\n"
+ "モンスターを倒しながら階段を探し、6階にたどり着けばクリアです\n"
+ "3人の勇者には、それぞれ特徴があります\n"
+ rore.getName() + "は、体が強く、魔法が使えません\n"
+ samaru.getName() + "は、力も魔法もそこそこです\n"
+ moon.getName() + "は、非力ですが、魔法が得意です\n"
+ "この3人の特徴を生かしながら、階段を探してください");*/


move.move(heros);

}/*int terget = Integer.parseInt(br.readLine());*/
}