Java 大鱼吃小鱼游戏代码实现 - 简单易懂
以下是一个简单的实现大鱼吃小鱼游戏的 Java 程序:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FishGame extends JFrame implements ActionListener {
private JLabel scoreLabel;
private JLabel sizeLabel;
private int score;
private int size;
public FishGame() {
setTitle('Fish Game');
setSize(800, 600);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
scoreLabel = new JLabel('Score: 0');
sizeLabel = new JLabel('Size: 1');
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
panel.add(scoreLabel);
panel.add(sizeLabel);
add(panel, BorderLayout.NORTH);
addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON1) {
if (e.getX() >= getWidth() / 2 && e.getY() >= getHeight() / 2) {
eatFish();
} else {
gameOver();
}
}
}
});
setVisible(true);
}
private void eatFish() {
score += 10;
size++;
scoreLabel.setText('Score: ' + score);
sizeLabel.setText('Size: ' + size);
}
private void gameOver() {
JOptionPane.showMessageDialog(this, 'Game Over!
Your final score is: ' + score);
System.exit(0);
}
public static void main(String[] args) {
new FishGame();
}
@Override
public void actionPerformed(ActionEvent e) {
// 实现移动、生成小鱼等逻辑
}
}
这个程序创建了一个窗口,窗口上方显示分数和大小的标签。当鼠标左键点击窗口右下角区域时,大鱼吃掉小鱼,得分和大小增加。当鼠标点击窗口其他区域时,游戏结束,弹出对话框显示最终得分,并退出程序。
你可以根据需要进一步完善游戏逻辑,比如添加更多的小鱼、添加障碍物等。
原文地址: https://www.cveoy.top/t/topic/pj78 著作权归作者所有。请勿转载和采集!