在Bukkit中Mob生成错误

问题描述 投票:2回答:2

好吧,所以我最近在bukkit开始的一个项目中遇到了这个问题。正如您将看到我定义了头部和所有内容,我设置了头部的所有者并应用它。但是当我在游戏中加载它显示正常的史蒂夫头!我想要它做的是当我执行命令“spawnmnz”它会产生一个与发送者/玩家(在这种情况下)头部的小兵!

 package me.frostgamersa;

import net.minecraft.server.v1_8_R3.ItemSkull;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.SkullType;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.entity.Zombie;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.SkullMeta;
import org.bukkit.plugin.java.JavaPlugin;



public class NewMinion extends JavaPlugin {
    String minion_name = "§3Minion §bSpawn §fEgg §8- §a[Spawned]";
    @Override
    public void onEnable() {

    }

    @Override
    public void onDisable() {

    }
     @SuppressWarnings("deprecation")
     @Override
   public boolean onCommand(CommandSender sender, Command cmd, String label, 
     String[] args) {
        Player player = (Player) sender;
        if (cmd.getName().equalsIgnoreCase("spawnmnz")){
              World world = player.getWorld();
               Location loc = player.getLocation();


           ItemStack p_skull = new ItemStack(Material.SKULL_ITEM, 1, (short) 
           SkullType.PLAYER.ordinal());
            SkullMeta sm = (SkullMeta) p_skull.getItemMeta();
            sm.setOwner(player.getName());
            p_skull.setItemMeta(sm);

            Zombie minion = (Zombie) world.spawn(loc, Zombie.class);

            minion.setBaby(true);

            minion.setCustomName(minion_name);
            minion.setCustomNameVisible(true);

            minion.getEquipment().setHelmet(p_skull);





            return true;
        }

        return false;
    }
}
java minecraft bukkit
2个回答
0
投票

从玩家个人资料中获取皮肤值,然后将其设置在头骨项目中反射,如果您不清楚如何做到这一点,我将为您提供api;)


0
投票

服务器是否有互联网连接?它必须从Mojang服务器下载皮肤。因此,它可能只需要一点时间让皮肤出现在头上。

ItemSkull的导入也很奇怪,你使用的是什么服务器版本?

© www.soinside.com 2019 - 2024. All rights reserved.