Player * First * JoinEvent我应该怎么做?

问题描述

所以我尝试为我的服务器制作一个简单的PlayerJoinEvent(又名Player 第一 JoinEvent )。有没有办法做到这一点?我想在玩家第一次加入服务器时运行代码。我尝试了多个选项,例如使用if(player.hasPlayedBefore()),但它确实想工作!那么,您是否知道如何解决它或使用其他方法解决?感谢大家的帮助!

解决方法

您可能尚未删除播放器数据!如果有新玩家加入,则将创建新玩家数据,Spigot才知道该玩家是服务器的新玩家!

要这样做:

  • 关闭服务器
  • 转到sed '17e echo "a file=$(echo /path/toSomeWhere/filename*)"' file
  • 删除 player-uuid .dat
  • 启动服务器

警告:这会删除播放器清单!

如果服务器处于离线模式,并且您不知道UUID是什么,请使用此online tool。 如果服务器处于联机模式,并且您不知道UUID,请使用namemc

测试事件的代码:

server-folder/world/playerdata/*player-uuid*.dat

别忘了在您的主要班级注册此活动!

,

所以我解决了它,感谢大家的帮助,hasPlayedBefore()没有任何问题。