一位【田】姓学生的2016年【java】小游戏全码

举报
红目香薰 发表于 2022/07/29 10:21:27 2022/07/29
【摘要】 ​ ​编辑目录游戏说明​编辑属性.java对战.javaPK.java编译游戏说明1,登陆: 初始账号为 1   初始密码为  1 2,注册:注册新账号密码替代原账号3,选择人物:1选择德玛西亚    2选择德玛西亚皇子4,德玛每回合恢复20点生命,  增加100金币 5,皇子每回合回复10点生命值  增加100金币6,键盘输入【p】进入商店概要与伤害计算: 初始属性:/**********...

 编辑

目录


游戏说明

​编辑

属性.java

对战.java

PK.java

编译



游戏说明

1,登陆: 初始账号为 1   初始密码为  1 
2,注册:注册新账号密码替代原账号
3,选择人物:1选择德玛西亚    2选择德玛西亚皇子
4,德玛每回合恢复20点生命,  增加100金币 
5,皇子每回合回复10点生命值  增加100金币
6,键盘输入【p】进入商店

概要与伤害计算: 

初始属性:
/******************德玛人物属性********************/
     private int HP1=2800;          //血量
     private int ATK1=60;           //攻击力
     private int JQ1=5300;          //金币
     private int MP1=160;           //魔法值
     private int MAXHP1=2800;               //MAX血量
     private int HJ1=50;            //护甲
     private int 初始HJ1=50;          //初始护甲
     private int XX1=0;             //吸血
     private int BJ1=20;            //暴击
 
/******************皇子属性********************/
     private int HP2=2500;          //血量
     private int ATK2=70;           //攻击力
     private int MP2=160;           //魔法值"
     private int JQ2=5300;          //金币
     private int MAXHP2=2500;               //MAX血量
     private int HJ2=50;            //护甲
     private int 初始HJ2=50;      //初始护甲
     private int XX2=0;         //吸血
     private int BJ2=20;            //暴击
 
 
德玛技能:
    q 消耗30点魔法值 造成200伤害并沉默敌方一回合   地方只能使用普通攻击(a)
    w 消耗35点魔法值 回复240生命值   回复量后生命值不超过自身最大生命值     
    e 消耗40点魔法值 造成26伤害
    r 消耗60点魔法值 造成400基础伤害加上敌方最大生命值10%的真实伤害  
 
皇子技能:
    q 消耗30点魔法值 造成300点伤害
    w 消耗35点魔法值 回复250点生命值  回复量后生命值不超过自身最大生命值
                    释放w技能后下次普通攻击必暴击 暴击伤害300%若下次不适用普通攻击则下                      下子不享受此特效
    e 消耗40点魔法值 造成200点伤害
    r 消耗60点魔法值 造成400点伤害
 
 
伤害运算公式:
     对敌方造成的伤害=自身攻击力*100/(100+敌方护甲值)
 
     例如:皇子攻击力为120    德玛防御力为150
     则皇子攻击德玛对德玛造成的伤害为:120*100/(100+150)
 
     生命偷取:对敌方造成的实际伤害的百分比
      
     荆棘之甲反伤:被普通攻击命中时,会将你额外护甲值的25%
        加上15%的即将到来的伤害以物理伤害的形式回敬给攻击者。 
 
        敌方受到的实际伤害=荆棘之甲反伤*100/(100+自身护甲值)
                          
 
武器:
    *******************攻击类装备*****************
 
《无尽之刃》
唯一被动:暴击200%。
 
                 7.无尽之刃(3800)        
                   (攻击力+80)
                   (暴击+20%)
                    ^    ^    ^                      
                  ^      ^      ^                    
                ^        ^        ^                  
              ^          ^          ^                
            ^            ^            ^              
         ^               ^              ^            
 3.暴风之剑(1550)   5.十字镐(875)    6.灵巧披风(730)
   (攻击力+50)       (攻击力+25)      (暴击率+15%)
 
《饮血剑》
唯一被动:+20%生命偷取
 
              4.饮血剑(3500)
                (攻击力+80)
                (吸血+20%)
                 ^        ^                    
              ^              ^              
           ^                   ^            
      2.吸血鬼权杖(800)       3.暴风大剑(1550)
        (攻击力+10)             攻击力+(50)
        (吸血+10%)
           ^               
           ^               
           ^               
      1.长剑(360)
       (攻击力+10)
 
 
 
             3.荆棘之甲(2300)        
                (护甲值+100)
                (被动见上文)
                 ^        ^                    
              ^              ^              
           ^                   ^            
      2.锁子甲(730)        1.布甲(300)
       (护甲值+40)          (护甲值+15)
           ^               
           ^               
           ^               
      1.布甲(300)
      (护甲值+15)
 
 
装备为向上合成关系 当你买了下层的装备后买其上层装备的会自动 价格为上层装备的价格减下层装备的价格   曾加的属性为上层属性减下层属性
 
 
 
 
 
结束:显示亡者遗言   显示战斗回合数

装备可以自动合成,可以挨个测试,挺好玩的,当年这个孩子写的时候写了3天多,我用好多年了。希望这个小代码能创造更多的价值,就算帮小朋友积德行善了。

编辑

编辑

编辑

属性.java



public class 属性 {
	/************************************************/
	public static int x=0;           /*判德玛与皇子攻击   及   谁购买装备*/
	/******************德玛人物属性********************/
	 private int HP1=2800;     		//血量
	 private int ATK1=60;			//攻击力
	 private int JQ1=5300;			//金币
	 private int MP1=160;			//魔法值
	 private int MAXHP1=2800;     	//MAX血量
	 private int HJ1=50;			//护甲
	 private int 初始HJ1=50;			//初始护甲
	 private int XX1=0;				//吸血
	 private int BJ1=0;				//暴击
	
	
	
	/******************皇子属性********************/
	 private int HP2=2500;     		//血量
	 private int ATK2=70;			//攻击力
	 private int MP2=160;			//魔法值"
	 private int JQ2=5300;			//金币
	 private int MAXHP2=2500;     	//MAX血量
	 private int HJ2=50;			//护甲
	 private int 初始HJ2=50;			//初始护甲
	 private int XX2=0;				//吸血
	 private int BJ2=0;				//暴击
	
	/*****************账号密码信息*****************/
	private String 账号="1";
	private String 密码="1";
	
	/*****************武器属性**********************/
	public  int hp中;     	     			/*血量值中间量*/
	public  int atk中;		     			/*攻击力中间量*/
	public  int hj中;		    	 			/*护甲中间量*/
	public  int jq中;							/*金币中间量*/			
	public  int bj中;						/*暴击中间量*/	
	public  int xx中;			 			/*增加的吸血*/
	
	/*德玛拥有武器的个数*/
	public  int  饮血1=0;					/*拥有饮血剑的个数*/
	public  int  长剑1=0;                   /*拥有长剑的个数*/
	public  int  权杖1=0;					/*拥有吸血鬼权杖的个数*/
	public  int  暴风1=0;					/*拥有暴风之剑的个数*/
	public  int  十字镐1=0;					/*拥有十字镐的个数*/
	public  int  无尽1=0;					/*拥有无尽之刃的个数*/
	public  int  披风1=0;					/*拥有灵巧披风的个数*/
	public  int  布甲1=0;					/*拥有十字镐的个数*/
	public  int  锁子甲1=0;					/*拥有无尽之刃的个数*/
	public  int  反甲1=0;					/*拥有灵巧披风的个数*/
	
	/*皇子拥有武器的个数*/
	public  int  饮血2=0;					/*拥有饮血剑的个数*/
	public  int  长剑2=0;                   /*拥有长剑的个数*/
	public  int  权杖2=0;					/*拥有吸血鬼权杖的个数*/
	public  int  暴风2=0;					/*拥有暴风之剑的个数*/
	public  int  十字镐2=0;					/*拥有十字镐的个数*/
	public  int  无尽2=0;					/*拥有无尽之刃的个数*/
	public  int  披风2=0;					/*拥有灵巧披风的个数*/
	public  int  布甲2=0;					/*拥有十字镐的个数*/
	public  int  锁子甲2=0;					/*拥有无尽之刃的个数*/
	public  int  反甲2=0;					/*拥有灵巧披风的个数*/
	
	
	public  int  长剑=360;					/*长剑价格*/
	public  int  长剑atk=10;					/*长剑攻击力*/
	public  int  吸血鬼节杖=800;				/*吸血鬼节杖价格*/
	public  int  吸血鬼节杖atk=10;			/*吸血鬼节杖攻击力*/
	public  int  吸血鬼节杖xx=10;		/*吸血鬼节杖吸血系数*/
	public  int  暴风之剑=1550;				/*暴风价格*/
	public  int  暴风之剑atk=50;				/*暴风攻击力*/
	public  int  饮血剑=3500;				/*饮血剑价格*/
	public  int  饮血剑atk=80;				/*饮血攻击力*/
	public  int  饮血剑xx=20;			/*饮血剑吸血*/
	
	public  int  十字镐=875;					/*十字镐价格*/
	public  int  十字镐atk=25;				/*十字镐攻击力*/
	public  int  灵巧披风=730;				/*灵巧披风价格*/
	public  int  灵巧披风bj=15;				/*灵巧披风暴击率*/
	public  int  无尽之刃=3800;				/*无尽之刃价格*/
	public  int  无尽之刃atk=80;			/*无尽之刃攻击力*/
	public  int  无尽之刃bj=20;			    /*无尽之刃暴击*/
	
	public  int  锁子甲=730;					/*十字镐价格*/
	public  int  锁子甲hj=40;				/*十字镐攻击力*/
	public  int  布甲=300;				/*灵巧披风价格*/
	public  int  布甲hj=15;				/*灵巧披风暴击率*/
	public  int  反甲=2300;				/*无尽之刃价格*/
	public  int  反甲hj=100;			/*无尽之刃攻击力*/
	
	/****************德玛技能属性*******************/	
	 private int Q1=200;		/*q技能伤害*/
	 private int W1=240;		/*w技能伤害*/
	 private int E1=260;		/*e技能伤害*/
	 private int R1=400;		/*r技能伤害*/
	 private int QM1=30;		/*Q技能消耗魔法值*/
	 private int WM1=35;		/*W技能消耗魔法值*/
	 private int EM1=40;		/*E技能消耗魔法值*/
	 private int RM1=60;		/*R技能消耗魔法值*/
	 
/*****************皇子技能属性******************/	 
	 private int Q2=300;			/*q技能伤害*/
	 private int W2=250;			/*w技能伤害*/
	 private int E2=200;			/*e技能伤害*/
	 private int R2=400;			/*r技能伤害*/
	 private int QM2=30;		/*Q技能消耗魔法值*/
	 private int WM2=35;		/*W技能消耗魔法值*/
	 private int EM2=40;		/*E技能消耗魔法值*/
	 private int RM2=60;		/*R技能消耗魔法值*/
	public int getHP1() {
		return HP1;
	}
	public void setHP1(int d) {
		HP1 = d;
	}
	public int getATK1() {
		return ATK1;
	}
	public void setATK1(int aTK1) {
		ATK1 = aTK1;
	}
	public int getJQ1() {
		return JQ1;
	}
	public void setJQ1(int jQ1) {
		JQ1 = jQ1;
	}
	public int getMP1() {
		return MP1;
	}
	public void setMP1(int mP1) {
		MP1 = mP1;
	}
	public int getMAXHP1() {
		return MAXHP1;
	}
	public void setMAXHP1(int mAXHP1) {
		MAXHP1 = mAXHP1;
	}
	public int getHJ1() {
		return HJ1;
	}
	public void setHJ1(int hJ1) {
		HJ1 = hJ1;
	}
	public int get初始HJ1() {
		return 初始HJ1;
	}
	public void set初始HJ1(int 初始hj1) {
		初始HJ1 = 初始hj1;
	}
	public int getXX1() {
		return XX1;
	}
	public void setXX1(int xX1) {
		XX1 = xX1;
	}
	public int getBJ1() {
		return BJ1;
	}
	public void setBJ1(int bJ1) {
		BJ1 = bJ1;
	}
	public int getHP2() {
		return HP2;
	}
	public void setHP2(int hP2) {
		HP2 = hP2;
	}
	public int getATK2() {
		return ATK2;
	}
	public void setATK2(int aTK2) {
		ATK2 = aTK2;
	}
	public int getMP2() {
		return MP2;
	}
	public void setMP2(int mP2) {
		MP2 = mP2;
	}
	public int getJQ2() {
		return JQ2;
	}
	public void setJQ2(int jQ2) {
		JQ2 = jQ2;
	}
	public int getMAXHP2() {
		return MAXHP2;
	}
	public void setMAXHP2(int mAXHP2) {
		MAXHP2 = mAXHP2;
	}
	public int getHJ2() {
		return HJ2;
	}
	public void setHJ2(int hJ2) {
		HJ2 = hJ2;
	}
	public int get初始HJ2() {
		return 初始HJ2;
	}
	public void set初始HJ2(int 初始hj2) {
		初始HJ2 = 初始hj2;
	}
	public int getXX2() {
		return XX2;
	}
	public void setXX2(int xX2) {
		XX2 = xX2;
	}
	public int getBJ2() {
		return BJ2;
	}
	public void setBJ2(int bJ2) {
		BJ2 = bJ2;
	}
	public String get账号() {
		return 账号;
	}
	public void set账号(String 账号) {
		this.账号 = 账号;
	}
	public String get密码() {
		return 密码;
	}
	public void set密码(String 密码) {
		this.密码 = 密码;
	}
	
	
	
	public int getHp中() {
		return hp中;
	}
	public void setHp中(int hp中) {
		this.hp中 = hp中;
	}
	public int getAtk中() {
		return atk中;
	}
	public void setAtk中(int atk中) {
		this.atk中 = atk中;
	}
	public int getHj中() {
		return hj中;
	}
	public void setHj中(int hj中) {
		this.hj中 = hj中;
	}
	public int getJq中() {
		return jq中;
	}
	public void setJq中(int jq中) {
		this.jq中 = jq中;
	}
	public int getBj中() {
		return bj中;
	}
	public void setBj中(int bj中) {
		this.bj中 = bj中;
	}
	public int getXx中() {
		return xx中;
	}
	public void setXx中(int  xx中) {
		this.xx中 = xx中;
	}
	
	public int get饮血1() {
		return 饮血1;
	}
	public void set饮血1(int 饮血1) {
		this.饮血1 = 饮血1;
	}
	public int get长剑1() {
		return 长剑1;
	}
	public void set长剑1(int 长剑1) {
		this.长剑1 = 长剑1;
	}
	public int get权杖1() {
		return 权杖1;
	}
	public void set权杖1(int 权杖1) {
		this.权杖1 = 权杖1;
	}
	public int get暴风1() {
		return 暴风1;
	}
	public void set暴风1(int 暴风1) {
		this.暴风1 = 暴风1;
	}
	public int get十字镐1() {
		return 十字镐1;
	}
	public void set十字镐1(int 十字镐1) {
		this.十字镐1 = 十字镐1;
	}
	public int get无尽1() {
		return 无尽1;
	}
	public void set无尽1(int 无尽1) {
		this.无尽1 = 无尽1;
	}
	public int get披风1() {
		return 披风1;
	}
	public void set披风1(int 披风1) {
		this.披风1 = 披风1;
	}
	public int get布甲1() {
		return 布甲1;
	}
	public void set布甲1(int 布甲1) {
		this.布甲1 = 布甲1;
	}
	public int get锁子甲1() {
		return 锁子甲1;
	}
	public void set锁子甲1(int 锁子甲1) {
		this.锁子甲1 = 锁子甲1;
	}
	public int get反甲1() {
		return 反甲1;
	}
	public void set反甲1(int 反甲1) {
		this.反甲1 = 反甲1;
	}
	public int get饮血2() {
		return 饮血2;
	}
	public void set饮血2(int 饮血2) {
		this.饮血2 = 饮血2;
	}
	public int get长剑2() {
		return 长剑2;
	}
	public void set长剑2(int 长剑2) {
		this.长剑2 = 长剑2;
	}
	public int get权杖2() {
		return 权杖2;
	}
	public void set权杖2(int 权杖2) {
		this.权杖2 = 权杖2;
	}
	public int get暴风2() {
		return 暴风2;
	}
	public void set暴风2(int 暴风2) {
		this.暴风2 = 暴风2;
	}
	public int get十字镐2() {
		return 十字镐2;
	}
	public void set十字镐2(int 十字镐2) {
		this.十字镐2 = 十字镐2;
	}
	public int get无尽2() {
		return 无尽2;
	}
	public void set无尽2(int 无尽2) {
		this.无尽2 = 无尽2;
	}
	public int get披风2() {
		return 披风2;
	}
	public void set披风2(int 披风2) {
		this.披风2 = 披风2;
	}
	public int get布甲2() {
		return 布甲2;
	}
	public void set布甲2(int 布甲2) {
		this.布甲2 = 布甲2;
	}
	public int get锁子甲2() {
		return 锁子甲2;
	}
	public void set锁子甲2(int 锁子甲2) {
		this.锁子甲2 = 锁子甲2;
	}
	public int get反甲2() {
		return 反甲2;
	}
	public void set反甲2(int 反甲2) {
		this.反甲2 = 反甲2;
	}
	public int get锁子甲() {
		return 锁子甲;
	}
	public void set锁子甲(int 锁子甲) {
		this.锁子甲 = 锁子甲;
	}
	public int get锁子甲hj() {
		return 锁子甲hj;
	}
	public void set锁子甲hj(int 锁子甲hj) {
		this.锁子甲hj = 锁子甲hj;
	}
	public int get布甲() {
		return 布甲;
	}
	public void set布甲(int 布甲) {
		this.布甲 = 布甲;
	}
	public int get布甲hj() {
		return 布甲hj;
	}
	public void set布甲hj(int 布甲hj) {
		this.布甲hj = 布甲hj;
	}
	public int get反甲() {
		return 反甲;
	}
	public void set反甲(int 反甲) {
		this.反甲 = 反甲;
	}
	public int get反甲hj() {
		return 反甲hj;
	}
	public void set反甲hj(int 反甲hj) {
		this.反甲hj = 反甲hj;
	}
	public int get长剑() {
		return 长剑;
	}
	public void set长剑(int 长剑) {
		this.长剑 = 长剑;
	}
	public int get吸血鬼节杖() {
		return 吸血鬼节杖;
	}
	public void set吸血鬼节杖(int 吸血鬼节杖) {
		this.吸血鬼节杖 = 吸血鬼节杖;
	}
	public int get暴风之剑() {
		return 暴风之剑;
	}
	public void set暴风之剑(int 暴风之剑) {
		this.暴风之剑 = 暴风之剑;
	}
	public int get饮血剑() {
		return 饮血剑;
	}
	public void set饮血剑(int 饮血剑) {
		this.饮血剑 = 饮血剑;
	}
	public int get长剑atk() {
		return 长剑atk;
	}
	public void set长剑atk(int 长剑atk) {
		this.长剑atk = 长剑atk;
	}
	public int get吸血鬼节杖atk() {
		return 吸血鬼节杖atk;
	}
	public void set吸血鬼节杖atk(int 吸血鬼节杖atk) {
		this.吸血鬼节杖atk = 吸血鬼节杖atk;
	}
	public int get吸血鬼节杖xx() {
		return 吸血鬼节杖xx;
	}
	public void set吸血鬼节杖xx(int 吸血鬼节杖xx) {
		this.吸血鬼节杖xx = 吸血鬼节杖xx;
	}
	public int get暴风之剑atk() {
		return 暴风之剑atk;
	}
	public void set暴风之剑atk(int 暴风之剑atk) {
		this.暴风之剑atk = 暴风之剑atk;
	}
	public int get饮血剑atk() {
		return 饮血剑atk;
	}
	public void set饮血剑atk(int 饮血剑atk) {
		this.饮血剑atk = 饮血剑atk;
	}
	public int get饮血剑xx() {
		return 饮血剑xx;
	}
	public void set饮血剑xx(int 饮血剑xx) {
		this.饮血剑xx = 饮血剑xx;
	}
	public int get十字镐() {
		return 十字镐;
	}
	public void set十字镐(int 十字镐) {
		this.十字镐 = 十字镐;
	}
	public int get十字镐atk() {
		return 十字镐atk;
	}
	public void set十字镐atk(int 十字镐atk) {
		this.十字镐atk = 十字镐atk;
	}
	public int get灵巧披风() {
		return 灵巧披风;
	}
	public void set灵巧披风(int 灵巧披风) {
		this.灵巧披风 = 灵巧披风;
	}
	public int get灵巧披风bj() {
		return 灵巧披风bj;
	}
	public void set灵巧披风bj(int 灵巧披风bj) {
		this.灵巧披风bj = 灵巧披风bj;
	}
	public int get无尽之刃() {
		return 无尽之刃;
	}
	public void set无尽之刃(int 无尽之刃) {
		this.无尽之刃 = 无尽之刃;
	}
	public int get无尽之刃atk() {
		return 无尽之刃atk;
	}
	public void set无尽之刃atk(int 无尽之刃atk) {
		this.无尽之刃atk = 无尽之刃atk;
	}
	public int get无尽之刃bj() {
		return 无尽之刃bj;
	}
	public void set无尽之刃bj(int 无尽之刃bj) {
		this.无尽之刃bj = 无尽之刃bj;
	}
	public int getQ1() {
		return Q1;
	}
	public void setQ1(int q1) {
		Q1 = q1;
	}
	public int getW1() {
		return W1;
	}
	public void setW1(int w1) {
		W1 = w1;
	}
	public int getE1() {
		return E1;
	}
	public void setE1(int e1) {
		E1 = e1;
	}
	public int getR1() {
		return R1;
	}
	public void setR1(int r1) {
		R1 = r1;
	}
	public int getQM1() {
		return QM1;
	}
	public void setQM1(int qM1) {
		QM1 = qM1;
	}
	public int getWM1() {
		return WM1;
	}
	public void setWM1(int wM1) {
		WM1 = wM1;
	}
	public int getEM1() {
		return EM1;
	}
	public void setEM1(int eM1) {
		EM1 = eM1;
	}
	public int getRM1() {
		return RM1;
	}
	public void setRM1(int rM1) {
		RM1 = rM1;
	}
	public int getQ2() {
		return Q2;
	}
	public void setQ2(int q2) {
		Q2 = q2;
	}
	public int getW2() {
		return W2;
	}
	public void setW2(int w2) {
		W2 = w2;
	}
	public int getE2() {
		return E2;
	}
	public void setE2(int e2) {
		E2 = e2;
	}
	public int getR2() {
		return R2;
	}
	public void setR2(int r2) {
		R2 = r2;
	}
	public int getQM2() {
		return QM2;
	}
	public void setQM2(int qM2) {
		QM2 = qM2;
	}
	public int getWM2() {
		return WM2;
	}
	public void setWM2(int wM2) {
		WM2 = wM2;
	}
	public int getEM2() {
		return EM2;
	}
	public void setEM2(int eM2) {
		EM2 = eM2;
	}
	public int getRM2() {
		return RM2;
	}
	public void setRM2(int rM2) {
		RM2 = rM2;
	}
	 
	 
}

对战.java


import java.util.Random;
import java.util.Scanner;

public class 对战 extends 属性 {
	Scanner sc=new Scanner(System.in);
	Random  ra=new Random();
	       int cm=0;
	       int 阵亡1=0,  阵亡2=0;
	       int 回合=0;
	       int 黄w=0;      /*皇子w之后下次暴击*/
	        /**长剑      权杖       暴风      饮血     十字镐     披风           无尽       布甲       锁子甲	反甲******/
	       int cj=0, qz=0, bf=0, yx=0, szg=0, lqpf=0, wj=0, bj=0,  szj=0,  fj=0;/*购买装备个数的中间量*/
	       
	       
	public void 德玛攻击(){
			int mf=1;
			System.out.println("*******德玛攻击中******");
	while(mf==1){
		    String a=sc.next(); 
     		 if(a.equals("p")){德玛购买装备();}
		else if(a.equals("q")&&getMP1()>=getQM1()){ mf=0; cm=1;setMP1(getMP1()-getQM1());setHP2(getHP2()-getQ1()*100/(100+getHJ2())); 
		     	 	System.out.println("德玛使用致命打击对皇子造成了"+getQ1()*100/(100+getHJ2())+"点伤害并沉默对方1回合");}
		else if(a.equals("w")&&getMP1()>=getWM1()){ mf=0; setMP1(getMP1()-getWM1());
				 if(getHP1()<getMAXHP1()-getW1()){setHP1(getHP1()+getW1());  System.out.println("德玛使用勇气回复"+getW1()+"点生命值");} 
			     else { System.out.println("德玛使用勇气回复"+(getMAXHP1()-getHP1())+"点生命值"); setHP1(getMAXHP1()); }}
		else if(a.equals("e")&&getMP1()>=getEM1()){ mf=0; setMP1(getMP1()-getEM1());setHP2(getHP2()-getE1()*100/(100+getHJ2())); 
					System.out.println("德玛使用审判对皇子造成了"+getE1()*100/(100+getHJ2())+"点伤害");}
		else if(a.equals("r")&&getMP1()>=getRM1()){ mf=0; setMP1(getMP1()-getRM1()); int r真实=(getMAXHP2()-getHP2())/10; setHP2(getHP2()-getR1()*100/(100+getHJ2())-r真实);  
					System.out.println("德玛使用德玛西亚正义对皇子造成了"+getR1()*100/(100+getHJ2())+"+"+"对方已损失生命值10%的真实"+r真实+"点伤害");}	
		else if(a.equals("a")){ mf=0;  int 暴击1=ra.nextInt(101);
					if(暴击1<=getBJ1()){setHP2(getHP2()-getATK1()*2*100/(100+getHJ2())); if(get无尽1()>0){setHP2(getHP2()-getATK1()*100/(100+getHJ2())/4);}
					      System.out.println("	*“暴击”*"); System.out.println("德玛使用普通攻击对皇子造成了"+getATK1()*2*100/(100+getHJ2())+"点伤害");}
					else {setHP2(getHP2()-getATK1()*100/(100+getHJ2())); setHP1(getHP1()+getATK1()*100/(100+getHJ2())*getXX1()/100);
					System.out.println("德玛使用普通攻击对皇子造成了"+getATK1()*100/(100+getHJ2())+"点伤害");}
					if(getXX1()>0){System.out.println("并偷取"+(getATK1()*100/(100+getHJ2())*getXX1()/100)+"点生命值");}
					if(get反甲2()>0){setHP1(getHP1()-(((getHJ2()-get初始HJ2())/4+getATK1()*15/100)*100/(100+getHJ1()))); 
					System.out.println("受到"+(((getHJ2()-get初始HJ2())/4+getATK1()*15/100)*100/(100+getHJ1()))+"点荆棘之甲的反伤");}
					}
		     if(mf==1){ if(a.equals("a")||a.equals("q")||a.equals("w")||a.equals("e")||a.equals("r")) {System.out.println("当前魔法值不足....");}
		     			else if(a.equals("p")){System.out.println("......德玛进入攻击状态.......");}    // 退出商店 
		     			else {System.err.println("请输入正确指令....");}}
		     
			}  /*德玛攻击环节*/
			 setHP1(getHP1()+20); setMP2(getMP2()+10);  if(getMP2()>160){setMP2(160);}   if(getHP1()>getMAXHP1()){setHP1(getMAXHP1());}  //德玛每回合增加的魔法值与生命值
			 setJQ1(getJQ1()+100);  回合++;	 
			 System.out.println("*********《德玛》******《皇子》**");
		     System.out.println("***生命值:"+getHP1() +  "\t	"+getHP2());
		     System.out.println("***魔法值: "+getMP1() +  "\t	"+getMP2());   
		     System.out.println("***攻击力: "+getATK1()+  "\t	"+getATK2());  
		     System.out.println("***护甲值: "+getHJ1()+   "\t	"+getHJ2());   
		     System.out.println("*生命吸取: "+getXX1()+"%"+ "\t	"+getXX2()+"%");   
		     System.out.println("***暴     击: "+getBJ1()+"%"+ "\t	"+getBJ2()+"%");   
		     System.out.println("***金     币: "+getJQ1() +  "\t	"+getJQ2());
				   
				}
		
	
  public void 皇子攻击(){
		int mf=1;
		System.out.println("********皇子攻击中*****");
 while(mf==1||cm==1){	
	    String a=sc.next(); 
	    if(a.equals("p")){皇子购买装备();}
  if(cm!=1){ 
	     if(a.equals("a")){ mf=0; if(黄w==1){ 黄w=0; setHP1(getHP1()-getATK2()*100/(100+getHJ1())*3); setHP2(getHP2()+getATK2()*100/(100+getHJ1())*3*getXX2()/100);
	     					System.out.println("皇子使用普通攻击*暴击*对德玛造成了"+getATK2()*100/(100+getHJ1())*3+"点伤害");
	     				    	if(getXX2()>0){System.out.println("并偷取"+(getATK2()*100/(100+getHJ1())*3*getXX2()/100)+"点生命值");}
	     				    	if(get反甲1()>0){setHP2(getHP2()-(((getHJ1()-get初始HJ1())/4+getATK2()*3*15/100)*100/(100+getHJ2()))); 
								System.out.println("受到"+(((getHJ1()-get初始HJ1())/4+getATK2()*15/100)*100/(100+getHJ2()))+"点荆棘之甲的反伤");}}
	     				    else { int 暴击2=ra.nextInt(101); if(暴击2<=getBJ2()){setHP1(getHP1()-getATK2()*2*100/(100+getHJ1())); setHP2(getHP2()+getATK2()*2*100/(100+getHJ1())*getXX2()/100);
	     				          System.out.println("	*“暴击”*"); System.out.println("皇子使用普通攻击对德玛造成了"+getATK2()*2*100/(100+getHJ1())+"点伤害");}
	     					      else {setHP1(getHP1()-getATK2()*100/(100+getHJ1())); setHP2(getHP2()+getATK2()*100/(100+getHJ1())*getXX2()/100);
	     					    		System.out.println("皇子使用普通攻击对德玛造成了"+getATK2()*100/(100+getHJ1())+"点伤害");}
	     					          if(getXX2()>0){System.out.println("并偷取"+(getATK2()*100/(100+getHJ1())*2*getXX2()/100)+"点生命值");}
	     					         if(get反甲1()>0){setHP2(getHP2()-(((getHJ1()-get初始HJ1())/4+getATK2()*15/100)*100/(100+getHJ2()))); 
								System.out.println("受到"+(((getHJ1()-get初始HJ1())/4+getATK2()*15/100)*100/(100+getHJ2()))+"点荆棘之甲的反伤");}}}
	     if(a.equals("q")&&getMP2()>=getQM2()){ mf=0; 黄w=0;setMP2(getMP2()-getQM2()); setHP1(getHP1()-getQ2()*100/(100+getHJ1()));
	     	System.out.println("皇子使用巨龙撞击对德玛造成了"+getQ2()*100/(100+getHJ1())+"点伤害....");}
	else if(a.equals("w")&&getMP2()>=getWM2()){ mf=0; setMP2(getMP2()-getWM2()); 黄w=1;
			if(getHP2()<getMAXHP2()-getW2()) {setHP2(getHP2()+getW2()); System.out.println("皇子使用黄金圣盾回复"+getW2()+"点生命值");}
			else {System.out.println("皇子使用黄金圣盾生命值回复"+(getMAXHP2()-getHP2()));  setHP2(getMAXHP2());}}
	else if(a.equals("e")&&getMP2()>=getEM2()){ mf=0;黄w=0; setMP2(getMP2()-getEM2());setHP1(getHP1()-getE2()*100/(100+getHJ1()));
			System.out.println("皇子使用德邦军旗对德玛造成了"+getE2()*100/(100+getHJ1())+"点伤害");}
	else if(a.equals("r")&&getMP2()>=getRM2()){ mf=0; 黄w=0;setMP2(getMP2()-getRM2());setHP1(getHP1()-getR2()*100/(100+getHJ1()));		
			System.out.println("皇子使用山崩地裂对德玛造成了"+getR2()*100/(100+getHJ2())+"点伤害");}	
			}
  else {if(a.equals("a")){mf=0; cm=0; 黄w=0;int 暴击2=ra.nextInt(101);
						 if(暴击2<=getBJ2()){setHP1(getHP1()-getATK2()*2*100/(100+getHJ1())); setHP2(getHP2()+getATK2()*2*100/(100+getHJ1())*getXX2()/100);
							 System.out.println("	*“暴击”*"); System.out.println("皇子使用普通攻击对德玛造成了"+getATK2()*2*100/(100+getHJ1())+"点伤害");}
						 else {setHP1(getHP1()-getATK2()*100/(100+getHJ1())); setHP2(getHP2()+getATK2()*100/(100+getHJ1())*getXX2()/100);
					  		System.out.println("皇子使用普通攻击对德玛造成了"+getATK2()*100/(100+getHJ1())+"点伤害"); }
					  		if(getXX2()>0){System.out.println("并偷取"+(getATK2()*100/(100+getHJ1())*getXX2()/100)+"点生命值");}
					  		if(get反甲1()>0){setHP2(getHP2()-(((getHJ1()-get初始HJ1())/4+getATK2()*15/100)*100/(100+getHJ2()))); 
							System.out.println("受到"+(((getHJ1()-get初始HJ1())/4+getATK2()*15/100)*100/(100+getHJ2()))+"点荆棘之甲的反伤");}}
  		else if(a.equals("q")||a.equals("w")||a.equals("e")||a.equals("r")){mf=0; System.out.print("你已经被");System.err.print("沉默");System.out.println("不能使用技能");
  																			   	  System.out.println("请使用普通攻击...");}
  		else {System.err.println("请输入有效指令....");}
  	   }
	   if(mf==1){ if( a.equals("q")||a.equals("w")||a.equals("e")||a.equals("r")) {System.out.println("当前魔法值不足....");}
	   			  else if(a.equals("p")){System.out.println("...... 皇子进入攻击状态.......");}    // 退出商店       
	              else {System.err.println("请输入正确指令....");}}
 		  }  /*皇子攻击过程*/
		 setHP2(getHP2()+10); setMP1(getMP1()+10);  if(getMP1()>160){setMP1(160);}   if(getHP2()>getMAXHP2()){setHP2(getMAXHP2());}  //德玛每回合增加的魔法值与生命值
		 setJQ2(getJQ2()+100);   
		 System.out.println("*********《德玛》******《皇子》**");
	     System.out.println("***生命值:"+getHP1() +  "\t	"+getHP2());
	     System.out.println("***魔法值: "+getMP1() +  "\t	"+getMP2());   
	     System.out.println("***攻击力: "+getATK1()+  "\t	"+getATK2());  
	     System.out.println("***护甲值: "+getHJ1()+   "\t	"+getHJ2());   
	     System.out.println("*生命吸取: "+getXX1()+"%"+ "\t	"+getXX2()+"%");   
	     System.out.println("***暴     击: "+getBJ1()+"%"+ "\t	"+getBJ2()+"%");   
	     System.out.println("***金     币: "+getJQ1() +  "\t	"+getJQ2());
         }
  
  
  
	  public void 登陆(){
		 while(true){
		  System.out.println("《欢迎来到德玛西亚》");
		  System.out.println("  1 登陆          2注册");
		  char a=sc.next().charAt(0);
		  if(a=='1'){
		  System.out.println("*@欢迎登陆@*");
		  System.out.println("请输入登陆账号:");
		  String zh=sc.next();
		  System.out.println("请输入登陆密码:");
		  String mm=sc.next();
		  		if(zh.equals(get账号())&&mm.equals(get密码())){
		  			System.out.println("登陆成功");break;
		  		}else {System.out.println("匹配失败");}
	      }else if(a=='2'){
	 		     注册();
	 	  }else {System.out.println("          登陆?or注册?");}
	 		}
  				}
	 
	  
	  public void 注册(){
		  while(true){
			  System.out.println("《欢迎注册账号》");
			  System.out.println("请输入注册账号:");
			  while(true){
			  String zz=sc.next();
			  char z=zz.charAt(0);
			  if(z>='a'&&z<='z'||z>='A'&&z<='Z'){
				  set账号(zz); break;
			  }else {System.err.println("账号请以字母开头,请重新输入:");}
			  }  
			   
			  System.out.println("请设置账号密码:");
			  set密码(sc.next());		
			  System.out.println("注册成功");break;
			  		}
		      }
		
	  public boolean 德玛是否阵亡(){
		  if(getHP1()<=0){ System.out.println("经过"+回合+"回合(天)的激烈战斗最终德玛西亚之力不敌皇子");
		                   System.out.println("德玛死前长呼:丈夫生世,当带三尺之剑,以升天子之阶。今所志未从,奈何而死乎!");
		                   System.out.println("遂死于皇子的长矛之下");
		  return true;}
		  else { return false;}	   
	  }
		 	  
	  public boolean 皇子是否阵亡(){
		  if(getHP2()<=0){System.out.println("经过"+回合+"回合(天)的激烈战斗最终嘉文四世不敌德玛西亚之力");
						  System.out.println("皇子禁不住慷慨悲歌:力拔山兮,气盖世,时不利兮,骓不逝。骓不逝兮,可奈何?虞兮虞兮,奈若何?");
				          System.out.println("”此天之亡我,非战之罪也“身受重伤的皇子不堪被俘在乌江自刎而亡");
		  return true;}
		  else { return false;}	  
	  }
	  
	  
	  public void 商店(){
		  System.out.println("      *************        ");
	      System.out.println("    ***欢迎来到商店***      ");
	      System.out.println("      *************        ");
	      System.out.println(" 剩余金币:"+getJq中());
	      Scanner sc=new Scanner(System.in);
	while(true){  System.out.println("请选择装备类型: 1 攻击类         2 防御类      p 返回攻击状态   ");
		char zb=sc.next().charAt(0);
		if(zb=='p'){break;}
		if(zb=='1'){System.out.println("*******************攻击类装备*****************");
					System.out.println();
					System.out.println("《无尽之刃》");
					System.out.println("唯一被动:暴击伤害为200%。");
					 无尽之刃(); 
					 System.out.println();
					System.out.println("《饮血剑》");
					System.out.println("唯一被动:+20%生命偷取");
		                                  饮血剑();购攻击装备流程();}
		if(zb=='2'){System.out.println("***************防御类装备*****************");
		   			System.out.println("              《荆棘之甲》");
		   			System.out.println("唯一被动:被普通攻击命中时,会将你额外护甲值的25%");
		   			System.out.println("加上15%的即将到来的伤害以物理伤害的形式回敬给攻击者。");
		   			荆棘之甲(); 购买防御类装备();
		   			
			}
		  }
		}    //进入商店购买装备过程
	  
	  
	  public void 德玛购买装备(){
		   cj=get长剑1();qz=get权杖1();bf=get暴风1();yx=get饮血1();wj=get无尽1();	bj=get布甲1();szj=get锁子甲1();fj=get反甲1();	
		   setAtk中(getATK1());
		   setXx中(getXX1());
		   setJq中(getJQ1());
		   setBj中(getBJ1());
		   setHj中(getHJ1());
		   	商店();
		   set长剑1(cj);	set权杖1(qz);set暴风1(bf);set饮血1(yx);set无尽1(wj);set布甲1(bj);set锁子甲1(szj);set反甲1(fj);
		   setATK1(getAtk中());
		   setXX1(getXx中());
		   setJQ1(getJq中());
		   setBJ1(getBj中());
		   setHJ1(getHj中());
		   System.out.println("*********《德玛》******《皇子》**");
		     System.out.println("***生命值:"+getHP1() +  "\t	"+getHP2());
		     System.out.println("***魔法值: "+getMP1() +  "\t	"+getMP2());   
		     System.out.println("***攻击力: "+getATK1()+  "\t	"+getATK2());  
		     System.out.println("***护甲值: "+getHJ1()+   "\t	"+getHJ2());   
		     System.out.println("*生命吸取: "+getXX1()+"%"+ "\t	"+getXX2()+"%");   
		     System.out.println("***暴     击: "+getBJ1()+"%"+ "\t	"+getBJ2()+"%");   
		     System.out.println("***金     币: "+getJQ1() +  "\t	"+getJQ2());
	  }
	  
	  public void 皇子购买装备(){
		  cj=get长剑2();qz=get权杖2();bf=get暴风2();yx=get饮血2();wj=get无尽2();	bj=get布甲2();szj=get锁子甲2();fj=get反甲2();	
		  setAtk中(getATK2());
		  setXx中(getXX2());
		  setJq中(getJQ2());
		  setBj中(getBJ2());
		  setHj中(getHJ2());
			 商店();
		  set长剑2(cj);	set权杖2(qz);set暴风2(bf);set饮血2(yx);set无尽2(wj);set布甲2(bj);set锁子甲2(szj);set反甲2(fj);
		  setATK2(getAtk中());
		  setXX2(getXx中());
		  setJQ2(getJq中());
		  setBJ2(getBj中());
		  setHJ2(getHj中());
		  System.out.println("*********《德玛》******《皇子》**");
		     System.out.println("***生命值:"+getHP1() +  "\t	"+getHP2());
		     System.out.println("***魔法值: "+getMP1() +  "\t	"+getMP2());   
		     System.out.println("***攻击力: "+getATK1()+  "\t	"+getATK2());  
		     System.out.println("***护甲值: "+getHJ1()+   "\t	"+getHJ2());   
		     System.out.println("*生命吸取: "+getXX1()+"%"+ "\t	"+getXX2()+"%");   
		     System.out.println("***暴     击: "+getBJ1()+"%"+ "\t	"+getBJ2()+"%");   
		     System.out.println("***金     币: "+getJQ1() +  "\t	"+getJQ2());
	  }
	  
	  
	  public void 购攻击装备流程(){
		  
		  char gj=sc.next().charAt(0);
			 if(gj=='1'&&getJq中()>=get长剑()){ setAtk中(getAtk中()+get长剑atk()); setJq中(getJq中()-get长剑()); cj++;
			     System.out.println("您用"+get长剑()+"金币购买了一把长剑          金币剩余"+getJq中());
			     System.out.println("攻击力加:"+get长剑atk());} 
			  else if(gj=='2'&&(getJq中()>=get吸血鬼节杖()||cj>0&&getJq中()>=(get吸血鬼节杖()-get长剑()))){ qz++; setXx中(getXx中()+get吸血鬼节杖xx()); 
			  					if(cj>0){ cj--;  setJq中(getJq中()-get吸血鬼节杖()+get长剑());System.out.println("您用"+(get吸血鬼节杖()-get长剑())+"金币购买了吸血鬼权杖吸血加"+get吸血鬼节杖xx()+"%" );}
			  				    else{ setAtk中(getAtk中()+get吸血鬼节杖atk()); setJq中(getJq中()-get吸血鬼节杖());
			  					System.out.print("您用"+get吸血鬼节杖()+"金币购买了吸血鬼权杖    ");	
								System.out.println("攻击力加:"+get吸血鬼节杖atk() + "吸血加"+get吸血鬼节杖xx()+"%" );	}															
								System.out.println("金币剩余:"+getJq中() ); }  			 
			  else if(gj=='3'&&getJq中()>=get暴风之剑()){bf++; setAtk中(getAtk中()+get暴风之剑atk()); setJq中(getJq中()-get暴风之剑());
					           System.out.println("您用"+get暴风之剑()+"金币购买了暴风之剑          金币剩余"+getJq中());
					           System.out.println("攻击力加:"+get暴风之剑atk());} 
			  else if(gj=='4'&&(getJq中()>=get饮血剑()||bf>0&&getJq中()>=(get饮血剑()-get暴风之剑())||qz>0&&getJq中()>=(get饮血剑()-get吸血鬼节杖())||cj>0&&getJq中()>=(get饮血剑()-get长剑())
					  			||bf>0&&qz>0&&getJq中()>=(get饮血剑()-get暴风之剑()-get吸血鬼节杖())||bf>0&&cj>0&&getJq中()>=(get饮血剑()-get暴风之剑()-get长剑())))
			  				  { if(bf>0&&qz>0){ bf--;qz--;setAtk中(getAtk中()+get饮血剑atk()-get暴风之剑atk()-get吸血鬼节杖atk()); setXx中(getXx中()+get饮血剑xx()-get吸血鬼节杖xx());
			  				  				setJq中(getJq中()-get饮血剑()+get暴风之剑()+get吸血鬼节杖());}
			  				  else if(bf>0&&cj>0){bf--;cj--;setAtk中(getAtk中()+get饮血剑atk()-get暴风之剑atk()-get长剑()); setXx中(getXx中()+get饮血剑xx());
			  				  				setJq中(getJq中()-get饮血剑()+get暴风之剑()+get长剑());}
			  				  else if(bf>0){bf--;setAtk中(getAtk中()+get饮血剑atk()-get暴风之剑atk()); setXx中(getXx中()+get饮血剑xx()); setJq中(getJq中()-get饮血剑()+get暴风之剑());}
			  				  else if(qz>0){qz--;setAtk中(getAtk中()+get饮血剑atk()-get吸血鬼节杖atk()); setXx中(getXx中()+get饮血剑xx()-get吸血鬼节杖xx()); setJq中(getJq中()-get饮血剑()+get吸血鬼节杖());}
			  				  else if(cj>0){cj--;setAtk中(getAtk中()+get饮血剑atk()-get长剑atk()); setXx中(getXx中()+get饮血剑xx()); setJq中(getJq中()-get饮血剑()+get长剑());}
			  				  	else{setAtk中(getAtk中()+get饮血剑atk()); setXx中(getXx中()+get饮血剑xx()); setJq中(getJq中()-get饮血剑());} yx++;
			  				  		System.out.println("您购买了饮血剑          金币剩余"+getJq中()); 
			 						System.out.println("攻击力加:"+get饮血剑atk());}
			  else if(gj=='5'&&getJq中()>=get十字镐()){ szg++; setAtk中(getAtk中()+get十字镐atk()); setJq中(getJq中()-get十字镐()); 
			  				  System.out.println("您用"+get十字镐()+"金币购买力十字镐                     金币剩余"+getJq中());System.out.println("攻击力加:"+get十字镐atk());}
			  else if(gj=='6'&&getJq中()>=get灵巧披风()){lqpf++; setBj中(getBj中()+get灵巧披风bj()); setJq中(getJq中()-get灵巧披风()); 
			  				  System.out.println("您用"+get灵巧披风()+"金币购买力灵巧披风                  金币剩余"+getJq中());System.out.println("暴击率加:"+get灵巧披风bj());}
			  else if(gj=='7'&&(getJq中()>=get无尽之刃()||bf>0&&szg>0&&getJq中()>=(get无尽之刃()-get暴风之剑()-get十字镐())||bf>0&&lqpf>0&&getJq中()>=(get无尽之刃()-get暴风之剑()-get灵巧披风())
					  			||szg>0&&lqpf>0&&getJq中()>=(get无尽之刃()-get十字镐()-get灵巧披风())||bf>0&&szg>0&&lqpf>0&&getJq中()>=(get无尽之刃()-get暴风之剑()-get十字镐()-get灵巧披风())
					  			||szg>0&&getJq中()>=(get无尽之刃()-get十字镐())||bf>0&&getJq中()>=(get无尽之刃()-get暴风之剑())||lqpf>0&&getJq中()>=(get无尽之刃()-get灵巧披风())))
			  				{if(bf>0&&szg>0&&lqpf>0){ bf--;szg--;lqpf--; setAtk中(getAtk中()-get暴风之剑atk()-get十字镐atk()); setBj中(get无尽之刃bj()-get灵巧披风bj());  
			  					setJq中(getJq中()-get无尽之刃()+get灵巧披风()+get暴风之剑()+get十字镐());}
			  				 else if(bf>0&&szg>0) {bf--;szg--; setAtk中(getAtk中()+get无尽之刃atk()-get暴风之剑atk()-get十字镐atk());setBj中(get无尽之刃bj()); setJq中(getJq中()-get无尽之刃()+get暴风之剑()+get十字镐());} 	
			  				 else if(bf>0&&lqpf>0){bf--;lqpf--;setAtk中(getAtk中()+get无尽之刃atk()-get暴风之剑atk()); setBj中(get无尽之刃bj()-get灵巧披风bj()); setJq中(getJq中()-get无尽之刃()+get灵巧披风()+get暴风之剑());}
			  				 else if(szg>0&&lqpf>0){szg--;lqpf--;setAtk中(getAtk中()+get无尽之刃atk()-get十字镐atk()); setBj中(get无尽之刃bj()-get灵巧披风bj()); setJq中(getJq中()-get无尽之刃()+get灵巧披风()+get十字镐());}
			  				 else if(bf>0) {bf--; setAtk中(getAtk中()+get无尽之刃atk()-get暴风之剑atk()); setBj中(get无尽之刃bj()); setJq中(getJq中()-get无尽之刃()+get暴风之剑());}
			  				 else if(szg>0){szg--; setAtk中(getAtk中()+get无尽之刃atk()-get十字镐atk()); setBj中(get无尽之刃bj()); setJq中(getJq中()-get无尽之刃()+get十字镐());}
			  				 else if(lqpf>0){lqpf--; setAtk中(getAtk中()+get无尽之刃atk()); setBj中(get无尽之刃bj()-get灵巧披风bj()); setJq中(getJq中()-get无尽之刃()+get灵巧披风());}
			  				 else { setAtk中(getAtk中()+get无尽之刃atk()); setBj中(get无尽之刃bj()); setJq中(getJq中()-get无尽之刃());}  wj++;
			  				 System.out.println("您购买了无尽之刃          金币剩余"+getJq中()); 
	 						 System.out.println("攻击力加:"+get无尽之刃atk());
			  				}
			  else if(gj=='1'||gj=='2'||gj=='3'||gj=='4'||gj=='5'||gj=='6'||gj=='7'){System.out.println("您的余额不足请及时充值...");}
//			  else {System.err.println("不买装备请q键离开");}
	  }
	  
	  
	  
	  public void 购买防御类装备(){
		  
		  char gj=sc.next().charAt(0);
			 if(gj=='1'&&getJq中()>=get布甲()){ bj++; setHj中(getHj中()+get布甲hj()); setJq中(getJq中()-get长剑());
			     System.out.println("您用"+get布甲()+"金币购买了一件布甲        金币剩余"+getJq中());
			     System.out.println("护甲值加:"+get布甲hj());} 
			  else if(gj=='2'&&(getJq中()>=get锁子甲()||bj>0&&getJq中()>=(get锁子甲()-get布甲()))){ szj++; 
			  					if(bj>0){ bj--; setHj中(getHj中()+get锁子甲hj()-get布甲hj());setJq中(getJq中()-get锁子甲()+get布甲());
			  						System.out.println("您用"+(get锁子甲()-get布甲())+"金币购买了锁子甲              护甲值加:"+(get锁子甲hj()-get布甲hj()));}
			  				    else{ setHj中(getHj中()+get锁子甲hj()); setJq中(getJq中()-get锁子甲());
			  					System.out.print("您用"+get锁子甲()+"金币购买了锁子甲            护甲值加:"+get锁子甲hj());}	
								System.out.println("金币剩余:"+getJq中()); }  			 
			  else if(gj=='3'&&(getJq中()>=get反甲()||szj>0&&bj>0&&getJq中()>=(get反甲()-get锁子甲()-get布甲())||szj>0&&getJq中()>=(get反甲()-get锁子甲())
					  			||bj>1&&getJq中()>=(get反甲()-get布甲()*2)||bj>0&&getJq中()>=(get反甲()-get布甲())))
			  			{fj++; if(szj>0&&bj>0){szj--;bj--; setHj中(getHj中()+get反甲hj()-get锁子甲hj()-get布甲hj()); setJq中(getJq中()-get反甲()+get锁子甲()+get布甲());}
			  			  else if(szj>0){szj--;setHj中(getHj中()+get反甲hj()-get锁子甲hj()); setJq中(getJq中()-get反甲()+get锁子甲());}
			  			  else if(bj>1) {bj--;bj--;setHj中(getHj中()+get反甲hj()-get布甲hj()*2); setJq中(getJq中()-get反甲()+get布甲()*2);}
			  			  else if(bj>0) {bj--;setHj中(getHj中()+get反甲hj()-get布甲hj()); setJq中(getJq中()-get反甲()+get布甲());}
			  			  	else {setHj中(getHj中()+get反甲hj()); setJq中(getJq中()-get反甲());}
			  				
					           System.out.println("您用"+get反甲()+"金币购买了荆棘之甲          金币剩余"+getJq中());
					           System.out.println("护甲加:"+get反甲hj());}
			  else if(gj=='1'||gj=='2'||gj=='3'){System.out.println("您的余额不足请及时充值...");}
//			  else {System.err.println("不买装备请q键离开");}
	  			}
	  

	  
	  public void 饮血剑(){
		        System.out.println();
		        if(bf>0&&qz>0){System.out.println("              4.饮血剑("+(get饮血剑()-get吸血鬼节杖()-get暴风之剑())+")        ");}
		   else if(bf>0&&cj>0){System.out.println("              4.饮血剑("+(get饮血剑()-get长剑()-get暴风之剑())+")        ");}
		   else if(qz>0)      {System.out.println("              4.饮血剑("+(get饮血剑()-get吸血鬼节杖())+")        ");}	
		   else if(cj>0) 	  {System.out.println("              4.饮血剑("+(get饮血剑()-get长剑())+")        ");}
		   else if(bf>0) 	  {System.out.println("              4.饮血剑("+(get饮血剑()-get暴风之剑())+")        ");}			
		   else {System.out.println("              4.饮血剑("+get饮血剑()+")");}
		   System.out.println("                (攻击力+"+get饮血剑atk()+")");                    
		   System.out.println("                (吸血+"+get饮血剑xx()+"%)");
		   System.out.println("                 ^        ^                    ");
		   System.out.println("              ^              ^              ");
		   System.out.println("           ^                   ^            ");
		   System.out.print  ("      2.吸血鬼权杖("); if(cj>0){System.out.print(get吸血鬼节杖()-get长剑());}else{System.out.print(get吸血鬼节杖()+")");}
		   System.out.println("       3.暴风大剑("+get暴风之剑()+")"); 
		   System.out.println("        (攻击力+"+get吸血鬼节杖atk()+")"+"             攻击力+("+get暴风之剑atk()+")");             
		   System.out.println("        (吸血+"+get吸血鬼节杖xx()+"%)");
		   System.out.println("           ^               ");
		   System.out.println("           ^               ");
		   System.out.println("           ^               ");
		   System.out.println("      1.长剑("+get长剑()+")");
		   System.out.println("       (攻击力+"+get长剑atk()+")");
		   System.out.println("请输入武器前的序号来选择你所购买的装备:");
		   System.out.println("其余任意键返回主菜单");
		   
	  		}
	  
	  
	  
	   public  void  无尽之刃(){
			System.out.println();
		   if(bf>0){ if(szg>0){if(lqpf>0){System.out.println("                 7.无尽之刃("+(get无尽之刃()-get暴风之剑()-get十字镐()-get灵巧披风())+")        ");}
		   					   else { {System.out.println("                 7.无尽之刃("+(get无尽之刃()-get暴风之剑()-get十字镐())+")        ");}}
		   			 }else {if(lqpf>0){System.out.println("                 7.无尽之刃("+(get无尽之刃()-get暴风之剑()-get灵巧披风())+")        ");}
		   			 		else {System.out.println("                 7.无尽之刃("+(get无尽之刃()-get暴风之剑())+")        ");} }
		   }else if(szg>0){if(lqpf>0){System.out.println("                 4.无尽之刃("+(get无尽之刃()-get十字镐()-get灵巧披风())+")        ");}
		   				   else {System.out.println("                 7.无尽之刃("+(get无尽之刃()-get十字镐())+")        ");}
		   }else if(lqpf>0){System.out.println("                 7.无尽之刃("+(get无尽之刃()-get灵巧披风())+")        ");
		   }else {System.out.println("                 7.无尽之刃("+get无尽之刃()+")        ");} 
				  System.out.println("                   (攻击力+"+get无尽之刃atk()+")");
				  System.out.println("                   (暴击+"+get无尽之刃bj()+"%)");
				  System.out.println("                    ^    ^    ^                      ");
				  System.out.println("                  ^      ^      ^                    ");
				  System.out.println("                ^        ^        ^                  ");
				  System.out.println("              ^          ^          ^                ");
				  System.out.println("            ^            ^            ^              ");
				  System.out.println("         ^               ^              ^            ");
				  System.out.println(" 3.暴风之剑("+get暴风之剑()+")"+"   5.十字镐("+get十字镐()+")"+"    6.灵巧披风("+get灵巧披风()+")");
				  System.out.println("   (攻击力+"+get暴风之剑atk()+")"+"       (攻击力+"+get十字镐atk()+")"+"      (暴击率+"+get灵巧披风bj()+"%)");   
	   
	   }
	   
	   
	   public void 荆棘之甲(){
	        System.out.println();
	   		if(bj>0&&szj>0){System.out.println("              3.荆棘之甲("+(get反甲()-get锁子甲()-get布甲())+")        ");}
	   else if(bj>1) {System.out.println("              3.荆棘之甲("+(get反甲()-get布甲()*2)+")        ");}
	   else if(szj>0){System.out.println("              3.荆棘之甲("+(get反甲()-get锁子甲())+")        ");}	
	   else if(bj>0) {System.out.println("              3.荆棘之甲("+(get反甲()-get布甲())+")        ");;}
	   else {System.out.println("              3.荆棘之甲("+get反甲()+")        ");;}
	   System.out.println("                (护甲值+"+get反甲hj()+")");                    
	   System.out.println("                (被动见上文)");
	   System.out.println("                 ^        ^                    ");
	   System.out.println("              ^              ^              ");
	   System.out.println("           ^                   ^            ");
	   System.out.print  ("      2.锁子甲("); if(bj>0){System.out.print(get锁子甲()-get布甲());}else{System.out.print(get锁子甲()+")");}
	   System.out.println("        1.布甲("+get布甲()+")"); 
	   System.out.println("       (护甲值+"+get锁子甲hj()+")"+"          (护甲值+"+get布甲hj()+")");             
	   System.out.println("           ^               ");
	   System.out.println("           ^               ");
	   System.out.println("           ^               ");
	   System.out.println("      1.布甲("+get布甲()+")");
	   System.out.println("      (护甲值+"+get布甲hj()+")");
	   System.out.println("请输入武器前的序号来选择你所购买的装备:");
	   System.out.println("其余任意键返回主菜单");
 		}
	   
	   
	  
	  
}

PK.java


import java.util.Scanner;
	public class PK {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int x=0;             /*选择英雄*/
		对战    pk=new 对战();
		pk.登陆();
		System.out.println("*****德玛西亚之力PK德玛西亚皇子*****");
		System.out.println("**德玛: 生命值2800血       魔法值:160          攻击力60**");
	    System.out.println("**皇子: 生命值2500血       魔法值:160          攻击力70**");
		System.out.println("德玛初始 金币:  2300         皇子剩余金币:  2300");
		System.out.println("*****游戏说明*****");
		System.out.println("*****游戏说明*****");
	    System.out.println("请选择人物:      1 德玛           2 皇子");
	    System.out.println("规则:先选人物后攻击");	
	     do{ char xz=sc.next().charAt(0); 
        if(xz=='1'){System.out.println(">>>>>人在塔在<<<<<<");x=2;}
          else if(xz=='2'){System.out.println(">>>>>德玛西亚永世长存<<<<<	");x=1;}
          else {System.out.println("请用人类的思维选择英雄......");
          	   System.out.println("选择德玛请按  1   选择皇子请按  2");
          	   System.out.println(" 回车键确定......");}
	        }while(x!=1&&x!=2);
	 while(pk.getHP1()>0&&pk.getHP2()>0){
	  switch(x){
		 case 1: pk.德玛攻击(); if(pk.皇子是否阵亡()){break;}  
 		 case 2: pk.皇子攻击(); if(pk.德玛是否阵亡()){break;} x=1;  
 		    
	         }
	     
	 		}
	
	}

}

编译

这里我是在Linux中搭建的java运行环境,可以在win中使用,都是一样的。我讲编码格式改成了【UTF-8】的了,通用的。

javac PK.java

编辑

总结:

整个游戏编码是在刚刚学完javaOOP的时候写的,对于面向对象的理解还不是非常的充分,其实很多地方都是可以优化的,那么这个问题就交给大家了,可以优化的更加简短合适。 

JAVA_OOP:

封装:

1. 将不需要对外提供的内容都隐藏起来;

2. 把属性都隐藏,提供公共方法对其访问。

继承:

使用继承时,相当于创建了一个新类。这个新类不仅包含了现有类型的所有成员(尽管private 成员被隐藏起来,且不能访问),但更重要的是,它复制了基础类的接口。也就是说,可向基础类的对象发送的所有消息亦可原样发给衍生类的对象。根据可以发送的消息,我们能知道类的类型。这意味着衍生类具有与基础类相同的类型!为真正理解面向对象程序设计的含义,首先必须认识到这种类型的等价关系。

多态:

多态是同一个行为具有多个不同表现形式或形态的能力,多态就是同一个接口,使用不同的实例而执行不同操作,多态性是对象多种表现形式的体现。

多态的优点:

  • 1. 消除类型之间的耦合关系
  • 2. 可替换性
  • 3. 可扩充性
  • 4. 接口性
  • 5. 灵活性
  • 6. 简化性

多态存在的三个必要条件:

  • 继承
  • 重写
  • 父类引用指向子类对象

当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。