虚拟人生游戏

package xuni;

import java.util.Scanner;

public class Game {

    Player player;

    String[] ops = {"打工中心","我的小窝","你好商店","恢复体力","查看状态"};

    boolean flag = false;

    /**

     * 初始化的方法

     */

    public void initial(){

        player = new Player();

        System.out.println("请输入你的昵称:");

        Scanner input = new Scanner(System.in);

        player.name = input.next();

    }

    /**

     * 主菜单的操作控制方法

     */

    public void startGame(){

        Room room = new Room();

        Shop shop=new Shop();

        do {

            Scanner input = new Scanner(System.in);

            System.out.println("*************【虚拟人生】**************");

            System.out.println("**********玩家可选操作列表**************");

            for (int i = 0; i < ops.length; i++) {

                System.out.println("\t\t\t" + (i + 1) + "." + ops[i]);

            }

            System.out.println("\t\t\t"+(ops.length+1)+".中止游戏");

            String xuan = null;

            do {

                System.out.println("请输入你的选择:");

                xuan = input.next();

                switch (xuan){

                    case "1":

                        System.out.println("*******************欢迎来到【打工中心】********************");

                        player.doWork();

                        break;

                    case "2":

                        System.out.println("*******************欢迎回到【我的小窝】********************");

                            room.showRoomStatus();

                        if (room.furnitures == null) {

                            player.goShopping(room, shop);

                        }

                        break;

                    case "3":

                        System.out.println("*******************欢迎来到【你好商店】********************");

                        player.goShopping(room,shop);

                     

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
Java射击小游戏代码可以通过使用Java编程语言来实现。该游戏的目标是让玩家用一个虚拟的枪击中移动的目标。 以下是可用于实现Java射击小游戏的代码示例: /** * 射击游戏 - Java代码示例 */ import java.awt.EventQueue; import java.awt.Graphics; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.image.BufferedImage; import java.util.Random; import javax.swing.JFrame; public class ShootingGame extends JFrame { private static final long serialVersionUID = 1470871033156271241L; private static final int WIDTH = 600; private static final int HEIGHT = 400; private BufferedImage buffer; private Graphics bufferGraphics; private Random random = new Random(); private int score; public ShootingGame() { setTitle("Shooting Game"); setSize(WIDTH, HEIGHT); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); buffer = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); bufferGraphics = buffer.getGraphics(); addMouseMotionListener(new MouseAdapter() { @Override public void mouseMoved(MouseEvent e) { bufferGraphics.clearRect(0, 0, WIDTH, HEIGHT); bufferGraphics.drawString("Score: " + score, WIDTH - 100, 20); bufferGraphics.fillRect(e.getX() - 10, 360, 20, 20); repaint(); } }); addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { int targetX = random.nextInt(WIDTH); int targetY = random.nextInt(300); if (e.getY() >= targetY && e.getY() <= targetY + 40) { score++; } bufferGraphics.clearRect(0, 0, WIDTH, HEIGHT); bufferGraphics.drawString("Score: " + score, WIDTH - 100, 20); bufferGraphics.fillRect(e.getX() - 10, 360, 20, 20); bufferGraphics.fillRect(targetX - 10, targetY, 20, 40); repaint(); } }); } @Override public void paint(Graphics g) { g.drawImage(buffer, 0, 0, this); } public static void main(String[] args) { EventQueue.invokeLater(() -> { new ShootingGame(); }); } } 以上代码中,我们创建了一个扩展了JFrame类的ShootingGame类,并在其中定义了游戏的主要游戏逻辑。随机的目标从屏幕的顶部向下移动,玩家需要在正确的时间射击目标以增加得分。在游戏的过程中,我们还记录玩家的分数,并在屏幕上显示。这段代码包括自定义的绘图和鼠标事件处理功能,以便将游戏显示在屏幕上,并接受玩家的输入。通过使用Java编写此类代码,我们可以构建一个简单而有趣的射击游戏,让用户积极参与。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值