java - Flappy Bird Pipes 如何在 Java 中随机化我用于学校的程序是 JGrasp
问题描述
在paint component.graphics g 中,我正在为我的飞扬小鸟游戏创建管道,但我不知道如何制作多个随机的管道。我已经将第一个随机化,但我不知道如何制作更多并将这些新的随机化。有谁知道我可以做到这一点的任何方法?
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
public class FlappyPanel extends JPanel
{
private static final int FRAME = 1000;
private static final Color BACKGROUND = new Color(135, 206, 235);
private static final Color GREEN = new Color(0, 255, 0);
private BufferedImage myImage;
private Graphics myBuffer;
private Polkadot pd;
private Timer t;
int top = (int)(Math.random()*1000/2);
int bot = (int)(Math.random()*1000/2);
int x = 1000;
int w = 20;
int speed = 1;
public FlappyPanel()
{
myImage = new BufferedImage(400, 400, 1);
myBuffer = this.myImage.getGraphics();
pd = new Polkadot(200, 200, 25, Color.black);
pd.jump(400, 400);
pd.setX(75);
pd.setY(200);
setFocusable(true);
t = new Timer(10, new Listener());
t.start();
addKeyListener(new Key());
setFocusable(true);
}
public void paintComponent(Graphics g)
{
g.drawImage(myImage, 0, 0, getWidth(), getHeight(), null);
g.setColor(GREEN);
g.drawRect(x, 0, w, top);
g.drawRect(x, 1000-bot, w, bot);
g.fillRect(x, 0, w, top);
g.fillRect(x, 1000-bot, w, bot);
}
private class Listener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
x -= speed;
myBuffer.setColor(BACKGROUND);
myBuffer.fillRect(0, 0, FRAME, FRAME);
if(pd.getY()+1 <= 400)
{
pd.setY(pd.getY()+1);
}
pd.draw(myBuffer);
repaint();
}
}
private class Key extends KeyAdapter
{
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode() == KeyEvent.VK_UP)//bumper2 goes up 30 pixels when UP arrow key is pressed
{
if(pd.getY()-1 >= 0){
pd.setY(pd.getY()-50);//stops pd from getting out of frame
}
}
}
}
}
解决方案
推荐阅读
- sql - 如何在sql中仅在公司中显示所有与以前工作不同的员工?
- ruby-on-rails - 如何在rails + bigquery中将excel文件解析为json格式
- android - ArCore Sceneform:需要一种方法来忽略渲染对象后面的片段
- wpf - WPF 样式化 DataGrid 标头
- opendj - opendj 控制面板 CertificateException
- python - 从 JSON 文件中删除项目 - Python
- pdf - 安装 PHP-GD 后生成的图像中的黑色文本
- react-native - Facebook like button iframe 在 react-native webview 上显得非常小
- python - Django ORM - 请检查这个多表关系查询我不确定我在这里缺少什么
- typescript - 在异步之前使用 mocha 共享行为