以下是一个简单的实现大鱼吃小鱼游戏的 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) {
        // 实现移动、生成小鱼等逻辑
    }
}

这个程序创建了一个窗口,窗口上方显示分数和大小的标签。当鼠标左键点击窗口右下角区域时,大鱼吃掉小鱼,得分和大小增加。当鼠标点击窗口其他区域时,游戏结束,弹出对话框显示最终得分,并退出程序。

你可以根据需要进一步完善游戏逻辑,比如添加更多的小鱼、添加障碍物等。

Java 大鱼吃小鱼游戏代码实现 - 简单易懂

原文地址: https://www.cveoy.top/t/topic/pj78 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录