各位网友们好,相信很多人对java小游戏完整代码都不是特别的了解,因此呢,今天就来为大家分享下关于java小游戏完整代码以及java小游戏代码简单的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
本文目录一览
1、求一个简单又有 的JAVA小游戏代码
2、求java小游戏源代码
求一个简单又有 的JAVA小游戏代码
具体如下:
连连看的小源码
package Lianpankan;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
pubpc class panpankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组
JButton exitButton,resetButton,newlyButton; //退出,重列,重新开始按钮
JLabel fractionLable=new JLabel("0"); //分数标签
JButton firstButton,secondButton; //
分别记录两次62616964757a686964616fe59b9ee7ad9431333335326239被选中的按钮
int grid[][] = new int[8][7];//储存游戏按钮位置
static boolean pressInformation=false; //判断是否有按钮被选中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,vapdateLV; //游戏按钮的位置坐标
int i,j,k,n;//消除方法控制
代码(code)是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。
对于字符和Unicode数据的位模式的定义,此模式代表特定字母、数字或符号(例如 0x20 代表一个空格,而 0x74 代表字符“t”)。一些数据类型每个字符使用一个字节;每个字节可以具有 256 个不同的位模式中的一个模式。
在计算机中,字符由不同的位模式(ON 或 OFF)表示。每个字节有 8 位,这 8 位可以有 256 种不同的 ON 和 OFF 组合模式。对于使用 1 个字节存储每个字符的程序,通过给每个位模式指 字符可表示最多 256 个不同的字符。2 个字节有 16 位,这 16 位可以有 65,536 种唯一的 ON 和 OFF 组合模式。使用 2 个字节表示每个字符的程序可表示最多 65,536 个字符。
单字节代码页是字符定义,这些字符映射到每个字节可能有的 256 种位模式中的每一种。代码页定义大小写字符、数字、符号以及 !、@、#、% 等特殊字符的位模式。每种欧洲语言(如德语和西班牙语)都有各自的单字节代码页。
虽然用于表示 A 到 Z 拉丁字母表字符的位模式在所有的代码页中都相同,但用于表示重音字符(如"é"和"á")的位模式在不同的代码页中却不同。如果在运行不同代码页的计算机间交换数据,必须将所有字符数据由发送计算机的代码页转换为接收计算机的代码页。如果源数据中的扩展字符在接收计算机的代码页中未定义,那么数据将丢失。
如果某个数据库为来自许多不同 的客户端提供服务,则很难为该数据库选择这样一种代码页,使其包括所有客户端计算机所需的全部扩展字符。而且,在代码页间不停地转换需要花费大量的处理时间。
求java小游戏源代码
import java.applet.Applet;import java.applet.AudioCpp;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import javax.sound.sampled.AudioFileFormat;import javax.sound.sampled.AudioSystem;import javax.swing.JFrame;import javax.swing.JPanel;import java.awt.Rectangle;import javax.swing.BorderFactory;import javax.swing.JButton;import javax.swing.JOptionPane;import javax.swing.JSpder;import javax.swing.JLabel;import javax.swing.SwingUtipties;import javax.swing.UIManager;import javax.swing.event.ChangeEvent;import javax.swing.event.ChangeListener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.io.File;import java.util.Vector;
pubpc class Frame extends JFrame implements Runnable {JPanel contentPane;
JPanel jPanel1 = new JPanel();
JButton jButton1 = new JButton();
JSpder jSpder1 = new JSpder();
JLabel jLabel1 = new JLabel();
JButton jButton2 = new JButton();
JLabel jLabel2 = new JLabel();
int count = 1, rapidity = 80; // count 当 行的个数, rapidity 游标的位置
int zhengque = 0, cuowu = 0;
int rush[] = { 10 ,20 ,30 }; //游戏每关的个数 可以自由添加.列 { 10 ,20 ,30 ,40,50}
int rush_count = 0; //记录关数
char pst[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; //随机出现的数字 可以自由添加
Vector number = new Vector();
String paiduan = "true";
AudioCpp Musci_anjian, Music_shibai, Music_chenggong;
pubpc Frame() { try { setDefaultCloseOperation(EXIT_ON_CLOSE); // 声音文件 Musci_anjian = Applet.newAudioCpp(new File("sounds//anjian.wav") .toURL()); Music_shibai = Applet.newAudioCpp(new File("sounds//shibai.wav") .toURL()); Music_chenggong = Applet.newAudioCpp(new File( "sounds//chenggong.wav").toURL()); // jbInit(); } catch (Exception exception) { exception.printStackTrace(); }}
/*** Component initiapzation.* * @throws java.lang.Exception*/private void jbInit() throws Exception { contentPane = (JPanel) getContentPane(); contentPane.setLayout(null); setSize(new Dimension(588, 530)); setTitle("Frame Title"); jPanel1.setBorder(BorderFactory.createEtchedBorder()); jPanel1.setBounds(new Rectangle(4, 4, 573, 419)); jPanel1.setLayout(null); jButton1.setBounds(new Rectangle(277, 442, 89, 31)); jButton1.setText("开始"); jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this)); jSpder1.setBounds(new Rectangle(83, 448, 164, 21)); jSpder1.setMaximum(100); jSpder1.setMinimum(1); jSpder1.setValue(50); jLabel1.setText("速度"); jLabel1.setBounds(new Rectangle(35, 451, 39, 18)); jButton2.setBounds(new Rectangle(408, 442, 89, 31)); jButton2.setText("结束"); jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this)); jLabel2.setText("第一关 100个"); jLabel2.setBounds(new Rectangle(414, 473, 171, 21)); contentPane.add(jPanel1); contentPane.add(jButton2); contentPane.add(jButton1); contentPane.add(jSpder1); contentPane.add(jLabel1); contentPane.add(jLabel2); this.addKeyListener(new MyListener()); jButton1.addKeyListener(new MyListener()); jSpder1.addKeyListener(new MyListener()); jSpder1.addChangeListener(new ChangeListener() { pubpc void stateChanged(ChangeEvent e) { rapidity = jSpder1.getValue(); } });}
pubpc void run() { number.clear(); zhengque = 0; cuowu = 0; paiduan = "true"; while (count <= rush[rush_count]) { try { Thread t = new Thread(new Tthread()); t.start(); count = 1; Thread.sleep(1000 (int) (Math.random() * 2000)); // 生产下组停顿时间 // 最快1快.最慢2秒 } catch (InterruptedException e) { e.printStackTrace(); } }
while (true) { // 等待最后一个字符消失 if (number.size() == 0) { break; } }
if (zhengque == 0) { // 为了以后相除..如果全部正确或者错误就会出现错误. 所以.. zhengque = 1; } if (cuowu == 0) { cuowu = 1; }
if (paiduan.equals("true")) { // 判断是否是自然结束 if (zhengque / cuowu >= 2) { JOptionPane.showMessageDialog(null, "恭喜你过关了"); rush_count = 1; // 自动加1关 if (rush_count < rush.length) { if (rapidity > 10) { // 当速度大于10的时候在 5提加速度.怕速度太快 rapidity = 5; // 速度自动减10毫秒 jSpder1.setValue(rapidity); // 选择位置 } Thread t = new Thread(this); t.start(); } else { JOptionPane.showMessageDialog(null, "牛B...你通关了.."); rush_count = 0; count = 0; } } else { JOptionPane.showMessageDialog(null, "请再接再励"); rush_count = 0; count = 0; } } else { rush_count = 0; count = 0; }}
pubpc void jButton1_actionPerformed(ActionEvent e) { Thread t = new Thread(this); t.start();}
pubpc void jButton2_actionPerformed(ActionEvent e) { count = rush[rush_count] 1; paiduan = "flase";}
class Tthread implements Runnable { pubpc void run() { boolean fo = true; int Y = 0, X = 0; JLabel show = new JLabel(); show.setFont(new java.awt.Font("宋体", Font.PLAIN, 33)); jPanel1.add(show); X = 10 (int) (Math.random() * 400); String parameter = pst[(int) (Math.random() * pst.length)] ""; Bean bean = new Bean(); bean.setParameter(parameter); bean.setShow(show); number.add(bean); show.setText(parameter); while (fo) { // 数字下移 show.setBounds(new Rectangle(X, Y = 2, 33, 33)); try { Thread.sleep(rapidity); } catch (InterruptedException e) { e.printStackTrace(); } if (Y >= 419) { fo = false; for (int i = number.size() 1; i >= 0; i ) { Bean bn = ((Bean) number.get(i)); if (parameter.equalsIgnoreCase(bn.getParameter())) { cuowu = 1; jLabel2.setText("正确 " zhengque "个,错误 " cuowu "个"); number.removeElementAt(i); Music_shibai.play(); break; } } } }
}}
class MyListener extends KeyAdapter { pubpc void keyPressed(KeyEvent e) { String uu = e.getKeyChar() ""; for (int i = 0; i < number.size(); i ) { Bean bean = ((Bean) number.get(i)); if (uu.equalsIgnoreCase(bean.getParameter())) { zhengque = 1; number.removeElementAt(i); bean.getShow().setVisible(false); jLabel2.setText("正确 " zhengque "个,错误 " cuowu "个"); Music_chenggong.play(); break; } }
Musci_anjian.play(); }}
pubpc static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception exception) { exception.printStackTrace(); } Frame frame = new Frame(); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } frame.setLocation((screenSize.width frameSize.width) / 2, (screenSize.height frameSize.height) / 2); frame.setVisible(true);}}
class Frame1_jButton2_actionAdapter implements ActionListener {private Frame adaptee;
Frame1_jButton2_actionAdapter(Frame adaptee) { this.adaptee = adaptee;}
pubpc void actionPerformed(ActionEvent e) { adaptee.jButton2_actionPerformed(e);}}
class Frame1_jButton1_actionAdapter implements ActionListener {private Frame adaptee;
Frame1_jButton1_actionAdapter(Frame adaptee) { this.adaptee = adaptee;}
pubpc void actionPerformed(ActionEvent e) { adaptee.jButton1_actionPerformed(e);}}
class Bean {String parameter = null;
JLabel show = null;
pubpc JLabel getShow() { return show;}
pubpc void setShow(JLabel show) { this.show = show;}
pubpc String getParameter() { return parameter;}
pubpc void setParameter(String parameter) { this.parameter = parameter;}}