Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 兵士クラス
- import java.util.Random;
- public class Soldier {
- String name;
- int hp = 36;
- int power = 6;
- int damage;
- Random rand = new Random();
- public Soldier(String name) {
- this.name = name;
- }
- public void attack(Slime sli) {
- damage = power + rand.nextInt(5) - 2;
- sli.hp -= damage;
- System.out.println(this.name + "はスライムに" + damage + "のダメージを与えた!");
- }
- public void assault(Slime sli) {
- damage = power * 2 + rand.nextInt(7) - 3;
- sli.hp -= damage;
- int myDamage = this.hp /4;
- this.hp -= myDamage;
- System.out.println(this.name + "は突撃した! スライムに" + damage + "のダメージを与えた!");
- System.out.println("しかし" + myDamage + "のHPを消耗した!");
- }
- public void rest() {
- int recovery = rand.nextInt(10) + 1;
- this.hp += recovery;
- if (this.hp > 50) {
- this.hp = 50;
- }
- System.out.println(this.name + "のHPは" + recovery + "回復した!");
- }
- }
- // スライムクラス
- import java.util.Random;
- public class Slime extends Monster {
- String name = "スライム";
- int hp = 24;
- int power = 4;
- Random rand = new Random();
- public void attack(Soldier sol) {
- int damage = power + rand.nextInt(3) - 1;
- sol.hp -= damage;
- System.out.println(sol.name + "はスライムから" + damage + "のダメージを受けた!");
- }
- public void rest() {
- System.out.println("スライムは様子を見ている");
- }
- }
- // 戦闘クラス(1vs1)
- import java.util.Scanner;
- public class Battle_1vs1 {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
- System.out.println("モンスターとのバトルを始めます");
- System.out.println("あなたは兵士です 名前を決めて下さい");
- String yourName = scan.next();
- Soldier sol = new Soldier(yourName);
- Slime sli = new Slime();
- System.out.println("バトル開始");
- int act;
- int totalDamage = 0;
- while (true) {
- System.out.println(sol.name + "の行動を決定して下さい HP:" + sol.hp + " 与えたダメージ:" + totalDamage);
- System.out.println("攻撃する:1 決死で突撃する:2 休む:3 逃げる:4");
- act = scan.nextInt();
- if (act == 1) {
- sol.attack(sli);
- totalDamage += sol.damage;
- if (sli.hp <= 0) {
- System.out.println("スライムを倒した!");
- break;
- }
- } else if (act == 2) {
- sol.assault(sli);
- totalDamage += sol.damage;
- if (sli.hp <= 0) {
- System.out.println("スライムを倒した!");
- break;
- }
- } else if (act == 3) {
- sol.rest();
- } else if (act == 4) {
- if (Math.random() <= (2.0 / 3.0)) {
- System.out.println(sol.name + "は逃げ出した!");
- break;
- } else {
- System.out.println(sol.name + "は逃げるのに失敗した!");
- }
- } else {}
- if (Math.random() <= 0.7) {
- sli.attack(sol);
- if (sol.hp <= 0) {
- System.out.println(sol.name + "は死んでしまった!");
- }
- } else {
- sli.rest();
- }
- System.out.println();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement