黑杰克游戏java代码 黑杰克单机( 二 )


btnStopCard.addActionListener(this);
btnExit=new JButton("退出游戏");
btnExit.setBounds(290, 400, 100, 30);
btnExit.addActionListener(this);
pnlMain.add(lblCarded);
pnlMain.add(lblCout);
pnlMain.add(lblZCarded);
pnlMain.add(lblZCout);
pnlMain.add(btnSend);
pnlMain.add(btnGetCard);
pnlMain.add(btnStopCard);
pnlMain.add(btnExit);
setSize(500,500);
setVisible(true);
setLocation(200,200);
setResizable(false);
}
public void GetRdm()
{
Random rdm=new Random();
a=Math.abs(rdm.nextInt())%13+1;
String strCardFile="images/"+String.valueOf(a)+".gif";
if(a10)
a=10;
lblCard=new JLabel(new ImageIcon(strCardFile),2);
th+=20;
lblCard.setBounds(th, 0, 72, 96);
pnlCard.add(lblCard);
}
public void ZGetRdm()
{
Random rdm2=new Random();
a2=Math.abs(rdm2.nextInt())%13+1;
String strZCardFile="images/"+String.valueOf(a2)+".gif";
if(a210)
a2=10;
lblZCard=new JLabel(new ImageIcon(strZCardFile),2);
Zth+=20;
lblZCard.setBounds(Zth, 0, 72, 96);
pnlZCard.add(lblZCard);
}
public void Send()
{
pnlCard.removeAll();
pnlZCard.removeAll();
Z=0;th=0;Zth=0;
s=a;
this.GetRdm();this.ZGetRdm();
lblCarded.setText("当前的牌:"+a);
lblCout.setText("当前点数:"+a);
lblZCarded.setText("庄家的牌:"+a2);
lblZCout.setText("庄家点数:"+a2);
s=a;s2=a2;
}
public void GetCard()
{
YorN=JOptionPane.showConfirmDialog(null, "选择“是”继续要牌,选择“否”结束要牌","你是否继续要牌?",JOptionPane.YES_NO_OPTION);
if(YorN==JOptionPane.OK_OPTION)
{
this.GetRdm();
s+=a;
lblCarded.setText("当前的牌:"+a);
lblCout.setText("当前点数:"+s);
if(s21)
JOptionPane.showMessageDialog(null, "你的点数大于21点 , 你爆了!");
}
}
public void ZGetCard()
{
YorN=JOptionPane.showConfirmDialog(null, "选择“是”继续要牌,选择“否”亮牌","庄家是否继续要牌?",JOptionPane.YES_NO_OPTION);
if(YorN==JOptionPane.OK_OPTION)
{
this.ZGetRdm();
s2+=a2;
lblZCarded.setText("庄家的牌:"+a2);
lblZCout.setText("庄家点数:"+s2);
if(s221)
JOptionPane.showMessageDialog(null, "庄家的点数大于21点,庄家爆了!");
}
}
public void StopCard()
{
pnlCard.removeAll();
lblCard=new JLabel(new ImageIcon("images/back.gif"));
lblCard.setBounds(0, 0, 72, 96);
pnlCard.add(lblCard);
JOptionPane.showMessageDialog(null, "你已结束要牌,庄家要牌!");
Z=1;
}
public void ZStopCard()
{
pnlCard.removeAll();
Z=0;
if(ss2)
JOptionPane.showMessageDialog(null, "你的点数大于庄家点数,你赢了!");
if(s==s2)
JOptionPane.showMessageDialog(null, "你的点数等于庄家点数,平局!");
if(ss2)
JOptionPane.showMessageDialog(null, "你的点数小于庄家点数,你输了!");
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btnSend)
this.Send();
if(e.getSource()==btnGetCard)
{
if(Z==0)
this.GetCard();
else
this.ZGetCard();
}
if(e.getSource()==btnStopCard)
{
if(Z==0)
this.StopCard();
else
this.ZStopCard();
}
if(e.getSource()==btnExit)
System.exit(0);
}
public static void main(String[] args)
{
new Game21();
}
}
我们java第一课的作业 , 这是我做的,给你参考一下吧
图片文件放在工程根目录下
口袋妖怪最后的火红黑杰克怎么玩?黑杰克又名BlackJack , 是有着悠久历史的一种扑克牌玩法 。起源于法国,该游戏由 2 到 6 个人玩,使用除大小王之外的52 张牌,游戏者的目标是使手中的牌的点数之和不超过 21 点且尽量大 。

推荐阅读