我有一个游戏,其中包含一个篮子和水果落下的主要目的是抓住水果。我尝试获取水果的坐标和位置,但我无法让它工作。 有什么帮助吗?
这是我用来尝试获取坐标的代码,但由于.getMinX总是零和.getMinY,因此无法正常工作。我需要另一种获取协调或水果图像的方式。
public static void checkCollision(BufferedImage player)
{
double fruitOneLocation = image.getMinX() & image.getMinY();
double playerLocation = player.getMinX() & player.getMinY();
答案 0 :(得分:0)
如果您正在编写游戏,则您的玩家(和其他游戏对象)不能仅由图像对象表示。你应该为此编写自己的类。
以下是一个例子:
import java.awt.*;
public class Player {
//X- and Y-Coordinates
public int x,y;
//Player graphic
Image img=Toolkit.getDefaultToolkit().getImage("path.to.your.image.file");
public Player(){
}
//Rendering method
//You should call this in your frame class where you override paint(Graphics g)
//or paintComponent(Graphics g)
//
//like this: player.draw(g,this)
public void draw(Graphics g,JPanel jp){
//Draw the Image at the right position
g.drawImage(img,x,y,jp);
}
//Get X coordinate
public int getX(){
return x;
}
//Get Y coordinate
public int getY(){
return y;
}
//Update method
//You should call this in your game loop
public void update(){
//Handle button presses, collision testing or other stuff relating
//the player object here
}
}
如您所见,您可以直接访问和控制玩家的坐标。你应该为你的所有游戏对象写一个这样的类。