「java游戏程序代码」游戏编程java

博主:adminadmin 2022-12-13 21:18:06 57

今天给各位分享java游戏程序代码的知识,其中也会对游戏编程java进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

求java编写数字游戏程序代码

这个 是 DOS 界面的,下面还有一个applet的

import java.lang.Math;

import java.util.Scanner;

public class Test40 {

public static void main(String[] args) {

go();

}

private static void go() {//程序逻辑结构

int aa = (int) (Math.random() * 100); // create a number from 1 to 100

System.out.println("请输入一个数字:");

Scanner sc = new Scanner(System.in);

int count=0;//计数器,统计猜测次数

int guessnum = 0;

while(true){

guessnum = sc.nextInt();

if (guessnum aa) {

System.out.println("大了,请输入个小点的数字!");

}

if (guessnum aa) {

System.out.println("小了,请输入个大点的数字!");

}

if (guessnum == aa) {

System.out.println("恭喜你,猜对了!您一共猜了"+count+"次");

System.out.println("是否继续?Y/N");

String s=sc.next();

if("Y".equals(s)||"y".equals(s)){

System.out.println("程序已重新开始!");

go();

}else if("N".equals(s)||"n".equals(s)){

System.out.println("程序已关闭!");

System.exit(0);//退出程序

}

}

count++;

}

}

}

下面的是applet的

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

import java.util.Random;

public class Guess extends Applet implements ActionListener {

Panel p1, p2, p3, p4;

Button b1, b2;

Label l1, l2;

TextField t1;

TextArea t2;

int num;

public void init() {

setSize(230, 300);

setBackground(Color.pink);

l1 = new Label("这是一个猜数字程序(0-100)", Label.CENTER);

l2 = new Label("begin:");

t1 = new TextField(10);

t2 = new TextArea("", 10, 30);

b1 = new Button("猜测");

b2 = new Button("查看数字");

Random rand = new Random();

num = rand.nextInt(100);

add(l1);

add(l2);

add(t1);

add(t2);

add(b1);

add(b2);

b1.addActionListener(this);

b2.addActionListener(this);

}

public void actionPerformed(ActionEvent j) {

int n;

try {

if (j.getSource() == b1) {

String s;

s = String.valueOf(t1);

if (s.compareTo("1") 0 || s.compareTo("9") 0)

t2.setText("输入有误!\n请重新输入!");

n = Integer.parseInt(t1.getText());

if (n num)

t2.setText("小了,请输入个大点的数字");

else if (n num)

t2.setText("大了,请输入个小点的数字");

else {

t2.setText("恭喜你,猜对了");

Random rand1 = new Random();

num = rand1.nextInt(100);

}

}

if (j.getSource() == b2) {

t2.setText("" + num);

}

} catch (Exception e) {

}

}

}

求一个简单的JAVA游戏代码,100行左右,谢谢!

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Painter extends JFrame{

/**

*

*/

private static final long serialVersionUID = 8160427604782702376L;

CanvasPanel canvas = new CanvasPanel();;

public Painter() {

super("Star");

this.add(canvas);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.pack();

this.setResizable(false);

this.setLocationRelativeTo(null);

this.setVisible(true);

}

public static void main(String[] args) {

new Painter();

}

}

class CanvasPanel extends JPanel implements ActionListener{

/**

*

*/

private static final long serialVersionUID = -4642528854538741028L;

private JButton[] btn = new JButton[4];

private String[] btn_name = {"+", "-", "R", "L"};

private int center_x = 200, center_y = 200, radius = 100, degree = 0;

public CanvasPanel() {

this.setPreferredSize(new Dimension(400, 500));

this.setLayout(null);

for(int i = 0; i 4; i++) {

btn[i] = new JButton(btn_name[i]);

btn[i].setBounds(160 + i * 60, 425, 50, 50);

btn[i].addActionListener(this);

this.add(btn[i]);

}

}

@Override

public void paintComponent(Graphics g) {

super.paintComponent(g);

for(int i = 0; i 5; i++) {

g.drawLine( (int) (center_x + radius * Math.sin(Math.toRadians(degree + 72 * i))),

(int) (center_y - radius * Math.cos(Math.toRadians(degree + 72 * i))),

(int) (center_x + radius * Math.sin(Math.toRadians(degree + 72 * i + 144))),

(int) (center_y - radius * Math.cos(Math.toRadians(degree + 72 * i + 144))));

}

}

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(e.getActionCommand() == "+") {

if(radius 200)

radius += 2;

repaint();

} else if(e.getActionCommand() == "-") {

if(radius 0)

radius -= 2;

repaint();

} else if(e.getActionCommand() == "R") {

degree = (degree + 2) % 360;

repaint();

} else if(e.getActionCommand() == "L") {

degree = (degree - 2) % 360;

repaint();

}

}

}

几个Java小游戏代码

package reduce;

import java.applet.Applet;

import java.applet.AudioClip;

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.JSlider;

import javax.swing.JLabel;

import javax.swing.SwingUtilities;

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;

public class Frame extends JFrame implements Runnable {

JPanel contentPane;

JPanel jPanel1 = new JPanel();

JButton jButton1 = new JButton();

JSlider jSlider1 = new JSlider();

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 list[] = { '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";

AudioClip Musci_anjian, Music_shibai, Music_chenggong;

public Frame() {

try {

setDefaultCloseOperation(EXIT_ON_CLOSE);

//-----------------声音文件---------------------

Musci_anjian = Applet.newAudioClip(new File("sounds//anjian.wav")

.toURL());

Music_shibai = Applet.newAudioClip(new File("sounds//shibai.wav")

.toURL());

Music_chenggong = Applet.newAudioClip(new File(

"sounds//chenggong.wav").toURL());

//---------------------------------------

jbInit();

} catch (Exception exception) {

exception.printStackTrace();

}

}

/**

* Component initialization.

*

* @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));

jSlider1.setBounds(new Rectangle(83, 448, 164, 21));

jSlider1.setMaximum(100);

jSlider1.setMinimum(1);

jSlider1.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(jSlider1);

contentPane.add(jLabel1);

contentPane.add(jLabel2);

this.addKeyListener(new MyListener());

jButton1.addKeyListener(new MyListener());

jSlider1.addKeyListener(new MyListener());

jSlider1.addChangeListener(new ChangeListener() {

public void stateChanged(ChangeEvent e) {

rapidity = jSlider1.getValue();

}

});

}

public 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毫秒

jSlider1.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;

}

}

public void jButton1_actionPerformed(ActionEvent e) {

Thread t = new Thread(this);

t.start();

}

public void jButton2_actionPerformed(ActionEvent e) {

count = rush[rush_count] + 1;

paiduan = "flase";

}

class Tthread implements Runnable {

public 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 = list[(int) (Math.random() * list.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 {

public 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();

}

}

public 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;

}

public 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;

}

public void actionPerformed(ActionEvent e) {

adaptee.jButton1_actionPerformed(e);

}

}

class Bean {

String parameter = null;

JLabel show = null;

public JLabel getShow() {

return show;

}

public void setShow(JLabel show) {

this.show = show;

}

public String getParameter() {

return parameter;

}

public void setParameter(String parameter) {

this.parameter = parameter;

}

}

我只有一个打字母小游戏

关于java游戏程序代码和游戏编程java的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-13,除非注明,否则均为首码项目网原创文章,转载请注明出处。