Created
October 31, 2020 06:56
-
-
Save owliao/7fc0dde1aa49a0127be3e8a569179f31 to your computer and use it in GitHub Desktop.
击剑
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.Scanner; | |
public class Test { | |
public static void main(String[] args){ | |
System.out.println("1"); | |
Hero T1 = new Hero(); | |
Monster M1 = new Monster(); | |
Bouter B1 = new Bouter(); | |
B1.BoutBegin(T1.name,T1.atk1,T1.san1,T1.def1,M1.name,M1.atk1,M1.san1,M1.def1); | |
} | |
} | |
interface Tp{ | |
String name(); | |
int san(); | |
int atk(); | |
int def(); | |
}//属性 | |
class Hero implements Tp{//创建并初始化主角的属性 | |
String name; | |
int san1; | |
int atk1; | |
int def1; | |
public Hero(){ | |
IVHero H1 = new IVHero(); | |
H1.IVHero(); | |
name(); | |
san(); | |
atk(); | |
def(); | |
}; | |
public String name(){ | |
return name; | |
} | |
public int san(){ | |
return san1; | |
} | |
public int atk(){ | |
return atk1; | |
} | |
public int def(){ | |
return def1; | |
} | |
class IVHero { | |
public void IVHero(){ | |
name(); | |
san(); | |
atk(); | |
def(); | |
} | |
public void name() { | |
Scanner sc = new Scanner(System.in); | |
System.out.println("请输入你英雄的名字:"); | |
name = sc.nextLine(); | |
} | |
public void san() { | |
Scanner sc = new Scanner(System.in); | |
System.out.println("请输入你的生命值:"); | |
san1 = sc.nextInt(); | |
} | |
public void atk() { | |
Scanner sc = new Scanner(System.in); | |
System.out.println("请输入你的攻击力:"); | |
atk1 = sc.nextInt(); | |
} | |
public void def() { | |
Scanner sc = new Scanner(System.in); | |
System.out.println("请输入你的防御力:"); | |
def1 = sc.nextInt(); | |
} | |
} | |
}//主角属性 | |
class Monster implements Tp { | |
String name = "小野菊"; | |
int san1 = 20; | |
int atk1 = 5; | |
int def1 = 3; | |
public String name(){ | |
return name; | |
}; | |
public int san(){ | |
return san1; | |
}; | |
public int atk(){ | |
return atk1; | |
}; | |
public int def(){ | |
return def1; | |
}; | |
}//野怪属性 | |
abstract class Battler { | |
void comatking() { } | |
}//战斗预设 | |
class Battle extends Battler { | |
int comatking(String name1,String name2, int san, int atk) { | |
int c = san; | |
if (san > atk) { | |
c = san - atk; | |
System.out.println(name1+"对" + name2 + "造成了" + atk + "的伤害"); | |
san = san - atk; | |
System.out.println(name2+"目前剩余的血量:"+san); | |
} else { | |
System.out.println(name2 + "Die"); | |
} | |
return san; | |
} | |
}//普通 | |
class Bouter { | |
public void BoutBegin(String name1,int atk1,int san1,int def1,String name2,int atk2,int san2,int def2) { | |
for (int i = 1; i < 100; i++) { | |
if(i%2 == 1) { | |
Scanner sc = new Scanner(System.in); | |
System.out.println("请选择你接下来的操作:\n1.攻击"); | |
int sc1 = sc.nextInt(); | |
if (sc1 == 1) { | |
Battle Battle = new Battle(); | |
san2 = Battle.comatking(name1,name2,san2,atk1); | |
if(san2 <= 0){ | |
System.out.println("恭喜你战胜了"+name2); | |
break; | |
} | |
} | |
}else{ | |
Battle Battle = new Battle(); | |
san1 =Battle.comatking(name2,name1,san1,atk2); | |
if(san1 <= 0 ){ | |
System.out.println("对不起游戏结束"); | |
break; | |
} | |
} | |
} | |
} | |
}//回合判断 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment