以下是基于Minecraft Forge 1.12.2的代码示例:

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;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;

import java.util.Arrays;
import java.util.List;

@Mod(modid = "examplemod", version = "1.0")
public class ExampleMod {

    private static final List<String> MoreUser = Arrays.asList("Player1", "Player2", "Player3");

    @EventHandler
    public void init(FMLInitializationEvent event) {
        // 初始化代码
    }

    @EventHandler
    public void serverLoad(FMLServerStartingEvent event) {
        // 在服务器启动时注册事件监听器
        event.registerServerCommand(new CommandAddPrefix());
    }

    public static class CommandAddPrefix extends CommandBase {

        @Override
        public String getName() {
            return "addPrefix";
        }

        @Override
        public String getUsage(ICommandSender sender) {
            return "/addPrefix";
        }

        @Override
        public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException {
            // 检测已加载的玩家并添加前缀
            for (EntityPlayerMP player : server.getPlayerList().getPlayers()) {
                if (MoreUser.contains(player.getName())) {
                    player.setCustomNameTag("§f[§b" + LiquidBounce.CLIENT_NAME2 + " IRC§f] " + player.getName());
                    player.refreshDisplayName();
                }
            }
        }
    }

    @SubscribeEvent
    public void onPlayerLogin(PlayerEvent.PlayerLoggedInEvent event) {
        // 玩家登录时执行添加前缀的命令
        MinecraftServer server = event.player.getServer();
        ICommandManager commandManager = server.getCommandManager();
        ICommandSender sender = server;
        String[] commandArgs = {"addPrefix"};

        commandManager.executeCommand(sender, String.join(" ", commandArgs));
    }
}

在此示例中,我们创建了一个名为ExampleMod的mod,其中包含一个用于添加前缀的命令addPrefix和一个监听玩家登录事件的方法onPlayerLoginMoreUser列表中包含我们要检测的玩家名字。

请注意,此示例中使用了LiquidBounce的LiquidBounce.CLIENT_NAME2变量作为前缀。确保在使用此代码时将其替换为正确的前缀。

此外,还需要在mods.toml文件中添加以下内容:

modLoader="javafml"
loaderVersion="[31,)"
license="All rights reserved"
[[mods]]
modId="examplemod"
version="1.0"
displayName="Example Mod"

请根据需要进行适当的调整和修改

请基于Minecraft Forge 1122写一个检测该世界所有已经被加载的玩家如果名字在MoreUser这个列表里面就自动在该玩家的名字前面加上一个§f§b + LiquidBounceCLIENT_NAME2 + IRC§f 的代码前提是使用到addPrefix这个方法

原文地址: https://www.cveoy.top/t/topic/hROI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录