1
그래서 Bukkit에 EventHandlers를 구축했는데 이제 막 달라 붙었습니다. 아마 정말 바보 같은 실수 야. 그래서 용서해 줘.Bukkit PlayerInteractEvent가 두 번 등록됩니다.
내가 원하는 것은 다음과 같습니다. 블록을 마우스 오른쪽 버튼으로 클릭하면 매초마다 test
채팅에 들어갑니다. 그러나 실제로는 매초마다 두 번씩 실행합니다. 전체 코드를 디버깅하고 있지만 제대로 작동하지 않습니다. 제 생각에는 두 번 등록하는 것입니다.
홈페이지() 클래스 :
public class Main extends JavaPlugin {
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(new Events(), this);
}
@Override
public void onDisable() {
}
}
이벤트() 클래스 : 사전에
public class Events implements Listener {
public Plugin plugin = Main.getPlugin(Main.class);
@EventHandler
public void onInteract(PlayerInteractEvent e) {
Player player = e.getPlayer();
Action action = e.getAction();
if(action.equals(Action.RIGHT_CLICK_BLOCK)) {
new BukkitRunnable() {
@Override
public void run() {
player.sendMessage("Test");
}
}.runTaskTimer(plugin, 1, 20);
}
}
}
감사합니다!
감사합니다. 그것이 작동하게 만들었습니다. – Scriptblade