WarWorld 发表于 2022-5-22 10:55:45

插件篇:监听器

在上一给教程里我们学习了如何制作一个指令,今天我们来学监听器
上一期链接:插件篇:第一个插件 - 教程中心 - Minecraft(我的世界)苦力怕中文论坛 (klpbbs.com)
本章内容:学习监听器


学习目标:学习如何用监听器取消玩家的移动
                学习如何用监听器获取玩家加入信息



一:学习如何用监听器取消玩家的移动
现在我们开始学习如何取消玩家的移动
现在我们开始编写,具体代码如下
package PlayerMove;

import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerMoveEvent;

public class PlayerMove implements Listener {
    @EventHandler
    public void PlayerMoveEvent(PlayerMoveEvent playerMoveEvent){
      Player player;
      Location from;
      player = playerMoveEvent.getPlayer();
      player.sendMessage(ChatColor.AQUA+""+ChatColor.RED+"你禁止移动");
      playerMoveEvent.setCancelled(true);
    }
}
如图所示:

这样我们就成功的设定好一个监听玩家移动的监听器了
当玩家移动的时候我们可以取消他的移动

二:学习如何用监听器获取玩家加入信息
现在我们开始学习如何获取玩家的加入
现在我们开始编写,具体代码如下
package playerjoin;

import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class playerjoin implements Listener {
    @EventHandler
    public void PlayerJoinEvent(PlayerJoinEvent playerJoinEvent){
      Player player;
      String JoinMessage = "欢迎来到服务器";
      player = playerJoinEvent.getPlayer();
      player.sendMessage(JoinMessage);
    }
}
如图所示:

这样我们就实现了在玩家加入的时候,给他发送加入的欢迎语

三:引用
像上一个教程一样,在主文件中引用它
代码如下:
getServer().getPluginManager().registerEvents(new playerjoin(),this);
      getServer().getPluginManager().registerEvents(new PlayerMove(),this);如图所示:

这样我们就实现了引用

四:实践
开启服务器,进入游戏

可以看到我们的插件已经正常的运行了
谢谢观看
支持过1.火速更新下一期

往期:先导篇:插件教程 - 教程中心 - Minecraft(我的世界)苦力怕中文论坛 (klpbbs.com)
         合成篇总结 - 教程中心 - Minecraft(我的世界)苦力怕中文论坛 (klpbbs.com)


页: [1]
查看完整版本: 插件篇:监听器