我正在使用Tiled地图在andEngine中开发游戏 在TMX地图中我有河对象,我希望玩家在落入河中后会死亡
但我不知道如何实现这个
我只能使用以下代码创建墙对象:
private void createUnwalkableObjects(TMXTiledMap map)
{
// Loop through the object groups
for(final TMXObjectGroup group: this.mTMXTiledMap.getTMXObjectGroups())
{
if(group.getTMXObjectGroupProperties().containsTMXProperty("wall", "true"))
{
// This is our "wall" layer. Create the boxes from it
for(final TMXObject object : group.getTMXObjects())
{
final Rectangle rect = new Rectangle(object.getX(), object.getY(),object.getWidth(), object.getHeight());
final FixtureDef boxFixtureDef = PhysicsFactory.createFixtureDef(0, 0, 1f);
PhysicsFactory.createBoxBody(mPhysicsWorld, rect, BodyType.StaticBody, boxFixtureDef);
rect.setVisible(false);
mScene.attachChild(rect);
}
}
}
}
提前致谢
答案 0 :(得分:1)
使用相同的代码。在TMX编辑器中,创建一个新图层并为其添加属性“危险”。然后,您可以在那里创建任何对象(例如,河牌上的矩形)。然后添加另一个if:
...
else if(group.getTMXObjectGroupProperties().containsTMXProperty("danger", "true"))
{
// This is layer with dangerous objects (river etc)
for(final TMXObject object : group.getTMXObjects())
{
// create sensor physics body and register collision detection
// on collision, make the user die
}
}