コード全文(Java)
import java.util.*;
public class NekoArukiApp{
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
//Neko型の配列を作り、7種類のねこのインスタンス生成
Neko[] neko={
new Neko("クロ","黒猫",2),
new Neko("ミケ","三毛猫",1),
new Neko("ブチ","ぶち猫",3),
new Neko("サビ","サビ猫",4),
new Neko("バトラ","サバとら",2),
new Neko("ジトラ","キジとら",3),
new Neko("トロ","白猫",1),
};
//Neko型配列をシャッフルするためのメソッドの呼び出し
shuffleNeko(neko);
//ゲーム開始
System.out.print("これからある街であなたはねこと出会います\nどんな風に過ごすかはあなたの選択に委ねられます\n");
scan.nextLine();
System.out.print("あなたの名前を教えてください>");
String userName=scan.nextLine();
game(userName,neko);//ゲームを実行するためのメソッドの呼び出し
}
//ねこをランダムで表示するためのメソッド
static void shuffleNeko(Neko[] neko){
Random rand=new Random();
for(int i=0;i");
int action=scan.nextInt();
System.out.println();
if(action==neko[i].likeUp){//なつき度条件が一致したらなつき度が上がる
friendly++;
}
if(action==1){
System.out.printf("%sさんが撫でてあげると%sはうれしそうに目を細めた%n",userName,neko[i].name);
scan.nextLine();
}
if(action==2){//ごはんをカウント
System.out.printf("%sさんがあげたごはんを%sはおいしそうに食べている%n",userName,neko[i].name);
scan.nextLine();
gourmet++;
}
if(action==3){//威嚇をカウント
System.out.printf("%sさんが威嚇すると%sはびっくりして逃げていった%n",userName,neko[i].name);
scan.nextLine();
revenge++;
}
if(action==4){//素通りをカウント
System.out.printf("%sさんは%sを見向きもせずに横を通り過ぎて行った%n",userName,neko[i].name);
scan.nextLine();
through++;
}
}
if(friendly>=3){//なつき度が3以上なら
System.out.printf("%n街中のねこに好かれ、%sさんにねこが集まってきた。%nしあわせポイント+10P%n",userName);
System.out.printf("%25sTrueEnd%-15s%n",repeat("+",5),repeat("+",5));
}else if(gourmet>=3){//ごはん選択回数が3以上なら
System.out.printf("%n街中のねこはごはんを求め、%sさんはねこに囲まれた。%n空腹ポイント+150P%n",userName);
System.out.printf("%25sGourmetEnd%-15s%n",repeat("*",5),repeat("*",5));
}else if(revenge>=3){//威嚇選択回数が3以上なら
System.out.printf("%n街中のねこが集まり、%sさんにねこが復讐に来た!!%nねこヘイトポイント+100P%n",userName);
System.out.printf("%25sRevengeEnd%-15s%n",repeat("*",5),repeat("*",5));
}else if(through>=3){//素通り選択回数が3以上なら
System.out.printf("%n特に%sさんは何事もなく帰宅した。%n平穏ポイント+2P%n",userName);
System.out.printf("%25sThroughEnd%-15s%n",repeat("*",5),repeat("*",5));
}else{//どの条件にも当てはまらなかったら
System.out.printf("%n街の中で%sさんはいろんなねこを見かけた。%n普通ポイント+1P%n",userName);
System.out.printf("%25sNomalEnd%-15s%n",repeat("-",5),repeat("-",5));
}
}
//記号の繰り返しを表示するためのメソッド
static String repeat(String str,int num){
String ret="";
for(int i=0;i

