如何创建自定义Player类? (Bukkit)

时间:2015-09-14 16:38:33

标签: java minecraft bukkit

这主要是针对Spigot API,但我希望能够使用“Player”对象并将其转换为自定义对象以添加新方法,并且我希望能够执行以下操作:

User user = (User) Bukkit.getPlayer("player_name");

我知道这可能无法解答,但学习如何做到这一点非常有帮助

编辑:我需要知道如何完成用户类/接口

2 个答案:

答案 0 :(得分:2)

除非对象实际上是SomeClass或其子类的实例,否则无法将对象强制转换为SomeClass。我认为扩展播放器类不是一个选项,因为你不能改变Bukkit.getPlayer()返回的内容。您可以做的是将播放器对象包装在自定义User类中,如下所示:

class User {

    private Player player;

    public User(Player player) {
        this.player = player;
    }

    // your custom methods
}

Player更改为Bukkit.getPlayer()返回的相应类型。然后你可以使用你的课程:

User user = new User(Bukkit.getPlayer("player_name"));

答案 1 :(得分:0)

您可以直接在CraftBukkit中修改CraftPlayer的源代码,然后使用CraftPlayer对象。