【问题标题】:Make Nifty GUI ScreenController swallow input让 Nifty GUI ScreenController 吞下输入
【发布时间】:2012-09-22 08:59:36
【问题描述】:

在我的 Slick2D 游戏中,我正在扩展 NiftyOverlayBasicGameState,使用 Nifty GUI 覆盖,并指定 PlainSlickInputSystem。对于大多数覆盖屏幕,我希望 Nifty GUI 忽略所有输入并将其传递给 GameState

对于一个特定的屏幕,我想阻止所有输入通过底层GameState - 但我只希望这发生在一个屏幕上,而不是所有屏幕上。

这可能使用 Nifty GUI,还是我采取了错误的方法?单个屏幕可以指定不同的输入处理行为吗?或者我应该使用一个单独的GameState 和一个不同的 Niftyu GUI 输入系统来处理我希望 Nifty GUI 处理输入的一个屏幕?

【问题讨论】:

    标签: java slick2d nifty-gui


    【解决方案1】:

    有多种选择。最基本的方法是拥有某种背景层并为其设置visibleToMouse="true"。这样,您的所有鼠标事件都将命中该层,并且鼠标事件将被标记为由 Nifty 处理。这应该可以防止事件被转发到GameState

    【讨论】:

      猜你喜欢
      • 2017-01-30
      • 2019-01-17
      • 1970-01-01
      • 2014-10-01
      • 2015-06-12
      • 1970-01-01
      • 2015-03-18
      • 1970-01-01
      • 2015-10-20
      相关资源
      最近更新 更多