org.bukkit.Server.getScheduler()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(7.5k)|赞(0)|评价(0)|浏览(173)

本文整理了Java中org.bukkit.Server.getScheduler()方法的一些代码示例,展示了Server.getScheduler()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Server.getScheduler()方法的具体详情如下:
包路径:org.bukkit.Server
类名称:Server
方法名:getScheduler

Server.getScheduler介绍

[英]Gets the scheduler for managing scheduled events.
[中]获取用于管理计划事件的计划程序。

代码示例

代码示例来源:origin: Bukkit/Bukkit

/**
 * @see Server#getScheduler()
 */
public static BukkitScheduler getScheduler() {
  return server.getScheduler();
}

代码示例来源:origin: Bukkit/Bukkit

/**
 * Stops the active inactivity timer.
 */
private void stopTimer() {
  if (taskId != -1) {
    plugin.getServer().getScheduler().cancelTask(taskId);
    taskId = -1;
  }
}

代码示例来源:origin: Bukkit/Bukkit

/**
 * Starts an inactivity timer.
 */
private void startTimer() {
  taskId = plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
    public void run() {
      if (conversation.getState() == Conversation.ConversationState.UNSTARTED) {
        startTimer();
      } else if (conversation.getState() ==  Conversation.ConversationState.STARTED) {
        cancelling(conversation);
        conversation.abandon(new ConversationAbandonedEvent(conversation, InactivityConversationCanceller.this));
      }
    }
  }, timeoutSeconds * 20);
}

代码示例来源:origin: GlowstoneMC/Glowstone

@Override
public void getChunkAtAsync(int x, int z, ChunkLoadCallback cb) {
  ServerProvider.getServer().getScheduler()
      .runTaskAsynchronously(null, () -> cb.onLoad(chunkManager.getChunk(x, z)));
}

代码示例来源:origin: GlowstoneMC/Glowstone

FutureTask<T> task = new FutureTask<>(
  () -> server.getPluginManager().callEvent(event), event);
BukkitScheduler scheduler = server.getScheduler();
((GlowScheduler) scheduler).scheduleInTickExecution(task);
try {

代码示例来源:origin: Bukkit/Bukkit

public PermissionAttachment addAttachment(Plugin plugin, int ticks) {
  if (plugin == null) {
    throw new IllegalArgumentException("Plugin cannot be null");
  } else if (!plugin.isEnabled()) {
    throw new IllegalArgumentException("Plugin " + plugin.getDescription().getFullName() + " is disabled");
  }
  PermissionAttachment result = addAttachment(plugin);
  if (Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new RemoveAttachmentRunnable(result), ticks) == -1) {
    Bukkit.getServer().getLogger().log(Level.WARNING, "Could not add PermissionAttachment to " + parent + " for plugin " + plugin.getDescription().getFullName() + ": Scheduler returned -1");
    result.remove();
    return null;
  } else {
    return result;
  }
}

代码示例来源:origin: EngineHub/WorldEdit

/**
 * Called on plugin disable.
 */
@Override
public void onDisable() {
  WorldEdit worldEdit = WorldEdit.getInstance();
  worldEdit.getSessionManager().unload();
  worldEdit.getPlatformManager().unregister(server);
  if (config != null) {
    config.unload();
  }
  if (server != null) {
    server.unregisterCommands();
  }
  this.getServer().getScheduler().cancelTasks(this);
}

代码示例来源:origin: Bukkit/Bukkit

public void disablePlugin(final Plugin plugin) {
  if (plugin.isEnabled()) {
    try {
      plugin.getPluginLoader().disablePlugin(plugin);
    } catch (Throwable ex) {
      server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while disabling " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
    }
    try {
      server.getScheduler().cancelTasks(plugin);
    } catch (Throwable ex) {
      server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while cancelling tasks for " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
    }
    try {
      server.getServicesManager().unregisterAll(plugin);
    } catch (Throwable ex) {
      server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while unregistering services for " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
    }
    try {
      HandlerList.unregisterAll(plugin);
    } catch (Throwable ex) {
      server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while unregistering events for " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
    }
    try {
      server.getMessenger().unregisterIncomingPluginChannel(plugin);
      server.getMessenger().unregisterOutgoingPluginChannel(plugin);
    } catch(Throwable ex) {
      server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while unregistering plugin channels for " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
    }
  }
}

代码示例来源:origin: GlowstoneMC/Glowstone

ServerProvider.getServer().getScheduler()
    .runTaskAsynchronously(null, noise::release);

代码示例来源:origin: webbukkit/dynmap

public void startIfNeeded() {
    if((blocks_to_check == null) && (blocks_to_check_accum.isEmpty() == false)) { /* More pending? */
      blocks_to_check = blocks_to_check_accum;
      blocks_to_check_accum = new LinkedList<BlockToCheck>();
      getServer().getScheduler().scheduleSyncDelayedTask(DynmapPlugin.this, this, 10);
    }
  }
}

代码示例来源:origin: webbukkit/dynmap

@Override
public void scheduleServerTask(Runnable run, long delay) {
  getServer().getScheduler().scheduleSyncDelayedTask(DynmapPlugin.this, run, delay);
}
@Override

代码示例来源:origin: webbukkit/dynmap

@Override
public <T> Future<T> callSyncMethod(Callable<T> task) {
  if(DynmapPlugin.this.isEnabled())
    return getServer().getScheduler().callSyncMethod(DynmapPlugin.this, task);
  else
    return null;
}
@Override

代码示例来源:origin: webbukkit/dynmap

@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true)
public void onPlayerJoin(PlayerJoinEvent evt) {
  final DynmapPlayer dp = new BukkitPlayer(evt.getPlayer());
  // Give other handlers a change to prep player (nicknames and such from Essentials)
  getServer().getScheduler().scheduleSyncDelayedTask(DynmapPlugin.this, new Runnable() {
    @Override
    public void run() {
      core.listenerManager.processPlayerEvent(EventType.PLAYER_JOIN, dp);
    }
  }, 2);
}
@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true)

代码示例来源:origin: webbukkit/dynmap

@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true)
  public void onPlayerChat(AsyncPlayerChatEvent evt) {
    final Player p = evt.getPlayer();
    final String msg = evt.getMessage();
    getServer().getScheduler().scheduleSyncDelayedTask(DynmapPlugin.this, new Runnable() {
      public void run() {
        DynmapPlayer dp = null;
        if(p != null)
          dp = new BukkitPlayer(p);
        core.listenerManager.processChatEvent(EventType.PLAYER_CHAT, dp, msg);
      }
    });
  }
}, DynmapPlugin.this);

代码示例来源:origin: webbukkit/dynmap

perTickLimit = core.getMaxTickUseMS() * 1000000;
getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
  public void run() {
    processTick();

代码示例来源:origin: mcMMO-Dev/mcMMO

private void fireworksShow(final Player player) {
  final int firework_amount = 10;
  for (int i = 0; i < firework_amount; i++) {
    int delay = (int) (Misc.getRandom().nextDouble() * 3 * Misc.TICK_CONVERSION_FACTOR) + 4;
    mcMMO.p.getServer().getScheduler().runTaskLater(mcMMO.p, new Runnable() {
      @Override
      public void run() {
        mcMMO.getHolidayManager().spawnFireworks(player);
      }
    }, delay);
  }
}

代码示例来源:origin: mcMMO-Dev/mcMMO

public BlockStoreConversionMain(org.bukkit.World world) {
  this.taskID = -1;
  this.world = world;
  this.scheduler = mcMMO.p.getServer().getScheduler();
  this.dataDir = new File(this.world.getWorldFolder(), "mcmmo_data");
  this.converters = new BlockStoreConversionXDirectory[HiddenConfig.getInstance().getConversionRate()];
}

代码示例来源:origin: EngineHub/WorldGuard

@Override
public void onDisable() {
  WorldGuard.getInstance().disable();
  this.getServer().getScheduler().cancelTasks(this);
}

代码示例来源:origin: mcMMO-Dev/mcMMO

public void start(org.bukkit.World world, File dataDir) {
  this.world = world;
  this.scheduler = mcMMO.p.getServer().getScheduler();
  this.converters = new BlockStoreConversionZDirectory[HiddenConfig.getInstance().getConversionRate()];
  this.dataDir = dataDir;
  if (this.taskID >= 0) {
    return;
  }
  this.taskID = this.scheduler.runTaskLater(mcMMO.p, this, 1).getTaskId();
  return;
}

代码示例来源:origin: mcMMO-Dev/mcMMO

private void registerCustomRecipes() {
  getServer().getScheduler().scheduleSyncDelayedTask(this, () -> {
    if (Config.getInstance().getChimaeraEnabled()) {
      getServer().addRecipe(ChimaeraWing.getChimaeraWingRecipe());
    }
  }, 40);
}

相关文章

微信公众号

最新文章

更多

Server类方法