Minecraft 1122 Forge 代码以安装该mod的玩家的身份发送消息就像正常按T输入消息发送一样
要在Minecraft 1.12.2 Forge中以安装该mod的玩家的身份发送消息,你可以使用下面的代码:
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.text.TextComponentString;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.PlayerEvent;
@Mod(modid = "examplemod", name = "Example Mod", version = "1.0")
public class ExampleMod {
@Mod.EventHandler
public void serverLoad(FMLServerStartingEvent event) {
event.registerServerCommand(new SendMessageCommand());
}
public static class SendMessageCommand extends net.minecraft.command.CommandBase {
@Override
public String getName() {
return "sendmessage";
}
@Override
public String getUsage(net.minecraft.command.ICommandSender sender) {
return "/sendmessage <message>";
}
@Override
public void execute(net.minecraft.command.ICommandSender sender, String[] args) {
if (sender instanceof EntityPlayer) {
EntityPlayer player = (EntityPlayer) sender;
String message = String.join(" ", args);
player.sendMessage(new TextComponentString(message));
}
}
}
@Mod.EventBusSubscriber
public static class EventHandler {
@SubscribeEvent
public static void onPlayerLoggedIn(PlayerEvent.PlayerLoggedInEvent event) {
if (event.player instanceof EntityPlayer) {
EntityPlayer player = (EntityPlayer) event.player;
player.sendMessage(new TextComponentString("Welcome to the server!"));
}
}
}
}
这个mod注册了一个名为"sendmessage"的命令,可以通过在游戏中输入"/sendmessage <message>"来发送消息。在玩家登录服务器时,也会发送一条欢迎消息给他们。
请注意,这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。
原文地址: https://www.cveoy.top/t/topic/iRif 著作权归作者所有。请勿转载和采集!