【问题标题】:Add an alternate chat to the HUD in minecraft forge在 minecraft forge 中向 HUD 添加备用聊天
【发布时间】:2018-08-26 03:13:56
【问题描述】:

我正在编写一个我的世界模组,它将来自外部聊天服务(如 Skype)的聊天叠加到您的 Minecraft HUD 上,这样您在收到新消息时就不必不断切换应用程序。

唯一的问题是我似乎找不到向 HUD 添加第二个聊天的方法。我已经成功创建了一个备用聊天,但我不知道如何将它添加到 HUD,以便我可以查看我发布的消息是否有效。我曾尝试搜索“制作备用聊天我的世界模组”和其他类似术语,但我得到的只是模组展示和旧的 1.7 教程。 (该模组的目标是 1.8.8)

我也尝试过查看 Minecraft 代码,但似乎无法找到任何可以将聊天添加到 HUD 的内容。如果有人可以向我指出一种方法或我的代码,我可以用来将我的备用聊天添加到 HUD 中,我将不胜感激(我成功地能够使用白框做到这一点......)

这是我创建聊天的代码

GuiNewChat altchat = new GuiNewChat(mc);
altchat.drawChat(1);
String msg = "hi";
this.mc.ingameGUI.getChatGUI().sendChatMessage(msg,true);//displayGuiScreen(altchat);
if (i == 0) {
    altchat.addToSentMessages("test Message to alt chat");
    System.out.println("added message");
    i++;
} else if (i == 100) {
    i = 0;
} else {
    i++;
}

【问题讨论】:

    标签: java chat minecraft minecraft-forge


    【解决方案1】:

    您需要编写自己的 GUI 容器,然后添加渲染代码来渲染聊天台词。

    我建议你复制当前的 Minecraft 聊天 gui,并为聊天源实现自己的行。并选择不同的位置进行渲染。

    不要使用当前的聊天界面。使用你自己的。

    @SideOnly(Side.CLIENT)
    public class TalkGui  extends Gui {
    }
    

    并添加强制方法。但正如我所说,我建议你复制 minecraft 聊天 gui 中的代码,里面有所有整洁的东西。只需拥有自己的显示线源并为人们键入的线设置处理程序。

    这是《我的世界》中用户界面设计中最精髓的部分。你可以使用按钮和事件监听器 :-) minecraft 也有这些类。

    【讨论】:

    • 所以如果不创建一个全新的聊天就没有办法做到这一点?
    • 好吧,除非您喜欢将反射滥用到疯狂的关卡中,否则进行新的聊天会容易得多。大多数事情基本上只是复制和粘贴。
    • 我会从 Gui 类中复制?还是 GuiNewChat?
    • GuiNewChat... gui 仅用于制作基本覆盖。
    • 这是否适用于 Minecraft 中的新 GUI?我想在屏幕上为三个组显示三个聊天框?我为文本输入创建了三个聊天工具,但它们显示在默认的 GUINewChat 上?如何在屏幕上显示三个 GUINewChats 以避免混淆?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多