控制台小游戏 class YZDEL\r\n{\r\n public static void main(String[] args)\r\n {\r\njava.util.Random Shiji = new java.util.Random()\r\n java.util.Scanner Shuru = new java.util.Scanner(System.in)\r\n java.util.Scanner Nandu = new java.util.Scanner(System.in)\r\n int YingxHP = 20\r\n int YingxMP = 0\r\n int MogHP = 20\r\n int MogMP = 0\r\n int MogDo = 0\r\n int fangyu = 0\r\n System.out.println("┏━━━━_┏━━┣┣┓ _ ┓┏━┳━┳┓┓━┓ ")\r\n System.out.println("┏┣━━━┓┏━━┣┣┓ ┃┏ ┃ ┃┓┃ _ ")\r\n System.out.println("┣┣━━━┫_━━┻__ ┃_┓┃ ┃_┏━┣━━┓")\r\n System.out.println("┣┣━━━┫┏━━━━┓_━━┣━┛┗━┻━┻┛┃┃")\r\n System.out.println("┏┣━━━┓┣━━━━┫ ┃┃┃┗__┃┃┣━_")\r\n System.out.println(" ┛┗_┗━━━━_┗___━━┛┛┗━__━┛")\r\n System.out.println()\r\n System.out.println(" 作者:天狐空幻")\r\n System.out.println()\r\n System.out.println("说明:勇者的 *** 作方式为以下所示:")\r\n System.out.println(" 使用攻击需
消耗1MP 伤害1HP")\r\n System.out.println(" 使用蓄力可增加1MP 伤害0HP")\r\n System.out.println(" 使用躲闪需消耗0MP 伤害0HP 躲避攻击")\r\n System.out.println(" 使用重击需消耗3MP 伤害2HP 防御无效")\r\n System.out.println(" 恶龙攻击力高, 注意防御是取胜的关键")\r\n System.out.println(" 恶龙MP达到4时可能会放出火焰无法躲避")\r\n System.out.println(" 准备说明完毕,那么让我们来挑战恶龙吧!")\r\n System.out.println("==================================")\r\n //难度选择\r\n System.out.println("请选择难度")\r\n System.out.println("1.娱乐 2.挑战 3.噩梦")\r\n int ND = Nandu.nextInt()\r\n System.out.println("==================================")\r\n while(true) \r\n { \r\n //HP,MP的显示 \r\n System.out.print("勇者: ")\r\n System.out.print(" HP ")\r\n for(int x=YingxHPx>0x--) System.out.print("*")\r\n System.out.print(" "+YingxHP)\r\n System.out.println()\r\n System.out.print(" ")\r\n System.out.print(" MP ")\r\n for(int x=YingxMPx>0x--) System.out.print("*")\r\n System.out.print(" "+YingxMP)\r\n System.out.println()\r\n System.out.print("恶龙: ")\r\n System.out.print(" HP ")\r\n for(int y=MogHPy>0y--) System.out.print("*")\r\n System.out.print(" "+MogHP)\r\n System.out.println()\r\n System.out.print(" ")\r\n System.out.print(" MP ")\r\n for(int y=MogMPy>0y--) System.out.print("*")\r\n System.out.print(" "+MogMP)\r\n System.out.println()\r\n System.out.println("==================================")\r\n //胜利判定 \r\n if(YingxHP2&&MogMP>2) MogDo = 2\r\n else if(MogMP0) MogDo=2 \r\n if(Do==2&&MogMP==0) MogDo=0\r\n if(Do==3&&MogMP=4) MogDo=3}//变态判定。。 \r\n //战斗分析\r\n //防御 \r\n if(Do==3) {fangyu=1System.out.println("你灵巧的躲避攻击!")}\r\nif(MogDo==1) {fangyu=1System.out.println("恶龙进行防御!")}\r\n //角色判定 \r\n if(Do==1&&YingxMP==0) {System.out.println("MP不足!")}\r\n if(Do==1&&YingxMP>0) {\r\nif(fangyu==0) {MogHP=MogHP-1YingxMP=YingxMP-1System.out.println("你发动攻击!")}\r\nif(fangyu==1) {YingxMP=YingxMP-1System.out.println("你的攻击被格挡!")}} \r\n if(Do==2) {YingxMP=YingxMP+1System.out.println("你进行蓄力!")}\r\n if(Do==4&&YingxMP2) {MogHP=MogHP-2YingxMP=YingxMP-3System.out.println("你发动重击!")}\r\n if(Do>4) System.out.println("你不知所措...")\r\n //敌人判定 \r\n if(MogDo==2&&MogMP==0) {System.out.println("恶龙在发呆!")}\r\n if(MogDo==2&&MogMP>0) {\r\nif(fangyu==0) {YingxHP=YingxHP-2MogMP=MogMP-1System.out.println("恶龙发动攻击!")}\r\nif(fangyu==1) {MogMP=MogMP-1System.out.println("恶龙的攻击被躲开了!")}} \r\n if(MogDo==0) {MogMP=MogMP+1System.out.println("恶龙进行蓄力!")} \r\n if(MogDo==3&&MogMP3) {YingxHP=YingxHP-4MogMP=MogMP-4System.out.println("恶龙发动火焰吐吸!躲避不能!")} \r\n //结束 \r\n fangyu = 0\r\n MogDo = 0\r\n System.out.println("____________________")\r\n System.out.println()\r\n System.out.println("==================================") }\r\n }\r\n}
按照题目要求,人拿完火柴后计算机自动拿火柴,判断胜利者。鼠标点击ok或者键盘按enter键即可提交人拿的火柴个数。图形界面如下,
import java.awt.*
import java.awt.event.ActionListener
import java.awt.event.MouseAdapter
import java.awt.event.MouseEvent
import java.sql.PreparedStatement
import java.sql.ResultSet
import java.util.Random
import javax.swing.JOptionPane
import javax.swing.JFrame
import javax.swing.JButton
import javax.swing.JLabel
import javax.swing.JOptionPane
import javax.swing.JPanel
import javax.swing.JTextField
import javax.swing.JPasswordField
public class game extends javax.swing.JFrame implements ActionListener{
private JPanel frame
private JTextField pwd
private JTextField jLabel1
private JTextField jLabel2
private JButton bntOk
private JLabel l1
private JLabel l2
private JLabel l3
int total
public static void main(String[] args)
{
game ff=new game()
}
public game(){
initGUI()
Random r=new Random()
total=r.nextInt(100)
jLabel2.setText(String.valueOf(total))
this.setSize(500, 500)
this.setLocation(300, 400)
this.setLocationRelativeTo(null)
this.setVisible(true)
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
getRootPane().setDefaultButton(bntOk)
bntOk.addActionListener(this)
}
public void actionPerformed(java.awt.event.ActionEvent evt)
{
int a=Integer.parseInt(jLabel1.getText())
if((a>3)||(a==0)){
JOptionPane.showMessageDialog(game.this,"输入错误\n请重新输入")
return
}
total=total-a
jLabel2.setText(String.valueOf(total))
if(total<=0){
JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!")
return
}
Random r=new Random()
int b=r.nextInt(4)
while(b==0)
b=r.nextInt(4)
pwd.setText(String.valueOf(b))
total=total-b
jLabel2.setText(String.valueOf(total))
if(total<=0){
JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!")
}
}
private void initGUI(){
frame=new JPanel()
getContentPane().add(frame, BorderLayout.CENTER)
frame.setLayout(null)
bntOk =new JButton()
bntOk.setText("OK")
bntOk.setBounds(150, 200, 66, 30)
frame.add(bntOk)
jLabel2= new JTextField()
jLabel2.setBounds(150, 50, 100, 50)
frame.add(jLabel2)
l1=new JLabel()
l1.setText("火柴数量")
l1.setBounds(90, 50, 100, 50)
frame.add(l1)
jLabel1= new JTextField()
jLabel1.setText("")
jLabel1.setBounds(200,149, 77, 22)
frame.add(jLabel1)
l2=new JLabel()
l2.setText("我拿火柴")
l2.setBounds(100, 149, 77, 22)
frame.add(l2)
l3=new JLabel()
l3.setText("对方拿火柴")
l3.setBounds(100, 249, 77, 22)
frame.add(l3)
pwd = new JTextField()
pwd.setBounds(200, 249, 77, 22)
frame.add(pwd)
bntOk.addMouseListener(new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent e1) {
int a=Integer.parseInt(jLabel1.getText())
if((a>3)||(a==0)){
JOptionPane.showMessageDialog(game.this,"输入错误\n请重新输入")
return
}
total=total-a
jLabel2.setText(String.valueOf(total))
if(total<=0){
jLabel2.setText("0")
JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!")
return
}
Random r=new Random()
int b=r.nextInt(4)
while(b==0)
b=r.nextInt(4)
pwd.setText(String.valueOf(b))
total=total-b
jLabel2.setText(String.valueOf(total))
if(total<=0){
JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!")
}
}
}
)
}
}
评论列表(0条)