iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Java涂鸦跳跃游戏代码怎么写
  • 872
分享到

Java涂鸦跳跃游戏代码怎么写

Java 2024-02-29 19:02:40 872人浏览 泡泡鱼
摘要

以下是一个简单的Java涂鸦跳跃游戏代码示例: import java.awt.*; import java.awt.event.*

以下是一个简单的Java涂鸦跳跃游戏代码示例:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class DoodleJump extends JPanel implements ActionListener {
    private static final int WIDTH = 400;
    private static final int HEIGHT = 600;
    private static final int GROUND = 550;
    private static final int PLAYER_SIZE = 25;
    private static final int PLATFORM_WIDTH = 50;
    private static final int PLATFORM_HEIGHT = 10;
    private static final int PLATFORM_GAP = 200;
    private static final int PLATFORM_COUNT = 6;
    private static final int GRAVITY = 2;
    private static final int JUMP_HEIGHT = 30;

    private Timer timer;
    private int playerX;
    private int playerY;
    private int velocityY;
    private boolean isJumping;
    private Platform[] platforms;

    public DoodleJump() {
        setPreferredSize(new Dimension(WIDTH, HEIGHT));
        setBackground(Color.BLACK);
        setFocusable(true);
        addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
                if (e.geTKEyCode() == KeyEvent.VK_SPACE) {
                    if (!isJumping) {
                        isJumping = true;
                        velocityY = -JUMP_HEIGHT;
                    }
                }
            }
        });

        playerX = WIDTH / 2;
        playerY = GROUND;
        velocityY = 0;
        isJumping = false;

        platforms = new Platform[PLATFORM_COUNT];
        for (int i = 0; i < PLATFORM_COUNT; i++) {
            platforms[i] = new Platform((int) (Math.random() * (WIDTH - PLATFORM_WIDTH)), GROUND - i * PLATFORM_GAP);
        }

        timer = new Timer(10, this);
        timer.start();
    }

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);

        g.setColor(Color.WHITE);
        g.fillOval(playerX - PLAYER_SIZE / 2, playerY - PLAYER_SIZE / 2, PLAYER_SIZE, PLAYER_SIZE);

        for (Platform platform : platforms) {
            g.fillRect(platform.getX(), platform.getY(), PLATFORM_WIDTH, PLATFORM_HEIGHT);
        }
    }

    public void actionPerformed(ActionEvent e) {
        playerY += velocityY;

        if (isJumping) {
            velocityY += GRAVITY;
        }

        if (playerY > GROUND) {
            playerY = GROUND;
            velocityY = 0;
            isJumping = false;
        }

        for (Platform platform : platforms) {
            if (playerY + PLAYER_SIZE / 2 > platform.getY() && playerY + PLAYER_SIZE / 2 < platform.getY() + PLATFORM_HEIGHT
                    && playerX + PLAYER_SIZE / 2 > platform.getX() && playerX - PLAYER_SIZE / 2 < platform.getX() + PLATFORM_WIDTH) {
                playerY = platform.getY() - PLAYER_SIZE / 2;
                velocityY = 0;
                isJumping = false;
            }
        }

        for (Platform platform : platforms) {
            platform.setY(platform.getY() + GRAVITY);
            if (platform.getY() > HEIGHT) {
                platform.setY(platform.getY() - PLATFORM_GAP * PLATFORM_COUNT);
                platform.setX((int) (Math.random() * (WIDTH - PLATFORM_WIDTH)));
            }
        }

        repaint();
    }

    public static void main(String[] args) {
        JFrame frame = new JFrame("Doodle Jump");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(new DoodleJump());
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }

    private class Platform {
        private int x;
        private int y;

        public Platform(int x, int y) {
            this.x = x;
            this.y = y;
        }

        public int getX() {
            return x;
        }

        public int getY() {
            return y;
        }

        public void setX(int x) {
            this.x = x;
        }

        public void setY(int y) {
            this.y = y;
        }
    }
}

这是一个简单的涂鸦跳跃游戏,玩家通过控制跳跃的小涂鸦在不断生成的平台上往上跳跃。玩家按下空格键时,小涂鸦会向上跳跃,玩家需要控制小涂鸦跳到平台上,如果没有跳到平台上就会掉下来,游戏结束。平台会不断从上面生成,玩家需要不断跳跃上去,直到无法继续跳跃

--结束END--

本文标题: Java涂鸦跳跃游戏代码怎么写

本文链接: https://www.lsjlt.com/news/570920.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java涂鸦跳跃游戏代码怎么写
    以下是一个简单的Java涂鸦跳跃游戏代码示例: import java.awt.*; import java.awt.event.*...
    99+
    2024-02-29
    Java
  • 怎么用C++实现跳跃游戏
    这篇文章主要介绍“怎么用C++实现跳跃游戏”,在日常操作中,相信很多人在怎么用C++实现跳跃游戏问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用C++实现跳跃游戏”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-20
  • Python游戏代码怎么写
    这篇文章主要介绍“Python游戏代码怎么写”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python游戏代码怎么写”文章能帮助大家解决问题。1、吃金币源码分享:import osimpo...
    99+
    2023-06-29
  • 怎么用Python实现游戏添加跳跃功能
    本篇内容主要讲解“怎么用Python实现游戏添加跳跃功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python实现游戏添加跳跃功能”吧!设置跳跃状态变量你需要为你的 Player 类添...
    99+
    2023-06-16
  • Java实现贪吃蛇游戏代码怎么写
    以下是一个简单的Java实现贪吃蛇游戏的代码示例:```javaimport java.awt.*;import java.awt....
    99+
    2023-08-09
    Java
  • python射击游戏代码怎么写
    以下是一个简单的Python射击游戏代码示例:```pythonimport pygameimport random# 初始化pyg...
    99+
    2023-09-27
    python
  • python贪吃蛇游戏代码怎么写
    下面是一个简单的Python贪吃蛇游戏的代码示例:```pythonimport pygameimport random# 游戏窗口...
    99+
    2023-08-14
    python
  • Java实现三子棋小游戏的代码怎么写
    本篇内容主要讲解“Java实现三子棋小游戏的代码怎么写”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java实现三子棋小游戏的代码怎么写”吧!游戏操作如图示:原理:主要借助3x3的二维数组实现:...
    99+
    2023-06-30
  • java实现五子棋小游戏的代码怎么写
    这篇文章的内容主要围绕java实现五子棋小游戏的代码怎么写进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!讲解在第一步实现的基础上,添加游戏结束条件。...
    99+
    2023-06-26
  • Java实现猜数字小游戏代码怎么编写
    Java实现猜数字小游戏代码怎么编写,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。▲游戏规则:系统随机生成一个范围0&mdash;&mdash;...
    99+
    2023-06-26
  • Java实现俄罗斯方块游戏的代码怎么写
    本篇内容介绍了“Java实现俄罗斯方块游戏的代码怎么写”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!效果图这里界面做的感觉不是很好看,但我觉...
    99+
    2023-06-29
  • python制作小游戏的代码怎么写
    这篇文章主要介绍“python制作小游戏的代码怎么写”,在日常操作中,相信很多人在python制作小游戏的代码怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python制作小游戏的代码怎么写”的疑惑有所...
    99+
    2023-06-27
  • Java实现经典游戏飞机大战的代码怎么写
    这篇文章主要讲解了“Java实现经典游戏飞机大战的代码怎么写”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java实现经典游戏飞机大战的代码怎么写”吧!主要设计 用Swing库做可视化界面鼠...
    99+
    2023-06-29
  • Java实现马踏棋盘游戏算法的代码怎么写
    这篇文章主要介绍“Java实现马踏棋盘游戏算法的代码怎么写”,在日常操作中,相信很多人在Java实现马踏棋盘游戏算法的代码怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java实现马踏棋盘游戏算法的代码...
    99+
    2023-06-29
  • html跳转代码怎么写
    这篇文章主要介绍了html跳转代码怎么写,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。html有什么特点1、简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便,适...
    99+
    2023-06-14
  • 小程序游戏开发的代码怎么写
    今天小编给大家分享一下小程序游戏开发的代码怎么写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。  安装开发工具  前往 开发...
    99+
    2023-06-26
  • 怎么用java写小游戏
    要用Java写一个小游戏,你可以按照以下步骤进行:1. 确定游戏的主题和玩法。选择一个简单的游戏主题,例如猜数字、井字棋、贪吃蛇等。...
    99+
    2023-10-18
    java
  • android跳转代码怎么写
    在Android中,可以使用Intent来实现跳转功能。下面是一个示例代码,展示了如何在一个按钮点击事件中实现跳转到另一个Activ...
    99+
    2023-09-22
    android
  • python实现井字棋游戏的代码怎么写
    python实现井字棋游戏的代码怎么写,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。井字棋简介井字棋又称三子棋,英文名为Tic Tac Toe。具体玩法为在一个3x3的棋盘上,...
    99+
    2023-06-25
  • 怎么用Python代码编写记忆数独游戏
    这篇文章给大家介绍怎么用Python代码编写记忆数独游戏,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。前言freegames是Apache2许可的免费Python游戏集合,旨在用于教育和娱乐,完全是开源的,我们只要引用...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作