首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bukkit PlayerDeathEvent

Bukkit PlayerDeathEvent
EN

Stack Overflow用户
提问于 2017-07-05 04:12:41
回答 1查看 575关注 0票数 2

为什么这不起作用?如果我被杀了,我得不到任何回应!如你所见,我已经用多种方法进行了测试。但是没有人在工作。

代码语言:javascript
复制
package net.gameforce.testing;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.plugin.java.JavaPlugin;






public class Main extends JavaPlugin implements Listener {


@Override
public void onEnable() {
    getServer().getPluginManager().registerEvents(this,this);
    getLogger().info("Testing Plugin Started");
}

public void onDisable() {}

@EventHandler
public void onPlayerInteract(PlayerInteractEvent event){
    Bukkit.broadcastMessage("test");
    event.getPlayer().setExp(100);
}
public void onPlayerDeath (PlayerDeathEvent event){
    Bukkit.broadcastMessage("send");
    event.getEntity().getPlayer().setExp(1000);
}

public boolean onDeath (PlayerDeathEvent event) {
    Player Player = event.getEntity();
    Bukkit.broadcastMessage(Player.getKiller().getDisplayName() + ", has killed you!");
    if (Player.getKiller() != null) {
        Bukkit.broadcastMessage("No Player");
    }
    else {
        Bukkit.broadcastMessage("IDK");
    }


    return true;
}
}

我做错什么了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-05 04:27:06

引用自http://bukkit.gamepedia.com/Event_API_Reference#.40EventHandler

“在这个方法被Bukkit调用之前,我们需要注释它。我们用EventHandlers来做这件事。”

您已经将此注释添加到您的onPlayerInteract方法中,但没有添加到其他方法中,例如您的onDeath方法。如果您的侦听器设置正确,则向这些方法添加@EventHandler注释将允许bukkit正确地调用它们,如下所示:

代码语言:javascript
复制
@EventHandler
public void onPlayerDeath (PlayerDeathEvent event){
    Bukkit.broadcastMessage("send");
    event.getEntity().getPlayer().setExp(1000);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44913449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档