0

我正在为我的 Comp Sci 类使用 Gridworld api 开发一个基本 RPG,我的动作完全正常,但我想保持网格以主角为中心,这应该通过 GridPanel 中的重新定位方法完成,目前我正在使用我的自己的世界对象,因为这是在主要方法中声明的唯一东西,我应该能够从那里获取 DisplayPanel 对象,但我找不到这样做的方法。有人知道我如何获取当前 DisplayPanel 对象的实例吗?

4

1 回答 1

0

要使用您的方法调用 centerer() 方法,请ActorWorld执行以下操作:

ActorWorld world = new ActorWorld();
...
world.show();

WorldFrame frame = (WorldFrame) world.frame;
frame.display.recenter(/*Your Location*/);

可悲的是,它frame是私有的,因此您需要进入WorldFrame并将其声明为公开。如果您仍将其gridworld.jar用作外部资源,则需要将其所有包导入您自己的项目中。我在这里解释了。

如果您不知道recenter()实际上将左上角Location居中在Grid. 为此,您需要编辑(第 358 行)recenter()中的方法。GridPanel

希望这会有所帮助,如果您需要帮助从gridworld.jar.

于 2014-05-09T01:51:22.157 回答