0

私の Slick2D ゲームではNiftyOverlayBasicGameState、Nifty GUI オーバーレイを使用して を拡張し、PlainSlickInputSystem. ほとんどのオーバーレイ画面では、Nifty GUI がすべての入力を無視してGameState.

ある特定の画面で、すべての入力が基になる画面に到達するのを防ぎたいのGameStateですが、これはすべての画面ではなく、1 つの画面でのみ発生するようにしたいと考えています。

これは Nifty GUI を使用して可能ですか、それとも間違ったアプローチを取っていますか? 個々の画面で異なる入力処理動作を指定できますか? または、代わりに、GameStateNifty GUI で入力を処理する 1 つの画面に対して、別の Niftyu GUI 入力システムを使用する別のシステムを使用する必要がありますか?

4

1 に答える 1

0

利用可能なオプションがいくつかあります。最も基本的なものは、ある種の背景レイヤーを用意して設定visibleToMouse="true"することです。このようにして、すべてのマウス イベントがそのレイヤーにヒットし、マウス イベントがNiftyによって処理されたものとしてマークされます。これにより、イベントが に転送されなくなりGameStateます。

于 2012-10-03T13:07:42.450 に答える