我仍在研究LibGDX。我正在尝试创建一个角色选择屏幕,其中玩家可以选择一个角色,当他/她点击他/她所选角色的图片(例如:一个按钮)时,显示的纹理会发生变化。所以它就像一个动态的纹理。我应该从哪里开始?
答案 0 :(得分:1)
为角色创建一个类,并将纹理作为它的成员,您将始终用它来绘制每个角色对象。
现在点击按钮只会改变给定角色的纹理。
祝你好运。答案 1 :(得分:1)
由于所有那些不是很充分的答案,我也会在这里提供一个。
由于这是一项特定于用户界面的任务,就像任何菜单/选择/选项屏幕一样,您应首先阅读scene2d和scene2d.ui。
您要做的是创建Stage
并为其添加Table
。然后,您可以向表格添加Button
/ ImageButton
,左侧带箭头(文字可能只是“< - ”)。您还将向此按钮添加ClickListener
,以便在用户单击该按钮时处理字符开关。然后在表格中添加Image
,其图片将取决于所选字符。然后你就像第一个按钮一样向右边添加一个带箭头的按钮(同时也有听众)。
我假设您有一个可能的字符列表以及您想要显示的“头像”。每次单击事件(向左或向右),您将递增/递减指向该列表的列表索引,并将Image
的图像切换为正确的字符。
如果您使用table.row()
,您可能还会在表格中添加另一个“应用”按钮,因此它将显示在其他元素的下方。单击此按钮时,您知道角色的索引并可以切换到下一个屏幕(可能是您的游戏画面)。
显示当前所选字符的中间元素的图片必须在每个框架的render()
方法中更新,因为它可能已更改。
您可能还想在此屏幕上向所选字符添加更多信息,例如姓名或特殊能力。你可以使用一些Labels
并在每一帧中更新它们,但这取决于你。
答案 2 :(得分:0)
我会为每个角色的可能性创建一些ImageButton,每个角色都有一个ClickListener,一个Image代表所选择的角色。当用户按下按钮时,监听器将图像的Drawable设置为所选字符。