我试图完成的是当服务器启动/重新加载插件将检测世界上的所有SKULLS,然后设置对它们循环并且不会结束的效果。在世界上重复对块的影响
我当前的代码:
@EventHandler
public void onChunkLoad(ChunkLoadEvent event){
Chunk chunk = event.getChunk();
if(event.getWorld().getName().equals("world")){
for (int x = 0; x < 16; x++){
for (int y = 0; y < 256; y++){
for(int z = 0; z <16; z++){
Block block = chunk.getBlock(x, y, z);
if(block.getType() == Material.SKULL){
event.getWorld().playEffect(block.getLocation(), Effect.MOBSPAWNER_FLAMES, 0);
的循环可能没有结束,由于事实,你在块的16 * 256 * 16(65536)量循环。这是一个块!这样做对所有的块会造成大量的滞后,因此给人的印象是循环永不结束 – Kerooker
另外,你还记得在你的主线程中的某个地方注册你的事件吗? – Kerooker
我注册了事件,除非我做错了。我也做了一个调试,它的工作。这里是注册事件代码:Bukkit.getPluginManager()。registerEvents(new ChestManager(this),this); – InfernoArtz