我正在尝试使用移动方法来移动单位,但我被卡住了。假设我在位置(3,1)有一个单位,我想将它移动到位置(4,1)。如何实现该方法?到目前为止,我有下面的代码。(我有一个代表单位的类,但我希望 moveUnit 在另一个类中(它现在在哪里),它处理这些东西)。谢谢
public boolean moveUnit( Position from, Position to ) {
return false;
}
关于 Position 方法,它的使用如下所示,其中我有一个使用 JUnit 的带有测试用例的类
@Test
public void shouldBePossibleToMoveUnits() {
Unit u = game.getUnitAt(new Position(2, 0));
boolean moved = game.moveUnit(new Position(2, 0), new Position(3, 0));
assertTrue("It should be possible to move units", moved);
assertNotNull("There should be a unit at 3, 0", u);
}
- - - - - - - - - - - - - - - - - - -更新 - - - - - - ------------------
我已经编写了这段代码来移动设备,但它不起作用。有人可以看到我做错了什么吗?
Unit unitFrom = ((UnitImpl) getUnitAt(from));
if(unitFrom == null) { return false; }
Unit unitTo = ((UnitImpl) getUnitAt(to));
unitFrom = unitTo;
unitFrom = null;
设备没有移动到新位置