我尝试连接到图像和对象之间的冲突,如何获取对象的位置以将其与角色进行比较? 我想知道是否有更方便的方式
答案 0 :(得分:0)
@Override
public void onPopulateScene(Scene pScene,
OnPopulateSceneCallback pOnPopulateSceneCallback) {
rec = new Sprite(100, 100, 80, 30, mGameBackgroundTextureRegion, mEngine.getVertexBufferObjectManager());
mScene.attachChild(rec);
mScene.setOnSceneTouchListener(this);
pOnPopulateSceneCallback.onPopulateSceneFinished();
Rectangle mRectangle = new Rectangle(400, 0, 500, 80, mEngine.getVertexBufferObjectManager());
mRectangle.setColor(0.0f, 1.0f, 0.0f);
mRectangle.setZIndex(0);
//Attach to the scene and the ShapeScrollContainer
mScene.attachChild(mRectangle);
Log.d("x = " + mRectangle.getX(), "x = " + mRectangle.getX());
Toast.makeText(this, "dfsdf", Toast.LENGTH_SHORT).show();
//mRectangle.setPosition(pX, pY)
// if(){
}
@Override
public void onResumeGame() {
super.onResumeGame();
}
@Override
public void onPauseGame() {
super.onPauseGame();
Log.d("Dfd","dfd");
}
@Override
public boolean onSceneTouchEvent(Scene pScene, TouchEvent pSceneTouchEvent) {
if(pSceneTouchEvent.isActionDown()){
rec.clearEntityModifiers();
MoveModifier move = new MoveModifier(1,rec.getX(),rec.getY(),pSceneTouchEvent.getX()
,pSceneTouchEvent.getY());
rec.registerEntityModifier(move);
int numx1 = 150;
int numx2 = 650;
int numy1 = 0;
int numy2 = 80;
if (rec.getX() >= numx1 && rec.getX() <= numx2 && rec.getY() >= numy1 && rec.getY() <= numy2 ){
Log.d("touched", "touched" + rec.getX() + " Y: " + rec.getY());
}