2014-03-04 40 views
0

我正在研究街头霸王游戏。我需要为用户设置一个角色选择屏幕。我如何在Java libGDX中做这个字符选择?这是我的图片代码。我可以使用ImageClick事件来做到这一点吗?Java中的图像点击事件LibGdx

splashTexture1 = new Texture(Gdx.files.internal("assets/gui/Character1.PNG")); 
splashTexture1.setFilter(TextureFilter.Linear, TextureFilter.Linear); 
splashSprite1 = new Sprite(splashTexture1);  
splashSprite1.setX(100); 
splashSprite1.setY(180); 

回答

0

你可以用两种方法做到这一点。我建议使用两者。

常用东西
您可以在屏幕中列出所有字符的图像。并让用户使用以下选项之一选择任何一个。

  1. Click事件
    每张图片都有一个单独的ClickListener(如果你有关于这个问题,你应该寻找“如何添加clicklisteners到libgdx演员)。
    单击任何图像时,存储所选字符的变量(用于游戏的其余部分)将与已被单击的图像一起设置。屏幕改变了。
  2. 键盘事件
    一个形象的将有重点周围绘制。用户可以使用箭头键将焦点移到其他字符图像。当用户按下输入时,当前具有焦点的角色被选中并且屏幕被改变。

希望这会有所帮助。

0

我会推荐使用libgdx中的Table-Layout。将ImageButton添加到Table并将ClickListener添加到ImageButton。向上和向下添加相同的TextureTexture,然后就完成了。也许稍后再更改,以便用户看到他点击了一个数字。

该表格让您能够按照自己喜欢的方式排列这些按钮,并且它的结构化。此外,创建一个动态视图很容易,对于添加到文件夹的每个新纹理都会有新的ImageButton。只需创建一个ScrollPaneTable“数字”(这是一个监听器的ImageButton),你可以添加一堆它,并让用户向下滚动,以检查他喜欢什么。

1

我的建议是使用scene2d菜单或HUD的东西。 检查了这一点:https://github.com/libgdx/libgdx/wiki/Scene2d

scene2d是用演员的层次构建应用程序和用户界面二维场景图:

  • 按钮
  • 标签
  • 滑块
  • 文本按钮
  • 可滚动视图(列表)
  • 您的自定义小部件
  • 组演员

的您可以添加到ClickListener演员。 (在你的情况下,演员是一个按钮)