相关疑难解决方法(0)

具有复杂形状的碰撞检测

我想制作一个从图像中加载每个级别的游戏.我想在Photoshop中绘制整个关卡,然后将其设置为背景并允许玩家走过它.我希望另一个不可见的图像越过顶部,在我想要碰撞的所有地方都是黑色的.

我之所以不想使用瓷砖,这对于矩形碰撞更容易,因为会有复杂的角落而不是一切都是矩形的.

这是一个好主意,是否可以轻松完成?这会是一个大CPU占用还是有更好的方法来做到这一点?

水平图像

水平图像

障碍物以红色显示

红色的障碍

java image awt java-2d collision

22
推荐指数
1
解决办法
8763
查看次数

有没有办法将MouseListener添加到Graphic对象?

有没有办法将MouseListener添加到Graphic对象.
我有这个简单的GUI绘制椭圆形.
我想要的是当用户点击椭圆时处理事件

import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.*;

public class Gui2 extends JFrame {
 JFrame frame = new JFrame();
 MyDrawPanel drawpanel = new MyDrawPanel();

 public static void main(String[] args) {
  Gui2 gui = new Gui2();
  gui.go();
 }

 public void go() {

  frame.getContentPane().add(drawpanel);
  // frame.addMouseListener(this);

  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  frame.setSize(300, 300);
  frame.setVisible(true);

 }

}

class MyDrawPanel extends JComponent implements MouseListener {

 public void paintComponent(Graphics g) {

  int red = (int) (Math.random() * 255);
  int green = (int) (Math.random() * 255);
  int …
Run Code Online (Sandbox Code Playgroud)

java swing mouselistener

17
推荐指数
1
解决办法
3万
查看次数

标签 统计

java ×2

awt ×1

collision ×1

image ×1

java-2d ×1

mouselistener ×1

swing ×1