我正在与LibGdx
建立一个纸牌游戏。我是libgdx的新手,已经阅读了所有教程和LibGdx的DragAndDrop
测试类,但我无法弄清楚如何为我的游戏实现dragAndDrop?
用户手中的牌是来源,当用户拖到桌面上时,当放在牌桌上的相应牌上时,如果牌是有效目标,则必须根据牌值进行计算,如果不是拖动的卡片应添加到桌卡中并成为新的目标。这些卡都是图像。这是我到目前为止所做的,但是当运行时,源卡向右滑动而不是被拖动。
有人可以帮我解决这个问题吗?
DragAndDrop dragNdrop = new DragAndDrop();
dragNdrop.addSource(new Source(userCard1)
{
@Override
public Payload dragStart(InputEvent event, float x,
float y,int pointer)
{
Payload payload = new Payload();
payload.setObject(userCard1);
payload.setDragActor(userCard1);
if(userhand.getCard(0).getValue() +
maidaanhand.getCard(0).getValue() == 11)
{
payload.setValidDragActor(maidaanCard1);
}
return payload;
}
});
dragNdrop.addTarget(new Target(maidaanCard1)
{
@Override
public boolean drag(Source source, Payload payload,
float x, float y, int pointer)
{
getActor();
return true;
}
@Override
public void drop(Source source, Payload payload,
float x, float y, int pointer)
{
if(userhand.getCard(0).getValue() +
maidaanhand.getCard(0).getValue() == 11)
{
userScore = 10;
}
}
});
答案 0 :(得分:0)
您可以使用(实现)手势监听器界面:
..并使用pan()
和panStop()
方法分别跟踪拖放。