Skip to content

使用HUD组件

LK520 edited this page Aug 17, 2018 · 3 revisions

在VexView1.4版本,我们提供了一套全新的API,包:lk.vexview.hud

那么这一套工具有什么用呢?你是否曾经有想法,想让玩家客户端游戏界面显示更多的东西,就像计分板、聊天框之类的,玩家在游戏中依然可以显示,并且随时都可以查看相关信息,而这一套工具,就是为了实现它!

VexImageShow 与 VexTextShow

VexImageShow 与 VexTextShow 是目前该包下提供的两个HUD内容,它们分别用于显示图片、文本内容。(继承自VexShow)

它们均继承自VexShow,该对象必须拥有一个id,并且同按钮一样不能重复。

相关参数的填写与VexGui、VexImage等相同,但是需要注意的一点是,VexImageShow 与 VexTextShow 可以设定显示时间,在一定时间后,自动消失,当然,你也可以设置为0或负数使其变为永久显示。

关于VexImageShow 与 VexTextShow 的坐标,你可以将其设置为负数,来使其靠右。

为玩家发送一个HUD组件

当你完成HUD相关组件的对象创建时,就可以像打开GUI一样,为玩家发送HUD组件,并展示出来。

VexViewAPI.sendHUD(Player player, VexShow v);

一次只能发送一个VexShow对象,但是客户端可以同时存在多个VexShow内容。

在1.7.7版本,新增了一个以相对布局为坐标的新方法

VexViewAPI.sendHUD(Player player, VexShow v, double x,double y);

这些坐标只能大于0而小于1,因为他们是以屏幕百分比为坐标。

为客户端移除HUD组件

如果你希望移除玩家客户端HUD组件,你可以使用这个方法:

VexViewAPI.removeHUD(Player player, int id);

ID为VexShow对象的id(现在知道为什么id不能重复了吧?)